added copy constructor
uupdate submodules