project structure refine