code: def reshape_transform_batch(t, old_shape, new_shape):
      """
      EXPERIMENTAL Given a transform ``t``, reshape to different batch shape
      of same number of elements.
  
      This is typically used to correct the transform parameters' shapes after
      reshaping the base distribution of a transformed distribution.
  
      :param t: A transform.
      :type t: ~torch.distributions.transforms.Transform
      :param tuple old_shape: The current shape of ``t``.
      :param tuple new_shape: A new shape.
      :returns: A transform with the same type but given new batch shape.
      :rtype: ~torch.distributions.transforms.Transform
      """
      raise NotImplementedError(
          "reshape_transform_batch() does not suport {}".format(type(t))
      )
  
imports: import numbers
  from functools import singledispatch
  import torch
  from torch.distributions import transform_to, transforms
  import pyro.distributions
  from pyro.infer.reparam import DiscreteCosineReparam, HaarReparam
  from pyro.poutine.messenger import Messenger
  from pyro.poutine.util import site_is_subsample
  from pyro.primitives import get_param_store
label_desc: Use image node_id 21 for calling a global function with example usage: reshape_transform_batch(t, old_shape, new_shape) without return types