code: def add_to_waiting_parents(self, node):
          
          wp = self.waiting_parents
          if node in wp:
              return 0
          wp.add(node)
          return 1
docs: Returns the number of nodes added to our waiting parents list:
          1 if we add a unique waiting parent, 0 if not.  (Note that the
          returned values are intended to be used to increment a reference
          count, so don't think you can "clean up" this function by using
          True and False instead...)