code: def test_svc_pickle(tmpdir, datatype, params, multiclass, sparse):
      result = {}
  
      if sparse and params["probability"]:
          pytest.skip("Probabilistic SVC does not support sparse input")
  
      def create_mod():
          model = cuml.svm.SVC(**params)
          iris = load_iris()
          iris_selection = np.random.RandomState(42).choice(
              [True, False], 150, replace=True, p=[0.75, 0.25]
          )
          X_train = iris.data[iris_selection]
          if sparse:
              X_train = scipy_sparse.csr_matrix(X_train)
          y_train = iris.target[iris_selection]
          if not multiclass:
              y_train = (y_train > 0).astype(datatype)
          data = [X_train, y_train]
          result["model"] = model.fit(X_train, y_train)
          return model, data
  
      def assert_model(pickled_model, data):
          if result["model"].probability:
              print("Comparing probabilistic svc")
              compare_probabilistic_svm(
                  result["model"], pickled_model, data[0], data[1], 0, 0
              )
          else:
              print("comparing base svc")
              compare_svm(
                  result["model"], pickled_model, data[0], data[1]
              )
  
      pickle_save_load(tmpdir, create_mod, assert_model)
  
imports: from sklearn.model_selection import train_test_split
  from sklearn.manifold import trustworthiness
  from sklearn.datasets import load_iris, make_classification, make_regression
  from sklearn.base import clone
  from cuml.testing.utils import array_equal, unit_param, stress_param, ClassEnumerator, get_classes_from_package, compare_svm, compare_probabilistic_svm
  from cuml.tsa.arima import ARIMA
  import pytest
  import pickle
  import cuml
  from cuml.internals.safe_imports import cpu_only_import, cpu_only_import_from
label_desc: Use image node_id 20 for calling a global function with example usage: test_svc_pickle(tmpdir, datatype, params, multiclass, sparse) and returns: model,  data