fixes, all current tests pass