Is this invocation order correct? Why the need to reset the event?