event update function skeleton