Finished refactoring original project