code: func (s *Snapshotter) AliveNodes() []*PreviousNode {
  	// Copy the previously known
  	previous := make([]*PreviousNode, 0, len(s.aliveNodes))
  	for name, addr := range s.aliveNodes {
  		previous = append(previous, &PreviousNode{name, addr})
  	}
  
  	// Randomize the order, prevents hot shards
  	for i := range previous {
  		j := rand.Intn(i + 1)
  		previous[i], previous[j] = previous[j], previous[i]
  	}
  	return previous
  }
docs: // AliveNodes returns the last known alive nodes