code: def test_changed_max_bin(self) -> None:
      n_samples = 128
      n_features = 16
      csr, y = make_sparse_regression(n_samples, n_features, 0.5, False)
      Xy = xgb.QuantileDMatrix(csr, y, max_bin=9)
      booster = xgb.train({"max_bin": 9}, Xy, num_boost_round=2)
  
      Xy = xgb.QuantileDMatrix(csr, y, max_bin=11)
  
      with pytest.raises(ValueError, match="consistent"):
          xgb.train({}, Xy, num_boost_round=2, xgb_model=booster)
  
imports: from typing import Any, Dict, List
  import numpy
  import pytest
  from hypothesis import given, settings, strategies
  from scipy import sparse
  import xgboost
  from xgboost.testing import IteratorForTest, make_batches, make_batches_sparse, make_categorical, make_ltr, make_sparse_regression, predictor_equal
  from xgboost.testing.data import check_inf, np_dtypes
  from xgboost.testing.data_iter import run_mixed_sparsity
label_desc: Use image node_id 13 for calling the TestQuantileDMatrix obj's underlying member method code with example usage: obj.test_changed_max_bin() without return types