#2 Refactoring