code: def test_custom_trace(self):
      kernel = test_fixtures.TestTransitionKernel()
      res = sample_chain_with_burnin(
          num_results=2,
          current_state=0.0,
          kernel=kernel,
          trace_fn=lambda *args: args,
          seed=test_util.test_seed(),
      )
      trace = res.trace
  
      self.assertAllClose([2], tensorshape_util.as_list(trace[0].shape))
      self.assertAllClose(
          [2], tensorshape_util.as_list(trace[1].counter_1.shape)
      )
      self.assertAllClose(
          [2], tensorshape_util.as_list(trace[1].counter_2.shape)
      )
  
      trace = self.evaluate(trace)
      self.assertAllClose([1, 2], trace[0])
      self.assertAllClose([1, 2], trace[1].counter_1)
      self.assertAllClose([2, 4], trace[1].counter_2)
  
imports: import collections
  import warnings
  from absl.testing import parameterized
  import numpy
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions import normal
  from tensorflow_probability.python.experimental.mcmc import covariance_reducer
  from tensorflow_probability.python.experimental.mcmc import expectations_reducer
  from tensorflow_probability.python.experimental.mcmc.internal import test_fixtures
  from tensorflow_probability.python.experimental.mcmc.sample_fold import sample_chain_with_burnin
  from tensorflow_probability.python.experimental.mcmc.sample_fold import sample_fold
  from tensorflow_probability.python.internal import samplers
  from tensorflow_probability.python.internal import tensorshape_util
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.mcmc import hmc
label_desc: Use image node_id 5 for calling the SampleChainTest obj's underlying member method code with example usage: obj.test_custom_trace() without return types