make MagicChainEventFactory public so it can be used in groovy code