class defs