code: def sorted_bfs_successors(G, source=None):
      
      if source is None:
          source = G.root
  
      successors = defaultdict(list)
      for src, target in sorted_bfs_edges(G, source):
          successors[src].append(target)
      return dict(successors)
docs: Return dictionary of successors in breadth-first-search from source.
  
      Parameters
      ----------
      G : DiscourseDocumentGraph graph
  
      source : node
         Specify starting node for breadth-first search and return edges in
         the component reachable from source.
  
      Returns
      -------
      successors: dict
         A dictionary with nodes as keys and list of succssors nodes as values.