code: def _beta_binomial(trials):
      """Returns a function that constructs a beta binomial distribution."""
  
      def _beta_binomial_distribution(mean, inverse_concentration):
          """Returns a beta binomial distribution with the given parameters."""
          # Mean and inverse concentration are broadcast across days.
          mean = mean[..., tf.newaxis]
          inverse_concentration = inverse_concentration[..., tf.newaxis]
  
          bb = beta_binomial.BetaBinomial(
              total_count=trials,
              concentration0=(1 - mean) / inverse_concentration,
              concentration1=mean / inverse_concentration,
          )
          return independent.Independent(
              bb, reinterpreted_batch_ndims=2
          )
  
      return _beta_binomial_distribution
  
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 6 for calling a global function with example usage: _beta_binomial(trials) and returns: _beta_binomial_distribution, independent