Fix mechanism: run event by event instead of events by obj