re-organized the project