code: def walk_up(self, depth):
          
  
          for child in list(self.children):
              if depth != 0:
                  for grandchild in child.walk_up(depth - 1):
                      yield grandchild
              yield child
docs: Returns a generator yielding all nodes in the tree at a specific depth,
          or above. Yields nodes starting with leaves and traversing up to the
          root.
  
          :param depth:
              An integer >= 0 of the depth of nodes to walk up from
  
          :return:
              A generator yielding PolicyTreeNode objects