processing events now handles keys