def METHOD_NAME(shape, dim, flip):
    loc = torch.empty(shape).uniform_(-1.0, 1.0).requires_grad_()
    scale = torch.empty(shape).uniform_(0.5, 1.5).requires_grad_()
    def model():
        with pyro.plate_stack("plates", shape[:dim]):
            return pyro.sample("x", dist.Normal(loc, scale).to_event(-dim))
    check_init_reparam(model, HaarReparam(dim=dim, flip=flip))