restructure the module and outline