sore refactoring