code: func (a *AgentConfig) CheckAndSetDefaults() error {
  	if a.Addr.IsEmpty() {
  		return trace.BadParameter("missing parameter Addr")
  	}
  	if a.Context == nil {
  		return trace.BadParameter("missing parameter Context")
  	}
  	if a.Client == nil {
  		return trace.BadParameter("missing parameter Client")
  	}
  	if a.AccessPoint == nil {
  		return trace.BadParameter("missing parameter AccessPoint")
  	}
  	if len(a.Signers) == 0 {
  		return trace.BadParameter("missing parameter Signers")
  	}
  	if len(a.Username) == 0 {
  		return trace.BadParameter("missing parameter Username")
  	}
  	if a.Clock == nil {
  		a.Clock = clockwork.NewRealClock()
  	}
  	return nil
  }
docs: // CheckAndSetDefaults checks parameters and sets default values