core base class.