splitting the main module into parts.
And put back the main module