code: def yields_structured_parameter():
      dict_loc_scale = yield trainable_state_util.Parameter(
          init_fn=lambda: {  # pylint:disable=g-long-lambda
              "scale": tf.ones([2]),
              "loc": tf.zeros([2]),
          },
          name="dict_loc_scale",
          constraining_bijector=joint_map.JointMap(
              {"scale": softplus.Softplus(), "loc": identity.Identity()}
          ),
      )
      return normal.Normal(**dict_loc_scale)
  
imports: import functools
  from absl.testing import parameterized
  import numpy
  import tensorflow.compat.v1
  import tensorflow.compat.v2
  from tensorflow_probability.python.bijectors import identity
  from tensorflow_probability.python.bijectors import joint_map
  from tensorflow_probability.python.bijectors import softplus
  from tensorflow_probability.python.distributions import deterministic
  from tensorflow_probability.python.distributions import joint_distribution_auto_batched
  from tensorflow_probability.python.distributions import joint_distribution_sequential
  from tensorflow_probability.python.distributions import lognormal
  from tensorflow_probability.python.distributions import normal
  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 tf_keras
  from tensorflow_probability.python.internal import trainable_state_util
  from tensorflow_probability.python.math import gradient
  from tensorflow_probability.python.math.minimize import minimize
  from tensorflow_probability.python.math.minimize import minimize_stateless
label_desc: Use image node_id 4 for calling a global function with example usage: yields_structured_parameter() and returns: normal