Step 1 of refactor
more refactoring