now it passes the tests