code: def paths_to_top(self, term):
          
          # error handling consistent with original authors
          if term not in self:
              print("Term %s not found!" % term, file=sys.stderr)
              return
  
          def _paths_to_top_recursive(rec):
              if rec.level == 0:
                  return [[rec]]
              paths = []
              for parent in rec.parents:
                  top_paths = _paths_to_top_recursive(parent)
                  for top_path in top_paths:
                      top_path.append(rec)
                      paths.append(top_path)
              return paths
  
          go_term = self[term]
          return _paths_to_top_recursive(go_term)
docs: Returns all possible paths to the root node
  
              Each path includes the term given. The order of the path is
              top -> bottom, i.e. it starts with the root and ends with the
              given term (inclusively).
  
              Parameters:
              -----------
              - term:
                  the id of the GO term, where the paths begin (i.e. the
                  accession 'GO:0003682')
  
              Returns:
              --------
              - a list of lists of GO Terms