Stage 2 - Refactor