code: def export_graphviz(self, fade_nodes=None):
          
          terminals = []
          if fade_nodes is None:
              fade_nodes = []
          output = 'digraph program {\nnode [style=filled]\n'
          for i, node in enumerate(self.program):
              fill = '#cecece'
              if isinstance(node, _Function):
                  if i not in fade_nodes:
                      fill = '#136ed4'
                  terminals.append([node.arity, i])
                  output += ('%d [label="%s", fillcolor="%s"] ;\n'
                             % (i, node.name, fill))
              else:
                  if i not in fade_nodes:
                      fill = '#60a6f6'
                  if isinstance(node, int):
                      if self.feature_names is None:
                          feature_name = 'X%s' % node
                      else:
                          feature_name = self.feature_names[node]
                      output += ('%d [label="%s", fillcolor="%s"] ;\n'
                                 % (i, feature_name, fill))
                  else:
                      output += ('%d [label="%.3f", fillcolor="%s"] ;\n'
                                 % (i, node, fill))
                  if i == 0:
                      # A degenerative program of only one node
                      return output + '}'
                  terminals[-1][0] -= 1
                  terminals[-1].append(i)
                  while terminals[-1][0] == 0:
                      output += '%d -> %d ;\n' % (terminals[-1][1],
                                                  terminals[-1][-1])
                      terminals[-1].pop()
                      if len(terminals[-1]) == 2:
                          parent = terminals[-1][-1]
                          terminals.pop()
                          if not terminals:
                              return output + '}'
                          terminals[-1].append(parent)
                          terminals[-1][0] -= 1
  
          # We should never get here
          return None
docs: Returns a string, Graphviz script for visualizing the program.
  
          Parameters
          ----------
          fade_nodes : list, optional
              A list of node indices to fade out for showing which were removed
              during evolution.
  
          Returns
          -------
          output : string
              The Graphviz script to plot the tree representation of the program.