refactored the structure of the project