code: func (s *Strings) UnmarshalYAML(unmarshal func(interface{}) error) error {
  	// try unmarshal as string
  	var val string
  	err := unmarshal(&val)
  	if err == nil {
  		*s = []string{val}
  		return nil
  	}
  
  	// try unmarshal as slice
  	var slice []string
  	err = unmarshal(&slice)
  	if err == nil {
  		*s = slice
  		return nil
  	}
  
  	return err
  }
docs: // UnmarshalYAML is used to allow Strings to unmarshal from
  // scalar string value or from the list