def METHOD_NAME(self, batch_shape, _instance=None):
    new = self._get_checked_instance(MultivariateStudentT, _instance)
    batch_shape = torch.Size(batch_shape)
    loc_shape = batch_shape + self.event_shape
    scale_shape = loc_shape + self.event_shape
    new.df = self.df.METHOD_NAME(batch_shape)
    new.loc = self.loc.METHOD_NAME(loc_shape)
    new._unbroadcasted_scale_tril = self._unbroadcasted_scale_tril
    if "scale_tril" in self.__dict__:
        new.scale_tril = self.scale_tril.METHOD_NAME(scale_shape)
    if "covariance_matrix" in self.__dict__:
        new.covariance_matrix = self.covariance_matrix.METHOD_NAME(scale_shape)
    if "precision_matrix" in self.__dict__:
        new.precision_matrix = self.precision_matrix.METHOD_NAME(scale_shape)
    new._chi2 = self._chi2.METHOD_NAME(batch_shape)
    super(MultivariateStudentT, new).__init__(
        batch_shape, self.event_shape, validate_args=False
    )
    new._validate_args = self._validate_args
    return new