Pass all tests
Refactoring