Refactoring part 3.