use object_setClass instead of set isa immediately to avoid warning