* project structure refactoring