code: func (o *SubjectOptions) Validate() error {
  	if o.All && len(o.Selector) > 0 {
  		return fmt.Errorf("cannot set --all and --selector at the same time")
  	}
  	if len(o.Users) == 0 && len(o.Groups) == 0 && len(o.ServiceAccounts) == 0 {
  		return fmt.Errorf("you must specify at least one value of user, group or serviceaccount")
  	}
  
  	for _, sa := range o.ServiceAccounts {
  		tokens := strings.Split(sa, ":")
  		if len(tokens) != 2 || tokens[1] == "" {
  			return fmt.Errorf("serviceaccount must be <namespace>:<name>")
  		}
  
  		for _, info := range o.Infos {
  			_, ok := info.Object.(*rbacv1.ClusterRoleBinding)
  			if ok && tokens[0] == "" {
  				return fmt.Errorf("serviceaccount must be <namespace>:<name>, namespace must be specified")
  			}
  		}
  	}
  
  	return nil
  }
docs: // Validate makes sure provided values in SubjectOptions are valid