code: func (e *Endpoint) WithProviderSpecific(key, value string) *Endpoint {
  	if e.ProviderSpecific == nil {
  		e.ProviderSpecific = ProviderSpecific{}
  	}
  
  	e.ProviderSpecific = append(e.ProviderSpecific, ProviderSpecificProperty{Name: key, Value: value})
  	return e
  }
docs: // WithProviderSpecific attaches a key/value pair to the Endpoint and returns the Endpoint.
  // This can be used to pass additional data through the stages of ExternalDNS's Endpoint processing.
  // The assumption is that most of the time this will be provider specific metadata that doesn't
  // warrant its own field on the Endpoint object itself. It differs from Labels in the fact that it's
  // not persisted in the Registry but only kept in memory during a single record synchronization.