better small object base class