code: def test_iid_semiparametric(bs_setup, seed):
      bs = IIDBootstrap(bs_setup.y, seed=seed)
  
      def func(y, axis=0, params=None):
          if params is not None:
              return (y - params).mean(axis=axis)
          return y.mean(axis=axis)
  
      ci = bs.conf_int(func, reps=10, sampling="semiparametric")
      assert ci.shape == (2, 1)
  
imports: from __future__ import annotations
  import copy
  from typing import Callable, NamedTuple
  import warnings
  import numpy
  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, IIDBootstrap, IndependentSamplesBootstrap, MovingBlockBootstrap, StationaryBootstrap
  from arch.bootstrap._samplers_python import stationary_bootstrap_sample
  from arch.bootstrap._samplers_python import stationary_bootstrap_sample_python
  from arch.bootstrap.base import _loo_jackknife
  from arch.utility.exceptions import StudentizationError
label_desc: Use image node_id 39 for calling a global function with example usage: test_iid_semiparametric(bs_setup, seed) and returns: y, unknown