++ Refactoring