Generators are abstracted