Cosmo restructure + exceptions