Completed Refactoring