added (broken) event firing... they fire, but the logic is wrong