refactoring pep