code: func LoadCaddyfile(serverType string) (Input, error) {
  	// Ask plugged-in loaders for a Caddyfile
  	cdyfile, err := loadCaddyfileInput(serverType)
  	if err != nil {
  		return nil, err
  	}
  
  	// Otherwise revert to default
  	if cdyfile == nil {
  		cdyfile = DefaultInput(serverType)
  	}
  
  	// Still nil? Geez.
  	if cdyfile == nil {
  		cdyfile = CaddyfileInput{ServerTypeName: serverType}
  	}
  
  	return cdyfile, nil
  }
docs: // LoadCaddyfile loads a Caddyfile by calling the plugged in
  // Caddyfile loader methods. An error is returned if more than
  // one loader returns a non-nil Caddyfile input. If no loaders
  // load a Caddyfile, the default loader is used. If no default
  // loader is registered or it returns nil, the server type's
  // default Caddyfile is loaded. If the server type does not
  // specify any default Caddyfile value, then an empty Caddyfile
  // is returned. Consequently, this function never returns a nil
  // value as long as there are no errors.