code: def get_scalar_distributions(
      batch_dim_1=(1, 3, 4),
      batch_dim_2=(2, 2, 4),
      batch_dim_3=(2, 1, 1),
      axis=1,
      dtype=tf.float32,
      validate_args=False,
      is_static=False,
  ):
      dist1 = normal.Normal(
          loc=maybe_static(
              tf.zeros(batch_dim_1, dtype=dtype), is_static
          ),
          scale=maybe_static(
              tf.ones(batch_dim_1, dtype=dtype), is_static
          ),
      )
  
      dist2 = exponential.Exponential(
          rate=maybe_static(tf.ones(batch_dim_2), is_static)
      )
  
      dist3 = logistic.Logistic(
          loc=maybe_static(
              tf.zeros(batch_dim_3, dtype=dtype), is_static
          ),
          scale=maybe_static(
              tf.ones(batch_dim_3, dtype=dtype), is_static
          ),
      )
      return (
          [dist1, dist2, dist3],
          batch_concat.BatchConcat(
              distributions=[dist1, dist2, dist3],
              axis=axis,
              validate_args=validate_args,
          ),
      )
  
imports: from absl.testing import parameterized
  import tensorflow.compat.v1
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions import batch_concat
  from tensorflow_probability.python.distributions import dirichlet
  from tensorflow_probability.python.distributions import exponential
  from tensorflow_probability.python.distributions import independent
  from tensorflow_probability.python.distributions import logistic
  from tensorflow_probability.python.distributions import mvn_diag
  from tensorflow_probability.python.distributions import normal
  from tensorflow_probability.python.distributions import onehot_categorical
  from tensorflow_probability.python.internal import test_util
label_desc: Use image node_id 2 for calling a global function with example usage: get_scalar_distributions(batch_dim_1, batch_dim_2, batch_dim_3, axis, dtype, validate_args, is_static) and returns: list,  batch_concat