from typing import Union
from typing import Callable


def fully_qualified_name(thing: Union[type, Callable]) -> str:
    """Construct the fully qualified name of a type."""
    return thing.__module__ + '.' + thing.__qualname__