def METHOD_NAME(self, y: Tensor) -> Tensor:
    F = getF(y)
    lp = 0.0
    x = y
    for t in self.transforms[::-1]:
        x = t.f_inv(y)
        ladj = t.log_abs_det_jac(x, y)
        lp = lp - sum_trailing_axes(F, ladj, self.event_dim - t.event_dim)
        y = x
    return self.base_distribution.METHOD_NAME(x) + lp