temporary working branch for events rewrite