code: func SplitUsername(username string) (string, string, error) {
  	if !strings.HasPrefix(username, ServiceAccountUsernamePrefix) {
  		return "", "", invalidUsernameErr
  	}
  	trimmed := strings.TrimPrefix(username, ServiceAccountUsernamePrefix)
  	parts := strings.Split(trimmed, ServiceAccountUsernameSeparator)
  	if len(parts) != 2 {
  		return "", "", invalidUsernameErr
  	}
  	namespace, name := parts[0], parts[1]
  	if len(apimachineryvalidation.ValidateNamespaceName(namespace, false)) != 0 {
  		return "", "", invalidUsernameErr
  	}
  	if len(apimachineryvalidation.ValidateServiceAccountName(name, false)) != 0 {
  		return "", "", invalidUsernameErr
  	}
  	return namespace, name, nil
  }
docs: // SplitUsername returns the namespace and ServiceAccount name embedded in the given username,
  // or an error if the username is not a valid name produced by MakeUsername