generator: class types