#50 Fix all code to pass the tests