code: func (s *ConfigSnapshot) Clone() (*ConfigSnapshot, error) {
  	snapCopy, err := copystructure.Copy(s)
  	if err != nil {
  		return nil, err
  	}
  	return snapCopy.(*ConfigSnapshot), nil
  }
docs: // Clone makes a deep copy of the snapshot we can send to other goroutines
  // without worrying that they will racily read or mutate shared maps etc.