def METHOD_NAME(v, z, w, symmetric=True):
    """Wrap the cuda method to deal with shapes."""
    v, w = torch.broadcast_tensors(v, w)
    shape = v.shape
    # z_shape = z.shape
    z = z.squeeze()
    assert len(z.shape) == 1
    v = v.contiguous()
    w = w.contiguous()
    z = z.contiguous()
    N = v.size(-1)
    assert w.size(-1) == N
    y = _cauchy_mult(v.view(-1, N), z, w.view(-1, N), symmetric=symmetric)
    y = y.view(*shape[:-1], z.size(-1))
    # y = z.new_zeros(*shape[:-1], z.size(-1))
    return y