Seems to be working
Passes all tests