Intermediate refactoring
Refactoring