refactoring effects