Refactoring, unit tests fail
Refactoring