code: func (f *featureGate) Add(features map[Feature]FeatureSpec) error {
  	f.lock.Lock()
  	defer f.lock.Unlock()
  
  	if f.closed {
  		return fmt.Errorf("cannot add a feature gate after adding it to the flag set")
  	}
  
  	// Copy existing state
  	known := map[Feature]FeatureSpec{}
  	for k, v := range f.known.Load().(map[Feature]FeatureSpec) {
  		known[k] = v
  	}
  
  	for name, spec := range features {
  		if existingSpec, found := known[name]; found {
  			if existingSpec == spec {
  				continue
  			}
  			return fmt.Errorf("feature gate %q with different spec already exists: %v", name, existingSpec)
  		}
  
  		known[name] = spec
  	}
  
  	// Persist updated state
  	f.known.Store(known)
  
  	return nil
  }
docs: // Add adds features to the featureGate.