successful refactoring