added submodules handling