tests, but still messed up