self.__doc__ = getitem.__doc__
    def __getattr__(self, item):
        if item in {'__name__', '__qualname__'}:
            return self._name
        raise AttributeError(item)
    def __mro_entries__(self, bases):
        raise TypeError(f"Cannot subclass {self!r}")
    def __repr__(self):
        return 'typing.' + self._name
    def __reduce__(self):
        return self._name
    def __call__(self, *args, **kwds):
        raise TypeError(f"Cannot instantiate {self!r}")
    def __or__(self, other):
        return Union[self, other]
    def __ror__(self, other):
        return Union[other, self]
    def __instancecheck__(self, obj):
        raise TypeError(f"{self} cannot be used with isinstance()")
    def __subclasscheck__(self, cls):
        raise TypeError(f"{self} cannot be used with issubclass()")
    @_tp_cache
    def __getitem__(self, parameters):
        return self._getitem(self, parameters)
class _LiteralSpecialForm(_SpecialForm, _root=True):
    def __getitem__(self, parameters):
        if not isinstance(parameters, tuple):
            parameters = (parameters,)
        return self._getitem(self, *parameters)
class _AnyMeta(type):
    def __instancecheck__(self, obj):
        if self is Any:
            raise TypeError("typing.Any cannot be used with isinstance()")
        return super().__instancecheck__(obj)
    def __repr__(self):
        if self is Any:
            return "typing.Any"
        return super().__repr__()  # respect to subclasses
class Any(metaclass=_AnyMeta):