#39 Refactoring