re-engineered the click binding and event firing