code: def setup(self, dtype):
      N = 10**6
      if dtype == "String":
          self.idx = Index([f"i-{i}" for i in range(N)], dtype=object)
      elif dtype == "Float":
          self.idx = Index(np.arange(N), dtype=np.float64)
      elif dtype == "Int":
          self.idx = Index(np.arange(N), dtype=np.int64)
      self.array_mask = (np.arange(N) % 3) == 0
      self.series_mask = Series(self.array_mask)
      self.sorted = self.idx.sort_values()
      half = N // 2
      self.non_unique = self.idx[:half].append(self.idx[:half])
      self.non_unique_sorted = self.sorted[:half].repeat(2)
      self.key = self.sorted[N // 4]
  
imports: import gc
  import numpy
  from pandas import DatetimeIndex, Index, IntervalIndex, MultiIndex, RangeIndex, Series, date_range
  from .pandas_vb_common import setup
label_desc: Use image node_id 1 for calling the Indexing obj's underlying member method code with example usage: obj.setup(dtype) without return types