added regenerator