fixed state transition order