moved z into submodules