code: def _maybe_broadcast(a, b):
      if not (
          tensorshape_util.is_fully_defined(a.shape)
          and tensorshape_util.is_fully_defined(b.shape)
          and tensorshape_util.is_compatible_with(a.shape, b.shape)
      ):
          # If both shapes are well defined and equal, we skip broadcasting.
          b = b + tf.zeros_like(a)
          a = a + tf.zeros_like(b)
      return a, b
  
imports: import tensorflow.compat.v2
  from tensorflow_probability.python.bijectors import sigmoid
  from tensorflow_probability.python.distributions import distribution
  from tensorflow_probability.python.internal import assert_util
  from tensorflow_probability.python.internal import batched_rejection_sampler
  from tensorflow_probability.python.internal import distribution_util
  from tensorflow_probability.python.internal import dtype_util
  from tensorflow_probability.python.internal import implementation_selection
  from tensorflow_probability.python.internal import parameter_properties
  from tensorflow_probability.python.internal import prefer_static
  from tensorflow_probability.python.internal import reparameterization
  from tensorflow_probability.python.internal import samplers
  from tensorflow_probability.python.internal import tensor_util
  from tensorflow_probability.python.internal import tensorshape_util
  from tensorflow_probability.python.math import special
label_desc: Use image node_id 11 for calling a global function with example usage: _maybe_broadcast(a, b) and returns: a,  b