code: func (g *Graph) Add(n interface{}) *Graph {
  
  	if g == nil {
  		return nil
  	}
  
  	if node, ok := n.(*Graph); ok && node != nil {
  		g.Out = append(g.Out, node)
  		return node
  	}
  
  	gg := Graph{n, nil}
  	g.Out = append(g.Out, &gg)
  	return &gg
  }
docs: // Add adds a subnode to the current node.