hard refactoring