refactor on project structure