code: func (c *cluster) Nodes() []*Node {
  	c.mu.RLock()
  	defer c.mu.RUnlock()
  	ret := make([]*Node, len(c.nodes))
  	copy(ret, c.nodes)
  	return ret
  }
docs: // Nodes returns a copy of the slice of nodes in the cluster. Safe for
  // concurrent use, result may be modified.