@classmethod
def _split_module_object(cls, target_name):
    """
        split the target_name into module part 
        and object part
        """
    path = target_name.split('.')
    target_module = cls._extract_module_from_name(target_name)
    target_module_path = target_module.__name__.split('.')
    assert len(path) >= len(target_module_path)
    i = 0
    for i, p in enumerate(target_module_path):
        if p != path[i]:
            break
    if p == path[i]:
        i = i + 1
    path = path[i:]
    return target_module, path
