@functools.singledispatch
def add_object(obj: core.Asset) -> Tuple[(bpy.types.Object, Dict[(str, core.AttributeSetter)])]:
    raise NotImplementedError()
@functools.singledispatch
def add_object(obj: core.Asset) -> Tuple[(bpy.types.Object, Dict[(str, core.AttributeSetter)])]:
    raise NotImplementedError()