code: func ClusterClusters(clusters []*Cluster, distancer ClusterDistancer, threshold float64) []*Cluster {
  	copiedClusters := make([]*Cluster, len(clusters), len(clusters))
  	copy(copiedClusters, clusters)
  
  	return cluster(copiedClusters, distancer, threshold)
  }
docs: // ClusterClusters can be used if you've already created cluster objects
  // using a prefilterer of something else. Original clusters will be copied
  // so the original set will be unchanged.