refactoring violently