Difficulty refactor