update submodules and dependency