@lru_cache(maxsize=None)
def get_transitive_link_deps(self):
    result = []
    for i in self.link_targets:
        result += i.get_all_link_deps()
    return result
@lru_cache(maxsize=None)
def get_transitive_link_deps(self):
    result = []
    for i in self.link_targets:
        result += i.get_all_link_deps()
    return result