problem areas refactoring