change structure to modules