support events; add default event handler