refactore project