fix the turn order with exception thrown