code: def test_base_kernel(self, kind):
      self.skip_if_no_xla()
      self.skipTest("b/195070752")  # Test is broken by cl/393807414.
  
      if JAX_MODE:
          input_signature = None
      else:
          input_signature = (
              tf.TensorSpec(
                  shape=[None, None], dtype=tf.float32, name="trials"
              ),
              tf.TensorSpec(
                  shape=[None, None], dtype=tf.float32, name="successes"
              ),
              tf.TensorSpec(shape=[2], dtype=tf.int32, name="seed"),
          )
  
      @tf.function(jit_compile=True, input_signature=input_signature)
      def do(trials, successes, seed):
          if kind == "hmc":
              proposal_kernel_kwargs = self.hmc_kwargs()
          else:
              proposal_kernel_kwargs = self.nuts_kwargs()
  
          return windowed_sampling._windowed_adaptive_impl(
              n_draws=9,
              joint_dist=get_joint_distribution(trials),
              kind=kind,
              n_chains=11,
              proposal_kernel_kwargs=proposal_kernel_kwargs,
              num_adaptation_steps=50,
              current_state=None,
              dual_averaging_kwargs={"target_accept_prob": 0.76},
              trace_fn=None,
              return_final_kernel_results=False,
              discard_tuning=True,
              chain_axis_names=None,
              seed=seed,
              successes=successes,
          )
  
      self.evaluate(
          do(
              self.trials + 0.0,
              self.true_values["successes"],
              test_util.test_seed(sampler_type="stateless"),
          )
      )
  
imports: from absl.testing import parameterized
  import numpy
  import tensorflow.compat.v2
  from tensorflow_probability.python.bijectors import identity
  from tensorflow_probability.python.bijectors import pad
  from tensorflow_probability.python.distributions import autoregressive
  from tensorflow_probability.python.distributions import beta_binomial
  from tensorflow_probability.python.distributions import dirichlet
  from tensorflow_probability.python.distributions import half_normal
  from tensorflow_probability.python.distributions import independent
  from tensorflow_probability.python.distributions import joint_distribution_auto_batched
  from tensorflow_probability.python.distributions import joint_distribution_coroutine
  from tensorflow_probability.python.distributions import joint_distribution_named
  from tensorflow_probability.python.distributions import joint_distribution_sequential
  from tensorflow_probability.python.distributions import multinomial
  from tensorflow_probability.python.distributions import mvn_diag
  from tensorflow_probability.python.distributions import normal
  from tensorflow_probability.python.distributions import poisson
  from tensorflow_probability.python.distributions import sample
  from tensorflow_probability.python.distributions import uniform
  from tensorflow_probability.python.experimental import distribute
  from tensorflow_probability.python.experimental.mcmc import windowed_sampling
  from tensorflow_probability.python.internal import callable_util
  from tensorflow_probability.python.internal import distribute_test_lib
  from tensorflow_probability.python.internal import prefer_static
  from tensorflow_probability.python.internal import samplers
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.internal import unnest
  from tensorflow_probability.python.mcmc import diagnostic
label_desc: Use image node_id 4 for calling the PrecompiledTest obj's underlying member method code with example usage: obj.test_base_kernel(kind) and returns: windowed_sampling