code: def test_dist_fn_takes_kwargs(self):
      dist = jdn.JointDistributionNamed(
          {
              "positive": exponential.Exponential(rate=1.0),
              "negative": scale.Scale(-1.0)(
                  exponential.Exponential(rate=1.0)
              ),
              "b": lambda **kwargs: normal.Normal(  # pylint: disable=g-long-lambda
                  loc=kwargs["negative"],
                  scale=kwargs["positive"],
                  validate_args=True,
              ),
              "a": lambda **kwargs: scale.Scale(
                  kwargs["b"]
              )(  # pylint: disable=g-long-lambda
                  gamma.Gamma(
                      concentration=-kwargs["negative"],
                      rate=kwargs["positive"],
                      validate_args=True,
                  )
              ),
          },
          validate_args=True,
      )
      lp = dist.log_prob(dist.sample(5, seed=test_util.test_seed()))
      self.assertAllEqual(lp.shape, [5])
  
imports: import collections
  from absl.testing import parameterized
  import numpy
  import tensorflow.compat.v2
  from tensorflow_probability.python.bijectors import bijector_test_util
  from tensorflow_probability.python.bijectors import scale
  from tensorflow_probability.python.distributions import bernoulli
  from tensorflow_probability.python.distributions import beta
  from tensorflow_probability.python.distributions import exponential
  from tensorflow_probability.python.distributions import gamma
  from tensorflow_probability.python.distributions import half_normal
  from tensorflow_probability.python.distributions import independent
  from tensorflow_probability.python.distributions import joint_distribution_named
  from tensorflow_probability.python.distributions import joint_distribution_sequential
  from tensorflow_probability.python.distributions import kullback_leibler
  from tensorflow_probability.python.distributions import lognormal
  from tensorflow_probability.python.distributions import mvn_diag
  from tensorflow_probability.python.distributions import normal
  from tensorflow_probability.python.distributions import sample
  from tensorflow_probability.python.distributions import student_t
  from tensorflow_probability.python.distributions import transformed_distribution
  from tensorflow_probability.python.internal import test_util
label_desc: Use image node_id 11 for calling the JointDistributionNamedTest obj's underlying member method code with example usage: obj.test_dist_fn_takes_kwargs() without return types