change require modules architecture