Improve event system.