Refactoring phase two
Refactoring phase ...