code: def setup(self, dtype, hasna):
      N = 100_000
      if dtype == "boolean[pyarrow]":
          data = np.random.choice([True, False], N, replace=True)
      elif dtype == "float64[pyarrow]":
          data = np.random.randn(N)
      elif dtype == "int64[pyarrow]":
          data = np.arange(N)
      elif dtype == "string[pyarrow]":
          data = np.array([str(i) for i in range(N)], dtype=object)
      elif dtype == "timestamp[ns][pyarrow]":
          data = pd.date_range("2000-01-01", freq="s", periods=N)
      else:
          raise NotImplementedError
  
      arr = pd.array(data, dtype=dtype)
      if hasna:
          arr[::2] = pd.NA
      self.arr = arr
  
imports: import numpy
  import pandas
label_desc: Use image node_id 1 for calling the ArrowExtensionArray obj's underlying member method code with example usage: obj.setup(dtype, hasna) without return types