Type gendef