solution to submodules