code: func (u *U2F) Parse() (*services.U2F, error) {
  	// If no appID specified, default to hostname
  	appID := u.AppID
  	if appID == "" {
  		hostname, err := os.Hostname()
  		if err != nil {
  			return nil, trace.Wrap(err, "failed to automatically determine U2F AppID from hostname")
  		}
  		appID = fmt.Sprintf("https://%s:%d", strings.ToLower(hostname), defaults.HTTPListenPort)
  	}
  
  	// If no facets specified, default to AppID
  	facets := u.Facets
  	if len(facets) == 0 {
  		facets = []string{appID}
  	}
  
  	return &services.U2F{
  		AppID:  appID,
  		Facets: facets,
  	}, nil
  }
docs: // Parse parses values in the U2F configuration section and validates its content.