lesson 3 wip, lesson 2 small refactoring