restructring the project