Pure Refactoring