adding support for submodules