refactor apartment project