more details of types of generated class