working on tests (half-done, busted)