Works in a bunch of cases; redesigned