class_docstr: Multiply two or more BNNs.
code: def distributions(self):
      return super().distributions() | {
          "dense": {
              "kernel": normal_lib.Normal(loc=0, scale=1.0),
              "bias": normal_lib.Normal(loc=0, scale=1.0),
          }
      }
  
imports: from typing import Optional
  from flax import linen
  import jax.numpy
  from tensorflow_probability.python.experimental.autobnn import bnn
  from tensorflow_probability.python.experimental.autobnn import likelihoods
  from tensorflow_probability.substrates.jax.bijectors import chain
  from tensorflow_probability.substrates.jax.bijectors import scale
  from tensorflow_probability.substrates.jax.bijectors import shift
  from tensorflow_probability.substrates.jax.distributions import beta
  from tensorflow_probability.substrates.jax.distributions import dirichlet
  from tensorflow_probability.substrates.jax.distributions import half_normal
  from tensorflow_probability.substrates.jax.distributions import normal
  from tensorflow_probability.substrates.jax.distributions import transformed_distribution
label_desc: Use image node_id 2 for calling the Multiply obj's underlying member method code with example usage: obj.distributions() and returns: unknown