switching event order