added event polling