def self_service_user_removable=(new_val, pw = @self_service_removal_password)
      new_val, pw = *new_val if new_val.is_a? Array
      pw = nil unless new_val == :with_auth

      return if new_val == self_service_user_removable && pw == self_service_removal_password

      validate_user_removable new_val

      @self_service_user_removable = new_val
      @self_service_removal_password = pw
      @need_to_update = true
    end
def self_service_user_removable=(new_val, pw = @self_service_removal_password)
      new_val, pw = *new_val if new_val.is_a? Array
      pw = nil unless new_val == :with_auth

      return if new_val == self_service_user_removable && pw == self_service_removal_password

      validate_user_removable new_val

      @self_service_user_removable = new_val
      @self_service_removal_password = pw
      @need_to_update = true
    end
Set the value for user-removability of profiles, optionally
 providing a password for removal, on iOS targets.

 @param new_val[Symbol] One of the keys of PROFILE_REMOVAL_BY_USER,
   :always, :never, or :with_auth

 @param pw[String] A new password to use if removable :with_auth

 @return [void]