Refactoring WIP 7