added aggregate base class