first test passed, code needs to be refactored