reshaped the submodule stuff