code: func (c *ShardedClient) mutateMulti(
  	shards map[int]*ShardMapping,
  	mutateMultiFunc func(Client, *ShardMapping) []MutateResponse) []MutateResponse {
  
  	numKeys := 0
  
  	resultsChannel := make(chan []MutateResponse, len(shards))
  	for shard, mapping := range shards {
  		numKeys += len(mapping.Keys)
  		go c.mutateMultiHelper(
  			mutateMultiFunc,
  			shard,
  			mapping,
  			resultsChannel)
  	}
  
  	results := make([]MutateResponse, 0, numKeys)
  	for i := 0; i < len(shards); i++ {
  		results = append(results, (<-resultsChannel)...)
  	}
  	return results
  }
docs: // See Client interface for documentation.