add Engine.Gen for generator/deletion pairs