Refactoring, unit tests are possible also