Improve listener invocation