code: def __init__(
      self,
      scipy_func,
      mpmath_func,
      arg_spec,
      name=None,
      dps=None,
      prec=None,
      n=None,
      rtol=1e-7,
      atol=1e-300,
      ignore_inf_sign=False,
      distinguish_nan_and_inf=True,
      nan_ok=True,
      param_filter=None,
  ):
      # mpmath tests are really slow (see gh-6989).  Use a small number of
      # points by default, increase back to 5000 (old default) if XSLOW is
      # set
      if n is None:
          try:
              is_xslow = int(os.environ.get("SCIPY_XSLOW", "0"))
          except ValueError:
              is_xslow = False
  
          n = 5000 if is_xslow else 500
  
      self.scipy_func = scipy_func
      self.mpmath_func = mpmath_func
      self.arg_spec = arg_spec
      self.dps = dps
      self.prec = prec
      self.n = n
      self.rtol = rtol
      self.atol = atol
      self.ignore_inf_sign = ignore_inf_sign
      self.nan_ok = nan_ok
      if isinstance(self.arg_spec, np.ndarray):
          self.is_complex = np.issubdtype(
              self.arg_spec.dtype, np.complexfloating
          )
      else:
          self.is_complex = any(
              [isinstance(arg, ComplexArg) for arg in self.arg_spec]
          )
      self.ignore_inf_sign = ignore_inf_sign
      self.distinguish_nan_and_inf = distinguish_nan_and_inf
      if not name or name == "<lambda>":
          name = getattr(scipy_func, "__name__", None)
      if not name or name == "<lambda>":
          name = getattr(mpmath_func, "__name__", None)
      self.name = name
      self.param_filter = param_filter
  
imports: import os
  import sys
  import time
  from itertools import zip_longest
  import numpy
  from numpy.testing import assert_
  import pytest
  from scipy.special._testutils import assert_func_equal
label_desc: Use image node_id 1 to create a new MpmathData object  with example: obj = MpmathData(scipy_func, mpmath_func, arg_spec, name, dps, prec, n, rtol, atol, ignore_inf_sign, distinguish_nan_and_inf, nan_ok, param_filter)