public void readComboLegs()
        {
            if (msgVersion >= 14)
            {
                contract.ComboLegsDescription = eDecoder.ReadString();
            }

            if (msgVersion >= 29)
            {
                int comboLegsCount = eDecoder.ReadInt();
                if (comboLegsCount > 0)
                {
                    contract.ComboLegs = new List <ComboLeg>(comboLegsCount);
                    for (int i = 0; i < comboLegsCount; ++i)
                    {
                        int    conId              = eDecoder.ReadInt();
                        int    ratio              = eDecoder.ReadInt();
                        String action             = eDecoder.ReadString();
                        String exchange           = eDecoder.ReadString();
                        int    openClose          = eDecoder.ReadInt();
                        int    shortSaleSlot      = eDecoder.ReadInt();
                        String designatedLocation = eDecoder.ReadString();
                        int    exemptCode         = eDecoder.ReadInt();

                        ComboLeg comboLeg = new ComboLeg(conId, ratio, action, exchange, openClose,
                                                         shortSaleSlot, designatedLocation, exemptCode);
                        contract.ComboLegs.Add(comboLeg);
                    }
                }

                int orderComboLegsCount = eDecoder.ReadInt();
                if (orderComboLegsCount > 0)
                {
                    order.OrderComboLegs = new List <OrderComboLeg>(orderComboLegsCount);
                    for (int i = 0; i < orderComboLegsCount; ++i)
                    {
                        double price = eDecoder.ReadDoubleMax();

                        OrderComboLeg orderComboLeg = new OrderComboLeg(price);
                        order.OrderComboLegs.Add(orderComboLeg);
                    }
                }
            }
        }
        public override bool Equals(Object other)
        {
            if (this == other)
            {
                return(true);
            }
            else if (other == null)
            {
                return(false);
            }

            OrderComboLeg theOther = (OrderComboLeg)other;

            if (price != theOther.Price)
            {
                return(false);
            }

            return(true);
        }