code: def _kl_deterministic_distribution(a, b, name=None):
      """Calculate the batched KL divergence `KL(a || b)` with `a` Deterministic.
  
      Args:
        a: instance of a Deterministic distribution object.
        b: instance of a Distribution distribution object.
        name: (optional) Name to use for created operations. Default is
          'kl_deterministic_distribution'.
  
      Returns:
        Batchwise `KL(a || b)`.
      """
      with tf.name_scope(name or "kl_deterministic_distribution"):
          return -b.log_prob(a.loc)
  
imports: import abc
  import six
  import tensorflow.compat.v2
  from tensorflow_probability.python.bijectors import pad
  from tensorflow_probability.python.bijectors import reshape
  from tensorflow_probability.python.bijectors import shift
  from tensorflow_probability.python.distributions import distribution
  from tensorflow_probability.python.distributions import kullback_leibler
  from tensorflow_probability.python.internal import assert_util
  from tensorflow_probability.python.internal import dtype_util
  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 tensor_util
  from tensorflow_probability.python.internal import tensorshape_util
label_desc: Use image node_id 1 for calling a global function with example usage: _kl_deterministic_distribution(a, b, name) and returns: unknown