Step 4 - Refactoring