update event mechanism prototype