Refactoring everything