def METHOD_NAME(
        cls: typing.Type[object],
        class_path: str,
        default: typing.Any = __DEFAULT__):
    """
    Get class go thru it's annotations using class_path
    cls: list, dict, instance or class
    class_path: string of data path
    detault: if provided, in case of it can't reach data default value will be returned,
      otherwise ValueError will be raised
    data_path example = attr1.attr2.attr3 , using this example you will
      get attr3 of attr2 of attr1 of the class you provide into cls.
    """
    current = cls
    for param_name in class_path.split('.'):
        value = __DEFAULT__
        if hasattr(current, '__annotations__'):
            value = current.__annotations__.get(param_name, __DEFAULT__)
        if value is __DEFAULT__:
            if default is __DEFAULT__:
                raise ValueError(f"Can't find {class_path} in data {cls.__name__}")
            return default
        current = value
    return current