first implementation of an update event listener