from typing import Any


def short(obj: Any, width: int = 45) -> str:
    """
    Elides an object string representation to the specified length,
    adding ellipsis (...) and the remaining glyph count to the end of the string.
    Returns the string as-is if string representation is shorter than the specified width.

    :param obj: object to format the string representation for
    :param width: required string representation length
    :return: formatted elided string
    """
    str_ = str(obj)
    len_ = len(str_) - width
    if len_ > 0:
        return str_[:width] + f'[...+{len_}]'
    return str_