refactoring babysteps