correctly generate classProperties