reorganise for submodule