public void SwitchLanesForOrderPostStatusUpdate(Order orderNowAfterUpdate, OrderState orderStatePriorToUpdate)
        {
            string msig = " OrderProcessorDataSnapshot::SwitchLanesForOrderPostStatusUpdate() ";

            lock (this.orderStateUpdateAtomicJustInCase) {
                OrderListByState orderLaneBeforeStateUpdate = this.FindStateLaneExpectedByOrderState(orderStatePriorToUpdate);
                OrderListByState orderLaneAfterStateUpdate  = this.FindStateLaneExpectedByOrderState(orderNowAfterUpdate.State);
                if (orderLaneBeforeStateUpdate == orderLaneAfterStateUpdate)
                {
                    return;
                }
                try {
                    orderLaneBeforeStateUpdate.Remove(orderNowAfterUpdate);
                } catch (Exception e) {
                    Assembler.PopupException(msig, e);
                }
                try {
                    orderLaneAfterStateUpdate.Insert(0, orderNowAfterUpdate);
                } catch (Exception e) {
                    Assembler.PopupException(msig, e);
                }
            }
        }