base class maker