Really revert gen* stuff