Added base class for custom events