code: def _init_rel2src2dsts(self, go_sources, traverse_parent):
          
          if not traverse_parent or not self.relationships:
              return {}
          rel2src2dsts = {r:defaultdict(set) for r in self.relationships}
          goids_seen = set()
          go2obj = self.go2obj
          for goid_src in go_sources:
              goobj_src = go2obj[goid_src]
              if goobj_src.relationship and goid_src not in goids_seen:
                  self._traverse_relationship_objs(rel2src2dsts, goobj_src, goids_seen)
          return rel2src2dsts
docs: Traverse up parents.