code: func (n *External) UnmarshalYAML(unmarshal func(interface{}) error) error {
  	if err := unmarshal(&n.External); err == nil {
  		return nil
  	}
  	var dummyExternal struct {
  		Name string
  	}
  
  	err := unmarshal(&dummyExternal)
  	if err != nil {
  		return err
  	}
  	n.Name = dummyExternal.Name
  	n.External = true
  
  	return nil
  }
docs: // UnmarshalYAML implements the Unmarshaller interface.