code: func updateSubjectForObject(obj runtime.Object, subjects []rbacv1.Subject, fn updateSubjects) (bool, error) {
  	switch t := obj.(type) {
  	case *rbacv1.RoleBinding:
  		transformed, result := fn(t.Subjects, subjects)
  		t.Subjects = result
  		return transformed, nil
  	case *rbacv1.ClusterRoleBinding:
  		transformed, result := fn(t.Subjects, subjects)
  		t.Subjects = result
  		return transformed, nil
  	default:
  		return false, fmt.Errorf("setting subjects is only supported for RoleBinding/ClusterRoleBinding")
  	}
  }
docs: //Note: the obj mutates in the function