code: func (p *ProvisionTokenV2) CheckAndSetDefaults() error {
  	p.Kind = KindToken
  	err := p.Metadata.CheckAndSetDefaults()
  	if err != nil {
  		return trace.Wrap(err)
  	}
  	if len(p.Spec.Roles) == 0 {
  		return trace.BadParameter("provisioning token is missing roles")
  	}
  	if err := teleport.Roles(p.Spec.Roles).Check(); err != nil {
  		return trace.Wrap(err)
  	}
  	return nil
  }
docs: // CheckAndSetDefaults checks and set default values for any missing fields.