code: def test_equivalence(self):
      adj_models = self.models - linspace(-2.0, 2.0, self.k)
      stepm = StepM(
          self.benchmark, adj_models, size=0.20, reps=200, seed=23456
      )
      stepm.compute()
  
      adj_models = self.models_df - linspace(-2.0, 2.0, self.k)
      stepm_pandas = StepM(
          self.benchmark_series,
          adj_models,
          size=0.20,
          reps=200,
          seed=23456,
      )
      stepm_pandas.compute()
      assert isinstance(stepm_pandas.superior_models, list)
      members = adj_models.columns.isin(stepm_pandas.superior_models)
      numeric_locs = np.argwhere(members).squeeze()
      numeric_locs.sort()
      assert_equal(np.array(stepm.superior_models), numeric_locs)
  
imports: from typing import NamedTuple
  import numpy
  from numpy import linspace
  from numpy.random import RandomState
  from numpy.testing import assert_allclose, assert_equal
  import pandas
  from pandas.testing import assert_frame_equal, assert_series_equal
  import pytest
  import scipy.stats
  from arch.bootstrap import CircularBlockBootstrap, MovingBlockBootstrap, StationaryBootstrap
  from arch.bootstrap.multiple_comparison import MCS, SPA, StepM
label_desc: Use image node_id 2 for calling the TestStepM obj's underlying member method code with example usage: obj.test_equivalence() without return types