Add granular support for event dispatch