code: func NewChain(nodes ...Node) *Chain {
  	chain := &Chain{}
  	for _, node := range nodes {
  		chain.nodeGroups = append(chain.nodeGroups, NewNodeGroup(node))
  	}
  	return chain
  }
docs: // NewChain creates a proxy chain with a list of proxy nodes.
  // It creates the node groups automatically, one group per node.