Refactor cycle 1
Refactor part 2