code: def get_joint_distribution(
      trials,
      mean_prior=lambda: uniform.Uniform(0.0, 1.0),
      inverse_concentration_prior=lambda: half_normal.HalfNormal(5.0),
  ):
      """Returns a joint distribution over parameters and successes."""
      param_shape = ps.shape(trials)[:1]
      mean = sample.Sample(mean_prior(), param_shape)
      inverse_concentration = sample.Sample(
          inverse_concentration_prior(), param_shape
      )
      return jdn.JointDistributionNamed(
          dict(
              mean=mean,
              inverse_concentration=inverse_concentration,
              successes=_beta_binomial(trials),
          ),
          name="jd",
      )
  
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 7 for calling a global function with example usage: get_joint_distribution(trials, mean_prior, inverse_concentration_prior) and returns: jdn