Begun the refactoring