From Didier Gautheron via bug 3052:
authorgerald <gerald@f5534014-38df-0310-8fa8-9805f1628bb7>
Tue, 26 May 2009 00:49:38 +0000 (00:49 +0000)
committergerald <gerald@f5534014-38df-0310-8fa8-9805f1628bb7>
Tue, 26 May 2009 00:49:38 +0000 (00:49 +0000)
Add:
- FIX 4.0 to 4.4 fields, auto generated with XSLT stylesheets applied on
http://www.quickfixengine.org/ xml files (not included quickfixengine code is
BSD but xml files have no copyright).

- value_string functions for string keys, added to value_string.c.

- FIX desegmentation, it doesn't work well with malformed FIX PDU.

git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@28478 f5534014-38df-0310-8fa8-9805f1628bb7

17 files changed:
AUTHORS
epan/dissectors/Makefile.common
epan/dissectors/packet-fix.c
epan/dissectors/packet-fix.h [new file with mode: 0644]
epan/value_string.c
epan/value_string.h
fix/FIX.xml [new file with mode: 0644]
fix/FIX40.xml [new file with mode: 0644]
fix/FIX41.xml [new file with mode: 0644]
fix/FIX42.xml [new file with mode: 0644]
fix/FIX43.xml [new file with mode: 0644]
fix/FIX44.xml [new file with mode: 0644]
fix/README [new file with mode: 0644]
fix/Values.xsl [new file with mode: 0644]
fix/hfDecl.xsl [new file with mode: 0644]
fix/hfField.xsl [new file with mode: 0644]
fix/hfList.xsl [new file with mode: 0644]

diff --git a/AUTHORS b/AUTHORS
index bb0e6e493bdf65f74366fbdb48ea69da618ba2e1..6fd75d4668c55ae745b0319b00f50a6e35cae4fa 100644 (file)
--- a/AUTHORS
+++ b/AUTHORS
@@ -109,6 +109,7 @@ Martin Maciaszek        <fastjack[AT]i-s-o.net> {
 Didier Jorand           <Didier.Jorand[AT]alcatel.fr> {
        SNMP support
        TCP SEQ/ACK analysis bugfix for sequence number wrapping.
+       FIX 4.0 to 4.4 fields
 }
 
 Jun-ichiro itojun Hagino <itojun[AT]itojun.org> {
index ff014dd58574e7809bf1836a5f029ebdd2ba6c84..84609adc3785cb38b89825fe023987f69c0e2219 100644 (file)
@@ -1029,6 +1029,7 @@ DISSECTOR_INCLUDES =      \
        packet-fcswils.h        \
        packet-fddi.h   \
        packet-ff.h     \
+       packet-fix.h    \
        packet-fmp.h    \
        packet-fmp_notify.h     \
        packet-fr.h     \
index 8167e05dc81d2adda556d363b00a521ab368156b..8baab0ccbb71b2745ba18c88ae3b24d7504d9d27 100644 (file)
@@ -23,6 +23,8 @@
  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  *
  * Documentation: http://www.fixprotocol.org/
+ * Fields and messages from http://www.quickfixengine.org/ xml
+ *
  */
 
 #ifdef HAVE_CONFIG_H
 #endif
 
 #include <string.h>
-#include <glib.h>
 #include <epan/packet.h>
-
-static const value_string message_types[] _U_ = {
-      { 0x30, "Heartbeat" },
-      { 0x31, "Test Request" },
-      { 0x32, "Resend Request" },
-      { 0x33, "Reject" },
-      { 0x34, "Sequence Reset" },
-      { 0x35, "Logout" },
-      { 0x36, "Indication of Interest" },
-      { 0x37, "Advertisement" },
-      { 0x38, "Execution Report" },
-      { 0x39, "Cancel Reject" },
-      { 0x41, "Logon" },
-      { 0x42, "News" },
-      { 0x43, "Email" },
-      { 0x44, "New Order - Single" },
-      { 0x45, "New Order - List" },
-      { 0x46, "Order Cancel Request" },
-      { 0x47, "Order Cancel/Replace Request" },
-      { 0x48, "Order Status Request" },
-      { 0, NULL }
-};
+#include <epan/expert.h>
+#include <epan/prefs.h>
+#include <epan/conversation.h>
+
+#include "packet-tcp.h"
+
+typedef struct _fix_field {
+  int      tag;                /* FIX tag */
+  int     hf_id;
+  int      type;       /* */
+  const void *table;   
+} fix_field;
+
+typedef struct _fix_parameter {
+    int field_len;
+    int tag_len;
+    int value_offset;
+    int value_len;
+    int ctrla_offset;
+} fix_parameter;
 
 /* Initialize the protocol and registered fields */
 static int proto_fix = -1;
+static dissector_handle_t fix_handle;
+
+/* desegmentation of fix */
+static gboolean fix_desegment = TRUE;
 
 /* Initialize the subtree pointers */
 static gint ett_fix = -1;
+static gint ett_unknow = -1;
+static gint ett_badfield = -1;
+static gint ett_checksum = -1;
+
+static int hf_fix_data = -1; /* continuation data */
+static int hf_fix_checksum_good = -1; 
+static int hf_fix_checksum_bad = -1; 
+static int hf_fix_field_value = -1; 
+static int hf_fix_field_tag = -1;
+
+static range_t *global_fix_tcp_range = NULL;
+static range_t *fix_tcp_range = NULL;
+
+/* 8=FIX */
+#define MARKER_TAG "8=FIX"
+#define MARKER_LEN 5 
+static int fix_marker(tvbuff_t *tvb, int offset)
+{
+  return tvb_strneql(tvb, offset, MARKER_TAG, MARKER_LEN);
+}
 
-/* message type list */
-static GData *msg_types;
-
-static int hf_fix_Account = -1; /* Tag 1 */
-static int hf_fix_AdvId = -1; /* Tag 2 */
-static int hf_fix_AdvRefID = -1; /* Tag 3 */
-static int hf_fix_AdvSide = -1; /* Tag 4 */
-static int hf_fix_AdvTransType = -1; /* Tag 5 */
-static int hf_fix_AvgPx = -1; /* Tag 6 */
-static int hf_fix_BeginSeqNo = -1; /* Tag 7 */
-static int hf_fix_BeginString = -1; /* Tag 8 */
-static int hf_fix_BodyLength = -1; /* Tag 9 */
-static int hf_fix_CheckSum = -1; /* Tag 10 */
-static int hf_fix_ClOrdID = -1; /* Tag 11 */
-static int hf_fix_Commission = -1; /* Tag 12 */
-static int hf_fix_CommType = -1; /* Tag 13 */
-static int hf_fix_CumQty = -1; /* Tag 14 */
-static int hf_fix_Currency = -1; /* Tag 15 */
-static int hf_fix_EndSeqNo = -1; /* Tag 16 */
-static int hf_fix_ExecID = -1; /* Tag 17 */
-static int hf_fix_ExecInst = -1; /* Tag 18 */
-static int hf_fix_ExecRefID = -1; /* Tag 19 */
-static int hf_fix_ExecTransType = -1; /* Tag 20 */
-static int hf_fix_HandlInst = -1; /* Tag 21 */
-static int hf_fix_SecurityIDSource = -1; /* Tag 22 */
-static int hf_fix_IOIid = -1; /* Tag 23 */
-static int hf_fix_IOIOthSvc = -1; /* Tag 24 */
-static int hf_fix_IOIQltyInd = -1; /* Tag 25 */
-static int hf_fix_IOIRefID = -1; /* Tag 26 */
-static int hf_fix_IOIQty = -1; /* Tag 27 */
-static int hf_fix_IOITransType = -1; /* Tag 28 */
-static int hf_fix_LastCapacity = -1; /* Tag 29 */
-static int hf_fix_LastMkt = -1; /* Tag 30 */
-static int hf_fix_LastPx = -1; /* Tag 31 */
-static int hf_fix_LastQty = -1; /* Tag 32 */
-static int hf_fix_LinesOfText = -1; /* Tag 33 */
-static int hf_fix_MsgSeqNum = -1; /* Tag 34 */
-static int hf_fix_MsgType = -1; /* Tag 35 */
-static int hf_fix_NewSeqNo = -1; /* Tag 36 */
-static int hf_fix_OrderID = -1; /* Tag 37 */
-static int hf_fix_OrderQty = -1; /* Tag 38 */
-static int hf_fix_OrdStatus = -1; /* Tag 39 */
-static int hf_fix_OrdType = -1; /* Tag 40 */
-static int hf_fix_OrigClOrdID = -1; /* Tag 41 */
-static int hf_fix_OrigTime = -1; /* Tag 42 */
-static int hf_fix_PossDupFlag = -1; /* Tag 43 */
-static int hf_fix_Price = -1; /* Tag 44 */
-static int hf_fix_RefSeqNum = -1; /* Tag 45 */
-static int hf_fix_RelatdSym = -1; /* Tag 46 */
-static int hf_fix_Rule80A = -1; /* Tag 47 */
-static int hf_fix_SecurityID = -1; /* Tag 48 */
-static int hf_fix_SenderCompID = -1; /* Tag 49 */
-static int hf_fix_SenderSubID = -1; /* Tag 50 */
-static int hf_fix_SendingDate = -1; /* Tag 51 */
-static int hf_fix_SendingTime = -1; /* Tag 52 */
-static int hf_fix_Quantity = -1; /* Tag 53 */
-static int hf_fix_Side = -1; /* Tag 54 */
-static int hf_fix_Symbol = -1; /* Tag 55 */
-static int hf_fix_TargetCompID = -1; /* Tag 56 */
-static int hf_fix_TargetSubID = -1; /* Tag 57 */
-static int hf_fix_Text = -1; /* Tag 58 */
-static int hf_fix_TimeInForce = -1; /* Tag 59 */
-static int hf_fix_TransactTime = -1; /* Tag 60 */
-static int hf_fix_Urgency = -1; /* Tag 61 */
-static int hf_fix_ValidUntilTime = -1; /* Tag 62 */
-static int hf_fix_SettlmntTyp = -1; /* Tag 63 */
-static int hf_fix_FutSettDate = -1; /* Tag 64 */
-static int hf_fix_SymbolSfx = -1; /* Tag 65 */
-static int hf_fix_ListID = -1; /* Tag 66 */
-static int hf_fix_ListSeqNo = -1; /* Tag 67 */
-static int hf_fix_TotNoOrders = -1; /* Tag 68 */
-static int hf_fix_ListExecInst = -1; /* Tag 69 */
-static int hf_fix_AllocID = -1; /* Tag 70 */
-static int hf_fix_AllocTransType = -1; /* Tag 71 */
-static int hf_fix_RefAllocID = -1; /* Tag 72 */
-static int hf_fix_NoOrders = -1; /* Tag 73 */
-static int hf_fix_AvgPrxPrecision = -1; /* Tag 74 */
-static int hf_fix_TradeDate = -1; /* Tag 75 */
-static int hf_fix_ExecBroker = -1; /* Tag 76 */
-static int hf_fix_PositionEffect = -1; /* Tag 77 */
-static int hf_fix_NoAllocs = -1; /* Tag 78 */
-static int hf_fix_AllocAccount = -1; /* Tag 79 */
-static int hf_fix_AllocQty = -1; /* Tag 80 */
-static int hf_fix_ProcessCode = -1; /* Tag 81 */
-static int hf_fix_NoRpts = -1; /* Tag 82 */
-static int hf_fix_RptSeq = -1; /* Tag 83 */
-static int hf_fix_CxlQty = -1; /* Tag 84 */
-static int hf_fix_NoDlvyInst = -1; /* Tag 85 */
-static int hf_fix_DlvyInst = -1; /* Tag 86 */
-static int hf_fix_AllocStatus = -1; /* Tag 87 */
-static int hf_fix_AllocRejCode = -1; /* Tag 88 */
-static int hf_fix_Signature = -1; /* Tag 89 */
-static int hf_fix_SecureDataLen = -1; /* Tag 90 */
-static int hf_fix_SecureData = -1; /* Tag 91 */
-static int hf_fix_BrokerOfCredit = -1; /* Tag 92 */
-static int hf_fix_SignatureLength = -1; /* Tag 93 */
-static int hf_fix_EmailType = -1; /* Tag 94 */
-static int hf_fix_RawDataLength = -1; /* Tag 95 */
-static int hf_fix_RawData = -1; /* Tag 96 */
-static int hf_fix_PossResend = -1; /* Tag 97 */
-static int hf_fix_EncryptMethod = -1; /* Tag 98 */
-static int hf_fix_StopPx = -1; /* Tag 99 */
-static int hf_fix_ExDestination = -1; /* Tag 100 */
-static int hf_fix_CxlRejReason = -1; /* Tag 102 */
-static int hf_fix_OrdRejReason = -1; /* Tag 103 */
-static int hf_fix_IOIQualifier = -1; /* Tag 104 */
-static int hf_fix_WaveNo = -1; /* Tag 105 */
-static int hf_fix_Issuer = -1; /* Tag 106 */
-static int hf_fix_SecurityDesc = -1; /* Tag 107 */
-static int hf_fix_HeartBtInt = -1; /* Tag 108 */
-static int hf_fix_ClientID = -1; /* Tag 109 */
-static int hf_fix_MinQty = -1; /* Tag 110 */
-static int hf_fix_MaxFloor = -1; /* Tag 111 */
-static int hf_fix_TestReqID = -1; /* Tag 112 */
-static int hf_fix_ReportToExch = -1; /* Tag 113 */
-static int hf_fix_LocateReqd = -1; /* Tag 114 */
-static int hf_fix_OnBehalfOfCompID = -1; /* Tag 115 */
-static int hf_fix_OnBehalfOfSubID = -1; /* Tag 116 */
-static int hf_fix_QuoteID = -1; /* Tag 117 */
-static int hf_fix_NetMoney = -1; /* Tag 118 */
-static int hf_fix_SettlCurrAmt = -1; /* Tag 119 */
-static int hf_fix_SettlCurrency = -1; /* Tag 120 */
-static int hf_fix_ForexReq = -1; /* Tag 121 */
-static int hf_fix_OrigSendingTime = -1; /* Tag 122 */
-static int hf_fix_GapFillFlag = -1; /* Tag 123 */
-static int hf_fix_NoExecs = -1; /* Tag 124 */
-static int hf_fix_CxlType = -1; /* Tag 125 */
-static int hf_fix_ExpireTime = -1; /* Tag 126 */
-static int hf_fix_DKReason = -1; /* Tag 127 */
-static int hf_fix_DeliverToCompID = -1; /* Tag 128 */
-static int hf_fix_DeliverToSubID = -1; /* Tag 129 */
-static int hf_fix_IOINaturalFlag = -1; /* Tag 130 */
-static int hf_fix_QuoteReqID = -1; /* Tag 131 */
-static int hf_fix_BidPx = -1; /* Tag 132 */
-static int hf_fix_OfferPx = -1; /* Tag 133 */
-static int hf_fix_BidSize = -1; /* Tag 134 */
-static int hf_fix_OfferSize = -1; /* Tag 135 */
-static int hf_fix_NoMiscFees = -1; /* Tag 136 */
-static int hf_fix_MiscFeeAmt = -1; /* Tag 137 */
-static int hf_fix_MiscFeeCurr = -1; /* Tag 138 */
-static int hf_fix_MiscFeeType = -1; /* Tag 139 */
-static int hf_fix_PrevClosePx = -1; /* Tag 140 */
-static int hf_fix_ResetSeqNumFlag = -1; /* Tag 141 */
-static int hf_fix_SenderLocationID = -1; /* Tag 142 */
-static int hf_fix_TargetLocationID = -1; /* Tag 143 */
-static int hf_fix_OnBehalfOfLocationID = -1; /* Tag 144 */
-static int hf_fix_DeliverToLocationID = -1; /* Tag 145 */
-static int hf_fix_NoRelatedSym = -1; /* Tag 146 */
-static int hf_fix_Subject = -1; /* Tag 147 */
-static int hf_fix_Headline = -1; /* Tag 148 */
-static int hf_fix_URLLink = -1; /* Tag 149 */
-static int hf_fix_ExecType = -1; /* Tag 150 */
-static int hf_fix_LeavesQty = -1; /* Tag 151 */
-static int hf_fix_CashOrderQty = -1; /* Tag 152 */
-static int hf_fix_AllocAvgPx = -1; /* Tag 153 */
-static int hf_fix_AllocNetMoney = -1; /* Tag 154 */
-static int hf_fix_SettlCurrFxRate = -1; /* Tag 155 */
-static int hf_fix_SettlCurrFxRateCalc = -1; /* Tag 156 */
-static int hf_fix_NumDaysInterest = -1; /* Tag 157 */
-static int hf_fix_AccruedInterestRate = -1; /* Tag 158 */
-static int hf_fix_AccruedInterestAmt = -1; /* Tag 159 */
-static int hf_fix_SettlInstMode = -1; /* Tag 160 */
-static int hf_fix_AllocText = -1; /* Tag 161 */
-static int hf_fix_SettlInstID = -1; /* Tag 162 */
-static int hf_fix_SettlInstTransType = -1; /* Tag 163 */
-static int hf_fix_EmailThreadID = -1; /* Tag 164 */
-static int hf_fix_SettlInstSource = -1; /* Tag 165 */
-static int hf_fix_SettlLocation = -1; /* Tag 166 */
-static int hf_fix_SecurityType = -1; /* Tag 167 */
-static int hf_fix_EffectiveTime = -1; /* Tag 168 */
-static int hf_fix_StandInstDbType = -1; /* Tag 169 */
-static int hf_fix_StandInstDbName = -1; /* Tag 170 */
-static int hf_fix_StandInstDbID = -1; /* Tag 171 */
-static int hf_fix_SettlDeliveryType = -1; /* Tag 172 */
-static int hf_fix_SettlDepositoryCode = -1; /* Tag 173 */
-static int hf_fix_SettlBrkrCode = -1; /* Tag 174 */
-static int hf_fix_SettlInstCode = -1; /* Tag 175 */
-static int hf_fix_SecuritySettlAgentName = -1; /* Tag 176 */
-static int hf_fix_SecuritySettlAgentCode = -1; /* Tag 177 */
-static int hf_fix_SecuritySettlAgentAcctNum = -1; /* Tag 178 */
-static int hf_fix_SecuritySettlAgentAcctName = -1; /* Tag 179 */
-static int hf_fix_SecuritySettlAgentContactName = -1; /* Tag 180 */
-static int hf_fix_SecuritySettlAgentContactPhone = -1; /* Tag 181 */
-static int hf_fix_CashSettlAgentName = -1; /* Tag 182 */
-static int hf_fix_CashSettlAgentCode = -1; /* Tag 183 */
-static int hf_fix_CashSettlAgentAcctNum = -1; /* Tag 184 */
-static int hf_fix_CashSettlAgentAcctName = -1; /* Tag 185 */
-static int hf_fix_CashSettlAgentContactName = -1; /* Tag 186 */
-static int hf_fix_CashSettlAgentContactPhone = -1; /* Tag 187 */
-static int hf_fix_BidSpotRate = -1; /* Tag 188 */
-static int hf_fix_BidForwardPoints = -1; /* Tag 189 */
-static int hf_fix_OfferSpotRate = -1; /* Tag 190 */
-static int hf_fix_OfferForwardPoints = -1; /* Tag 191 */
-static int hf_fix_OrderQty2 = -1; /* Tag 192 */
-static int hf_fix_FutSettDate2 = -1; /* Tag 193 */
-static int hf_fix_LastSpotRate = -1; /* Tag 194 */
-static int hf_fix_LastForwardPoints = -1; /* Tag 195 */
-static int hf_fix_AllocLinkID = -1; /* Tag 196 */
-static int hf_fix_AllocLinkType = -1; /* Tag 197 */
-static int hf_fix_SecondaryOrderID = -1; /* Tag 198 */
-static int hf_fix_NoIOIQualifiers = -1; /* Tag 199 */
-static int hf_fix_MaturityMonthYear = -1; /* Tag 200 */
-static int hf_fix_PutOrCall = -1; /* Tag 201 */
-static int hf_fix_StrikePrice = -1; /* Tag 202 */
-static int hf_fix_CoveredOrUncovered = -1; /* Tag 203 */
-static int hf_fix_CustomerOrFirm = -1; /* Tag 204 */
-static int hf_fix_MaturityDay = -1; /* Tag 205 */
-static int hf_fix_OptAttribute = -1; /* Tag 206 */
-static int hf_fix_SecurityExchange = -1; /* Tag 207 */
-static int hf_fix_NotifyBrokerOfCredit = -1; /* Tag 208 */
-static int hf_fix_AllocHandlInst = -1; /* Tag 209 */
-static int hf_fix_MaxShow = -1; /* Tag 210 */
-static int hf_fix_PegDifference = -1; /* Tag 211 */
-static int hf_fix_XmlDataLen = -1; /* Tag 212 */
-static int hf_fix_XmlData = -1; /* Tag 213 */
-static int hf_fix_SettlInstRefID = -1; /* Tag 214 */
-static int hf_fix_NoRoutingIDs = -1; /* Tag 215 */
-static int hf_fix_RoutingType = -1; /* Tag 216 */
-static int hf_fix_RoutingID = -1; /* Tag 217 */
-static int hf_fix_Spread = -1; /* Tag 218 */
-static int hf_fix_Benchmark = -1; /* Tag 219 */
-static int hf_fix_BenchmarkCurveCurrency = -1; /* Tag 220 */
-static int hf_fix_BenchmarkCurveName = -1; /* Tag 221 */
-static int hf_fix_BenchmarkCurvePoint = -1; /* Tag 222 */
-static int hf_fix_CouponRate = -1; /* Tag 223 */
-static int hf_fix_CouponPaymentDate = -1; /* Tag 224 */
-static int hf_fix_IssueDate = -1; /* Tag 225 */
-static int hf_fix_RepurchaseTerm = -1; /* Tag 226 */
-static int hf_fix_RepurchaseRate = -1; /* Tag 227 */
-static int hf_fix_Factor = -1; /* Tag 228 */
-static int hf_fix_TradeOriginationDate = -1; /* Tag 229 */
-static int hf_fix_ExDate = -1; /* Tag 230 */
-static int hf_fix_ContractMultiplier = -1; /* Tag 231 */
-static int hf_fix_NoStipulations = -1; /* Tag 232 */
-static int hf_fix_StipulationType = -1; /* Tag 233 */
-static int hf_fix_StipulationValue = -1; /* Tag 234 */
-static int hf_fix_YieldType = -1; /* Tag 235 */
-static int hf_fix_Yield = -1; /* Tag 236 */
-static int hf_fix_TotalTakedown = -1; /* Tag 237 */
-static int hf_fix_Concession = -1; /* Tag 238 */
-static int hf_fix_RepoCollateralSecurityType = -1; /* Tag 239 */
-static int hf_fix_RedemptionDate = -1; /* Tag 240 */
-static int hf_fix_UnderlyingCouponPaymentDate = -1; /* Tag 241 */
-static int hf_fix_UnderlyingIssueDate = -1; /* Tag 242 */
-static int hf_fix_UnderlyingRepoCollateralSecurityType = -1; /* Tag 243 */
-static int hf_fix_UnderlyingRepurchaseTerm = -1; /* Tag 244 */
-static int hf_fix_UnderlyingRepurchaseRate = -1; /* Tag 245 */
-static int hf_fix_UnderlyingFactor = -1; /* Tag 246 */
-static int hf_fix_UnderlyingRedemptionDate = -1; /* Tag 247 */
-static int hf_fix_LegCouponPaymentDate = -1; /* Tag 248 */
-static int hf_fix_LegIssueDate = -1; /* Tag 249 */
-static int hf_fix_LegRepoCollateralSecurityType = -1; /* Tag 250 */
-static int hf_fix_LegRepurchaseTerm = -1; /* Tag 251 */
-static int hf_fix_LegRepurchaseRate = -1; /* Tag 252 */
-static int hf_fix_LegFactor = -1; /* Tag 253 */
-static int hf_fix_LegRedemptionDate = -1; /* Tag 254 */
-static int hf_fix_CreditRating = -1; /* Tag 255 */
-static int hf_fix_UnderlyingCreditRating = -1; /* Tag 256 */
-static int hf_fix_LegCreditRating = -1; /* Tag 257 */
-static int hf_fix_TradedFlatSwitch = -1; /* Tag 258 */
-static int hf_fix_BasisFeatureDate = -1; /* Tag 259 */
-static int hf_fix_BasisFeaturePrice = -1; /* Tag 260 */
-static int hf_fix_ReservedAllocated = -1; /* Tag 261 */
-static int hf_fix_MDReqID = -1; /* Tag 262 */
-static int hf_fix_SubscriptionRequestType = -1; /* Tag 263 */
-static int hf_fix_MarketDepth = -1; /* Tag 264 */
-static int hf_fix_MDUpdateType = -1; /* Tag 265 */
-static int hf_fix_AggregatedBook = -1; /* Tag 266 */
-static int hf_fix_NoMDEntryTypes = -1; /* Tag 267 */
-static int hf_fix_NoMDEntries = -1; /* Tag 268 */
-static int hf_fix_MDEntryType = -1; /* Tag 269 */
-static int hf_fix_MDEntryPx = -1; /* Tag 270 */
-static int hf_fix_MDEntrySize = -1; /* Tag 271 */
-static int hf_fix_MDEntryDate = -1; /* Tag 272 */
-static int hf_fix_MDEntryTime = -1; /* Tag 273 */
-static int hf_fix_TickDirection = -1; /* Tag 274 */
-static int hf_fix_MDMkt = -1; /* Tag 275 */
-static int hf_fix_QuoteCondition = -1; /* Tag 276 */
-static int hf_fix_TradeCondition = -1; /* Tag 277 */
-static int hf_fix_MDEntryID = -1; /* Tag 278 */
-static int hf_fix_MDUpdateAction = -1; /* Tag 279 */
-static int hf_fix_MDEntryRefID = -1; /* Tag 280 */
-static int hf_fix_MDReqRejReason = -1; /* Tag 281 */
-static int hf_fix_MDEntryOriginator = -1; /* Tag 282 */
-static int hf_fix_LocationID = -1; /* Tag 283 */
-static int hf_fix_DeskID = -1; /* Tag 284 */
-static int hf_fix_DeleteReason = -1; /* Tag 285 */
-static int hf_fix_OpenCloseSettleFlag = -1; /* Tag 286 */
-static int hf_fix_SellerDays = -1; /* Tag 287 */
-static int hf_fix_MDEntryBuyer = -1; /* Tag 288 */
-static int hf_fix_MDEntrySeller = -1; /* Tag 289 */
-static int hf_fix_MDEntryPositionNo = -1; /* Tag 290 */
-static int hf_fix_FinancialStatus = -1; /* Tag 291 */
-static int hf_fix_CorporateAction = -1; /* Tag 292 */
-static int hf_fix_DefBidSize = -1; /* Tag 293 */
-static int hf_fix_DefOfferSize = -1; /* Tag 294 */
-static int hf_fix_NoQuoteEntries = -1; /* Tag 295 */
-static int hf_fix_NoQuoteSets = -1; /* Tag 296 */
-static int hf_fix_QuoteStatus = -1; /* Tag 297 */
-static int hf_fix_QuoteCancelType = -1; /* Tag 298 */
-static int hf_fix_QuoteEntryID = -1; /* Tag 299 */
-static int hf_fix_QuoteRejectReason = -1; /* Tag 300 */
-static int hf_fix_QuoteResponseLevel = -1; /* Tag 301 */
-static int hf_fix_QuoteSetID = -1; /* Tag 302 */
-static int hf_fix_QuoteRequestType = -1; /* Tag 303 */
-static int hf_fix_TotQuoteEntries = -1; /* Tag 304 */
-static int hf_fix_UnderlyingSecurityIDSource = -1; /* Tag 305 */
-static int hf_fix_UnderlyingIssuer = -1; /* Tag 306 */
-static int hf_fix_UnderlyingSecurityDesc = -1; /* Tag 307 */
-static int hf_fix_UnderlyingSecurityExchange = -1; /* Tag 308 */
-static int hf_fix_UnderlyingSecurityID = -1; /* Tag 309 */
-static int hf_fix_UnderlyingSecurityType = -1; /* Tag 310 */
-static int hf_fix_UnderlyingSymbol = -1; /* Tag 311 */
-static int hf_fix_UnderlyingSymbolSfx = -1; /* Tag 312 */
-static int hf_fix_UnderlyingMaturityMonthYear = -1; /* Tag 313 */
-static int hf_fix_UnderlyingMaturityDay = -1; /* Tag 314 */
-static int hf_fix_UnderlyingPutOrCall = -1; /* Tag 315 */
-static int hf_fix_UnderlyingStrikePrice = -1; /* Tag 316 */
-static int hf_fix_UnderlyingOptAttribute = -1; /* Tag 317 */
-static int hf_fix_Underlying = -1; /* Tag 318 */
-static int hf_fix_RatioQty = -1; /* Tag 319 */
-static int hf_fix_SecurityReqID = -1; /* Tag 320 */
-static int hf_fix_SecurityRequestType = -1; /* Tag 321 */
-static int hf_fix_SecurityResponseID = -1; /* Tag 322 */
-static int hf_fix_SecurityResponseType = -1; /* Tag 323 */
-static int hf_fix_SecurityStatusReqID = -1; /* Tag 324 */
-static int hf_fix_UnsolicitedIndicator = -1; /* Tag 325 */
-static int hf_fix_SecurityTradingStatus = -1; /* Tag 326 */
-static int hf_fix_HaltReason = -1; /* Tag 327 */
-static int hf_fix_InViewOfCommon = -1; /* Tag 328 */
-static int hf_fix_DueToRelated = -1; /* Tag 329 */
-static int hf_fix_BuyVolume = -1; /* Tag 330 */
-static int hf_fix_SellVolume = -1; /* Tag 331 */
-static int hf_fix_HighPx = -1; /* Tag 332 */
-static int hf_fix_LowPx = -1; /* Tag 333 */
-static int hf_fix_Adjustment = -1; /* Tag 334 */
-static int hf_fix_TradSesReqID = -1; /* Tag 335 */
-static int hf_fix_TradingSessionID = -1; /* Tag 336 */
-static int hf_fix_ContraTrader = -1; /* Tag 337 */
-static int hf_fix_TradSesMethod = -1; /* Tag 338 */
-static int hf_fix_TradSesMode = -1; /* Tag 339 */
-static int hf_fix_TradSesStatus = -1; /* Tag 340 */
-static int hf_fix_TradSesStartTime = -1; /* Tag 341 */
-static int hf_fix_TradSesOpenTime = -1; /* Tag 342 */
-static int hf_fix_TradSesPreCloseTime = -1; /* Tag 343 */
-static int hf_fix_TradSesCloseTime = -1; /* Tag 344 */
-static int hf_fix_TradSesEndTime = -1; /* Tag 345 */
-static int hf_fix_NumberOfOrders = -1; /* Tag 346 */
-static int hf_fix_MessageEncoding = -1; /* Tag 347 */
-static int hf_fix_EncodedIssuerLen = -1; /* Tag 348 */
-static int hf_fix_EncodedIssuer = -1; /* Tag 349 */
-static int hf_fix_EncodedSecurityDescLen = -1; /* Tag 350 */
-static int hf_fix_EncodedSecurityDesc = -1; /* Tag 351 */
-static int hf_fix_EncodedListExecInstLen = -1; /* Tag 352 */
-static int hf_fix_EncodedListExecInst = -1; /* Tag 353 */
-static int hf_fix_EncodedTextLen = -1; /* Tag 354 */
-static int hf_fix_EncodedText = -1; /* Tag 355 */
-static int hf_fix_EncodedSubjectLen = -1; /* Tag 356 */
-static int hf_fix_EncodedSubject = -1; /* Tag 357 */
-static int hf_fix_EncodedHeadlineLen = -1; /* Tag 358 */
-static int hf_fix_EncodedHeadline = -1; /* Tag 359 */
-static int hf_fix_EncodedAllocTextLen = -1; /* Tag 360 */
-static int hf_fix_EncodedAllocText = -1; /* Tag 361 */
-static int hf_fix_EncodedUnderlyingIssuerLen = -1; /* Tag 362 */
-static int hf_fix_EncodedUnderlyingIssuer = -1; /* Tag 363 */
-static int hf_fix_EncodedUnderlyingSecurityDescLen = -1; /* Tag 364 */
-static int hf_fix_EncodedUnderlyingSecurityDesc = -1; /* Tag 365 */
-static int hf_fix_AllocPrice = -1; /* Tag 366 */
-static int hf_fix_QuoteSetValidUntilTime = -1; /* Tag 367 */
-static int hf_fix_QuoteEntryRejectReason = -1; /* Tag 368 */
-static int hf_fix_LastMsgSeqNumProcessed = -1; /* Tag 369 */
-static int hf_fix_OnBehalfOfSendingTime = -1; /* Tag 370 */
-static int hf_fix_RefTagID = -1; /* Tag 371 */
-static int hf_fix_RefMsgType = -1; /* Tag 372 */
-static int hf_fix_SessionRejectReason = -1; /* Tag 373 */
-static int hf_fix_BidRequestTransType = -1; /* Tag 374 */
-static int hf_fix_ContraBroker = -1; /* Tag 375 */
-static int hf_fix_ComplianceID = -1; /* Tag 376 */
-static int hf_fix_SolicitedFlag = -1; /* Tag 377 */
-static int hf_fix_ExecRestatementReason = -1; /* Tag 378 */
-static int hf_fix_BusinessRejectRefID = -1; /* Tag 379 */
-static int hf_fix_BusinessRejectReason = -1; /* Tag 380 */
-static int hf_fix_GrossTradeAmt = -1; /* Tag 381 */
-static int hf_fix_NoContraBrokers = -1; /* Tag 382 */
-static int hf_fix_MaxMessageSize = -1; /* Tag 383 */
-static int hf_fix_NoMsgTypes = -1; /* Tag 384 */
-static int hf_fix_MsgDirection = -1; /* Tag 385 */
-static int hf_fix_NoTradingSessions = -1; /* Tag 386 */
-static int hf_fix_TotalVolumeTraded = -1; /* Tag 387 */
-static int hf_fix_DiscretionInst = -1; /* Tag 388 */
-static int hf_fix_DiscretionOffset = -1; /* Tag 389 */
-static int hf_fix_BidID = -1; /* Tag 390 */
-static int hf_fix_ClientBidID = -1; /* Tag 391 */
-static int hf_fix_ListName = -1; /* Tag 392 */
-static int hf_fix_TotalNumSecurities = -1; /* Tag 393 */
-static int hf_fix_BidType = -1; /* Tag 394 */
-static int hf_fix_NumTickets = -1; /* Tag 395 */
-static int hf_fix_SideValue1 = -1; /* Tag 396 */
-static int hf_fix_SideValue2 = -1; /* Tag 397 */
-static int hf_fix_NoBidDescriptors = -1; /* Tag 398 */
-static int hf_fix_BidDescriptorType = -1; /* Tag 399 */
-static int hf_fix_BidDescriptor = -1; /* Tag 400 */
-static int hf_fix_SideValueInd = -1; /* Tag 401 */
-static int hf_fix_LiquidityPctLow = -1; /* Tag 402 */
-static int hf_fix_LiquidityPctHigh = -1; /* Tag 403 */
-static int hf_fix_LiquidityValue = -1; /* Tag 404 */
-static int hf_fix_EFPTrackingError = -1; /* Tag 405 */
-static int hf_fix_FairValue = -1; /* Tag 406 */
-static int hf_fix_OutsideIndexPct = -1; /* Tag 407 */
-static int hf_fix_ValueOfFutures = -1; /* Tag 408 */
-static int hf_fix_LiquidityIndType = -1; /* Tag 409 */
-static int hf_fix_WtAverageLiquidity = -1; /* Tag 410 */
-static int hf_fix_ExchangeForPhysical = -1; /* Tag 411 */
-static int hf_fix_OutMainCntryUIndex = -1; /* Tag 412 */
-static int hf_fix_CrossPercent = -1; /* Tag 413 */
-static int hf_fix_ProgRptReqs = -1; /* Tag 414 */
-static int hf_fix_ProgPeriodInterval = -1; /* Tag 415 */
-static int hf_fix_IncTaxInd = -1; /* Tag 416 */
-static int hf_fix_NumBidders = -1; /* Tag 417 */
-static int hf_fix_TradeType = -1; /* Tag 418 */
-static int hf_fix_BasisPxType = -1; /* Tag 419 */
-static int hf_fix_NoBidComponents = -1; /* Tag 420 */
-static int hf_fix_Country = -1; /* Tag 421 */
-static int hf_fix_TotNoStrikes = -1; /* Tag 422 */
-static int hf_fix_PriceType = -1; /* Tag 423 */
-static int hf_fix_DayOrderQty = -1; /* Tag 424 */
-static int hf_fix_DayCumQty = -1; /* Tag 425 */
-static int hf_fix_DayAvgPx = -1; /* Tag 426 */
-static int hf_fix_GTBookingInst = -1; /* Tag 427 */
-static int hf_fix_NoStrikes = -1; /* Tag 428 */
-static int hf_fix_ListStatusType = -1; /* Tag 429 */
-static int hf_fix_NetGrossInd = -1; /* Tag 430 */
-static int hf_fix_ListOrderStatus = -1; /* Tag 431 */
-static int hf_fix_ExpireDate = -1; /* Tag 432 */
-static int hf_fix_ListExecInstType = -1; /* Tag 433 */
-static int hf_fix_CxlRejResponseTo = -1; /* Tag 434 */
-static int hf_fix_UnderlyingCouponRate = -1; /* Tag 435 */
-static int hf_fix_UnderlyingContractMultiplier = -1; /* Tag 436 */
-static int hf_fix_ContraTradeQty = -1; /* Tag 437 */
-static int hf_fix_ContraTradeTime = -1; /* Tag 438 */
-static int hf_fix_ClearingFirm = -1; /* Tag 439 */
-static int hf_fix_ClearingAccount = -1; /* Tag 440 */
-static int hf_fix_LiquidityNumSecurities = -1; /* Tag 441 */
-static int hf_fix_MultiLegReportingType = -1; /* Tag 442 */
-static int hf_fix_StrikeTime = -1; /* Tag 443 */
-static int hf_fix_ListStatusText = -1; /* Tag 444 */
-static int hf_fix_EncodedListStatusTextLen = -1; /* Tag 445 */
-static int hf_fix_EncodedListStatusText = -1; /* Tag 446 */
-static int hf_fix_PartyIDSource = -1; /* Tag 447 */
-static int hf_fix_PartyID = -1; /* Tag 448 */
-static int hf_fix_TotalVolumeTradedDate = -1; /* Tag 449 */
-static int hf_fix_TotalVolumeTradedTime = -1; /* Tag 450 */
-static int hf_fix_NetChgPrevDay = -1; /* Tag 451 */
-static int hf_fix_PartyRole = -1; /* Tag 452 */
-static int hf_fix_NoPartyIDs = -1; /* Tag 453 */
-static int hf_fix_NoSecurityAltID = -1; /* Tag 454 */
-static int hf_fix_SecurityAltID = -1; /* Tag 455 */
-static int hf_fix_SecurityAltIDSource = -1; /* Tag 456 */
-static int hf_fix_NoUnderlyingSecurityAltID = -1; /* Tag 457 */
-static int hf_fix_UnderlyingSecurityAltID = -1; /* Tag 458 */
-static int hf_fix_UnderlyingSecurityAltIDSource = -1; /* Tag 459 */
-static int hf_fix_Product = -1; /* Tag 460 */
-static int hf_fix_CFICode = -1; /* Tag 461 */
-static int hf_fix_UnderlyingProduct = -1; /* Tag 462 */
-static int hf_fix_UnderlyingCFICode = -1; /* Tag 463 */
-static int hf_fix_TestMessageIndicator = -1; /* Tag 464 */
-static int hf_fix_QuantityType = -1; /* Tag 465 */
-static int hf_fix_BookingRefID = -1; /* Tag 466 */
-static int hf_fix_IndividualAllocID = -1; /* Tag 467 */
-static int hf_fix_RoundingDirection = -1; /* Tag 468 */
-static int hf_fix_RoundingModulus = -1; /* Tag 469 */
-static int hf_fix_CountryOfIssue = -1; /* Tag 470 */
-static int hf_fix_StateOrProvinceOfIssue = -1; /* Tag 471 */
-static int hf_fix_LocaleOfIssue = -1; /* Tag 472 */
-static int hf_fix_NoRegistDtls = -1; /* Tag 473 */
-static int hf_fix_MailingDtls = -1; /* Tag 474 */
-static int hf_fix_InvestorCountryOfResidence = -1; /* Tag 475 */
-static int hf_fix_PaymentRef = -1; /* Tag 476 */
-static int hf_fix_DistribPaymentMethod = -1; /* Tag 477 */
-static int hf_fix_CashDistribCurr = -1; /* Tag 478 */
-static int hf_fix_CommCurrency = -1; /* Tag 479 */
-static int hf_fix_CancellationRights = -1; /* Tag 480 */
-static int hf_fix_MoneyLaunderingStatus = -1; /* Tag 481 */
-static int hf_fix_MailingInst = -1; /* Tag 482 */
-static int hf_fix_TransBkdTime = -1; /* Tag 483 */
-static int hf_fix_ExecPriceType = -1; /* Tag 484 */
-static int hf_fix_ExecPriceAdjustment = -1; /* Tag 485 */
-static int hf_fix_DateOfBirth = -1; /* Tag 486 */
-static int hf_fix_TradeReportTransType = -1; /* Tag 487 */
-static int hf_fix_CardHolderName = -1; /* Tag 488 */
-static int hf_fix_CardNumber = -1; /* Tag 489 */
-static int hf_fix_CardExpDate = -1; /* Tag 490 */
-static int hf_fix_CardIssNo = -1; /* Tag 491 */
-static int hf_fix_PaymentMethod = -1; /* Tag 492 */
-static int hf_fix_RegistAcctType = -1; /* Tag 493 */
-static int hf_fix_Designation = -1; /* Tag 494 */
-static int hf_fix_TaxAdvantageType = -1; /* Tag 495 */
-static int hf_fix_RegistRejReasonText = -1; /* Tag 496 */
-static int hf_fix_FundRenewWaiv = -1; /* Tag 497 */
-static int hf_fix_CashDistribAgentName = -1; /* Tag 498 */
-static int hf_fix_CashDistribAgentCode = -1; /* Tag 499 */
-static int hf_fix_CashDistribAgentAcctNumber = -1; /* Tag 500 */
-static int hf_fix_CashDistribPayRef = -1; /* Tag 501 */
-static int hf_fix_CashDistribAgentAcctName = -1; /* Tag 502 */
-static int hf_fix_CardStartDate = -1; /* Tag 503 */
-static int hf_fix_PaymentDate = -1; /* Tag 504 */
-static int hf_fix_PaymentRemitterID = -1; /* Tag 505 */
-static int hf_fix_RegistStatus = -1; /* Tag 506 */
-static int hf_fix_RegistRejReasonCode = -1; /* Tag 507 */
-static int hf_fix_RegistRefID = -1; /* Tag 508 */
-static int hf_fix_RegistDetls = -1; /* Tag 509 */
-static int hf_fix_NoDistribInsts = -1; /* Tag 510 */
-static int hf_fix_RegistEmail = -1; /* Tag 511 */
-static int hf_fix_DistribPercentage = -1; /* Tag 512 */
-static int hf_fix_RegistID = -1; /* Tag 513 */
-static int hf_fix_RegistTransType = -1; /* Tag 514 */
-static int hf_fix_ExecValuationPoint = -1; /* Tag 515 */
-static int hf_fix_OrderPercent = -1; /* Tag 516 */
-static int hf_fix_OwnershipType = -1; /* Tag 517 */
-static int hf_fix_NoContAmts = -1; /* Tag 518 */
-static int hf_fix_ContAmtType = -1; /* Tag 519 */
-static int hf_fix_ContAmtValue = -1; /* Tag 520 */
-static int hf_fix_ContAmtCurr = -1; /* Tag 521 */
-static int hf_fix_OwnerType = -1; /* Tag 522 */
-static int hf_fix_PartySubID = -1; /* Tag 523 */
-static int hf_fix_NestedPartyID = -1; /* Tag 524 */
-static int hf_fix_NestedPartyIDSource = -1; /* Tag 525 */
-static int hf_fix_SecondaryClOrdID = -1; /* Tag 526 */
-static int hf_fix_SecondaryExecID = -1; /* Tag 527 */
-static int hf_fix_OrderCapacity = -1; /* Tag 528 */
-static int hf_fix_OrderRestrictions = -1; /* Tag 529 */
-static int hf_fix_MassCancelRequestType = -1; /* Tag 530 */
-static int hf_fix_MassCancelResponse = -1; /* Tag 531 */
-static int hf_fix_MassCancelRejectReason = -1; /* Tag 532 */
-static int hf_fix_TotalAffectedOrders = -1; /* Tag 533 */
-static int hf_fix_NoAffectedOrders = -1; /* Tag 534 */
-static int hf_fix_AffectedOrderID = -1; /* Tag 535 */
-static int hf_fix_AffectedSecondaryOrderID = -1; /* Tag 536 */
-static int hf_fix_QuoteType = -1; /* Tag 537 */
-static int hf_fix_NestedPartyRole = -1; /* Tag 538 */
-static int hf_fix_NoNestedPartyIDs = -1; /* Tag 539 */
-static int hf_fix_TotalAccruedInterestAmt = -1; /* Tag 540 */
-static int hf_fix_MaturityDate = -1; /* Tag 541 */
-static int hf_fix_UnderlyingMaturityDate = -1; /* Tag 542 */
-static int hf_fix_InstrRegistry = -1; /* Tag 543 */
-static int hf_fix_CashMargin = -1; /* Tag 544 */
-static int hf_fix_NestedPartySubID = -1; /* Tag 545 */
-static int hf_fix_Scope = -1; /* Tag 546 */
-static int hf_fix_MDImplicitDelete = -1; /* Tag 547 */
-static int hf_fix_CrossID = -1; /* Tag 548 */
-static int hf_fix_CrossType = -1; /* Tag 549 */
-static int hf_fix_CrossPrioritization = -1; /* Tag 550 */
-static int hf_fix_OrigCrossID = -1; /* Tag 551 */
-static int hf_fix_NoSides = -1; /* Tag 552 */
-static int hf_fix_Username = -1; /* Tag 553 */
-static int hf_fix_Password = -1; /* Tag 554 */
-static int hf_fix_NoLegs = -1; /* Tag 555 */
-static int hf_fix_LegCurrency = -1; /* Tag 556 */
-static int hf_fix_TotalNumSecurityTypes = -1; /* Tag 557 */
-static int hf_fix_NoSecurityTypes = -1; /* Tag 558 */
-static int hf_fix_SecurityListRequestType = -1; /* Tag 559 */
-static int hf_fix_SecurityRequestResult = -1; /* Tag 560 */
-static int hf_fix_RoundLot = -1; /* Tag 561 */
-static int hf_fix_MinTradeVol = -1; /* Tag 562 */
-static int hf_fix_MultiLegRptTypeReq = -1; /* Tag 563 */
-static int hf_fix_LegPositionEffect = -1; /* Tag 564 */
-static int hf_fix_LegCoveredOrUncovered = -1; /* Tag 565 */
-static int hf_fix_LegPrice = -1; /* Tag 566 */
-static int hf_fix_TradSesStatusRejReason = -1; /* Tag 567 */
-static int hf_fix_TradeRequestID = -1; /* Tag 568 */
-static int hf_fix_TradeRequestType = -1; /* Tag 569 */
-static int hf_fix_PreviouslyReported = -1; /* Tag 570 */
-static int hf_fix_TradeReportID = -1; /* Tag 571 */
-static int hf_fix_TradeReportRefID = -1; /* Tag 572 */
-static int hf_fix_MatchStatus = -1; /* Tag 573 */
-static int hf_fix_MatchType = -1; /* Tag 574 */
-static int hf_fix_OddLot = -1; /* Tag 575 */
-static int hf_fix_NoClearingInstructions = -1; /* Tag 576 */
-static int hf_fix_ClearingInstruction = -1; /* Tag 577 */
-static int hf_fix_TradeInputSource = -1; /* Tag 578 */
-static int hf_fix_TradeInputDevice = -1; /* Tag 579 */
-static int hf_fix_NoDates = -1; /* Tag 580 */
-static int hf_fix_AccountType = -1; /* Tag 581 */
-static int hf_fix_CustOrderCapacity = -1; /* Tag 582 */
-static int hf_fix_ClOrdLinkID = -1; /* Tag 583 */
-static int hf_fix_MassStatusReqID = -1; /* Tag 584 */
-static int hf_fix_MassStatusReqType = -1; /* Tag 585 */
-static int hf_fix_OrigOrdModTime = -1; /* Tag 586 */
-static int hf_fix_LegSettlmntTyp = -1; /* Tag 587 */
-static int hf_fix_LegFutSettDate = -1; /* Tag 588 */
-static int hf_fix_DayBookingInst = -1; /* Tag 589 */
-static int hf_fix_BookingUnit = -1; /* Tag 590 */
-static int hf_fix_PreallocMethod = -1; /* Tag 591 */
-static int hf_fix_UnderlyingCountryOfIssue = -1; /* Tag 592 */
-static int hf_fix_UnderlyingStateOrProvinceOfIssue = -1; /* Tag 593 */
-static int hf_fix_UnderlyingLocaleOfIssue = -1; /* Tag 594 */
-static int hf_fix_UnderlyingInstrRegistry = -1; /* Tag 595 */
-static int hf_fix_LegCountryOfIssue = -1; /* Tag 596 */
-static int hf_fix_LegStateOrProvinceOfIssue = -1; /* Tag 597 */
-static int hf_fix_LegLocaleOfIssue = -1; /* Tag 598 */
-static int hf_fix_LegInstrRegistry = -1; /* Tag 599 */
-static int hf_fix_LegSymbol = -1; /* Tag 600 */
-static int hf_fix_LegSymbolSfx = -1; /* Tag 601 */
-static int hf_fix_LegSecurityID = -1; /* Tag 602 */
-static int hf_fix_LegSecurityIDSource = -1; /* Tag 603 */
-static int hf_fix_NoLegSecurityAltID = -1; /* Tag 604 */
-static int hf_fix_LegSecurityAltID = -1; /* Tag 605 */
-static int hf_fix_LegSecurityAltIDSource = -1; /* Tag 606 */
-static int hf_fix_LegProduct = -1; /* Tag 607 */
-static int hf_fix_LegCFICode = -1; /* Tag 608 */
-static int hf_fix_LegSecurityType = -1; /* Tag 609 */
-static int hf_fix_LegMaturityMonthYear = -1; /* Tag 610 */
-static int hf_fix_LegMaturityDate = -1; /* Tag 611 */
-static int hf_fix_LegStrikePrice = -1; /* Tag 612 */
-static int hf_fix_LegOptAttribute = -1; /* Tag 613 */
-static int hf_fix_LegContractMultiplier = -1; /* Tag 614 */
-static int hf_fix_LegCouponRate = -1; /* Tag 615 */
-static int hf_fix_LegSecurityExchange = -1; /* Tag 616 */
-static int hf_fix_LegIssuer = -1; /* Tag 617 */
-static int hf_fix_EncodedLegIssuerLen = -1; /* Tag 618 */
-static int hf_fix_EncodedLegIssuer = -1; /* Tag 619 */
-static int hf_fix_LegSecurityDesc = -1; /* Tag 620 */
-static int hf_fix_EncodedLegSecurityDescLen = -1; /* Tag 621 */
-static int hf_fix_EncodedLegSecurityDesc = -1; /* Tag 622 */
-static int hf_fix_LegRatioQty = -1; /* Tag 623 */
-static int hf_fix_LegSide = -1; /* Tag 624 */
-static int hf_fix_TradingSessionSubID = -1; /* Tag 625 */
-static int hf_fix_AllocType = -1; /* Tag 626 */
-static int hf_fix_NoHops = -1; /* Tag 627 */
-static int hf_fix_HopCompID = -1; /* Tag 628 */
-static int hf_fix_HopSendingTime = -1; /* Tag 629 */
-static int hf_fix_HopRefID = -1; /* Tag 630 */
-static int hf_fix_MidPx = -1; /* Tag 631 */
-static int hf_fix_BidYield = -1; /* Tag 632 */
-static int hf_fix_MidYield = -1; /* Tag 633 */
-static int hf_fix_OfferYield = -1; /* Tag 634 */
-static int hf_fix_ClearingFeeIndicator = -1; /* Tag 635 */
-static int hf_fix_WorkingIndicator = -1; /* Tag 636 */
-static int hf_fix_LegLastPx = -1; /* Tag 637 */
-static int hf_fix_PriorityIndicator = -1; /* Tag 638 */
-static int hf_fix_PriceImprovement = -1; /* Tag 639 */
-static int hf_fix_Price2 = -1; /* Tag 640 */
-static int hf_fix_LastForwardPoints2 = -1; /* Tag 641 */
-static int hf_fix_BidForwardPoints2 = -1; /* Tag 642 */
-static int hf_fix_OfferForwardPoints2 = -1; /* Tag 643 */
-static int hf_fix_RFQReqID = -1; /* Tag 644 */
-static int hf_fix_MktBidPx = -1; /* Tag 645 */
-static int hf_fix_MktOfferPx = -1; /* Tag 646 */
-static int hf_fix_MinBidSize = -1; /* Tag 647 */
-static int hf_fix_MinOfferSize = -1; /* Tag 648 */
-static int hf_fix_QuoteStatusReqID = -1; /* Tag 649 */
-static int hf_fix_LegalConfirm = -1; /* Tag 650 */
-static int hf_fix_UnderlyingLastPx = -1; /* Tag 651 */
-static int hf_fix_UnderlyingLastQty = -1; /* Tag 652 */
-static int hf_fix_SecDefStatus = -1; /* Tag 653 */
-static int hf_fix_LegRefID = -1; /* Tag 654 */
-static int hf_fix_ContraLegRefID = -1; /* Tag 655 */
-static int hf_fix_SettlCurrBidFxRate = -1; /* Tag 656 */
-static int hf_fix_SettlCurrOfferFxRate = -1; /* Tag 657 */
-static int hf_fix_QuoteRequestRejectReason = -1; /* Tag 658 */
-static int hf_fix_SideComplianceID = -1; /* Tag 659 */
-static int hf_fix_BenchmarkPrice = -1; /* Tag 662 */
-static int hf_fix_BenchmarkPriceType = -1; /* Tag 663 */
-static int hf_fix_Pool = -1; /* Tag 691 */
-static int hf_fix_QuoteRespID = -1; /* Tag 693 */
-static int hf_fix_QuoteRespType = -1; /* Tag 694 */
-static int hf_fix_QuoteQualifier = -1; /* Tag 695 */
-static int hf_fix_BenchmarkSecurityID = -1; /* Tag 699 */
-static int hf_fix_NoQuoteQualifiers = -1; /* Tag 735 */
-static int hf_fix_BenchmarkSecurityIDSource = -1; /* Tag 761 */
-static int hf_fix_SecuritySubType = -1; /* Tag 762 */
-static int hf_fix_AllocReportRefID = -1; /* Tag 795 */
-static int hf_fix_NoInstrAttrib = -1; /* Tag 870 */
-static int hf_fix_InstrAttribType = -1; /* Tag 871 */
-static int hf_fix_InstrAttribValue = -1; /* Tag 872 */
-static int hf_fix_LastFragment = -1; /* Tag 893 */
+/*
+ * Fields and messages generated from http://www.quickfixengine.org/ xml (slightly modified)
+ */
+#include "packet-fix.h"
 
 static void dissect_fix_init(void) {
-    g_datalist_clear(&msg_types);
-
-    g_datalist_init(&msg_types);
-
-    g_datalist_set_data(&msg_types, "0", (gchar *)"Heartbeat");
-    g_datalist_set_data(&msg_types, "1", (gchar *)"Test Request");
-    g_datalist_set_data(&msg_types, "2", (gchar *)"Resend Request");
-    g_datalist_set_data(&msg_types, "3", (gchar *)"Reject");
-    g_datalist_set_data(&msg_types, "4", (gchar *)"Sequence Reset");
-    g_datalist_set_data(&msg_types, "5", (gchar *)"Logout");
-    g_datalist_set_data(&msg_types, "6", (gchar *)"Indication of Interest");
-    g_datalist_set_data(&msg_types, "7", (gchar *)"Advertisement");
-    g_datalist_set_data(&msg_types, "8", (gchar *)"Execution Report");
-    g_datalist_set_data(&msg_types, "9", (gchar *)"Order Cancel Reject");
-    g_datalist_set_data(&msg_types, "A", (gchar *)"Logon");
-    g_datalist_set_data(&msg_types, "B", (gchar *)"News");
-    g_datalist_set_data(&msg_types, "C", (gchar *)"Email");
-    g_datalist_set_data(&msg_types, "D", (gchar *)"Order - Single");
-    g_datalist_set_data(&msg_types, "E", (gchar *)"Order - List");
-    g_datalist_set_data(&msg_types, "F", (gchar *)"Order Cancel Request");
-    g_datalist_set_data(&msg_types, "G", (gchar *)"Order Cancel - Replace Request");
-    g_datalist_set_data(&msg_types, "H", (gchar *)"Order Status Request");
-    g_datalist_set_data(&msg_types, "J", (gchar *)"Allocation");
-    g_datalist_set_data(&msg_types, "K", (gchar *)"List Cancel Request");
-    g_datalist_set_data(&msg_types, "L", (gchar *)"List Execute");
-    g_datalist_set_data(&msg_types, "M", (gchar *)"List Status Request");
-    g_datalist_set_data(&msg_types, "N", (gchar *)"List Status");
-    g_datalist_set_data(&msg_types, "P", (gchar *)"Allocation ACK");
-    g_datalist_set_data(&msg_types, "Q", (gchar *)"Don't Know Trade (DK)");
-    g_datalist_set_data(&msg_types, "R", (gchar *)"Quote Request");
-    g_datalist_set_data(&msg_types, "S", (gchar *)"Quote");
-    g_datalist_set_data(&msg_types, "T", (gchar *)"Settlement Instructions");
-    g_datalist_set_data(&msg_types, "V", (gchar *)"Market Data Request");
-    g_datalist_set_data(&msg_types, "W", (gchar *)"Market Data-Snapshot - Full Refresh");
-    g_datalist_set_data(&msg_types, "X", (gchar *)"Market Data-Incremental Refresh");
-    g_datalist_set_data(&msg_types, "Y", (gchar *)"Market Data Request Reject");
-    g_datalist_set_data(&msg_types, "Z", (gchar *)"Quote Cancel");
-    g_datalist_set_data(&msg_types, "a", (gchar *)"Quote Status Request");
-    g_datalist_set_data(&msg_types, "b", (gchar *)"Mass Quote Acknowledgement");
-    g_datalist_set_data(&msg_types, "c", (gchar *)"Security Definition Request");
-    g_datalist_set_data(&msg_types, "d", (gchar *)"Security Definition");
-    g_datalist_set_data(&msg_types, "e", (gchar *)"Security Status Request");
-    g_datalist_set_data(&msg_types, "f", (gchar *)"Security Status");
-    g_datalist_set_data(&msg_types, "g", (gchar *)"Trading Session Status Request");
-    g_datalist_set_data(&msg_types, "h", (gchar *)"Trading Session Status");
-    g_datalist_set_data(&msg_types, "i", (gchar *)"Mass Quote");
-    g_datalist_set_data(&msg_types, "j", (gchar *)"Business Message Reject");
-    g_datalist_set_data(&msg_types, "k", (gchar *)"Bid Request ");
-    g_datalist_set_data(&msg_types, "l", (gchar *)"Bid Response");
-    g_datalist_set_data(&msg_types, "m", (gchar *)"List Strike Price");
-    g_datalist_set_data(&msg_types, "n", (gchar *)"XML message");
-    g_datalist_set_data(&msg_types, "o", (gchar *)"Registration Instructions");
-    g_datalist_set_data(&msg_types, "p", (gchar *)"Registration Instructions Response");
-    g_datalist_set_data(&msg_types, "q", (gchar *)"Order Mass Cancel Request");
-    g_datalist_set_data(&msg_types, "r", (gchar *)"Order Mass Cancel Report");
-    g_datalist_set_data(&msg_types, "s", (gchar *)"New Order - Cross");
-    g_datalist_set_data(&msg_types, "t", (gchar *)"Cross Order Cancel - Replace Request");
-    g_datalist_set_data(&msg_types, "u", (gchar *)"Cross Order Cancel Request");
-    g_datalist_set_data(&msg_types, "v", (gchar *)"Security Type Request");
-    g_datalist_set_data(&msg_types, "w", (gchar *)"Security Types");
-    g_datalist_set_data(&msg_types, "x", (gchar *)"Security List Request");
-    g_datalist_set_data(&msg_types, "y", (gchar *)"Security List");
-    g_datalist_set_data(&msg_types, "z", (gchar *)"Derivative Security List Request");
-    g_datalist_set_data(&msg_types, "AA", (gchar *)"Derivative Security List");
-    g_datalist_set_data(&msg_types, "AB", (gchar *)"New Order - Multileg");
-    g_datalist_set_data(&msg_types, "AC", (gchar *)"Multileg Order Cancel - Replace");
-    g_datalist_set_data(&msg_types, "AD", (gchar *)"Trade Capture Report Request");
-    g_datalist_set_data(&msg_types, "AE", (gchar *)"Trade Capture Report");
-    g_datalist_set_data(&msg_types, "AF", (gchar *)"Order Mass Status Request");
-    g_datalist_set_data(&msg_types, "AG", (gchar *)"Quote Request Reject");
-    g_datalist_set_data(&msg_types, "AH", (gchar *)"RFQ Request");
-    g_datalist_set_data(&msg_types, "AI", (gchar *)"Quote Status Report");
-    g_datalist_set_data(&msg_types, "AJ", (gchar *)"Quote Response");
-    g_datalist_set_data(&msg_types, "AK", (gchar *)"Confirmation");
-    g_datalist_set_data(&msg_types, "AL", (gchar *)"Position Maintenance Request");
-    g_datalist_set_data(&msg_types, "AM", (gchar *)"Position Maintenance Report");
-    g_datalist_set_data(&msg_types, "AN", (gchar *)"Request For Positions");
-    g_datalist_set_data(&msg_types, "AO", (gchar *)"Request For Positions Ack");
-    g_datalist_set_data(&msg_types, "AP", (gchar *)"Position Report");
-    g_datalist_set_data(&msg_types, "AQ", (gchar *)"Trade Capture Report Request Ack");
-    g_datalist_set_data(&msg_types, "AR", (gchar *)"Trade Capture Report Ack");
-    g_datalist_set_data(&msg_types, "AS", (gchar *)"Allocation Report");
-    g_datalist_set_data(&msg_types, "AT", (gchar *)"Allocation Report Ack");
-    g_datalist_set_data(&msg_types, "AU", (gchar *)"Confirmation Ack");
-    g_datalist_set_data(&msg_types, "AV", (gchar *)"Settlement Instruction Request");
-    g_datalist_set_data(&msg_types, "AW", (gchar *)"Assignment Report");
-    g_datalist_set_data(&msg_types, "AX", (gchar *)"Collateral Request");
-    g_datalist_set_data(&msg_types, "AY", (gchar *)"Collateral Assignment");
-    g_datalist_set_data(&msg_types, "AZ", (gchar *)"Collateral Response");
-    g_datalist_set_data(&msg_types, "BA", (gchar *)"Collateral Report");
-    g_datalist_set_data(&msg_types, "BB", (gchar *)"Collateral Inquiry");
-    g_datalist_set_data(&msg_types, "BE", (gchar *)"User Request");
-    g_datalist_set_data(&msg_types, "BF", (gchar *)"User Response");
-    g_datalist_set_data(&msg_types, "BG", (gchar *)"Collateral Inquiry Ack");
-    g_datalist_set_data(&msg_types, "BH", (gpointer)(void *)"Confirmation Request");
+  /* TODO load xml def for private field */
+  /* TODO check that fix_fields is really sorted */
+}
 
+static int
+tag_search(int key)
+{
+    int lower = 0, upper = array_length(fix_fields) -1;
+    while (lower <= upper) {
+       int middle = (lower + upper) / 2;
+       int res = fix_fields[middle].tag;
+       if (res < key) {
+           lower = middle + 1;
+       } else if (res == key) {
+           return middle;
+       } else {
+           upper = middle - 1;
+       }
+    }
+    return -1;
 }
 
 /* Code to actually dissect the packets */
-static gboolean
-dissect_fix(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int fix_next_header(tvbuff_t *tvb, int offset)
 {
-    /* Set up structures needed to add the protocol subtree and manage it */
-    proto_item *ti;
-    proto_tree *fix_tree = NULL;  /* eliminates warning that can be safely ignored */
-    /* GCC may complain that fix_tree can be used before it is initialized.  However,
-       fix_tree is initialized in the switch statement handler for type '8' which
-       MUST be the first field in a valid FIX message. */
+    /* try to resynch to the next start */
+    guint min_len = tvb_length_remaining(tvb, offset);
+    const guint8 *data = tvb_get_ephemeral_string(tvb, offset, min_len);
+    const guint8 *start = data; 
+        
+    while ((start = strstr(start, "\0018"))) {
+        min_len = start +1 -data;
+        /*  if remaining length < 6 return and let the next desegment round
+            test for 8=FIX
+        */
+        if (tvb_length_remaining(tvb, min_len + offset) < MARKER_LEN)
+           break;
+        if (!fix_marker(tvb, min_len +offset) )
+            break;
+        start++;
+    }
+    return min_len;
+}
 
-    gint next;
-    int linelen;
-    int offset = 0;
-    int field_offset, value_offset, ctrla_offset, equals;
-    int tag;
-    char *value;
-    char *tag_str;
-    char *msg_type;
-    int field_len = 0;
-    int tag_len = 0;
-    int value_len = 0;
-    int msg_count = 0;
-    GString *label = NULL;
-    GString *summary_label = NULL;
+/* ---------------------------------------------- 
+  Format: name=value\001
+*/
+static fix_parameter *fix_param(tvbuff_t *tvb, int offset)
+{
+    static fix_parameter ret;
+    int equals;
 
-    /* get at least the fix version: 8=FIX.x.x or 8=FIXT.x.x */
-    if (tvb_strneql(tvb, 0, "8=FIX", 5) != 0) {
-        /* not a fix packet */
-        return FALSE;
+    ret.ctrla_offset = tvb_find_guint8(tvb, offset, -1, 0x01);
+    if (ret.ctrla_offset == -1) {
+        return NULL;
+    }
+
+    ret.field_len = ret.ctrla_offset - offset + 1;
+    equals = tvb_find_guint8(tvb, offset, ret.field_len, '=');
+    if (equals == -1) {
+        return NULL;
     }
 
-    linelen = tvb_find_line_end(tvb, 0, -1, &next, 0);
+    ret.value_offset = equals + 1;
+    ret.tag_len = ret.value_offset - offset - 1;
+    ret.value_len = ret.ctrla_offset - ret.value_offset;
+    return &ret;
+}
+
+/* ---------------------------------------------- */
+static int fix_header_len(tvbuff_t *tvb, int offset)
+{
+    int base_offset, ctrla_offset;
+    char *value;
+    int size;
+    fix_parameter *tag;
+    
+    base_offset = offset;
+    
+    /* get at least the fix version: 8=FIX.x.x */
+    if (fix_marker(tvb, offset) != 0) {
+        return fix_next_header(tvb, offset);
+    }
 
     /* begin string */
     ctrla_offset = tvb_find_guint8(tvb, offset, -1, 0x01);
     if (ctrla_offset == -1) {
-        return FALSE;
+        /* it should be there, (minimum size is big enough) 
+         * if not maybe it's not really
+         * a FIX packet but it's too late to bail out.
+        */
+        return fix_next_header(tvb, offset +MARKER_LEN) +MARKER_LEN;
     }
     offset = ctrla_offset + 1;
 
     /* msg length */
-    ctrla_offset = tvb_find_guint8(tvb, offset, -1, 0x01);
-    if (ctrla_offset == -1) {
-        return FALSE;
+    if (!(tag = fix_param(tvb, offset)) || tvb_strneql(tvb, offset, "9=", 2)) {
+        /* not a tag or not the BodyLength tag, give up */
+        return fix_next_header(tvb, offset);
     }
-    offset = ctrla_offset + 1;
 
-    /* msg type */
-    field_offset = offset;
-    ctrla_offset = tvb_find_guint8(tvb, offset, -1, 0x01);
-    if (ctrla_offset == -1) {
-        return FALSE;
+    value = tvb_get_ephemeral_string(tvb, tag->value_offset, tag->value_len);
+    /* Fix version, msg type, length and checksum aren't in body length.
+     * If the packet is big enough find the checksum 
+    */
+    size = atoi(value) +tag->ctrla_offset - base_offset +1;
+    if (tvb_length_remaining(tvb, base_offset) > size +4) {
+        /* 10= should be there */
+        offset = base_offset +size;
+        if (tvb_strneql(tvb, offset, "10=", 3) != 0) {
+            /* No? bogus packet, try to find the next header */
+            return fix_next_header(tvb, base_offset +MARKER_LEN)  +MARKER_LEN;
+        }
+        ctrla_offset = tvb_find_guint8(tvb, offset, -1, 0x01);
+        if (ctrla_offset == -1) {
+            /* assume checksum is 7 bytes 10=xxx\01 */
+            return size+7;
+        }
+        return size +ctrla_offset -offset +1;
     }
-
-    field_len = ctrla_offset - field_offset + 1;
-    equals = tvb_find_guint8(tvb, offset, field_len, '=');
-    if (equals == -1) {
-        return FALSE;
+    else {
     }
+    /* assume checksum is 7 bytes 10=xxx\01 */
+    return size +7;
+}
 
-    value_offset = equals + 1;
-    value_len = ctrla_offset - value_offset;
-    if (value_len < 1) {
-        return FALSE;
-    }
+/* ---------------------------------------------- */
+static void
+dissect_fix_packet(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+{
+    /* Set up structures needed to add the protocol subtree and manage it */
+    proto_item *ti;
+    proto_tree *fix_tree;
+    int pdu_len;
+    int offset = 0;
+    int field_offset, ctrla_offset;
+    int tag_value;
+    char *value;
+    char *tag_str;
+    fix_parameter *tag;
+    int check_sum = 0;
 
     /* Make entries in Protocol column and Info column on summary display */
     if (check_col(pinfo->cinfo, COL_PROTOCOL)) {
@@ -912,24 +241,66 @@ dissect_fix(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
         col_clear(pinfo->cinfo, COL_INFO);
     }
 
-    if (check_col(pinfo->cinfo, COL_INFO)) {
-       value = tvb_get_ephemeral_string(tvb, value_offset, value_len);
-        msg_type = (char *)g_datalist_get_data(&msg_types, value);
-        if(msg_type) {
-            summary_label = g_string_new(msg_type);
-        } else {
-            summary_label = g_string_new("FIX Message");
-            g_string_append_printf(summary_label, " (%s)", value);
+    /* get at least the fix version: 8=FIX.x.x */
+    if (fix_marker(tvb, 0) != 0) {
+        /* not a fix packet start but it's a fix packet */
+        if (check_col(pinfo->cinfo, COL_INFO)) {
+            col_set_str(pinfo->cinfo, COL_INFO, "[FIX continuation]");
         }
+        ti = proto_tree_add_item(tree, proto_fix, tvb, 0, -1, FALSE);
+        fix_tree = proto_item_add_subtree(ti, ett_fix);
+        proto_tree_add_item(fix_tree, hf_fix_data, tvb, 0, -1, FALSE);
+        return;
+    }
+
+    pdu_len = tvb_reported_length(tvb);
+    ti = proto_tree_add_item(tree, proto_fix, tvb, 0, -1, FALSE);
+    fix_tree = proto_item_add_subtree(ti, ett_fix);
+
+    /* begin string */
+    ctrla_offset = tvb_find_guint8(tvb, offset, -1, 0x01);
+    if (ctrla_offset == -1) {
+        return;
+    }
+    offset = ctrla_offset + 1;
+
+    /* msg length */
+    ctrla_offset = tvb_find_guint8(tvb, offset, -1, 0x01);
+    if (ctrla_offset == -1) {
+        return;
+    }
+    offset = ctrla_offset + 1;
+
+    /* msg type */
+    if (!(tag = fix_param(tvb, offset)) || tag->value_len < 1) {
+        return;
+    }
+
+    if (check_col(pinfo->cinfo, COL_INFO)) {
+        const char *msg_type;
+        
+       value = tvb_get_ephemeral_string(tvb, tag->value_offset, tag->value_len);
+       msg_type = str_to_str(value, messages_val, "FIX Message (%s)");
+        col_add_str(pinfo->cinfo, COL_INFO, msg_type);
     }
 
     /* In the interest of speed, if "tree" is NULL, don't do any work not
      * necessary to generate protocol tree items.
      */
-    if (tree) {
-        field_offset = offset = 0;
-        ctrla_offset = tvb_find_guint8(tvb, offset, -1, 0x01);
-        if (ctrla_offset == -1) {
+    field_offset = 0;
+
+    while(field_offset < pdu_len && (tag = fix_param(tvb, field_offset)) ) {
+        int i, found;
+    
+        if (tag->tag_len < 1) {
+            field_offset =  tag->ctrla_offset + 1;
+            continue;
+        }
+
+        tag_str = tvb_get_ephemeral_string(tvb, field_offset, tag->tag_len);
+        tag_value = atoi(tag_str);
+        if (tag->value_len < 1) {
+            proto_tree *field_tree;
             /* XXX - put an error indication here.  It's too late
                to return FALSE; we've already started dissecting,
                and if a heuristic dissector starts dissecting
@@ -937,2105 +308,170 @@ dissect_fix(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
                tree) and then gives up, it leaves crud behind that
                messes up other dissectors that might process the
                packet. */
-            return TRUE;
+            ti = proto_tree_add_text(fix_tree, tvb, field_offset, tag->field_len, "%i: <missing value>", tag_value);
+            field_tree = proto_item_add_subtree(ti, ett_badfield);
+            proto_tree_add_uint(field_tree, hf_fix_field_tag, tvb, field_offset, tag->tag_len, tag_value);
+            field_offset =  tag->ctrla_offset + 1;
+            continue;
         }
 
-        while(ctrla_offset != -1 && offset < linelen) {
-            field_len = ctrla_offset - field_offset + 1;
-            if(offset >= linelen) {
+        /* fix_fields array is sorted by tag_value */
+        found = 0;
+        if ((i = tag_search(tag_value)) >= 0) {
+            found = 1;
+        }
+        
+        value = tvb_get_ephemeral_string(tvb, tag->value_offset, tag->value_len);
+        if (found) {
+            if (fix_fields[i].table) {
+                if (tree) {
+                    switch (fix_fields[i].type) {
+                    case 1: /* strings */
+                        proto_tree_add_string_format_value(fix_tree, fix_fields[i].hf_id, tvb, field_offset, tag->field_len, value, 
+                            "%s (%s)", value, str_to_str(value, fix_fields[i].table, "unknow %s"));
+                        break;
+                    case 2: /* char */
+                        proto_tree_add_string_format_value(fix_tree, fix_fields[i].hf_id, tvb, field_offset, tag->field_len, value, 
+                            "%s (%s)", value, val_to_str(*value, fix_fields[i].table, "unknow %d"));
+                        break;
+                    default:
+                        proto_tree_add_string_format_value(fix_tree, fix_fields[i].hf_id, tvb, field_offset, tag->field_len, value, 
+                            "%s (%s)", value, val_to_str(atoi(value), fix_fields[i].table, "unknow %d"));
+                        break;
+                    }
+                }
+            }
+            else {
+              proto_item *item;
+
+              /* checksum */
+              switch(tag_value) {
+              case 10:
+                {
+                    proto_tree *checksum_tree;
+                    guint8 sum = 0;
+                    const guint8 *data = tvb_get_ptr(tvb, 0, field_offset);
+                    gboolean sum_ok;
+                    int j;
+
+                    for (j = 0; j < field_offset; j++, data++) {
+                         sum += *data;
+                    }
+                    check_sum = 1;
+                    sum_ok = (atoi(value) == sum);
+                    if (sum_ok) {
+                        item = proto_tree_add_string_format_value(fix_tree, fix_fields[i].hf_id, tvb, field_offset, tag->field_len, 
+                                value, "%s [correct]", value);
+                    }
+                    else {
+                        item = proto_tree_add_string_format_value(fix_tree, fix_fields[i].hf_id, tvb, field_offset, tag->field_len, 
+                                value, "%s [incorrect should be %d]", value, sum);
+                    }
+                    checksum_tree = proto_item_add_subtree(item, ett_checksum);
+                    item = proto_tree_add_boolean(checksum_tree, hf_fix_checksum_good, tvb, field_offset, tag->field_len, sum_ok);
+                    PROTO_ITEM_SET_GENERATED(item);
+                    item = proto_tree_add_boolean(checksum_tree, hf_fix_checksum_bad, tvb, field_offset, tag->field_len, !sum_ok);
+                    PROTO_ITEM_SET_GENERATED(item);
+                    if (!sum_ok)
+                        expert_add_info_format(pinfo, item, PI_CHECKSUM, PI_ERROR, "Bad checksum");
+                }
                 break;
+              default:
+                item = proto_tree_add_string(fix_tree, fix_fields[i].hf_id, tvb, field_offset, tag->field_len, value);
+                break;
+              }
             }
+        }
+        else if (tree) {
+          proto_tree *field_tree;
+          
+          /* XXX - it could be -1 if the tag isn't a number */
+          ti = proto_tree_add_text(fix_tree, tvb, field_offset, tag->field_len, "%i: %s", tag_value, value);
+          field_tree = proto_item_add_subtree(ti, ett_unknow);
+          proto_tree_add_uint(field_tree, hf_fix_field_tag, tvb, field_offset, tag->tag_len, tag_value);
+          proto_tree_add_item(field_tree, hf_fix_field_value, tvb, tag->value_offset, tag->value_len, FALSE);
+        }
 
-            equals = tvb_find_guint8(tvb, offset, field_len, '=');
-            if (equals == -1) {
-                /* XXX - put an error indication here.  It's too late
-                   to return FALSE; we've already started dissecting,
-                   and if a heuristic dissector starts dissecting
-                   (either updating the columns or creating a protocol
-                   tree) and then gives up, it leaves crud behind that
-                   messes up other dissectors that might process the
-                   packet. */
-                return TRUE;
-            }
+        field_offset =  tag->ctrla_offset + 1;
 
-            value_offset = equals + 1;
-            value_len = ctrla_offset - value_offset;
+        tag_str = NULL;
+    }
+    return;
+}
 
-            tag_len = equals - field_offset;
-            if (tag_len < 1 || value_len < 1) {
-                /* XXX - put an error indication here.  It's too late
-                   to return FALSE; we've already started dissecting,
-                   and if a heuristic dissector starts dissecting
-                   (either updating the columns or creating a protocol
-                   tree) and then gives up, it leaves crud behind that
-                   messes up other dissectors that might process the
-                   packet. */
-                return TRUE;
-            }
-            tag_str = tvb_get_ephemeral_string(tvb, field_offset, tag_len);
-            tag = atoi(tag_str);
+static guint
+get_fix_pdu_len(packet_info *pinfo _U_, tvbuff_t *tvb, int offset)
+{
+       int fix_len;
 
-            value = tvb_get_ephemeral_string(tvb, value_offset, value_len);
+       fix_len = fix_header_len(tvb, offset);
+       return fix_len;
+}
+
+/* ------------------------------------
+   fixed-length part isn't really a constant but if we assume it's at least:
+       8=FIX.x.y\01   10
+       9=x\01          4
+       35=x\01         5
+       10=y\01         5
+                      24
+       it should catch all 9= size
+*/
 
-            switch(tag) {
-                case 1: /* Field Account */
-                    proto_tree_add_string(fix_tree, hf_fix_Account, tvb, offset, field_len, value);
-                    break;
-                case 2: /* Field AdvId */
-                    proto_tree_add_string(fix_tree, hf_fix_AdvId, tvb, offset, field_len, value);
-                    break;
-                case 3: /* Field AdvRefID */
-                    proto_tree_add_string(fix_tree, hf_fix_AdvRefID, tvb, offset, field_len, value);
-                    break;
-                case 4: /* Field AdvSide */
-                    proto_tree_add_string(fix_tree, hf_fix_AdvSide, tvb, offset, field_len, value);
-                    break;
-                case 5: /* Field AdvTransType */
-                    proto_tree_add_string(fix_tree, hf_fix_AdvTransType, tvb, offset, field_len, value);
-                    break;
-                case 6: /* Field AvgPx */
-                    proto_tree_add_string(fix_tree, hf_fix_AvgPx, tvb, offset, field_len, value);
-                    break;
-                case 7: /* Field BeginSeqNo */
-                    proto_tree_add_string(fix_tree, hf_fix_BeginSeqNo, tvb, offset, field_len, value);
-                    break;
-                case 8: /* Field BeginString */
-                    /* BeginString is always the first field of a fix message.  The first
-                       check in this routine looks for the BeginString field to verify that
-                       the packet contains at least one fix message.  Create display subtree
-                       for the fix message */
-                    ti = proto_tree_add_item(tree, proto_fix, tvb, 0, -1, FALSE);
-                    fix_tree = proto_item_add_subtree(ti, ett_fix);
-                    ++msg_count;
+#define FIX_MIN_LEN 24
 
-                    proto_tree_add_string(fix_tree, hf_fix_BeginString, tvb, offset, field_len, value);
-                    break;
-                case 9: /* Field BodyLength */
-                    proto_tree_add_string(fix_tree, hf_fix_BodyLength, tvb, offset, field_len, value);
-                    break;
-                case 10: /* Field CheckSum */
-                    proto_tree_add_string(fix_tree, hf_fix_CheckSum, tvb, offset, field_len, value);
-                    break;
-                case 11: /* Field ClOrdID */
-                    proto_tree_add_string(fix_tree, hf_fix_ClOrdID, tvb, offset, field_len, value);
-                    break;
-                case 12: /* Field Commission */
-                    proto_tree_add_string(fix_tree, hf_fix_Commission, tvb, offset, field_len, value);
-                    break;
-                case 13: /* Field CommType */
-                    proto_tree_add_string(fix_tree, hf_fix_CommType, tvb, offset, field_len, value);
-                    break;
-                case 14: /* Field CumQty */
-                    proto_tree_add_string(fix_tree, hf_fix_CumQty, tvb, offset, field_len, value);
-                    break;
-                case 15: /* Field Currency */
-                    proto_tree_add_string(fix_tree, hf_fix_Currency, tvb, offset, field_len, value);
-                    break;
-                case 16: /* Field EndSeqNo */
-                    proto_tree_add_string(fix_tree, hf_fix_EndSeqNo, tvb, offset, field_len, value);
-                    break;
-                case 17: /* Field ExecID */
-                    proto_tree_add_string(fix_tree, hf_fix_ExecID, tvb, offset, field_len, value);
-                    break;
-                case 18: /* Field ExecInst */
-                    proto_tree_add_string(fix_tree, hf_fix_ExecInst, tvb, offset, field_len, value);
-                    break;
-                case 19: /* Field ExecRefID */
-                    proto_tree_add_string(fix_tree, hf_fix_ExecRefID, tvb, offset, field_len, value);
-                    break;
-                case 20: /* Field ExecTransType */
-                    proto_tree_add_string(fix_tree, hf_fix_ExecTransType, tvb, offset, field_len, value);
-                    break;
-                case 21: /* Field HandlInst */
-                    proto_tree_add_string(fix_tree, hf_fix_HandlInst, tvb, offset, field_len, value);
-                    break;
-                case 22: /* Field SecurityIDSource */
-                    proto_tree_add_string(fix_tree, hf_fix_SecurityIDSource, tvb, offset, field_len, value);
-                    break;
-                case 23: /* Field IOIid */
-                    proto_tree_add_string(fix_tree, hf_fix_IOIid, tvb, offset, field_len, value);
-                    break;
-                case 24: /* Field IOIOthSvc */
-                    proto_tree_add_string(fix_tree, hf_fix_IOIOthSvc, tvb, offset, field_len, value);
-                    break;
-                case 25: /* Field IOIQltyInd */
-                    proto_tree_add_string(fix_tree, hf_fix_IOIQltyInd, tvb, offset, field_len, value);
-                    break;
-                case 26: /* Field IOIRefID */
-                    proto_tree_add_string(fix_tree, hf_fix_IOIRefID, tvb, offset, field_len, value);
-                    break;
-                case 27: /* Field IOIQty */
-                    proto_tree_add_string(fix_tree, hf_fix_IOIQty, tvb, offset, field_len, value);
-                    break;
-                case 28: /* Field IOITransType */
-                    proto_tree_add_string(fix_tree, hf_fix_IOITransType, tvb, offset, field_len, value);
-                    break;
-                case 29: /* Field LastCapacity */
-                    proto_tree_add_string(fix_tree, hf_fix_LastCapacity, tvb, offset, field_len, value);
-                    break;
-                case 30: /* Field LastMkt */
-                    proto_tree_add_string(fix_tree, hf_fix_LastMkt, tvb, offset, field_len, value);
-                    break;
-                case 31: /* Field LastPx */
-                    proto_tree_add_string(fix_tree, hf_fix_LastPx, tvb, offset, field_len, value);
-                    break;
-                case 32: /* Field LastQty */
-                    proto_tree_add_string(fix_tree, hf_fix_LastQty, tvb, offset, field_len, value);
-                    break;
-                case 33: /* Field LinesOfText */
-                    proto_tree_add_string(fix_tree, hf_fix_LinesOfText, tvb, offset, field_len, value);
-                    break;
-                case 34: /* Field MsgSeqNum */
-                    proto_tree_add_string(fix_tree, hf_fix_MsgSeqNum, tvb, offset, field_len, value);
-                    break;
-                case 35: /* Field MsgType */
-                    /* We have a mapping of MsgType to descriptive strings, use it to
-                       enhance the value display for the MsgType field */
-                    label = g_string_new(value);
-                    msg_type = (char *)g_datalist_get_data(&msg_types, value);
-                    if (NULL != msg_type) g_string_append_printf(label, " (%s)", msg_type);
-                    proto_tree_add_string(fix_tree, hf_fix_MsgType, tvb, offset, field_len, label->str);
-                    g_string_free(label, TRUE);
-                    break;
-                case 36: /* Field NewSeqNo */
-                    proto_tree_add_string(fix_tree, hf_fix_NewSeqNo, tvb, offset, field_len, value);
-                    break;
-                case 37: /* Field OrderID */
-                    proto_tree_add_string(fix_tree, hf_fix_OrderID, tvb, offset, field_len, value);
-                    break;
-                case 38: /* Field OrderQty */
-                    proto_tree_add_string(fix_tree, hf_fix_OrderQty, tvb, offset, field_len, value);
-                    break;
-                case 39: /* Field OrdStatus */
-                    proto_tree_add_string(fix_tree, hf_fix_OrdStatus, tvb, offset, field_len, value);
-                    break;
-                case 40: /* Field OrdType */
-                    proto_tree_add_string(fix_tree, hf_fix_OrdType, tvb, offset, field_len, value);
-                    break;
-                case 41: /* Field OrigClOrdID */
-                    proto_tree_add_string(fix_tree, hf_fix_OrigClOrdID, tvb, offset, field_len, value);
-                    break;
-                case 42: /* Field OrigTime */
-                    proto_tree_add_string(fix_tree, hf_fix_OrigTime, tvb, offset, field_len, value);
-                    break;
-                case 43: /* Field PossDupFlag */
-                    proto_tree_add_string(fix_tree, hf_fix_PossDupFlag, tvb, offset, field_len, value);
-                    break;
-                case 44: /* Field Price */
-                    proto_tree_add_string(fix_tree, hf_fix_Price, tvb, offset, field_len, value);
-                    break;
-                case 45: /* Field RefSeqNum */
-                    proto_tree_add_string(fix_tree, hf_fix_RefSeqNum, tvb, offset, field_len, value);
-                    break;
-                case 46: /* Field RelatdSym */
-                    proto_tree_add_string(fix_tree, hf_fix_RelatdSym, tvb, offset, field_len, value);
-                    break;
-                case 47: /* Field Rule80A */
-                    proto_tree_add_string(fix_tree, hf_fix_Rule80A, tvb, offset, field_len, value);
-                    break;
-                case 48: /* Field SecurityID */
-                    proto_tree_add_string(fix_tree, hf_fix_SecurityID, tvb, offset, field_len, value);
-                    break;
-                case 49: /* Field SenderCompID */
-                    proto_tree_add_string(fix_tree, hf_fix_SenderCompID, tvb, offset, field_len, value);
-                    break;
-                case 50: /* Field SenderSubID */
-                    proto_tree_add_string(fix_tree, hf_fix_SenderSubID, tvb, offset, field_len, value);
-                    break;
-                case 51: /* Field SendingDate */
-                    proto_tree_add_string(fix_tree, hf_fix_SendingDate, tvb, offset, field_len, value);
-                    break;
-                case 52: /* Field SendingTime */
-                    proto_tree_add_string(fix_tree, hf_fix_SendingTime, tvb, offset, field_len, value);
-                    break;
-                case 53: /* Field Quantity */
-                    proto_tree_add_string(fix_tree, hf_fix_Quantity, tvb, offset, field_len, value);
-                    break;
-                case 54: /* Field Side */
-                    proto_tree_add_string(fix_tree, hf_fix_Side, tvb, offset, field_len, value);
-                    break;
-                case 55: /* Field Symbol */
-                    proto_tree_add_string(fix_tree, hf_fix_Symbol, tvb, offset, field_len, value);
-                    break;
-                case 56: /* Field TargetCompID */
-                    proto_tree_add_string(fix_tree, hf_fix_TargetCompID, tvb, offset, field_len, value);
-                    break;
-                case 57: /* Field TargetSubID */
-                    proto_tree_add_string(fix_tree, hf_fix_TargetSubID, tvb, offset, field_len, value);
-                    break;
-                case 58: /* Field Text */
-                    proto_tree_add_string(fix_tree, hf_fix_Text, tvb, offset, field_len, value);
-                    break;
-                case 59: /* Field TimeInForce */
-                    proto_tree_add_string(fix_tree, hf_fix_TimeInForce, tvb, offset, field_len, value);
-                    break;
-                case 60: /* Field TransactTime */
-                    proto_tree_add_string(fix_tree, hf_fix_TransactTime, tvb, offset, field_len, value);
-                    break;
-                case 61: /* Field Urgency */
-                    proto_tree_add_string(fix_tree, hf_fix_Urgency, tvb, offset, field_len, value);
-                    break;
-                case 62: /* Field ValidUntilTime */
-                    proto_tree_add_string(fix_tree, hf_fix_ValidUntilTime, tvb, offset, field_len, value);
-                    break;
-                case 63: /* Field SettlmntTyp */
-                    proto_tree_add_string(fix_tree, hf_fix_SettlmntTyp, tvb, offset, field_len, value);
-                    break;
-                case 64: /* Field FutSettDate */
-                    proto_tree_add_string(fix_tree, hf_fix_FutSettDate, tvb, offset, field_len, value);
-                    break;
-                case 65: /* Field SymbolSfx */
-                    proto_tree_add_string(fix_tree, hf_fix_SymbolSfx, tvb, offset, field_len, value);
-                    break;
-                case 66: /* Field ListID */
-                    proto_tree_add_string(fix_tree, hf_fix_ListID, tvb, offset, field_len, value);
-                    break;
-                case 67: /* Field ListSeqNo */
-                    proto_tree_add_string(fix_tree, hf_fix_ListSeqNo, tvb, offset, field_len, value);
-                    break;
-                case 68: /* Field TotNoOrders */
-                    proto_tree_add_string(fix_tree, hf_fix_TotNoOrders, tvb, offset, field_len, value);
-                    break;
-                case 69: /* Field ListExecInst */
-                    proto_tree_add_string(fix_tree, hf_fix_ListExecInst, tvb, offset, field_len, value);
-                    break;
-                case 70: /* Field AllocID */
-                    proto_tree_add_string(fix_tree, hf_fix_AllocID, tvb, offset, field_len, value);
-                    break;
-                case 71: /* Field AllocTransType */
-                    proto_tree_add_string(fix_tree, hf_fix_AllocTransType, tvb, offset, field_len, value);
-                    break;
-                case 72: /* Field RefAllocID */
-                    proto_tree_add_string(fix_tree, hf_fix_RefAllocID, tvb, offset, field_len, value);
-                    break;
-                case 73: /* Field NoOrders */
-                    proto_tree_add_string(fix_tree, hf_fix_NoOrders, tvb, offset, field_len, value);
-                    break;
-                case 74: /* Field AvgPrxPrecision */
-                    proto_tree_add_string(fix_tree, hf_fix_AvgPrxPrecision, tvb, offset, field_len, value);
-                    break;
-                case 75: /* Field TradeDate */
-                    proto_tree_add_string(fix_tree, hf_fix_TradeDate, tvb, offset, field_len, value);
-                    break;
-                case 76: /* Field ExecBroker */
-                    proto_tree_add_string(fix_tree, hf_fix_ExecBroker, tvb, offset, field_len, value);
-                    break;
-                case 77: /* Field PositionEffect */
-                    proto_tree_add_string(fix_tree, hf_fix_PositionEffect, tvb, offset, field_len, value);
-                    break;
-                case 78: /* Field NoAllocs */
-                    proto_tree_add_string(fix_tree, hf_fix_NoAllocs, tvb, offset, field_len, value);
-                    break;
-                case 79: /* Field AllocAccount */
-                    proto_tree_add_string(fix_tree, hf_fix_AllocAccount, tvb, offset, field_len, value);
-                    break;
-                case 80: /* Field AllocQty */
-                    proto_tree_add_string(fix_tree, hf_fix_AllocQty, tvb, offset, field_len, value);
-                    break;
-                case 81: /* Field ProcessCode */
-                    proto_tree_add_string(fix_tree, hf_fix_ProcessCode, tvb, offset, field_len, value);
-                    break;
-                case 82: /* Field NoRpts */
-                    proto_tree_add_string(fix_tree, hf_fix_NoRpts, tvb, offset, field_len, value);
-                    break;
-                case 83: /* Field RptSeq */
-                    proto_tree_add_string(fix_tree, hf_fix_RptSeq, tvb, offset, field_len, value);
-                    break;
-                case 84: /* Field CxlQty */
-                    proto_tree_add_string(fix_tree, hf_fix_CxlQty, tvb, offset, field_len, value);
-                    break;
-                case 85: /* Field NoDlvyInst */
-                    proto_tree_add_string(fix_tree, hf_fix_NoDlvyInst, tvb, offset, field_len, value);
-                    break;
-                case 86: /* Field DlvyInst */
-                    proto_tree_add_string(fix_tree, hf_fix_DlvyInst, tvb, offset, field_len, value);
-                    break;
-                case 87: /* Field AllocStatus */
-                    proto_tree_add_string(fix_tree, hf_fix_AllocStatus, tvb, offset, field_len, value);
-                    break;
-                case 88: /* Field AllocRejCode */
-                    proto_tree_add_string(fix_tree, hf_fix_AllocRejCode, tvb, offset, field_len, value);
-                    break;
-                case 89: /* Field Signature */
-                    proto_tree_add_string(fix_tree, hf_fix_Signature, tvb, offset, field_len, value);
-                    break;
-                case 90: /* Field SecureDataLen */
-                    proto_tree_add_string(fix_tree, hf_fix_SecureDataLen, tvb, offset, field_len, value);
-                    break;
-                case 91: /* Field SecureData */
-                    proto_tree_add_string(fix_tree, hf_fix_SecureData, tvb, offset, field_len, value);
-                    break;
-                case 92: /* Field BrokerOfCredit */
-                    proto_tree_add_string(fix_tree, hf_fix_BrokerOfCredit, tvb, offset, field_len, value);
-                    break;
-                case 93: /* Field SignatureLength */
-                    proto_tree_add_string(fix_tree, hf_fix_SignatureLength, tvb, offset, field_len, value);
-                    break;
-                case 94: /* Field EmailType */
-                    proto_tree_add_string(fix_tree, hf_fix_EmailType, tvb, offset, field_len, value);
-                    break;
-                case 95: /* Field RawDataLength */
-                    proto_tree_add_string(fix_tree, hf_fix_RawDataLength, tvb, offset, field_len, value);
-                    break;
-                case 96: /* Field RawData */
-                    proto_tree_add_string(fix_tree, hf_fix_RawData, tvb, offset, field_len, value);
-                    break;
-                case 97: /* Field PossResend */
-                    proto_tree_add_string(fix_tree, hf_fix_PossResend, tvb, offset, field_len, value);
-                    break;
-                case 98: /* Field EncryptMethod */
-                    proto_tree_add_string(fix_tree, hf_fix_EncryptMethod, tvb, offset, field_len, value);
-                    break;
-                case 99: /* Field StopPx */
-                    proto_tree_add_string(fix_tree, hf_fix_StopPx, tvb, offset, field_len, value);
-                    break;
-                case 100: /* Field ExDestination */
-                    proto_tree_add_string(fix_tree, hf_fix_ExDestination, tvb, offset, field_len, value);
-                    break;
-                case 102: /* Field CxlRejReason */
-                    proto_tree_add_string(fix_tree, hf_fix_CxlRejReason, tvb, offset, field_len, value);
-                    break;
-                case 103: /* Field OrdRejReason */
-                    proto_tree_add_string(fix_tree, hf_fix_OrdRejReason, tvb, offset, field_len, value);
-                    break;
-                case 104: /* Field IOIQualifier */
-                    proto_tree_add_string(fix_tree, hf_fix_IOIQualifier, tvb, offset, field_len, value);
-                    break;
-                case 105: /* Field WaveNo */
-                    proto_tree_add_string(fix_tree, hf_fix_WaveNo, tvb, offset, field_len, value);
-                    break;
-                case 106: /* Field Issuer */
-                    proto_tree_add_string(fix_tree, hf_fix_Issuer, tvb, offset, field_len, value);
-                    break;
-                case 107: /* Field SecurityDesc */
-                    proto_tree_add_string(fix_tree, hf_fix_SecurityDesc, tvb, offset, field_len, value);
-                    break;
-                case 108: /* Field HeartBtInt */
-                    proto_tree_add_string(fix_tree, hf_fix_HeartBtInt, tvb, offset, field_len, value);
-                    break;
-                case 109: /* Field ClientID */
-                    proto_tree_add_string(fix_tree, hf_fix_ClientID, tvb, offset, field_len, value);
-                    break;
-                case 110: /* Field MinQty */
-                    proto_tree_add_string(fix_tree, hf_fix_MinQty, tvb, offset, field_len, value);
-                    break;
-                case 111: /* Field MaxFloor */
-                    proto_tree_add_string(fix_tree, hf_fix_MaxFloor, tvb, offset, field_len, value);
-                    break;
-                case 112: /* Field TestReqID */
-                    proto_tree_add_string(fix_tree, hf_fix_TestReqID, tvb, offset, field_len, value);
-                    break;
-                case 113: /* Field ReportToExch */
-                    proto_tree_add_string(fix_tree, hf_fix_ReportToExch, tvb, offset, field_len, value);
-                    break;
-                case 114: /* Field LocateReqd */
-                    proto_tree_add_string(fix_tree, hf_fix_LocateReqd, tvb, offset, field_len, value);
-                    break;
-                case 115: /* Field OnBehalfOfCompID */
-                    proto_tree_add_string(fix_tree, hf_fix_OnBehalfOfCompID, tvb, offset, field_len, value);
-                    break;
-                case 116: /* Field OnBehalfOfSubID */
-                    proto_tree_add_string(fix_tree, hf_fix_OnBehalfOfSubID, tvb, offset, field_len, value);
-                    break;
-                case 117: /* Field QuoteID */
-                    proto_tree_add_string(fix_tree, hf_fix_QuoteID, tvb, offset, field_len, value);
-                    break;
-                case 118: /* Field NetMoney */
-                    proto_tree_add_string(fix_tree, hf_fix_NetMoney, tvb, offset, field_len, value);
-                    break;
-                case 119: /* Field SettlCurrAmt */
-                    proto_tree_add_string(fix_tree, hf_fix_SettlCurrAmt, tvb, offset, field_len, value);
-                    break;
-                case 120: /* Field SettlCurrency */
-                    proto_tree_add_string(fix_tree, hf_fix_SettlCurrency, tvb, offset, field_len, value);
-                    break;
-                case 121: /* Field ForexReq */
-                    proto_tree_add_string(fix_tree, hf_fix_ForexReq, tvb, offset, field_len, value);
-                    break;
-                case 122: /* Field OrigSendingTime */
-                    proto_tree_add_string(fix_tree, hf_fix_OrigSendingTime, tvb, offset, field_len, value);
-                    break;
-                case 123: /* Field GapFillFlag */
-                    proto_tree_add_string(fix_tree, hf_fix_GapFillFlag, tvb, offset, field_len, value);
-                    break;
-                case 124: /* Field NoExecs */
-                    proto_tree_add_string(fix_tree, hf_fix_NoExecs, tvb, offset, field_len, value);
-                    break;
-                case 125: /* Field CxlType */
-                    proto_tree_add_string(fix_tree, hf_fix_CxlType, tvb, offset, field_len, value);
-                    break;
-                case 126: /* Field ExpireTime */
-                    proto_tree_add_string(fix_tree, hf_fix_ExpireTime, tvb, offset, field_len, value);
-                    break;
-                case 127: /* Field DKReason */
-                    proto_tree_add_string(fix_tree, hf_fix_DKReason, tvb, offset, field_len, value);
-                    break;
-                case 128: /* Field DeliverToCompID */
-                    proto_tree_add_string(fix_tree, hf_fix_DeliverToCompID, tvb, offset, field_len, value);
-                    break;
-                case 129: /* Field DeliverToSubID */
-                    proto_tree_add_string(fix_tree, hf_fix_DeliverToSubID, tvb, offset, field_len, value);
-                    break;
-                case 130: /* Field IOINaturalFlag */
-                    proto_tree_add_string(fix_tree, hf_fix_IOINaturalFlag, tvb, offset, field_len, value);
-                    break;
-                case 131: /* Field QuoteReqID */
-                    proto_tree_add_string(fix_tree, hf_fix_QuoteReqID, tvb, offset, field_len, value);
-                    break;
-                case 132: /* Field BidPx */
-                    proto_tree_add_string(fix_tree, hf_fix_BidPx, tvb, offset, field_len, value);
-                    break;
-                case 133: /* Field OfferPx */
-                    proto_tree_add_string(fix_tree, hf_fix_OfferPx, tvb, offset, field_len, value);
-                    break;
-                case 134: /* Field BidSize */
-                    proto_tree_add_string(fix_tree, hf_fix_BidSize, tvb, offset, field_len, value);
-                    break;
-                case 135: /* Field OfferSize */
-                    proto_tree_add_string(fix_tree, hf_fix_OfferSize, tvb, offset, field_len, value);
-                    break;
-                case 136: /* Field NoMiscFees */
-                    proto_tree_add_string(fix_tree, hf_fix_NoMiscFees, tvb, offset, field_len, value);
-                    break;
-                case 137: /* Field MiscFeeAmt */
-                    proto_tree_add_string(fix_tree, hf_fix_MiscFeeAmt, tvb, offset, field_len, value);
-                    break;
-                case 138: /* Field MiscFeeCurr */
-                    proto_tree_add_string(fix_tree, hf_fix_MiscFeeCurr, tvb, offset, field_len, value);
-                    break;
-                case 139: /* Field MiscFeeType */
-                    proto_tree_add_string(fix_tree, hf_fix_MiscFeeType, tvb, offset, field_len, value);
-                    break;
-                case 140: /* Field PrevClosePx */
-                    proto_tree_add_string(fix_tree, hf_fix_PrevClosePx, tvb, offset, field_len, value);
-                    break;
-                case 141: /* Field ResetSeqNumFlag */
-                    proto_tree_add_string(fix_tree, hf_fix_ResetSeqNumFlag, tvb, offset, field_len, value);
-                    break;
-                case 142: /* Field SenderLocationID */
-                    proto_tree_add_string(fix_tree, hf_fix_SenderLocationID, tvb, offset, field_len, value);
-                    break;
-                case 143: /* Field TargetLocationID */
-                    proto_tree_add_string(fix_tree, hf_fix_TargetLocationID, tvb, offset, field_len, value);
-                    break;
-                case 144: /* Field OnBehalfOfLocationID */
-                    proto_tree_add_string(fix_tree, hf_fix_OnBehalfOfLocationID, tvb, offset, field_len, value);
-                    break;
-                case 145: /* Field DeliverToLocationID */
-                    proto_tree_add_string(fix_tree, hf_fix_DeliverToLocationID, tvb, offset, field_len, value);
-                    break;
-                case 146: /* Field NoRelatedSym */
-                    proto_tree_add_string(fix_tree, hf_fix_NoRelatedSym, tvb, offset, field_len, value);
-                    break;
-                case 147: /* Field Subject */
-                    proto_tree_add_string(fix_tree, hf_fix_Subject, tvb, offset, field_len, value);
-                    break;
-                case 148: /* Field Headline */
-                    proto_tree_add_string(fix_tree, hf_fix_Headline, tvb, offset, field_len, value);
-                    break;
-                case 149: /* Field URLLink */
-                    proto_tree_add_string(fix_tree, hf_fix_URLLink, tvb, offset, field_len, value);
-                    break;
-                case 150: /* Field ExecType */
-                    proto_tree_add_string(fix_tree, hf_fix_ExecType, tvb, offset, field_len, value);
-                    break;
-                case 151: /* Field LeavesQty */
-                    proto_tree_add_string(fix_tree, hf_fix_LeavesQty, tvb, offset, field_len, value);
-                    break;
-                case 152: /* Field CashOrderQty */
-                    proto_tree_add_string(fix_tree, hf_fix_CashOrderQty, tvb, offset, field_len, value);
-                    break;
-                case 153: /* Field AllocAvgPx */
-                    proto_tree_add_string(fix_tree, hf_fix_AllocAvgPx, tvb, offset, field_len, value);
-                    break;
-                case 154: /* Field AllocNetMoney */
-                    proto_tree_add_string(fix_tree, hf_fix_AllocNetMoney, tvb, offset, field_len, value);
-                    break;
-                case 155: /* Field SettlCurrFxRate */
-                    proto_tree_add_string(fix_tree, hf_fix_SettlCurrFxRate, tvb, offset, field_len, value);
-                    break;
-                case 156: /* Field SettlCurrFxRateCalc */
-                    proto_tree_add_string(fix_tree, hf_fix_SettlCurrFxRateCalc, tvb, offset, field_len, value);
-                    break;
-                case 157: /* Field NumDaysInterest */
-                    proto_tree_add_string(fix_tree, hf_fix_NumDaysInterest, tvb, offset, field_len, value);
-                    break;
-                case 158: /* Field AccruedInterestRate */
-                    proto_tree_add_string(fix_tree, hf_fix_AccruedInterestRate, tvb, offset, field_len, value);
-                    break;
-                case 159: /* Field AccruedInterestAmt */
-                    proto_tree_add_string(fix_tree, hf_fix_AccruedInterestAmt, tvb, offset, field_len, value);
-                    break;
-                case 160: /* Field SettlInstMode */
-                    proto_tree_add_string(fix_tree, hf_fix_SettlInstMode, tvb, offset, field_len, value);
-                    break;
-                case 161: /* Field AllocText */
-                    proto_tree_add_string(fix_tree, hf_fix_AllocText, tvb, offset, field_len, value);
-                    break;
-                case 162: /* Field SettlInstID */
-                    proto_tree_add_string(fix_tree, hf_fix_SettlInstID, tvb, offset, field_len, value);
-                    break;
-                case 163: /* Field SettlInstTransType */
-                    proto_tree_add_string(fix_tree, hf_fix_SettlInstTransType, tvb, offset, field_len, value);
-                    break;
-                case 164: /* Field EmailThreadID */
-                    proto_tree_add_string(fix_tree, hf_fix_EmailThreadID, tvb, offset, field_len, value);
-                    break;
-                case 165: /* Field SettlInstSource */
-                    proto_tree_add_string(fix_tree, hf_fix_SettlInstSource, tvb, offset, field_len, value);
-                    break;
-                case 166: /* Field SettlLocation */
-                    proto_tree_add_string(fix_tree, hf_fix_SettlLocation, tvb, offset, field_len, value);
-                    break;
-                case 167: /* Field SecurityType */
-                    proto_tree_add_string(fix_tree, hf_fix_SecurityType, tvb, offset, field_len, value);
-                    break;
-                case 168: /* Field EffectiveTime */
-                    proto_tree_add_string(fix_tree, hf_fix_EffectiveTime, tvb, offset, field_len, value);
-                    break;
-                case 169: /* Field StandInstDbType */
-                    proto_tree_add_string(fix_tree, hf_fix_StandInstDbType, tvb, offset, field_len, value);
-                    break;
-                case 170: /* Field StandInstDbName */
-                    proto_tree_add_string(fix_tree, hf_fix_StandInstDbName, tvb, offset, field_len, value);
-                    break;
-                case 171: /* Field StandInstDbID */
-                    proto_tree_add_string(fix_tree, hf_fix_StandInstDbID, tvb, offset, field_len, value);
-                    break;
-                case 172: /* Field SettlDeliveryType */
-                    proto_tree_add_string(fix_tree, hf_fix_SettlDeliveryType, tvb, offset, field_len, value);
-                    break;
-                case 173: /* Field SettlDepositoryCode */
-                    proto_tree_add_string(fix_tree, hf_fix_SettlDepositoryCode, tvb, offset, field_len, value);
-                    break;
-                case 174: /* Field SettlBrkrCode */
-                    proto_tree_add_string(fix_tree, hf_fix_SettlBrkrCode, tvb, offset, field_len, value);
-                    break;
-                case 175: /* Field SettlInstCode */
-                    proto_tree_add_string(fix_tree, hf_fix_SettlInstCode, tvb, offset, field_len, value);
-                    break;
-                case 176: /* Field SecuritySettlAgentName */
-                    proto_tree_add_string(fix_tree, hf_fix_SecuritySettlAgentName, tvb, offset, field_len, value);
-                    break;
-                case 177: /* Field SecuritySettlAgentCode */
-                    proto_tree_add_string(fix_tree, hf_fix_SecuritySettlAgentCode, tvb, offset, field_len, value);
-                    break;
-                case 178: /* Field SecuritySettlAgentAcctNum */
-                    proto_tree_add_string(fix_tree, hf_fix_SecuritySettlAgentAcctNum, tvb, offset, field_len, value);
-                    break;
-                case 179: /* Field SecuritySettlAgentAcctName */
-                    proto_tree_add_string(fix_tree, hf_fix_SecuritySettlAgentAcctName, tvb, offset, field_len, value);
-                    break;
-                case 180: /* Field SecuritySettlAgentContactName */
-                    proto_tree_add_string(fix_tree, hf_fix_SecuritySettlAgentContactName, tvb, offset, field_len, value);
-                    break;
-                case 181: /* Field SecuritySettlAgentContactPhone */
-                    proto_tree_add_string(fix_tree, hf_fix_SecuritySettlAgentContactPhone, tvb, offset, field_len, value);
-                    break;
-                case 182: /* Field CashSettlAgentName */
-                    proto_tree_add_string(fix_tree, hf_fix_CashSettlAgentName, tvb, offset, field_len, value);
-                    break;
-                case 183: /* Field CashSettlAgentCode */
-                    proto_tree_add_string(fix_tree, hf_fix_CashSettlAgentCode, tvb, offset, field_len, value);
-                    break;
-                case 184: /* Field CashSettlAgentAcctNum */
-                    proto_tree_add_string(fix_tree, hf_fix_CashSettlAgentAcctNum, tvb, offset, field_len, value);
-                    break;
-                case 185: /* Field CashSettlAgentAcctName */
-                    proto_tree_add_string(fix_tree, hf_fix_CashSettlAgentAcctName, tvb, offset, field_len, value);
-                    break;
-                case 186: /* Field CashSettlAgentContactName */
-                    proto_tree_add_string(fix_tree, hf_fix_CashSettlAgentContactName, tvb, offset, field_len, value);
-                    break;
-                case 187: /* Field CashSettlAgentContactPhone */
-                    proto_tree_add_string(fix_tree, hf_fix_CashSettlAgentContactPhone, tvb, offset, field_len, value);
-                    break;
-                case 188: /* Field BidSpotRate */
-                    proto_tree_add_string(fix_tree, hf_fix_BidSpotRate, tvb, offset, field_len, value);
-                    break;
-                case 189: /* Field BidForwardPoints */
-                    proto_tree_add_string(fix_tree, hf_fix_BidForwardPoints, tvb, offset, field_len, value);
-                    break;
-                case 190: /* Field OfferSpotRate */
-                    proto_tree_add_string(fix_tree, hf_fix_OfferSpotRate, tvb, offset, field_len, value);
-                    break;
-                case 191: /* Field OfferForwardPoints */
-                    proto_tree_add_string(fix_tree, hf_fix_OfferForwardPoints, tvb, offset, field_len, value);
-                    break;
-                case 192: /* Field OrderQty2 */
-                    proto_tree_add_string(fix_tree, hf_fix_OrderQty2, tvb, offset, field_len, value);
-                    break;
-                case 193: /* Field FutSettDate2 */
-                    proto_tree_add_string(fix_tree, hf_fix_FutSettDate2, tvb, offset, field_len, value);
-                    break;
-                case 194: /* Field LastSpotRate */
-                    proto_tree_add_string(fix_tree, hf_fix_LastSpotRate, tvb, offset, field_len, value);
-                    break;
-                case 195: /* Field LastForwardPoints */
-                    proto_tree_add_string(fix_tree, hf_fix_LastForwardPoints, tvb, offset, field_len, value);
-                    break;
-                case 196: /* Field AllocLinkID */
-                    proto_tree_add_string(fix_tree, hf_fix_AllocLinkID, tvb, offset, field_len, value);
-                    break;
-                case 197: /* Field AllocLinkType */
-                    proto_tree_add_string(fix_tree, hf_fix_AllocLinkType, tvb, offset, field_len, value);
-                    break;
-                case 198: /* Field SecondaryOrderID */
-                    proto_tree_add_string(fix_tree, hf_fix_SecondaryOrderID, tvb, offset, field_len, value);
-                    break;
-                case 199: /* Field NoIOIQualifiers */
-                    proto_tree_add_string(fix_tree, hf_fix_NoIOIQualifiers, tvb, offset, field_len, value);
-                    break;
-                case 200: /* Field MaturityMonthYear */
-                    proto_tree_add_string(fix_tree, hf_fix_MaturityMonthYear, tvb, offset, field_len, value);
-                    break;
-                case 201: /* Field PutOrCall */
-                    proto_tree_add_string(fix_tree, hf_fix_PutOrCall, tvb, offset, field_len, value);
-                    break;
-                case 202: /* Field StrikePrice */
-                    proto_tree_add_string(fix_tree, hf_fix_StrikePrice, tvb, offset, field_len, value);
-                    break;
-                case 203: /* Field CoveredOrUncovered */
-                    proto_tree_add_string(fix_tree, hf_fix_CoveredOrUncovered, tvb, offset, field_len, value);
-                    break;
-                case 204: /* Field CustomerOrFirm */
-                    proto_tree_add_string(fix_tree, hf_fix_CustomerOrFirm, tvb, offset, field_len, value);
-                    break;
-                case 205: /* Field MaturityDay */
-                    proto_tree_add_string(fix_tree, hf_fix_MaturityDay, tvb, offset, field_len, value);
-                    break;
-                case 206: /* Field OptAttribute */
-                    proto_tree_add_string(fix_tree, hf_fix_OptAttribute, tvb, offset, field_len, value);
-                    break;
-                case 207: /* Field SecurityExchange */
-                    proto_tree_add_string(fix_tree, hf_fix_SecurityExchange, tvb, offset, field_len, value);
-                    break;
-                case 208: /* Field NotifyBrokerOfCredit */
-                    proto_tree_add_string(fix_tree, hf_fix_NotifyBrokerOfCredit, tvb, offset, field_len, value);
-                    break;
-                case 209: /* Field AllocHandlInst */
-                    proto_tree_add_string(fix_tree, hf_fix_AllocHandlInst, tvb, offset, field_len, value);
-                    break;
-                case 210: /* Field MaxShow */
-                    proto_tree_add_string(fix_tree, hf_fix_MaxShow, tvb, offset, field_len, value);
-                    break;
-                case 211: /* Field PegDifference */
-                    proto_tree_add_string(fix_tree, hf_fix_PegDifference, tvb, offset, field_len, value);
-                    break;
-                case 212: /* Field XmlDataLen */
-                    proto_tree_add_string(fix_tree, hf_fix_XmlDataLen, tvb, offset, field_len, value);
-                    break;
-                case 213: /* Field XmlData */
-                    proto_tree_add_string(fix_tree, hf_fix_XmlData, tvb, offset, field_len, value);
-                    break;
-                case 214: /* Field SettlInstRefID */
-                    proto_tree_add_string(fix_tree, hf_fix_SettlInstRefID, tvb, offset, field_len, value);
-                    break;
-                case 215: /* Field NoRoutingIDs */
-                    proto_tree_add_string(fix_tree, hf_fix_NoRoutingIDs, tvb, offset, field_len, value);
-                    break;
-                case 216: /* Field RoutingType */
-                    proto_tree_add_string(fix_tree, hf_fix_RoutingType, tvb, offset, field_len, value);
-                    break;
-                case 217: /* Field RoutingID */
-                    proto_tree_add_string(fix_tree, hf_fix_RoutingID, tvb, offset, field_len, value);
-                    break;
-                case 218: /* Field Spread */
-                    proto_tree_add_string(fix_tree, hf_fix_Spread, tvb, offset, field_len, value);
-                    break;
-                case 219: /* Field Benchmark */
-                    proto_tree_add_string(fix_tree, hf_fix_Benchmark, tvb, offset, field_len, value);
-                    break;
-                case 220: /* Field BenchmarkCurveCurrency */
-                    proto_tree_add_string(fix_tree, hf_fix_BenchmarkCurveCurrency, tvb, offset, field_len, value);
-                    break;
-                case 221: /* Field BenchmarkCurveName */
-                    proto_tree_add_string(fix_tree, hf_fix_BenchmarkCurveName, tvb, offset, field_len, value);
-                    break;
-                case 222: /* Field BenchmarkCurvePoint */
-                    proto_tree_add_string(fix_tree, hf_fix_BenchmarkCurvePoint, tvb, offset, field_len, value);
-                    break;
-                case 223: /* Field CouponRate */
-                    proto_tree_add_string(fix_tree, hf_fix_CouponRate, tvb, offset, field_len, value);
-                    break;
-                case 224: /* Field CouponPaymentDate */
-                    proto_tree_add_string(fix_tree, hf_fix_CouponPaymentDate, tvb, offset, field_len, value);
-                    break;
-                case 225: /* Field IssueDate */
-                    proto_tree_add_string(fix_tree, hf_fix_IssueDate, tvb, offset, field_len, value);
-                    break;
-                case 226: /* Field RepurchaseTerm */
-                    proto_tree_add_string(fix_tree, hf_fix_RepurchaseTerm, tvb, offset, field_len, value);
-                    break;
-                case 227: /* Field RepurchaseRate */
-                    proto_tree_add_string(fix_tree, hf_fix_RepurchaseRate, tvb, offset, field_len, value);
-                    break;
-                case 228: /* Field Factor */
-                    proto_tree_add_string(fix_tree, hf_fix_Factor, tvb, offset, field_len, value);
-                    break;
-                case 229: /* Field TradeOriginationDate */
-                    proto_tree_add_string(fix_tree, hf_fix_TradeOriginationDate, tvb, offset, field_len, value);
-                    break;
-                case 230: /* Field ExDate */
-                    proto_tree_add_string(fix_tree, hf_fix_ExDate, tvb, offset, field_len, value);
-                    break;
-                case 231: /* Field ContractMultiplier */
-                    proto_tree_add_string(fix_tree, hf_fix_ContractMultiplier, tvb, offset, field_len, value);
-                    break;
-                case 232: /* Field NoStipulations */
-                    proto_tree_add_string(fix_tree, hf_fix_NoStipulations, tvb, offset, field_len, value);
-                    break;
-                case 233: /* Field StipulationType */
-                    proto_tree_add_string(fix_tree, hf_fix_StipulationType, tvb, offset, field_len, value);
-                    break;
-                case 234: /* Field StipulationValue */
-                    proto_tree_add_string(fix_tree, hf_fix_StipulationValue, tvb, offset, field_len, value);
-                    break;
-                case 235: /* Field YieldType */
-                    proto_tree_add_string(fix_tree, hf_fix_YieldType, tvb, offset, field_len, value);
-                    break;
-                case 236: /* Field Yield */
-                    proto_tree_add_string(fix_tree, hf_fix_Yield, tvb, offset, field_len, value);
-                    break;
-                case 237: /* Field TotalTakedown */
-                    proto_tree_add_string(fix_tree, hf_fix_TotalTakedown, tvb, offset, field_len, value);
-                    break;
-                case 238: /* Field Concession */
-                    proto_tree_add_string(fix_tree, hf_fix_Concession, tvb, offset, field_len, value);
-                    break;
-                case 239: /* Field RepoCollateralSecurityType */
-                    proto_tree_add_string(fix_tree, hf_fix_RepoCollateralSecurityType, tvb, offset, field_len, value);
-                    break;
-                case 240: /* Field RedemptionDate */
-                    proto_tree_add_string(fix_tree, hf_fix_RedemptionDate, tvb, offset, field_len, value);
-                    break;
-                case 241: /* Field UnderlyingCouponPaymentDate */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingCouponPaymentDate, tvb, offset, field_len, value);
-                    break;
-                case 242: /* Field UnderlyingIssueDate */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingIssueDate, tvb, offset, field_len, value);
-                    break;
-                case 243: /* Field UnderlyingRepoCollateralSecurityType */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingRepoCollateralSecurityType, tvb, offset, field_len, value);
-                    break;
-                case 244: /* Field UnderlyingRepurchaseTerm */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingRepurchaseTerm, tvb, offset, field_len, value);
-                    break;
-                case 245: /* Field UnderlyingRepurchaseRate */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingRepurchaseRate, tvb, offset, field_len, value);
-                    break;
-                case 246: /* Field UnderlyingFactor */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingFactor, tvb, offset, field_len, value);
-                    break;
-                case 247: /* Field UnderlyingRedemptionDate */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingRedemptionDate, tvb, offset, field_len, value);
-                    break;
-                case 248: /* Field LegCouponPaymentDate */
-                    proto_tree_add_string(fix_tree, hf_fix_LegCouponPaymentDate, tvb, offset, field_len, value);
-                    break;
-                case 249: /* Field LegIssueDate */
-                    proto_tree_add_string(fix_tree, hf_fix_LegIssueDate, tvb, offset, field_len, value);
-                    break;
-                case 250: /* Field LegRepoCollateralSecurityType */
-                    proto_tree_add_string(fix_tree, hf_fix_LegRepoCollateralSecurityType, tvb, offset, field_len, value);
-                    break;
-                case 251: /* Field LegRepurchaseTerm */
-                    proto_tree_add_string(fix_tree, hf_fix_LegRepurchaseTerm, tvb, offset, field_len, value);
-                    break;
-                case 252: /* Field LegRepurchaseRate */
-                    proto_tree_add_string(fix_tree, hf_fix_LegRepurchaseRate, tvb, offset, field_len, value);
-                    break;
-                case 253: /* Field LegFactor */
-                    proto_tree_add_string(fix_tree, hf_fix_LegFactor, tvb, offset, field_len, value);
-                    break;
-                case 254: /* Field LegRedemptionDate */
-                    proto_tree_add_string(fix_tree, hf_fix_LegRedemptionDate, tvb, offset, field_len, value);
-                    break;
-                case 255: /* Field CreditRating */
-                    proto_tree_add_string(fix_tree, hf_fix_CreditRating, tvb, offset, field_len, value);
-                    break;
-                case 256: /* Field UnderlyingCreditRating */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingCreditRating, tvb, offset, field_len, value);
-                    break;
-                case 257: /* Field LegCreditRating */
-                    proto_tree_add_string(fix_tree, hf_fix_LegCreditRating, tvb, offset, field_len, value);
-                    break;
-                case 258: /* Field TradedFlatSwitch */
-                    proto_tree_add_string(fix_tree, hf_fix_TradedFlatSwitch, tvb, offset, field_len, value);
-                    break;
-                case 259: /* Field BasisFeatureDate */
-                    proto_tree_add_string(fix_tree, hf_fix_BasisFeatureDate, tvb, offset, field_len, value);
-                    break;
-                case 260: /* Field BasisFeaturePrice */
-                    proto_tree_add_string(fix_tree, hf_fix_BasisFeaturePrice, tvb, offset, field_len, value);
-                    break;
-                case 261: /* Field ReservedAllocated */
-                    proto_tree_add_string(fix_tree, hf_fix_ReservedAllocated, tvb, offset, field_len, value);
-                    break;
-                case 262: /* Field MDReqID */
-                    proto_tree_add_string(fix_tree, hf_fix_MDReqID, tvb, offset, field_len, value);
-                    break;
-                case 263: /* Field SubscriptionRequestType */
-                    proto_tree_add_string(fix_tree, hf_fix_SubscriptionRequestType, tvb, offset, field_len, value);
-                    break;
-                case 264: /* Field MarketDepth */
-                    proto_tree_add_string(fix_tree, hf_fix_MarketDepth, tvb, offset, field_len, value);
-                    break;
-                case 265: /* Field MDUpdateType */
-                    proto_tree_add_string(fix_tree, hf_fix_MDUpdateType, tvb, offset, field_len, value);
-                    break;
-                case 266: /* Field AggregatedBook */
-                    proto_tree_add_string(fix_tree, hf_fix_AggregatedBook, tvb, offset, field_len, value);
-                    break;
-                case 267: /* Field NoMDEntryTypes */
-                    proto_tree_add_string(fix_tree, hf_fix_NoMDEntryTypes, tvb, offset, field_len, value);
-                    break;
-                case 268: /* Field NoMDEntries */
-                    proto_tree_add_string(fix_tree, hf_fix_NoMDEntries, tvb, offset, field_len, value);
-                    break;
-                case 269: /* Field MDEntryType */
-                    proto_tree_add_string(fix_tree, hf_fix_MDEntryType, tvb, offset, field_len, value);
-                    break;
-                case 270: /* Field MDEntryPx */
-                    proto_tree_add_string(fix_tree, hf_fix_MDEntryPx, tvb, offset, field_len, value);
-                    break;
-                case 271: /* Field MDEntrySize */
-                    proto_tree_add_string(fix_tree, hf_fix_MDEntrySize, tvb, offset, field_len, value);
-                    break;
-                case 272: /* Field MDEntryDate */
-                    proto_tree_add_string(fix_tree, hf_fix_MDEntryDate, tvb, offset, field_len, value);
-                    break;
-                case 273: /* Field MDEntryTime */
-                    proto_tree_add_string(fix_tree, hf_fix_MDEntryTime, tvb, offset, field_len, value);
-                    break;
-                case 274: /* Field TickDirection */
-                    proto_tree_add_string(fix_tree, hf_fix_TickDirection, tvb, offset, field_len, value);
-                    break;
-                case 275: /* Field MDMkt */
-                    proto_tree_add_string(fix_tree, hf_fix_MDMkt, tvb, offset, field_len, value);
-                    break;
-                case 276: /* Field QuoteCondition */
-                    proto_tree_add_string(fix_tree, hf_fix_QuoteCondition, tvb, offset, field_len, value);
-                    break;
-                case 277: /* Field TradeCondition */
-                    proto_tree_add_string(fix_tree, hf_fix_TradeCondition, tvb, offset, field_len, value);
-                    break;
-                case 278: /* Field MDEntryID */
-                    proto_tree_add_string(fix_tree, hf_fix_MDEntryID, tvb, offset, field_len, value);
-                    break;
-                case 279: /* Field MDUpdateAction */
-                    proto_tree_add_string(fix_tree, hf_fix_MDUpdateAction, tvb, offset, field_len, value);
-                    break;
-                case 280: /* Field MDEntryRefID */
-                    proto_tree_add_string(fix_tree, hf_fix_MDEntryRefID, tvb, offset, field_len, value);
-                    break;
-                case 281: /* Field MDReqRejReason */
-                    proto_tree_add_string(fix_tree, hf_fix_MDReqRejReason, tvb, offset, field_len, value);
-                    break;
-                case 282: /* Field MDEntryOriginator */
-                    proto_tree_add_string(fix_tree, hf_fix_MDEntryOriginator, tvb, offset, field_len, value);
-                    break;
-                case 283: /* Field LocationID */
-                    proto_tree_add_string(fix_tree, hf_fix_LocationID, tvb, offset, field_len, value);
-                    break;
-                case 284: /* Field DeskID */
-                    proto_tree_add_string(fix_tree, hf_fix_DeskID, tvb, offset, field_len, value);
-                    break;
-                case 285: /* Field DeleteReason */
-                    proto_tree_add_string(fix_tree, hf_fix_DeleteReason, tvb, offset, field_len, value);
-                    break;
-                case 286: /* Field OpenCloseSettleFlag */
-                    proto_tree_add_string(fix_tree, hf_fix_OpenCloseSettleFlag, tvb, offset, field_len, value);
-                    break;
-                case 287: /* Field SellerDays */
-                    proto_tree_add_string(fix_tree, hf_fix_SellerDays, tvb, offset, field_len, value);
-                    break;
-                case 288: /* Field MDEntryBuyer */
-                    proto_tree_add_string(fix_tree, hf_fix_MDEntryBuyer, tvb, offset, field_len, value);
-                    break;
-                case 289: /* Field MDEntrySeller */
-                    proto_tree_add_string(fix_tree, hf_fix_MDEntrySeller, tvb, offset, field_len, value);
-                    break;
-                case 290: /* Field MDEntryPositionNo */
-                    proto_tree_add_string(fix_tree, hf_fix_MDEntryPositionNo, tvb, offset, field_len, value);
-                    break;
-                case 291: /* Field FinancialStatus */
-                    proto_tree_add_string(fix_tree, hf_fix_FinancialStatus, tvb, offset, field_len, value);
-                    break;
-                case 292: /* Field CorporateAction */
-                    proto_tree_add_string(fix_tree, hf_fix_CorporateAction, tvb, offset, field_len, value);
-                    break;
-                case 293: /* Field DefBidSize */
-                    proto_tree_add_string(fix_tree, hf_fix_DefBidSize, tvb, offset, field_len, value);
-                    break;
-                case 294: /* Field DefOfferSize */
-                    proto_tree_add_string(fix_tree, hf_fix_DefOfferSize, tvb, offset, field_len, value);
-                    break;
-                case 295: /* Field NoQuoteEntries */
-                    proto_tree_add_string(fix_tree, hf_fix_NoQuoteEntries, tvb, offset, field_len, value);
-                    break;
-                case 296: /* Field NoQuoteSets */
-                    proto_tree_add_string(fix_tree, hf_fix_NoQuoteSets, tvb, offset, field_len, value);
-                    break;
-                case 297: /* Field QuoteStatus */
-                    proto_tree_add_string(fix_tree, hf_fix_QuoteStatus, tvb, offset, field_len, value);
-                    break;
-                case 298: /* Field QuoteCancelType */
-                    proto_tree_add_string(fix_tree, hf_fix_QuoteCancelType, tvb, offset, field_len, value);
-                    break;
-                case 299: /* Field QuoteEntryID */
-                    proto_tree_add_string(fix_tree, hf_fix_QuoteEntryID, tvb, offset, field_len, value);
-                    break;
-                case 300: /* Field QuoteRejectReason */
-                    proto_tree_add_string(fix_tree, hf_fix_QuoteRejectReason, tvb, offset, field_len, value);
-                    break;
-                case 301: /* Field QuoteResponseLevel */
-                    proto_tree_add_string(fix_tree, hf_fix_QuoteResponseLevel, tvb, offset, field_len, value);
-                    break;
-                case 302: /* Field QuoteSetID */
-                    proto_tree_add_string(fix_tree, hf_fix_QuoteSetID, tvb, offset, field_len, value);
-                    break;
-                case 303: /* Field QuoteRequestType */
-                    proto_tree_add_string(fix_tree, hf_fix_QuoteRequestType, tvb, offset, field_len, value);
-                    break;
-                case 304: /* Field TotQuoteEntries */
-                    proto_tree_add_string(fix_tree, hf_fix_TotQuoteEntries, tvb, offset, field_len, value);
-                    break;
-                case 305: /* Field UnderlyingSecurityIDSource */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingSecurityIDSource, tvb, offset, field_len, value);
-                    break;
-                case 306: /* Field UnderlyingIssuer */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingIssuer, tvb, offset, field_len, value);
-                    break;
-                case 307: /* Field UnderlyingSecurityDesc */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingSecurityDesc, tvb, offset, field_len, value);
-                    break;
-                case 308: /* Field UnderlyingSecurityExchange */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingSecurityExchange, tvb, offset, field_len, value);
-                    break;
-                case 309: /* Field UnderlyingSecurityID */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingSecurityID, tvb, offset, field_len, value);
-                    break;
-                case 310: /* Field UnderlyingSecurityType */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingSecurityType, tvb, offset, field_len, value);
-                    break;
-                case 311: /* Field UnderlyingSymbol */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingSymbol, tvb, offset, field_len, value);
-                    break;
-                case 312: /* Field UnderlyingSymbolSfx */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingSymbolSfx, tvb, offset, field_len, value);
-                    break;
-                case 313: /* Field UnderlyingMaturityMonthYear */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingMaturityMonthYear, tvb, offset, field_len, value);
-                    break;
-                case 314: /* Field UnderlyingMaturityDay */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingMaturityDay, tvb, offset, field_len, value);
-                    break;
-                case 315: /* Field UnderlyingPutOrCall */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingPutOrCall, tvb, offset, field_len, value);
-                    break;
-                case 316: /* Field UnderlyingStrikePrice */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingStrikePrice, tvb, offset, field_len, value);
-                    break;
-                case 317: /* Field UnderlyingOptAttribute */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingOptAttribute, tvb, offset, field_len, value);
-                    break;
-                case 318: /* Field Underlying */
-                    proto_tree_add_string(fix_tree, hf_fix_Underlying, tvb, offset, field_len, value);
-                    break;
-                case 319: /* Field RatioQty */
-                    proto_tree_add_string(fix_tree, hf_fix_RatioQty, tvb, offset, field_len, value);
-                    break;
-                case 320: /* Field SecurityReqID */
-                    proto_tree_add_string(fix_tree, hf_fix_SecurityReqID, tvb, offset, field_len, value);
-                    break;
-                case 321: /* Field SecurityRequestType */
-                    proto_tree_add_string(fix_tree, hf_fix_SecurityRequestType, tvb, offset, field_len, value);
-                    break;
-                case 322: /* Field SecurityResponseID */
-                    proto_tree_add_string(fix_tree, hf_fix_SecurityResponseID, tvb, offset, field_len, value);
-                    break;
-                case 323: /* Field SecurityResponseType */
-                    proto_tree_add_string(fix_tree, hf_fix_SecurityResponseType, tvb, offset, field_len, value);
-                    break;
-                case 324: /* Field SecurityStatusReqID */
-                    proto_tree_add_string(fix_tree, hf_fix_SecurityStatusReqID, tvb, offset, field_len, value);
-                    break;
-                case 325: /* Field UnsolicitedIndicator */
-                    proto_tree_add_string(fix_tree, hf_fix_UnsolicitedIndicator, tvb, offset, field_len, value);
-                    break;
-                case 326: /* Field SecurityTradingStatus */
-                    proto_tree_add_string(fix_tree, hf_fix_SecurityTradingStatus, tvb, offset, field_len, value);
-                    break;
-                case 327: /* Field HaltReason */
-                    proto_tree_add_string(fix_tree, hf_fix_HaltReason, tvb, offset, field_len, value);
-                    break;
-                case 328: /* Field InViewOfCommon */
-                    proto_tree_add_string(fix_tree, hf_fix_InViewOfCommon, tvb, offset, field_len, value);
-                    break;
-                case 329: /* Field DueToRelated */
-                    proto_tree_add_string(fix_tree, hf_fix_DueToRelated, tvb, offset, field_len, value);
-                    break;
-                case 330: /* Field BuyVolume */
-                    proto_tree_add_string(fix_tree, hf_fix_BuyVolume, tvb, offset, field_len, value);
-                    break;
-                case 331: /* Field SellVolume */
-                    proto_tree_add_string(fix_tree, hf_fix_SellVolume, tvb, offset, field_len, value);
-                    break;
-                case 332: /* Field HighPx */
-                    proto_tree_add_string(fix_tree, hf_fix_HighPx, tvb, offset, field_len, value);
-                    break;
-                case 333: /* Field LowPx */
-                    proto_tree_add_string(fix_tree, hf_fix_LowPx, tvb, offset, field_len, value);
-                    break;
-                case 334: /* Field Adjustment */
-                    proto_tree_add_string(fix_tree, hf_fix_Adjustment, tvb, offset, field_len, value);
-                    break;
-                case 335: /* Field TradSesReqID */
-                    proto_tree_add_string(fix_tree, hf_fix_TradSesReqID, tvb, offset, field_len, value);
-                    break;
-                case 336: /* Field TradingSessionID */
-                    proto_tree_add_string(fix_tree, hf_fix_TradingSessionID, tvb, offset, field_len, value);
-                    break;
-                case 337: /* Field ContraTrader */
-                    proto_tree_add_string(fix_tree, hf_fix_ContraTrader, tvb, offset, field_len, value);
-                    break;
-                case 338: /* Field TradSesMethod */
-                    proto_tree_add_string(fix_tree, hf_fix_TradSesMethod, tvb, offset, field_len, value);
-                    break;
-                case 339: /* Field TradSesMode */
-                    proto_tree_add_string(fix_tree, hf_fix_TradSesMode, tvb, offset, field_len, value);
-                    break;
-                case 340: /* Field TradSesStatus */
-                    proto_tree_add_string(fix_tree, hf_fix_TradSesStatus, tvb, offset, field_len, value);
-                    break;
-                case 341: /* Field TradSesStartTime */
-                    proto_tree_add_string(fix_tree, hf_fix_TradSesStartTime, tvb, offset, field_len, value);
-                    break;
-                case 342: /* Field TradSesOpenTime */
-                    proto_tree_add_string(fix_tree, hf_fix_TradSesOpenTime, tvb, offset, field_len, value);
-                    break;
-                case 343: /* Field TradSesPreCloseTime */
-                    proto_tree_add_string(fix_tree, hf_fix_TradSesPreCloseTime, tvb, offset, field_len, value);
-                    break;
-                case 344: /* Field TradSesCloseTime */
-                    proto_tree_add_string(fix_tree, hf_fix_TradSesCloseTime, tvb, offset, field_len, value);
-                    break;
-                case 345: /* Field TradSesEndTime */
-                    proto_tree_add_string(fix_tree, hf_fix_TradSesEndTime, tvb, offset, field_len, value);
-                    break;
-                case 346: /* Field NumberOfOrders */
-                    proto_tree_add_string(fix_tree, hf_fix_NumberOfOrders, tvb, offset, field_len, value);
-                    break;
-                case 347: /* Field MessageEncoding */
-                    proto_tree_add_string(fix_tree, hf_fix_MessageEncoding, tvb, offset, field_len, value);
-                    break;
-                case 348: /* Field EncodedIssuerLen */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedIssuerLen, tvb, offset, field_len, value);
-                    break;
-                case 349: /* Field EncodedIssuer */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedIssuer, tvb, offset, field_len, value);
-                    break;
-                case 350: /* Field EncodedSecurityDescLen */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedSecurityDescLen, tvb, offset, field_len, value);
-                    break;
-                case 351: /* Field EncodedSecurityDesc */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedSecurityDesc, tvb, offset, field_len, value);
-                    break;
-                case 352: /* Field EncodedListExecInstLen */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedListExecInstLen, tvb, offset, field_len, value);
-                    break;
-                case 353: /* Field EncodedListExecInst */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedListExecInst, tvb, offset, field_len, value);
-                    break;
-                case 354: /* Field EncodedTextLen */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedTextLen, tvb, offset, field_len, value);
-                    break;
-                case 355: /* Field EncodedText */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedText, tvb, offset, field_len, value);
-                    break;
-                case 356: /* Field EncodedSubjectLen */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedSubjectLen, tvb, offset, field_len, value);
-                    break;
-                case 357: /* Field EncodedSubject */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedSubject, tvb, offset, field_len, value);
-                    break;
-                case 358: /* Field EncodedHeadlineLen */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedHeadlineLen, tvb, offset, field_len, value);
-                    break;
-                case 359: /* Field EncodedHeadline */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedHeadline, tvb, offset, field_len, value);
-                    break;
-                case 360: /* Field EncodedAllocTextLen */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedAllocTextLen, tvb, offset, field_len, value);
-                    break;
-                case 361: /* Field EncodedAllocText */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedAllocText, tvb, offset, field_len, value);
-                    break;
-                case 362: /* Field EncodedUnderlyingIssuerLen */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedUnderlyingIssuerLen, tvb, offset, field_len, value);
-                    break;
-                case 363: /* Field EncodedUnderlyingIssuer */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedUnderlyingIssuer, tvb, offset, field_len, value);
-                    break;
-                case 364: /* Field EncodedUnderlyingSecurityDescLen */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedUnderlyingSecurityDescLen, tvb, offset, field_len, value);
-                    break;
-                case 365: /* Field EncodedUnderlyingSecurityDesc */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedUnderlyingSecurityDesc, tvb, offset, field_len, value);
-                    break;
-                case 366: /* Field AllocPrice */
-                    proto_tree_add_string(fix_tree, hf_fix_AllocPrice, tvb, offset, field_len, value);
-                    break;
-                case 367: /* Field QuoteSetValidUntilTime */
-                    proto_tree_add_string(fix_tree, hf_fix_QuoteSetValidUntilTime, tvb, offset, field_len, value);
-                    break;
-                case 368: /* Field QuoteEntryRejectReason */
-                    proto_tree_add_string(fix_tree, hf_fix_QuoteEntryRejectReason, tvb, offset, field_len, value);
-                    break;
-                case 369: /* Field LastMsgSeqNumProcessed */
-                    proto_tree_add_string(fix_tree, hf_fix_LastMsgSeqNumProcessed, tvb, offset, field_len, value);
-                    break;
-                case 370: /* Field OnBehalfOfSendingTime */
-                    proto_tree_add_string(fix_tree, hf_fix_OnBehalfOfSendingTime, tvb, offset, field_len, value);
-                    break;
-                case 371: /* Field RefTagID */
-                    proto_tree_add_string(fix_tree, hf_fix_RefTagID, tvb, offset, field_len, value);
-                    break;
-                case 372: /* Field RefMsgType */
-                    proto_tree_add_string(fix_tree, hf_fix_RefMsgType, tvb, offset, field_len, value);
-                    break;
-                case 373: /* Field SessionRejectReason */
-                    proto_tree_add_string(fix_tree, hf_fix_SessionRejectReason, tvb, offset, field_len, value);
-                    break;
-                case 374: /* Field BidRequestTransType */
-                    proto_tree_add_string(fix_tree, hf_fix_BidRequestTransType, tvb, offset, field_len, value);
-                    break;
-                case 375: /* Field ContraBroker */
-                    proto_tree_add_string(fix_tree, hf_fix_ContraBroker, tvb, offset, field_len, value);
-                    break;
-                case 376: /* Field ComplianceID */
-                    proto_tree_add_string(fix_tree, hf_fix_ComplianceID, tvb, offset, field_len, value);
-                    break;
-                case 377: /* Field SolicitedFlag */
-                    proto_tree_add_string(fix_tree, hf_fix_SolicitedFlag, tvb, offset, field_len, value);
-                    break;
-                case 378: /* Field ExecRestatementReason */
-                    proto_tree_add_string(fix_tree, hf_fix_ExecRestatementReason, tvb, offset, field_len, value);
-                    break;
-                case 379: /* Field BusinessRejectRefID */
-                    proto_tree_add_string(fix_tree, hf_fix_BusinessRejectRefID, tvb, offset, field_len, value);
-                    break;
-                case 380: /* Field BusinessRejectReason */
-                    proto_tree_add_string(fix_tree, hf_fix_BusinessRejectReason, tvb, offset, field_len, value);
-                    break;
-                case 381: /* Field GrossTradeAmt */
-                    proto_tree_add_string(fix_tree, hf_fix_GrossTradeAmt, tvb, offset, field_len, value);
-                    break;
-                case 382: /* Field NoContraBrokers */
-                    proto_tree_add_string(fix_tree, hf_fix_NoContraBrokers, tvb, offset, field_len, value);
-                    break;
-                case 383: /* Field MaxMessageSize */
-                    proto_tree_add_string(fix_tree, hf_fix_MaxMessageSize, tvb, offset, field_len, value);
-                    break;
-                case 384: /* Field NoMsgTypes */
-                    proto_tree_add_string(fix_tree, hf_fix_NoMsgTypes, tvb, offset, field_len, value);
-                    break;
-                case 385: /* Field MsgDirection */
-                    proto_tree_add_string(fix_tree, hf_fix_MsgDirection, tvb, offset, field_len, value);
-                    break;
-                case 386: /* Field NoTradingSessions */
-                    proto_tree_add_string(fix_tree, hf_fix_NoTradingSessions, tvb, offset, field_len, value);
-                    break;
-                case 387: /* Field TotalVolumeTraded */
-                    proto_tree_add_string(fix_tree, hf_fix_TotalVolumeTraded, tvb, offset, field_len, value);
-                    break;
-                case 388: /* Field DiscretionInst */
-                    proto_tree_add_string(fix_tree, hf_fix_DiscretionInst, tvb, offset, field_len, value);
-                    break;
-                case 389: /* Field DiscretionOffset */
-                    proto_tree_add_string(fix_tree, hf_fix_DiscretionOffset, tvb, offset, field_len, value);
-                    break;
-                case 390: /* Field BidID */
-                    proto_tree_add_string(fix_tree, hf_fix_BidID, tvb, offset, field_len, value);
-                    break;
-                case 391: /* Field ClientBidID */
-                    proto_tree_add_string(fix_tree, hf_fix_ClientBidID, tvb, offset, field_len, value);
-                    break;
-                case 392: /* Field ListName */
-                    proto_tree_add_string(fix_tree, hf_fix_ListName, tvb, offset, field_len, value);
-                    break;
-                case 393: /* Field TotalNumSecurities */
-                    proto_tree_add_string(fix_tree, hf_fix_TotalNumSecurities, tvb, offset, field_len, value);
-                    break;
-                case 394: /* Field BidType */
-                    proto_tree_add_string(fix_tree, hf_fix_BidType, tvb, offset, field_len, value);
-                    break;
-                case 395: /* Field NumTickets */
-                    proto_tree_add_string(fix_tree, hf_fix_NumTickets, tvb, offset, field_len, value);
-                    break;
-                case 396: /* Field SideValue1 */
-                    proto_tree_add_string(fix_tree, hf_fix_SideValue1, tvb, offset, field_len, value);
-                    break;
-                case 397: /* Field SideValue2 */
-                    proto_tree_add_string(fix_tree, hf_fix_SideValue2, tvb, offset, field_len, value);
-                    break;
-                case 398: /* Field NoBidDescriptors */
-                    proto_tree_add_string(fix_tree, hf_fix_NoBidDescriptors, tvb, offset, field_len, value);
-                    break;
-                case 399: /* Field BidDescriptorType */
-                    proto_tree_add_string(fix_tree, hf_fix_BidDescriptorType, tvb, offset, field_len, value);
-                    break;
-                case 400: /* Field BidDescriptor */
-                    proto_tree_add_string(fix_tree, hf_fix_BidDescriptor, tvb, offset, field_len, value);
-                    break;
-                case 401: /* Field SideValueInd */
-                    proto_tree_add_string(fix_tree, hf_fix_SideValueInd, tvb, offset, field_len, value);
-                    break;
-                case 402: /* Field LiquidityPctLow */
-                    proto_tree_add_string(fix_tree, hf_fix_LiquidityPctLow, tvb, offset, field_len, value);
-                    break;
-                case 403: /* Field LiquidityPctHigh */
-                    proto_tree_add_string(fix_tree, hf_fix_LiquidityPctHigh, tvb, offset, field_len, value);
-                    break;
-                case 404: /* Field LiquidityValue */
-                    proto_tree_add_string(fix_tree, hf_fix_LiquidityValue, tvb, offset, field_len, value);
-                    break;
-                case 405: /* Field EFPTrackingError */
-                    proto_tree_add_string(fix_tree, hf_fix_EFPTrackingError, tvb, offset, field_len, value);
-                    break;
-                case 406: /* Field FairValue */
-                    proto_tree_add_string(fix_tree, hf_fix_FairValue, tvb, offset, field_len, value);
-                    break;
-                case 407: /* Field OutsideIndexPct */
-                    proto_tree_add_string(fix_tree, hf_fix_OutsideIndexPct, tvb, offset, field_len, value);
-                    break;
-                case 408: /* Field ValueOfFutures */
-                    proto_tree_add_string(fix_tree, hf_fix_ValueOfFutures, tvb, offset, field_len, value);
-                    break;
-                case 409: /* Field LiquidityIndType */
-                    proto_tree_add_string(fix_tree, hf_fix_LiquidityIndType, tvb, offset, field_len, value);
-                    break;
-                case 410: /* Field WtAverageLiquidity */
-                    proto_tree_add_string(fix_tree, hf_fix_WtAverageLiquidity, tvb, offset, field_len, value);
-                    break;
-                case 411: /* Field ExchangeForPhysical */
-                    proto_tree_add_string(fix_tree, hf_fix_ExchangeForPhysical, tvb, offset, field_len, value);
-                    break;
-                case 412: /* Field OutMainCntryUIndex */
-                    proto_tree_add_string(fix_tree, hf_fix_OutMainCntryUIndex, tvb, offset, field_len, value);
-                    break;
-                case 413: /* Field CrossPercent */
-                    proto_tree_add_string(fix_tree, hf_fix_CrossPercent, tvb, offset, field_len, value);
-                    break;
-                case 414: /* Field ProgRptReqs */
-                    proto_tree_add_string(fix_tree, hf_fix_ProgRptReqs, tvb, offset, field_len, value);
-                    break;
-                case 415: /* Field ProgPeriodInterval */
-                    proto_tree_add_string(fix_tree, hf_fix_ProgPeriodInterval, tvb, offset, field_len, value);
-                    break;
-                case 416: /* Field IncTaxInd */
-                    proto_tree_add_string(fix_tree, hf_fix_IncTaxInd, tvb, offset, field_len, value);
-                    break;
-                case 417: /* Field NumBidders */
-                    proto_tree_add_string(fix_tree, hf_fix_NumBidders, tvb, offset, field_len, value);
-                    break;
-                case 418: /* Field TradeType */
-                    proto_tree_add_string(fix_tree, hf_fix_TradeType, tvb, offset, field_len, value);
-                    break;
-                case 419: /* Field BasisPxType */
-                    proto_tree_add_string(fix_tree, hf_fix_BasisPxType, tvb, offset, field_len, value);
-                    break;
-                case 420: /* Field NoBidComponents */
-                    proto_tree_add_string(fix_tree, hf_fix_NoBidComponents, tvb, offset, field_len, value);
-                    break;
-                case 421: /* Field Country */
-                    proto_tree_add_string(fix_tree, hf_fix_Country, tvb, offset, field_len, value);
-                    break;
-                case 422: /* Field TotNoStrikes */
-                    proto_tree_add_string(fix_tree, hf_fix_TotNoStrikes, tvb, offset, field_len, value);
-                    break;
-                case 423: /* Field PriceType */
-                    proto_tree_add_string(fix_tree, hf_fix_PriceType, tvb, offset, field_len, value);
-                    break;
-                case 424: /* Field DayOrderQty */
-                    proto_tree_add_string(fix_tree, hf_fix_DayOrderQty, tvb, offset, field_len, value);
-                    break;
-                case 425: /* Field DayCumQty */
-                    proto_tree_add_string(fix_tree, hf_fix_DayCumQty, tvb, offset, field_len, value);
-                    break;
-                case 426: /* Field DayAvgPx */
-                    proto_tree_add_string(fix_tree, hf_fix_DayAvgPx, tvb, offset, field_len, value);
-                    break;
-                case 427: /* Field GTBookingInst */
-                    proto_tree_add_string(fix_tree, hf_fix_GTBookingInst, tvb, offset, field_len, value);
-                    break;
-                case 428: /* Field NoStrikes */
-                    proto_tree_add_string(fix_tree, hf_fix_NoStrikes, tvb, offset, field_len, value);
-                    break;
-                case 429: /* Field ListStatusType */
-                    proto_tree_add_string(fix_tree, hf_fix_ListStatusType, tvb, offset, field_len, value);
-                    break;
-                case 430: /* Field NetGrossInd */
-                    proto_tree_add_string(fix_tree, hf_fix_NetGrossInd, tvb, offset, field_len, value);
-                    break;
-                case 431: /* Field ListOrderStatus */
-                    proto_tree_add_string(fix_tree, hf_fix_ListOrderStatus, tvb, offset, field_len, value);
-                    break;
-                case 432: /* Field ExpireDate */
-                    proto_tree_add_string(fix_tree, hf_fix_ExpireDate, tvb, offset, field_len, value);
-                    break;
-                case 433: /* Field ListExecInstType */
-                    proto_tree_add_string(fix_tree, hf_fix_ListExecInstType, tvb, offset, field_len, value);
-                    break;
-                case 434: /* Field CxlRejResponseTo */
-                    proto_tree_add_string(fix_tree, hf_fix_CxlRejResponseTo, tvb, offset, field_len, value);
-                    break;
-                case 435: /* Field UnderlyingCouponRate */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingCouponRate, tvb, offset, field_len, value);
-                    break;
-                case 436: /* Field UnderlyingContractMultiplier */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingContractMultiplier, tvb, offset, field_len, value);
-                    break;
-                case 437: /* Field ContraTradeQty */
-                    proto_tree_add_string(fix_tree, hf_fix_ContraTradeQty, tvb, offset, field_len, value);
-                    break;
-                case 438: /* Field ContraTradeTime */
-                    proto_tree_add_string(fix_tree, hf_fix_ContraTradeTime, tvb, offset, field_len, value);
-                    break;
-                case 439: /* Field ClearingFirm */
-                    proto_tree_add_string(fix_tree, hf_fix_ClearingFirm, tvb, offset, field_len, value);
-                    break;
-                case 440: /* Field ClearingAccount */
-                    proto_tree_add_string(fix_tree, hf_fix_ClearingAccount, tvb, offset, field_len, value);
-                    break;
-                case 441: /* Field LiquidityNumSecurities */
-                    proto_tree_add_string(fix_tree, hf_fix_LiquidityNumSecurities, tvb, offset, field_len, value);
-                    break;
-                case 442: /* Field MultiLegReportingType */
-                    proto_tree_add_string(fix_tree, hf_fix_MultiLegReportingType, tvb, offset, field_len, value);
-                    break;
-                case 443: /* Field StrikeTime */
-                    proto_tree_add_string(fix_tree, hf_fix_StrikeTime, tvb, offset, field_len, value);
-                    break;
-                case 444: /* Field ListStatusText */
-                    proto_tree_add_string(fix_tree, hf_fix_ListStatusText, tvb, offset, field_len, value);
-                    break;
-                case 445: /* Field EncodedListStatusTextLen */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedListStatusTextLen, tvb, offset, field_len, value);
-                    break;
-                case 446: /* Field EncodedListStatusText */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedListStatusText, tvb, offset, field_len, value);
-                    break;
-                case 447: /* Field PartyIDSource */
-                    proto_tree_add_string(fix_tree, hf_fix_PartyIDSource, tvb, offset, field_len, value);
-                    break;
-                case 448: /* Field PartyID */
-                    proto_tree_add_string(fix_tree, hf_fix_PartyID, tvb, offset, field_len, value);
-                    break;
-                case 449: /* Field TotalVolumeTradedDate */
-                    proto_tree_add_string(fix_tree, hf_fix_TotalVolumeTradedDate, tvb, offset, field_len, value);
-                    break;
-                case 450: /* Field TotalVolumeTradedTime */
-                    proto_tree_add_string(fix_tree, hf_fix_TotalVolumeTradedTime, tvb, offset, field_len, value);
-                    break;
-                case 451: /* Field NetChgPrevDay */
-                    proto_tree_add_string(fix_tree, hf_fix_NetChgPrevDay, tvb, offset, field_len, value);
-                    break;
-                case 452: /* Field PartyRole */
-                    proto_tree_add_string(fix_tree, hf_fix_PartyRole, tvb, offset, field_len, value);
-                    break;
-                case 453: /* Field NoPartyIDs */
-                    proto_tree_add_string(fix_tree, hf_fix_NoPartyIDs, tvb, offset, field_len, value);
-                    break;
-                case 454: /* Field NoSecurityAltID */
-                    proto_tree_add_string(fix_tree, hf_fix_NoSecurityAltID, tvb, offset, field_len, value);
-                    break;
-                case 455: /* Field SecurityAltID */
-                    proto_tree_add_string(fix_tree, hf_fix_SecurityAltID, tvb, offset, field_len, value);
-                    break;
-                case 456: /* Field SecurityAltIDSource */
-                    proto_tree_add_string(fix_tree, hf_fix_SecurityAltIDSource, tvb, offset, field_len, value);
-                    break;
-                case 457: /* Field NoUnderlyingSecurityAltID */
-                    proto_tree_add_string(fix_tree, hf_fix_NoUnderlyingSecurityAltID, tvb, offset, field_len, value);
-                    break;
-                case 458: /* Field UnderlyingSecurityAltID */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingSecurityAltID, tvb, offset, field_len, value);
-                    break;
-                case 459: /* Field UnderlyingSecurityAltIDSource */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingSecurityAltIDSource, tvb, offset, field_len, value);
-                    break;
-                case 460: /* Field Product */
-                    proto_tree_add_string(fix_tree, hf_fix_Product, tvb, offset, field_len, value);
-                    break;
-                case 461: /* Field CFICode */
-                    proto_tree_add_string(fix_tree, hf_fix_CFICode, tvb, offset, field_len, value);
-                    break;
-                case 462: /* Field UnderlyingProduct */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingProduct, tvb, offset, field_len, value);
-                    break;
-                case 463: /* Field UnderlyingCFICode */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingCFICode, tvb, offset, field_len, value);
-                    break;
-                case 464: /* Field TestMessageIndicator */
-                    proto_tree_add_string(fix_tree, hf_fix_TestMessageIndicator, tvb, offset, field_len, value);
-                    break;
-                case 465: /* Field QuantityType */
-                    proto_tree_add_string(fix_tree, hf_fix_QuantityType, tvb, offset, field_len, value);
-                    break;
-                case 466: /* Field BookingRefID */
-                    proto_tree_add_string(fix_tree, hf_fix_BookingRefID, tvb, offset, field_len, value);
-                    break;
-                case 467: /* Field IndividualAllocID */
-                    proto_tree_add_string(fix_tree, hf_fix_IndividualAllocID, tvb, offset, field_len, value);
-                    break;
-                case 468: /* Field RoundingDirection */
-                    proto_tree_add_string(fix_tree, hf_fix_RoundingDirection, tvb, offset, field_len, value);
-                    break;
-                case 469: /* Field RoundingModulus */
-                    proto_tree_add_string(fix_tree, hf_fix_RoundingModulus, tvb, offset, field_len, value);
-                    break;
-                case 470: /* Field CountryOfIssue */
-                    proto_tree_add_string(fix_tree, hf_fix_CountryOfIssue, tvb, offset, field_len, value);
-                    break;
-                case 471: /* Field StateOrProvinceOfIssue */
-                    proto_tree_add_string(fix_tree, hf_fix_StateOrProvinceOfIssue, tvb, offset, field_len, value);
-                    break;
-                case 472: /* Field LocaleOfIssue */
-                    proto_tree_add_string(fix_tree, hf_fix_LocaleOfIssue, tvb, offset, field_len, value);
-                    break;
-                case 473: /* Field NoRegistDtls */
-                    proto_tree_add_string(fix_tree, hf_fix_NoRegistDtls, tvb, offset, field_len, value);
-                    break;
-                case 474: /* Field MailingDtls */
-                    proto_tree_add_string(fix_tree, hf_fix_MailingDtls, tvb, offset, field_len, value);
-                    break;
-                case 475: /* Field InvestorCountryOfResidence */
-                    proto_tree_add_string(fix_tree, hf_fix_InvestorCountryOfResidence, tvb, offset, field_len, value);
-                    break;
-                case 476: /* Field PaymentRef */
-                    proto_tree_add_string(fix_tree, hf_fix_PaymentRef, tvb, offset, field_len, value);
-                    break;
-                case 477: /* Field DistribPaymentMethod */
-                    proto_tree_add_string(fix_tree, hf_fix_DistribPaymentMethod, tvb, offset, field_len, value);
-                    break;
-                case 478: /* Field CashDistribCurr */
-                    proto_tree_add_string(fix_tree, hf_fix_CashDistribCurr, tvb, offset, field_len, value);
-                    break;
-                case 479: /* Field CommCurrency */
-                    proto_tree_add_string(fix_tree, hf_fix_CommCurrency, tvb, offset, field_len, value);
-                    break;
-                case 480: /* Field CancellationRights */
-                    proto_tree_add_string(fix_tree, hf_fix_CancellationRights, tvb, offset, field_len, value);
-                    break;
-                case 481: /* Field MoneyLaunderingStatus */
-                    proto_tree_add_string(fix_tree, hf_fix_MoneyLaunderingStatus, tvb, offset, field_len, value);
-                    break;
-                case 482: /* Field MailingInst */
-                    proto_tree_add_string(fix_tree, hf_fix_MailingInst, tvb, offset, field_len, value);
-                    break;
-                case 483: /* Field TransBkdTime */
-                    proto_tree_add_string(fix_tree, hf_fix_TransBkdTime, tvb, offset, field_len, value);
-                    break;
-                case 484: /* Field ExecPriceType */
-                    proto_tree_add_string(fix_tree, hf_fix_ExecPriceType, tvb, offset, field_len, value);
-                    break;
-                case 485: /* Field ExecPriceAdjustment */
-                    proto_tree_add_string(fix_tree, hf_fix_ExecPriceAdjustment, tvb, offset, field_len, value);
-                    break;
-                case 486: /* Field DateOfBirth */
-                    proto_tree_add_string(fix_tree, hf_fix_DateOfBirth, tvb, offset, field_len, value);
-                    break;
-                case 487: /* Field TradeReportTransType */
-                    proto_tree_add_string(fix_tree, hf_fix_TradeReportTransType, tvb, offset, field_len, value);
-                    break;
-                case 488: /* Field CardHolderName */
-                    proto_tree_add_string(fix_tree, hf_fix_CardHolderName, tvb, offset, field_len, value);
-                    break;
-                case 489: /* Field CardNumber */
-                    proto_tree_add_string(fix_tree, hf_fix_CardNumber, tvb, offset, field_len, value);
-                    break;
-                case 490: /* Field CardExpDate */
-                    proto_tree_add_string(fix_tree, hf_fix_CardExpDate, tvb, offset, field_len, value);
-                    break;
-                case 491: /* Field CardIssNo */
-                    proto_tree_add_string(fix_tree, hf_fix_CardIssNo, tvb, offset, field_len, value);
-                    break;
-                case 492: /* Field PaymentMethod */
-                    proto_tree_add_string(fix_tree, hf_fix_PaymentMethod, tvb, offset, field_len, value);
-                    break;
-                case 493: /* Field RegistAcctType */
-                    proto_tree_add_string(fix_tree, hf_fix_RegistAcctType, tvb, offset, field_len, value);
-                    break;
-                case 494: /* Field Designation */
-                    proto_tree_add_string(fix_tree, hf_fix_Designation, tvb, offset, field_len, value);
-                    break;
-                case 495: /* Field TaxAdvantageType */
-                    proto_tree_add_string(fix_tree, hf_fix_TaxAdvantageType, tvb, offset, field_len, value);
-                    break;
-                case 496: /* Field RegistRejReasonText */
-                    proto_tree_add_string(fix_tree, hf_fix_RegistRejReasonText, tvb, offset, field_len, value);
-                    break;
-                case 497: /* Field FundRenewWaiv */
-                    proto_tree_add_string(fix_tree, hf_fix_FundRenewWaiv, tvb, offset, field_len, value);
-                    break;
-                case 498: /* Field CashDistribAgentName */
-                    proto_tree_add_string(fix_tree, hf_fix_CashDistribAgentName, tvb, offset, field_len, value);
-                    break;
-                case 499: /* Field CashDistribAgentCode */
-                    proto_tree_add_string(fix_tree, hf_fix_CashDistribAgentCode, tvb, offset, field_len, value);
-                    break;
-                case 500: /* Field CashDistribAgentAcctNumber */
-                    proto_tree_add_string(fix_tree, hf_fix_CashDistribAgentAcctNumber, tvb, offset, field_len, value);
-                    break;
-                case 501: /* Field CashDistribPayRef */
-                    proto_tree_add_string(fix_tree, hf_fix_CashDistribPayRef, tvb, offset, field_len, value);
-                    break;
-                case 502: /* Field CashDistribAgentAcctName */
-                    proto_tree_add_string(fix_tree, hf_fix_CashDistribAgentAcctName, tvb, offset, field_len, value);
-                    break;
-                case 503: /* Field CardStartDate */
-                    proto_tree_add_string(fix_tree, hf_fix_CardStartDate, tvb, offset, field_len, value);
-                    break;
-                case 504: /* Field PaymentDate */
-                    proto_tree_add_string(fix_tree, hf_fix_PaymentDate, tvb, offset, field_len, value);
-                    break;
-                case 505: /* Field PaymentRemitterID */
-                    proto_tree_add_string(fix_tree, hf_fix_PaymentRemitterID, tvb, offset, field_len, value);
-                    break;
-                case 506: /* Field RegistStatus */
-                    proto_tree_add_string(fix_tree, hf_fix_RegistStatus, tvb, offset, field_len, value);
-                    break;
-                case 507: /* Field RegistRejReasonCode */
-                    proto_tree_add_string(fix_tree, hf_fix_RegistRejReasonCode, tvb, offset, field_len, value);
-                    break;
-                case 508: /* Field RegistRefID */
-                    proto_tree_add_string(fix_tree, hf_fix_RegistRefID, tvb, offset, field_len, value);
-                    break;
-                case 509: /* Field RegistDetls */
-                    proto_tree_add_string(fix_tree, hf_fix_RegistDetls, tvb, offset, field_len, value);
-                    break;
-                case 510: /* Field NoDistribInsts */
-                    proto_tree_add_string(fix_tree, hf_fix_NoDistribInsts, tvb, offset, field_len, value);
-                    break;
-                case 511: /* Field RegistEmail */
-                    proto_tree_add_string(fix_tree, hf_fix_RegistEmail, tvb, offset, field_len, value);
-                    break;
-                case 512: /* Field DistribPercentage */
-                    proto_tree_add_string(fix_tree, hf_fix_DistribPercentage, tvb, offset, field_len, value);
-                    break;
-                case 513: /* Field RegistID */
-                    proto_tree_add_string(fix_tree, hf_fix_RegistID, tvb, offset, field_len, value);
-                    break;
-                case 514: /* Field RegistTransType */
-                    proto_tree_add_string(fix_tree, hf_fix_RegistTransType, tvb, offset, field_len, value);
-                    break;
-                case 515: /* Field ExecValuationPoint */
-                    proto_tree_add_string(fix_tree, hf_fix_ExecValuationPoint, tvb, offset, field_len, value);
-                    break;
-                case 516: /* Field OrderPercent */
-                    proto_tree_add_string(fix_tree, hf_fix_OrderPercent, tvb, offset, field_len, value);
-                    break;
-                case 517: /* Field OwnershipType */
-                    proto_tree_add_string(fix_tree, hf_fix_OwnershipType, tvb, offset, field_len, value);
-                    break;
-                case 518: /* Field NoContAmts */
-                    proto_tree_add_string(fix_tree, hf_fix_NoContAmts, tvb, offset, field_len, value);
-                    break;
-                case 519: /* Field ContAmtType */
-                    proto_tree_add_string(fix_tree, hf_fix_ContAmtType, tvb, offset, field_len, value);
-                    break;
-                case 520: /* Field ContAmtValue */
-                    proto_tree_add_string(fix_tree, hf_fix_ContAmtValue, tvb, offset, field_len, value);
-                    break;
-                case 521: /* Field ContAmtCurr */
-                    proto_tree_add_string(fix_tree, hf_fix_ContAmtCurr, tvb, offset, field_len, value);
-                    break;
-                case 522: /* Field OwnerType */
-                    proto_tree_add_string(fix_tree, hf_fix_OwnerType, tvb, offset, field_len, value);
-                    break;
-                case 523: /* Field PartySubID */
-                    proto_tree_add_string(fix_tree, hf_fix_PartySubID, tvb, offset, field_len, value);
-                    break;
-                case 524: /* Field NestedPartyID */
-                    proto_tree_add_string(fix_tree, hf_fix_NestedPartyID, tvb, offset, field_len, value);
-                    break;
-                case 525: /* Field NestedPartyIDSource */
-                    proto_tree_add_string(fix_tree, hf_fix_NestedPartyIDSource, tvb, offset, field_len, value);
-                    break;
-                case 526: /* Field SecondaryClOrdID */
-                    proto_tree_add_string(fix_tree, hf_fix_SecondaryClOrdID, tvb, offset, field_len, value);
-                    break;
-                case 527: /* Field SecondaryExecID */
-                    proto_tree_add_string(fix_tree, hf_fix_SecondaryExecID, tvb, offset, field_len, value);
-                    break;
-                case 528: /* Field OrderCapacity */
-                    proto_tree_add_string(fix_tree, hf_fix_OrderCapacity, tvb, offset, field_len, value);
-                    break;
-                case 529: /* Field OrderRestrictions */
-                    proto_tree_add_string(fix_tree, hf_fix_OrderRestrictions, tvb, offset, field_len, value);
-                    break;
-                case 530: /* Field MassCancelRequestType */
-                    proto_tree_add_string(fix_tree, hf_fix_MassCancelRequestType, tvb, offset, field_len, value);
-                    break;
-                case 531: /* Field MassCancelResponse */
-                    proto_tree_add_string(fix_tree, hf_fix_MassCancelResponse, tvb, offset, field_len, value);
-                    break;
-                case 532: /* Field MassCancelRejectReason */
-                    proto_tree_add_string(fix_tree, hf_fix_MassCancelRejectReason, tvb, offset, field_len, value);
-                    break;
-                case 533: /* Field TotalAffectedOrders */
-                    proto_tree_add_string(fix_tree, hf_fix_TotalAffectedOrders, tvb, offset, field_len, value);
-                    break;
-                case 534: /* Field NoAffectedOrders */
-                    proto_tree_add_string(fix_tree, hf_fix_NoAffectedOrders, tvb, offset, field_len, value);
-                    break;
-                case 535: /* Field AffectedOrderID */
-                    proto_tree_add_string(fix_tree, hf_fix_AffectedOrderID, tvb, offset, field_len, value);
-                    break;
-                case 536: /* Field AffectedSecondaryOrderID */
-                    proto_tree_add_string(fix_tree, hf_fix_AffectedSecondaryOrderID, tvb, offset, field_len, value);
-                    break;
-                case 537: /* Field QuoteType */
-                    proto_tree_add_string(fix_tree, hf_fix_QuoteType, tvb, offset, field_len, value);
-                    break;
-                case 538: /* Field NestedPartyRole */
-                    proto_tree_add_string(fix_tree, hf_fix_NestedPartyRole, tvb, offset, field_len, value);
-                    break;
-                case 539: /* Field NoNestedPartyIDs */
-                    proto_tree_add_string(fix_tree, hf_fix_NoNestedPartyIDs, tvb, offset, field_len, value);
-                    break;
-                case 540: /* Field TotalAccruedInterestAmt */
-                    proto_tree_add_string(fix_tree, hf_fix_TotalAccruedInterestAmt, tvb, offset, field_len, value);
-                    break;
-                case 541: /* Field MaturityDate */
-                    proto_tree_add_string(fix_tree, hf_fix_MaturityDate, tvb, offset, field_len, value);
-                    break;
-                case 542: /* Field UnderlyingMaturityDate */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingMaturityDate, tvb, offset, field_len, value);
-                    break;
-                case 543: /* Field InstrRegistry */
-                    proto_tree_add_string(fix_tree, hf_fix_InstrRegistry, tvb, offset, field_len, value);
-                    break;
-                case 544: /* Field CashMargin */
-                    proto_tree_add_string(fix_tree, hf_fix_CashMargin, tvb, offset, field_len, value);
-                    break;
-                case 545: /* Field NestedPartySubID */
-                    proto_tree_add_string(fix_tree, hf_fix_NestedPartySubID, tvb, offset, field_len, value);
-                    break;
-                case 546: /* Field Scope */
-                    proto_tree_add_string(fix_tree, hf_fix_Scope, tvb, offset, field_len, value);
-                    break;
-                case 547: /* Field MDImplicitDelete */
-                    proto_tree_add_string(fix_tree, hf_fix_MDImplicitDelete, tvb, offset, field_len, value);
-                    break;
-                case 548: /* Field CrossID */
-                    proto_tree_add_string(fix_tree, hf_fix_CrossID, tvb, offset, field_len, value);
-                    break;
-                case 549: /* Field CrossType */
-                    proto_tree_add_string(fix_tree, hf_fix_CrossType, tvb, offset, field_len, value);
-                    break;
-                case 550: /* Field CrossPrioritization */
-                    proto_tree_add_string(fix_tree, hf_fix_CrossPrioritization, tvb, offset, field_len, value);
-                    break;
-                case 551: /* Field OrigCrossID */
-                    proto_tree_add_string(fix_tree, hf_fix_OrigCrossID, tvb, offset, field_len, value);
-                    break;
-                case 552: /* Field NoSides */
-                    proto_tree_add_string(fix_tree, hf_fix_NoSides, tvb, offset, field_len, value);
-                    break;
-                case 553: /* Field Username */
-                    proto_tree_add_string(fix_tree, hf_fix_Username, tvb, offset, field_len, value);
-                    break;
-                case 554: /* Field Password */
-                    proto_tree_add_string(fix_tree, hf_fix_Password, tvb, offset, field_len, value);
-                    break;
-                case 555: /* Field NoLegs */
-                    proto_tree_add_string(fix_tree, hf_fix_NoLegs, tvb, offset, field_len, value);
-                    break;
-                case 556: /* Field LegCurrency */
-                    proto_tree_add_string(fix_tree, hf_fix_LegCurrency, tvb, offset, field_len, value);
-                    break;
-                case 557: /* Field TotalNumSecurityTypes */
-                    proto_tree_add_string(fix_tree, hf_fix_TotalNumSecurityTypes, tvb, offset, field_len, value);
-                    break;
-                case 558: /* Field NoSecurityTypes */
-                    proto_tree_add_string(fix_tree, hf_fix_NoSecurityTypes, tvb, offset, field_len, value);
-                    break;
-                case 559: /* Field SecurityListRequestType */
-                    proto_tree_add_string(fix_tree, hf_fix_SecurityListRequestType, tvb, offset, field_len, value);
-                    break;
-                case 560: /* Field SecurityRequestResult */
-                    proto_tree_add_string(fix_tree, hf_fix_SecurityRequestResult, tvb, offset, field_len, value);
-                    break;
-                case 561: /* Field RoundLot */
-                    proto_tree_add_string(fix_tree, hf_fix_RoundLot, tvb, offset, field_len, value);
-                    break;
-                case 562: /* Field MinTradeVol */
-                    proto_tree_add_string(fix_tree, hf_fix_MinTradeVol, tvb, offset, field_len, value);
-                    break;
-                case 563: /* Field MultiLegRptTypeReq */
-                    proto_tree_add_string(fix_tree, hf_fix_MultiLegRptTypeReq, tvb, offset, field_len, value);
-                    break;
-                case 564: /* Field LegPositionEffect */
-                    proto_tree_add_string(fix_tree, hf_fix_LegPositionEffect, tvb, offset, field_len, value);
-                    break;
-                case 565: /* Field LegCoveredOrUncovered */
-                    proto_tree_add_string(fix_tree, hf_fix_LegCoveredOrUncovered, tvb, offset, field_len, value);
-                    break;
-                case 566: /* Field LegPrice */
-                    proto_tree_add_string(fix_tree, hf_fix_LegPrice, tvb, offset, field_len, value);
-                    break;
-                case 567: /* Field TradSesStatusRejReason */
-                    proto_tree_add_string(fix_tree, hf_fix_TradSesStatusRejReason, tvb, offset, field_len, value);
-                    break;
-                case 568: /* Field TradeRequestID */
-                    proto_tree_add_string(fix_tree, hf_fix_TradeRequestID, tvb, offset, field_len, value);
-                    break;
-                case 569: /* Field TradeRequestType */
-                    proto_tree_add_string(fix_tree, hf_fix_TradeRequestType, tvb, offset, field_len, value);
-                    break;
-                case 570: /* Field PreviouslyReported */
-                    proto_tree_add_string(fix_tree, hf_fix_PreviouslyReported, tvb, offset, field_len, value);
-                    break;
-                case 571: /* Field TradeReportID */
-                    proto_tree_add_string(fix_tree, hf_fix_TradeReportID, tvb, offset, field_len, value);
-                    break;
-                case 572: /* Field TradeReportRefID */
-                    proto_tree_add_string(fix_tree, hf_fix_TradeReportRefID, tvb, offset, field_len, value);
-                    break;
-                case 573: /* Field MatchStatus */
-                    proto_tree_add_string(fix_tree, hf_fix_MatchStatus, tvb, offset, field_len, value);
-                    break;
-                case 574: /* Field MatchType */
-                    proto_tree_add_string(fix_tree, hf_fix_MatchType, tvb, offset, field_len, value);
-                    break;
-                case 575: /* Field OddLot */
-                    proto_tree_add_string(fix_tree, hf_fix_OddLot, tvb, offset, field_len, value);
-                    break;
-                case 576: /* Field NoClearingInstructions */
-                    proto_tree_add_string(fix_tree, hf_fix_NoClearingInstructions, tvb, offset, field_len, value);
-                    break;
-                case 577: /* Field ClearingInstruction */
-                    proto_tree_add_string(fix_tree, hf_fix_ClearingInstruction, tvb, offset, field_len, value);
-                    break;
-                case 578: /* Field TradeInputSource */
-                    proto_tree_add_string(fix_tree, hf_fix_TradeInputSource, tvb, offset, field_len, value);
-                    break;
-                case 579: /* Field TradeInputDevice */
-                    proto_tree_add_string(fix_tree, hf_fix_TradeInputDevice, tvb, offset, field_len, value);
-                    break;
-                case 580: /* Field NoDates */
-                    proto_tree_add_string(fix_tree, hf_fix_NoDates, tvb, offset, field_len, value);
-                    break;
-                case 581: /* Field AccountType */
-                    proto_tree_add_string(fix_tree, hf_fix_AccountType, tvb, offset, field_len, value);
-                    break;
-                case 582: /* Field CustOrderCapacity */
-                    proto_tree_add_string(fix_tree, hf_fix_CustOrderCapacity, tvb, offset, field_len, value);
-                    break;
-                case 583: /* Field ClOrdLinkID */
-                    proto_tree_add_string(fix_tree, hf_fix_ClOrdLinkID, tvb, offset, field_len, value);
-                    break;
-                case 584: /* Field MassStatusReqID */
-                    proto_tree_add_string(fix_tree, hf_fix_MassStatusReqID, tvb, offset, field_len, value);
-                    break;
-                case 585: /* Field MassStatusReqType */
-                    proto_tree_add_string(fix_tree, hf_fix_MassStatusReqType, tvb, offset, field_len, value);
-                    break;
-                case 586: /* Field OrigOrdModTime */
-                    proto_tree_add_string(fix_tree, hf_fix_OrigOrdModTime, tvb, offset, field_len, value);
-                    break;
-                case 587: /* Field LegSettlmntTyp */
-                    proto_tree_add_string(fix_tree, hf_fix_LegSettlmntTyp, tvb, offset, field_len, value);
-                    break;
-                case 588: /* Field LegFutSettDate */
-                    proto_tree_add_string(fix_tree, hf_fix_LegFutSettDate, tvb, offset, field_len, value);
-                    break;
-                case 589: /* Field DayBookingInst */
-                    proto_tree_add_string(fix_tree, hf_fix_DayBookingInst, tvb, offset, field_len, value);
-                    break;
-                case 590: /* Field BookingUnit */
-                    proto_tree_add_string(fix_tree, hf_fix_BookingUnit, tvb, offset, field_len, value);
-                    break;
-                case 591: /* Field PreallocMethod */
-                    proto_tree_add_string(fix_tree, hf_fix_PreallocMethod, tvb, offset, field_len, value);
-                    break;
-                case 592: /* Field UnderlyingCountryOfIssue */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingCountryOfIssue, tvb, offset, field_len, value);
-                    break;
-                case 593: /* Field UnderlyingStateOrProvinceOfIssue */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingStateOrProvinceOfIssue, tvb, offset, field_len, value);
-                    break;
-                case 594: /* Field UnderlyingLocaleOfIssue */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingLocaleOfIssue, tvb, offset, field_len, value);
-                    break;
-                case 595: /* Field UnderlyingInstrRegistry */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingInstrRegistry, tvb, offset, field_len, value);
-                    break;
-                case 596: /* Field LegCountryOfIssue */
-                    proto_tree_add_string(fix_tree, hf_fix_LegCountryOfIssue, tvb, offset, field_len, value);
-                    break;
-                case 597: /* Field LegStateOrProvinceOfIssue */
-                    proto_tree_add_string(fix_tree, hf_fix_LegStateOrProvinceOfIssue, tvb, offset, field_len, value);
-                    break;
-                case 598: /* Field LegLocaleOfIssue */
-                    proto_tree_add_string(fix_tree, hf_fix_LegLocaleOfIssue, tvb, offset, field_len, value);
-                    break;
-                case 599: /* Field LegInstrRegistry */
-                    proto_tree_add_string(fix_tree, hf_fix_LegInstrRegistry, tvb, offset, field_len, value);
-                    break;
-                case 600: /* Field LegSymbol */
-                    proto_tree_add_string(fix_tree, hf_fix_LegSymbol, tvb, offset, field_len, value);
-                    break;
-                case 601: /* Field LegSymbolSfx */
-                    proto_tree_add_string(fix_tree, hf_fix_LegSymbolSfx, tvb, offset, field_len, value);
-                    break;
-                case 602: /* Field LegSecurityID */
-                    proto_tree_add_string(fix_tree, hf_fix_LegSecurityID, tvb, offset, field_len, value);
-                    break;
-                case 603: /* Field LegSecurityIDSource */
-                    proto_tree_add_string(fix_tree, hf_fix_LegSecurityIDSource, tvb, offset, field_len, value);
-                    break;
-                case 604: /* Field NoLegSecurityAltID */
-                    proto_tree_add_string(fix_tree, hf_fix_NoLegSecurityAltID, tvb, offset, field_len, value);
-                    break;
-                case 605: /* Field LegSecurityAltID */
-                    proto_tree_add_string(fix_tree, hf_fix_LegSecurityAltID, tvb, offset, field_len, value);
-                    break;
-                case 606: /* Field LegSecurityAltIDSource */
-                    proto_tree_add_string(fix_tree, hf_fix_LegSecurityAltIDSource, tvb, offset, field_len, value);
-                    break;
-                case 607: /* Field LegProduct */
-                    proto_tree_add_string(fix_tree, hf_fix_LegProduct, tvb, offset, field_len, value);
-                    break;
-                case 608: /* Field LegCFICode */
-                    proto_tree_add_string(fix_tree, hf_fix_LegCFICode, tvb, offset, field_len, value);
-                    break;
-                case 609: /* Field LegSecurityType */
-                    proto_tree_add_string(fix_tree, hf_fix_LegSecurityType, tvb, offset, field_len, value);
-                    break;
-                case 610: /* Field LegMaturityMonthYear */
-                    proto_tree_add_string(fix_tree, hf_fix_LegMaturityMonthYear, tvb, offset, field_len, value);
-                    break;
-                case 611: /* Field LegMaturityDate */
-                    proto_tree_add_string(fix_tree, hf_fix_LegMaturityDate, tvb, offset, field_len, value);
-                    break;
-                case 612: /* Field LegStrikePrice */
-                    proto_tree_add_string(fix_tree, hf_fix_LegStrikePrice, tvb, offset, field_len, value);
-                    break;
-                case 613: /* Field LegOptAttribute */
-                    proto_tree_add_string(fix_tree, hf_fix_LegOptAttribute, tvb, offset, field_len, value);
-                    break;
-                case 614: /* Field LegContractMultiplier */
-                    proto_tree_add_string(fix_tree, hf_fix_LegContractMultiplier, tvb, offset, field_len, value);
-                    break;
-                case 615: /* Field LegCouponRate */
-                    proto_tree_add_string(fix_tree, hf_fix_LegCouponRate, tvb, offset, field_len, value);
-                    break;
-                case 616: /* Field LegSecurityExchange */
-                    proto_tree_add_string(fix_tree, hf_fix_LegSecurityExchange, tvb, offset, field_len, value);
-                    break;
-                case 617: /* Field LegIssuer */
-                    proto_tree_add_string(fix_tree, hf_fix_LegIssuer, tvb, offset, field_len, value);
-                    break;
-                case 618: /* Field EncodedLegIssuerLen */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedLegIssuerLen, tvb, offset, field_len, value);
-                    break;
-                case 619: /* Field EncodedLegIssuer */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedLegIssuer, tvb, offset, field_len, value);
-                    break;
-                case 620: /* Field LegSecurityDesc */
-                    proto_tree_add_string(fix_tree, hf_fix_LegSecurityDesc, tvb, offset, field_len, value);
-                    break;
-                case 621: /* Field EncodedLegSecurityDescLen */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedLegSecurityDescLen, tvb, offset, field_len, value);
-                    break;
-                case 622: /* Field EncodedLegSecurityDesc */
-                    proto_tree_add_string(fix_tree, hf_fix_EncodedLegSecurityDesc, tvb, offset, field_len, value);
-                    break;
-                case 623: /* Field LegRatioQty */
-                    proto_tree_add_string(fix_tree, hf_fix_LegRatioQty, tvb, offset, field_len, value);
-                    break;
-                case 624: /* Field LegSide */
-                    proto_tree_add_string(fix_tree, hf_fix_LegSide, tvb, offset, field_len, value);
-                    break;
-                case 625: /* Field TradingSessionSubID */
-                    proto_tree_add_string(fix_tree, hf_fix_TradingSessionSubID, tvb, offset, field_len, value);
-                    break;
-                case 626: /* Field AllocType */
-                    proto_tree_add_string(fix_tree, hf_fix_AllocType, tvb, offset, field_len, value);
-                    break;
-                case 627: /* Field NoHops */
-                    proto_tree_add_string(fix_tree, hf_fix_NoHops, tvb, offset, field_len, value);
-                    break;
-                case 628: /* Field HopCompID */
-                    proto_tree_add_string(fix_tree, hf_fix_HopCompID, tvb, offset, field_len, value);
-                    break;
-                case 629: /* Field HopSendingTime */
-                    proto_tree_add_string(fix_tree, hf_fix_HopSendingTime, tvb, offset, field_len, value);
-                    break;
-                case 630: /* Field HopRefID */
-                    proto_tree_add_string(fix_tree, hf_fix_HopRefID, tvb, offset, field_len, value);
-                    break;
-                case 631: /* Field MidPx */
-                    proto_tree_add_string(fix_tree, hf_fix_MidPx, tvb, offset, field_len, value);
-                    break;
-                case 632: /* Field BidYield */
-                    proto_tree_add_string(fix_tree, hf_fix_BidYield, tvb, offset, field_len, value);
-                    break;
-                case 633: /* Field MidYield */
-                    proto_tree_add_string(fix_tree, hf_fix_MidYield, tvb, offset, field_len, value);
-                    break;
-                case 634: /* Field OfferYield */
-                    proto_tree_add_string(fix_tree, hf_fix_OfferYield, tvb, offset, field_len, value);
-                    break;
-                case 635: /* Field ClearingFeeIndicator */
-                    proto_tree_add_string(fix_tree, hf_fix_ClearingFeeIndicator, tvb, offset, field_len, value);
-                    break;
-                case 636: /* Field WorkingIndicator */
-                    proto_tree_add_string(fix_tree, hf_fix_WorkingIndicator, tvb, offset, field_len, value);
-                    break;
-                case 637: /* Field LegLastPx */
-                    proto_tree_add_string(fix_tree, hf_fix_LegLastPx, tvb, offset, field_len, value);
-                    break;
-                case 638: /* Field PriorityIndicator */
-                    proto_tree_add_string(fix_tree, hf_fix_PriorityIndicator, tvb, offset, field_len, value);
-                    break;
-                case 639: /* Field PriceImprovement */
-                    proto_tree_add_string(fix_tree, hf_fix_PriceImprovement, tvb, offset, field_len, value);
-                    break;
-                case 640: /* Field Price2 */
-                    proto_tree_add_string(fix_tree, hf_fix_Price2, tvb, offset, field_len, value);
-                    break;
-                case 641: /* Field LastForwardPoints2 */
-                    proto_tree_add_string(fix_tree, hf_fix_LastForwardPoints2, tvb, offset, field_len, value);
-                    break;
-                case 642: /* Field BidForwardPoints2 */
-                    proto_tree_add_string(fix_tree, hf_fix_BidForwardPoints2, tvb, offset, field_len, value);
-                    break;
-                case 643: /* Field OfferForwardPoints2 */
-                    proto_tree_add_string(fix_tree, hf_fix_OfferForwardPoints2, tvb, offset, field_len, value);
-                    break;
-                case 644: /* Field RFQReqID */
-                    proto_tree_add_string(fix_tree, hf_fix_RFQReqID, tvb, offset, field_len, value);
-                    break;
-                case 645: /* Field MktBidPx */
-                    proto_tree_add_string(fix_tree, hf_fix_MktBidPx, tvb, offset, field_len, value);
-                    break;
-                case 646: /* Field MktOfferPx */
-                    proto_tree_add_string(fix_tree, hf_fix_MktOfferPx, tvb, offset, field_len, value);
-                    break;
-                case 647: /* Field MinBidSize */
-                    proto_tree_add_string(fix_tree, hf_fix_MinBidSize, tvb, offset, field_len, value);
-                    break;
-                case 648: /* Field MinOfferSize */
-                    proto_tree_add_string(fix_tree, hf_fix_MinOfferSize, tvb, offset, field_len, value);
-                    break;
-                case 649: /* Field QuoteStatusReqID */
-                    proto_tree_add_string(fix_tree, hf_fix_QuoteStatusReqID, tvb, offset, field_len, value);
-                    break;
-                case 650: /* Field LegalConfirm */
-                    proto_tree_add_string(fix_tree, hf_fix_LegalConfirm, tvb, offset, field_len, value);
-                    break;
-                case 651: /* Field UnderlyingLastPx */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingLastPx, tvb, offset, field_len, value);
-                    break;
-                case 652: /* Field UnderlyingLastQty */
-                    proto_tree_add_string(fix_tree, hf_fix_UnderlyingLastQty, tvb, offset, field_len, value);
-                    break;
-                case 653: /* Field SecDefStatus */
-                    proto_tree_add_string(fix_tree, hf_fix_SecDefStatus, tvb, offset, field_len, value);
-                    break;
-                case 654: /* Field LegRefID */
-                    proto_tree_add_string(fix_tree, hf_fix_LegRefID, tvb, offset, field_len, value);
-                    break;
-                case 655: /* Field ContraLegRefID */
-                    proto_tree_add_string(fix_tree, hf_fix_ContraLegRefID, tvb, offset, field_len, value);
-                    break;
-                case 656: /* Field SettlCurrBidFxRate */
-                    proto_tree_add_string(fix_tree, hf_fix_SettlCurrBidFxRate, tvb, offset, field_len, value);
-                    break;
-                case 657: /* Field SettlCurrOfferFxRate */
-                    proto_tree_add_string(fix_tree, hf_fix_SettlCurrOfferFxRate, tvb, offset, field_len, value);
-                    break;
-                case 658: /* Field QuoteRequestRejectReason */
-                    proto_tree_add_string(fix_tree, hf_fix_QuoteRequestRejectReason, tvb, offset, field_len, value);
-                    break;
-                case 659: /* Field SideComplianceID */
-                    proto_tree_add_string(fix_tree, hf_fix_SideComplianceID, tvb, offset, field_len, value);
-                    break;
-                case 662: /* Field BenchmarkPrice */
-                    proto_tree_add_string(fix_tree, hf_fix_BenchmarkPrice, tvb, offset, field_len, value);
-                    break;
-                case 663: /* Field BenchmarkPriceType */
-                    proto_tree_add_string(fix_tree, hf_fix_BenchmarkPriceType, tvb, offset, field_len, value);
-                    break;
-                case 691: /* Field Pool */
-                    proto_tree_add_string(fix_tree, hf_fix_Pool, tvb, offset, field_len, value);
-                    break;
-                case 693: /* Field QuoteRespID */
-                    proto_tree_add_string(fix_tree, hf_fix_QuoteRespID, tvb, offset, field_len, value);
-                    break;
-                case 694: /* Field QuoteRespType */
-                    proto_tree_add_string(fix_tree, hf_fix_QuoteRespType, tvb, offset, field_len, value);
-                    break;
-                case 695: /* Field QuoteQualifier */
-                    proto_tree_add_string(fix_tree, hf_fix_QuoteQualifier, tvb, offset, field_len, value);
-                    break;
-                case 699: /* Field BenchmarkSecurityID */
-                    proto_tree_add_string(fix_tree, hf_fix_BenchmarkSecurityID, tvb, offset, field_len, value);
-                    break;
-                case 735: /* Field NoQuoteQualifiers */
-                    proto_tree_add_string(fix_tree, hf_fix_NoQuoteQualifiers, tvb, offset, field_len, value);
-                    break;
-                case 761: /* Field BenchmarkSecurityIDSource */
-                    proto_tree_add_string(fix_tree, hf_fix_BenchmarkSecurityIDSource, tvb, offset, field_len, value);
-                    break;
-                case 762: /* Field SecuritySubType */
-                    proto_tree_add_string(fix_tree, hf_fix_SecuritySubType, tvb, offset, field_len, value);
-                    break;
-                case 795: /* Field AllocReportRefID */
-                    proto_tree_add_string(fix_tree, hf_fix_AllocReportRefID, tvb, offset, field_len, value);
-                    break;
-                case 870: /* Field NoInstrAttrib */
-                    proto_tree_add_string(fix_tree, hf_fix_NoInstrAttrib, tvb, offset, field_len, value);
-                    break;
-                case 871: /* Field InstrAttribType */
-                    proto_tree_add_string(fix_tree, hf_fix_InstrAttribType, tvb, offset, field_len, value);
-                    break;
-                case 872: /* Field InstrAttribValue */
-                    proto_tree_add_string(fix_tree, hf_fix_InstrAttribValue, tvb, offset, field_len, value);
-                    break;
-                case 893: /* Field LastFragment */
-                    proto_tree_add_string(fix_tree, hf_fix_LastFragment, tvb, offset, field_len, value);
-                    break;
-                default:
-                    /* XXX - it could be -1 if the tag isn't a number */
-                    proto_tree_add_text(fix_tree, tvb, offset, field_len, "%i: %s", tag, value);
-                    break;
-            }
+static void
+dissect_fix_pdus(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+{
+    tcp_dissect_pdus(tvb, pinfo, tree, fix_desegment, FIX_MIN_LEN,
+           get_fix_pdu_len, dissect_fix_packet);
 
-            field_offset = offset = ctrla_offset + 1;
-            ctrla_offset = tvb_find_guint8(tvb, field_offset, -1, 0x01);
+}
 
-            tag_str = NULL;
-        }
-    }
+static void
+dissect_fix(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+{
+    dissect_fix_pdus(tvb, pinfo, tree);
+}
 
-    if (check_col(pinfo->cinfo, COL_INFO)) {
-        if (msg_count > 1)
-            g_string_append_printf(summary_label, " (%d)", msg_count);
-        col_add_str(pinfo->cinfo, COL_INFO, summary_label->str);
-        g_string_free(summary_label, TRUE);
+/* Code to actually dissect the packets */
+static gboolean
+dissect_fix_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+{
+    conversation_t *conv;
+
+    /* get at least the fix version: 8=FIX.x.x */
+    if (fix_marker(tvb, 0) != 0) {
+        /* not a fix packet */
+        return FALSE;
     }
 
+    conv = find_conversation(pinfo->fd->num, &pinfo->src, &pinfo->dst, pinfo->ptype, pinfo->srcport, pinfo->destport, 0);
+
+    if (NULL == conv) {
+       conv = conversation_new(pinfo->fd->num, &pinfo->src, &pinfo->dst, pinfo->ptype, pinfo->srcport, pinfo->destport, 0);
+       conversation_set_dissector(conv, fix_handle);
+    }
+    dissect_fix_pdus(tvb, pinfo, tree);
     return TRUE;
 }
 
-
 /* Register the protocol with Wireshark */
+static void range_delete_fix_tcp_callback(guint32 port) {
+       dissector_delete("tcp.port", port, fix_handle);
+}
+
+static void range_add_fix_tcp_callback(guint32 port) {
+       dissector_add("tcp.port", port, fix_handle);
+}
+
+static void fix_prefs(void) 
+{
+       range_foreach(fix_tcp_range, range_delete_fix_tcp_callback);
+       g_free(fix_tcp_range);
+       fix_tcp_range = range_copy(global_fix_tcp_range);
+       range_foreach(fix_tcp_range, range_add_fix_tcp_callback);       
+}
 
 /* this format is require because a script is used to build the C function
    that calls all the protocol registration.
@@ -3044,3381 +480,40 @@ dissect_fix(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
 void
 proto_register_fix(void)
 {
-
 /* Setup list of header fields  See Section 1.6.1 for details*/
     static hf_register_info hf[] = {
-        { &hf_fix_Account,
-            { "Account (1)", "fix.Account",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Account", HFILL }
-        },
-        { &hf_fix_AdvId,
-            { "AdvId (2)", "fix.AdvId",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AdvId", HFILL }
-        },
-        { &hf_fix_AdvRefID,
-            { "AdvRefID (3)", "fix.AdvRefID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AdvRefID", HFILL }
-        },
-        { &hf_fix_AdvSide,
-            { "AdvSide (4)", "fix.AdvSide",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AdvSide", HFILL }
-        },
-        { &hf_fix_AdvTransType,
-            { "AdvTransType (5)", "fix.AdvTransType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AdvTransType", HFILL }
-        },
-        { &hf_fix_AvgPx,
-            { "AvgPx (6)", "fix.AvgPx",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AvgPx", HFILL }
-        },
-        { &hf_fix_BeginSeqNo,
-            { "BeginSeqNo (7)", "fix.BeginSeqNo",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BeginSeqNo", HFILL }
-        },
-        { &hf_fix_BeginString,
-            { "BeginString (8)", "fix.BeginString",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BeginString", HFILL }
-        },
-        { &hf_fix_BodyLength,
-            { "BodyLength (9)", "fix.BodyLength",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BodyLength", HFILL }
-        },
-        { &hf_fix_CheckSum,
-            { "CheckSum (10)", "fix.CheckSum",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CheckSum", HFILL }
-        },
-        { &hf_fix_ClOrdID,
-            { "ClOrdID (11)", "fix.ClOrdID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ClOrdID", HFILL }
-        },
-        { &hf_fix_Commission,
-            { "Commission (12)", "fix.Commission",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Commission", HFILL }
-        },
-        { &hf_fix_CommType,
-            { "CommType (13)", "fix.CommType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CommType", HFILL }
-        },
-        { &hf_fix_CumQty,
-            { "CumQty (14)", "fix.CumQty",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CumQty", HFILL }
-        },
-        { &hf_fix_Currency,
-            { "Currency (15)", "fix.Currency",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Currency", HFILL }
-        },
-        { &hf_fix_EndSeqNo,
-            { "EndSeqNo (16)", "fix.EndSeqNo",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EndSeqNo", HFILL }
-        },
-        { &hf_fix_ExecID,
-            { "ExecID (17)", "fix.ExecID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ExecID", HFILL }
-        },
-        { &hf_fix_ExecInst,
-            { "ExecInst (18)", "fix.ExecInst",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ExecInst", HFILL }
-        },
-        { &hf_fix_ExecRefID,
-            { "ExecRefID (19)", "fix.ExecRefID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ExecRefID", HFILL }
-        },
-        { &hf_fix_ExecTransType,
-            { "ExecTransType (20)", "fix.ExecTransType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ExecTransType", HFILL }
-        },
-        { &hf_fix_HandlInst,
-            { "HandlInst (21)", "fix.HandlInst",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "HandlInst", HFILL }
-        },
-        { &hf_fix_SecurityIDSource,
-            { "SecurityIDSource (22)", "fix.SecurityIDSource",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecurityIDSource", HFILL }
-        },
-        { &hf_fix_IOIid,
-            { "IOIid (23)", "fix.IOIid",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "IOIid", HFILL }
-        },
-        { &hf_fix_IOIOthSvc,
-            { "IOIOthSvc (24)", "fix.IOIOthSvc",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "IOIOthSvc", HFILL }
-        },
-        { &hf_fix_IOIQltyInd,
-            { "IOIQltyInd (25)", "fix.IOIQltyInd",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "IOIQltyInd", HFILL }
-        },
-        { &hf_fix_IOIRefID,
-            { "IOIRefID (26)", "fix.IOIRefID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "IOIRefID", HFILL }
-        },
-        { &hf_fix_IOIQty,
-            { "IOIQty (27)", "fix.IOIQty",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "IOIQty", HFILL }
-        },
-        { &hf_fix_IOITransType,
-            { "IOITransType (28)", "fix.IOITransType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "IOITransType", HFILL }
-        },
-        { &hf_fix_LastCapacity,
-            { "LastCapacity (29)", "fix.LastCapacity",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LastCapacity", HFILL }
-        },
-        { &hf_fix_LastMkt,
-            { "LastMkt (30)", "fix.LastMkt",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LastMkt", HFILL }
-        },
-        { &hf_fix_LastPx,
-            { "LastPx (31)", "fix.LastPx",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LastPx", HFILL }
-        },
-        { &hf_fix_LastQty,
-            { "LastQty (32)", "fix.LastQty",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LastQty", HFILL }
-        },
-        { &hf_fix_LinesOfText,
-            { "LinesOfText (33)", "fix.LinesOfText",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LinesOfText", HFILL }
-        },
-        { &hf_fix_MsgSeqNum,
-            { "MsgSeqNum (34)", "fix.MsgSeqNum",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MsgSeqNum", HFILL }
-        },
-        { &hf_fix_MsgType,
-            { "MsgType (35)", "fix.MsgType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MsgType", HFILL }
-        },
-        { &hf_fix_NewSeqNo,
-            { "NewSeqNo (36)", "fix.NewSeqNo",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NewSeqNo", HFILL }
-        },
-        { &hf_fix_OrderID,
-            { "OrderID (37)", "fix.OrderID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OrderID", HFILL }
-        },
-        { &hf_fix_OrderQty,
-            { "OrderQty (38)", "fix.OrderQty",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OrderQty", HFILL }
-        },
-        { &hf_fix_OrdStatus,
-            { "OrdStatus (39)", "fix.OrdStatus",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OrdStatus", HFILL }
-        },
-        { &hf_fix_OrdType,
-            { "OrdType (40)", "fix.OrdType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OrdType", HFILL }
-        },
-        { &hf_fix_OrigClOrdID,
-            { "OrigClOrdID (41)", "fix.OrigClOrdID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OrigClOrdID", HFILL }
-        },
-        { &hf_fix_OrigTime,
-            { "OrigTime (42)", "fix.OrigTime",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OrigTime", HFILL }
-        },
-        { &hf_fix_PossDupFlag,
-            { "PossDupFlag (43)", "fix.PossDupFlag",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "PossDupFlag", HFILL }
-        },
-        { &hf_fix_Price,
-            { "Price (44)", "fix.Price",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Price", HFILL }
-        },
-        { &hf_fix_RefSeqNum,
-            { "RefSeqNum (45)", "fix.RefSeqNum",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RefSeqNum", HFILL }
-        },
-        { &hf_fix_RelatdSym,
-            { "RelatdSym (46)", "fix.RelatdSym",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RelatdSym", HFILL }
-        },
-        { &hf_fix_Rule80A,
-            { "Rule80A (47)", "fix.Rule80A",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Rule80A", HFILL }
-        },
-        { &hf_fix_SecurityID,
-            { "SecurityID (48)", "fix.SecurityID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecurityID", HFILL }
-        },
-        { &hf_fix_SenderCompID,
-            { "SenderCompID (49)", "fix.SenderCompID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SenderCompID", HFILL }
-        },
-        { &hf_fix_SenderSubID,
-            { "SenderSubID (50)", "fix.SenderSubID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SenderSubID", HFILL }
-        },
-        { &hf_fix_SendingDate,
-            { "SendingDate (51)", "fix.SendingDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SendingDate", HFILL }
-        },
-        { &hf_fix_SendingTime,
-            { "SendingTime (52)", "fix.SendingTime",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SendingTime", HFILL }
-        },
-        { &hf_fix_Quantity,
-            { "Quantity (53)", "fix.Quantity",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Quantity", HFILL }
-        },
-        { &hf_fix_Side,
-            { "Side (54)", "fix.Side",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Side", HFILL }
-        },
-        { &hf_fix_Symbol,
-            { "Symbol (55)", "fix.Symbol",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Symbol", HFILL }
-        },
-        { &hf_fix_TargetCompID,
-            { "TargetCompID (56)", "fix.TargetCompID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TargetCompID", HFILL }
-        },
-        { &hf_fix_TargetSubID,
-            { "TargetSubID (57)", "fix.TargetSubID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TargetSubID", HFILL }
-        },
-        { &hf_fix_Text,
-            { "Text (58)", "fix.Text",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Text", HFILL }
-        },
-        { &hf_fix_TimeInForce,
-            { "TimeInForce (59)", "fix.TimeInForce",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TimeInForce", HFILL }
-        },
-        { &hf_fix_TransactTime,
-            { "TransactTime (60)", "fix.TransactTime",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TransactTime", HFILL }
-        },
-        { &hf_fix_Urgency,
-            { "Urgency (61)", "fix.Urgency",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Urgency", HFILL }
-        },
-        { &hf_fix_ValidUntilTime,
-            { "ValidUntilTime (62)", "fix.ValidUntilTime",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ValidUntilTime", HFILL }
-        },
-        { &hf_fix_SettlmntTyp,
-            { "SettlmntTyp (63)", "fix.SettlmntTyp",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SettlmntTyp", HFILL }
-        },
-        { &hf_fix_FutSettDate,
-            { "FutSettDate (64)", "fix.FutSettDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "FutSettDate", HFILL }
-        },
-        { &hf_fix_SymbolSfx,
-            { "SymbolSfx (65)", "fix.SymbolSfx",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SymbolSfx", HFILL }
-        },
-        { &hf_fix_ListID,
-            { "ListID (66)", "fix.ListID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ListID", HFILL }
-        },
-        { &hf_fix_ListSeqNo,
-            { "ListSeqNo (67)", "fix.ListSeqNo",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ListSeqNo", HFILL }
-        },
-        { &hf_fix_TotNoOrders,
-            { "TotNoOrders (68)", "fix.TotNoOrders",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TotNoOrders", HFILL }
-        },
-        { &hf_fix_ListExecInst,
-            { "ListExecInst (69)", "fix.ListExecInst",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ListExecInst", HFILL }
-        },
-        { &hf_fix_AllocID,
-            { "AllocID (70)", "fix.AllocID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AllocID", HFILL }
-        },
-        { &hf_fix_AllocTransType,
-            { "AllocTransType (71)", "fix.AllocTransType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AllocTransType", HFILL }
-        },
-        { &hf_fix_RefAllocID,
-            { "RefAllocID (72)", "fix.RefAllocID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RefAllocID", HFILL }
-        },
-        { &hf_fix_NoOrders,
-            { "NoOrders (73)", "fix.NoOrders",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoOrders", HFILL }
-        },
-        { &hf_fix_AvgPrxPrecision,
-            { "AvgPrxPrecision (74)", "fix.AvgPrxPrecision",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AvgPrxPrecision", HFILL }
-        },
-        { &hf_fix_TradeDate,
-            { "TradeDate (75)", "fix.TradeDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradeDate", HFILL }
-        },
-        { &hf_fix_ExecBroker,
-            { "ExecBroker (76)", "fix.ExecBroker",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ExecBroker", HFILL }
-        },
-        { &hf_fix_PositionEffect,
-            { "PositionEffect (77)", "fix.PositionEffect",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "PositionEffect", HFILL }
-        },
-        { &hf_fix_NoAllocs,
-            { "NoAllocs (78)", "fix.NoAllocs",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoAllocs", HFILL }
-        },
-        { &hf_fix_AllocAccount,
-            { "AllocAccount (79)", "fix.AllocAccount",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AllocAccount", HFILL }
-        },
-        { &hf_fix_AllocQty,
-            { "AllocQty (80)", "fix.AllocQty",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AllocQty", HFILL }
-        },
-        { &hf_fix_ProcessCode,
-            { "ProcessCode (81)", "fix.ProcessCode",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ProcessCode", HFILL }
-        },
-        { &hf_fix_NoRpts,
-            { "NoRpts (82)", "fix.NoRpts",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoRpts", HFILL }
-        },
-        { &hf_fix_RptSeq,
-            { "RptSeq (83)", "fix.RptSeq",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RptSeq", HFILL }
-        },
-        { &hf_fix_CxlQty,
-            { "CxlQty (84)", "fix.CxlQty",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CxlQty", HFILL }
-        },
-        { &hf_fix_NoDlvyInst,
-            { "NoDlvyInst (85)", "fix.NoDlvyInst",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoDlvyInst", HFILL }
-        },
-        { &hf_fix_DlvyInst,
-            { "DlvyInst (86)", "fix.DlvyInst",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "DlvyInst", HFILL }
-        },
-        { &hf_fix_AllocStatus,
-            { "AllocStatus (87)", "fix.AllocStatus",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AllocStatus", HFILL }
-        },
-        { &hf_fix_AllocRejCode,
-            { "AllocRejCode (88)", "fix.AllocRejCode",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AllocRejCode", HFILL }
-        },
-        { &hf_fix_Signature,
-            { "Signature (89)", "fix.Signature",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Signature", HFILL }
-        },
-        { &hf_fix_SecureDataLen,
-            { "SecureDataLen (90)", "fix.SecureDataLen",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecureDataLen", HFILL }
-        },
-        { &hf_fix_SecureData,
-            { "SecureData (91)", "fix.SecureData",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecureData", HFILL }
-        },
-        { &hf_fix_BrokerOfCredit,
-            { "BrokerOfCredit (92)", "fix.BrokerOfCredit",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BrokerOfCredit", HFILL }
-        },
-        { &hf_fix_SignatureLength,
-            { "SignatureLength (93)", "fix.SignatureLength",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SignatureLength", HFILL }
-        },
-        { &hf_fix_EmailType,
-            { "EmailType (94)", "fix.EmailType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EmailType", HFILL }
-        },
-        { &hf_fix_RawDataLength,
-            { "RawDataLength (95)", "fix.RawDataLength",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RawDataLength", HFILL }
-        },
-        { &hf_fix_RawData,
-            { "RawData (96)", "fix.RawData",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RawData", HFILL }
-        },
-        { &hf_fix_PossResend,
-            { "PossResend (97)", "fix.PossResend",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "PossResend", HFILL }
-        },
-        { &hf_fix_EncryptMethod,
-            { "EncryptMethod (98)", "fix.EncryptMethod",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncryptMethod", HFILL }
-        },
-        { &hf_fix_StopPx,
-            { "StopPx (99)", "fix.StopPx",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "StopPx", HFILL }
-        },
-        { &hf_fix_ExDestination,
-            { "ExDestination (100)", "fix.ExDestination",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ExDestination", HFILL }
-        },
-        { &hf_fix_CxlRejReason,
-            { "CxlRejReason (102)", "fix.CxlRejReason",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CxlRejReason", HFILL }
-        },
-        { &hf_fix_OrdRejReason,
-            { "OrdRejReason (103)", "fix.OrdRejReason",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OrdRejReason", HFILL }
-        },
-        { &hf_fix_IOIQualifier,
-            { "IOIQualifier (104)", "fix.IOIQualifier",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "IOIQualifier", HFILL }
-        },
-        { &hf_fix_WaveNo,
-            { "WaveNo (105)", "fix.WaveNo",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "WaveNo", HFILL }
-        },
-        { &hf_fix_Issuer,
-            { "Issuer (106)", "fix.Issuer",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Issuer", HFILL }
-        },
-        { &hf_fix_SecurityDesc,
-            { "SecurityDesc (107)", "fix.SecurityDesc",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecurityDesc", HFILL }
-        },
-        { &hf_fix_HeartBtInt,
-            { "HeartBtInt (108)", "fix.HeartBtInt",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "HeartBtInt", HFILL }
-        },
-        { &hf_fix_ClientID,
-            { "ClientID (109)", "fix.ClientID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ClientID", HFILL }
-        },
-        { &hf_fix_MinQty,
-            { "MinQty (110)", "fix.MinQty",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MinQty", HFILL }
-        },
-        { &hf_fix_MaxFloor,
-            { "MaxFloor (111)", "fix.MaxFloor",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MaxFloor", HFILL }
-        },
-        { &hf_fix_TestReqID,
-            { "TestReqID (112)", "fix.TestReqID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TestReqID", HFILL }
-        },
-        { &hf_fix_ReportToExch,
-            { "ReportToExch (113)", "fix.ReportToExch",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ReportToExch", HFILL }
-        },
-        { &hf_fix_LocateReqd,
-            { "LocateReqd (114)", "fix.LocateReqd",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LocateReqd", HFILL }
-        },
-        { &hf_fix_OnBehalfOfCompID,
-            { "OnBehalfOfCompID (115)", "fix.OnBehalfOfCompID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OnBehalfOfCompID", HFILL }
-        },
-        { &hf_fix_OnBehalfOfSubID,
-            { "OnBehalfOfSubID (116)", "fix.OnBehalfOfSubID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OnBehalfOfSubID", HFILL }
-        },
-        { &hf_fix_QuoteID,
-            { "QuoteID (117)", "fix.QuoteID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "QuoteID", HFILL }
-        },
-        { &hf_fix_NetMoney,
-            { "NetMoney (118)", "fix.NetMoney",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NetMoney", HFILL }
-        },
-        { &hf_fix_SettlCurrAmt,
-            { "SettlCurrAmt (119)", "fix.SettlCurrAmt",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SettlCurrAmt", HFILL }
-        },
-        { &hf_fix_SettlCurrency,
-            { "SettlCurrency (120)", "fix.SettlCurrency",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SettlCurrency", HFILL }
-        },
-        { &hf_fix_ForexReq,
-            { "ForexReq (121)", "fix.ForexReq",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ForexReq", HFILL }
-        },
-        { &hf_fix_OrigSendingTime,
-            { "OrigSendingTime (122)", "fix.OrigSendingTime",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OrigSendingTime", HFILL }
-        },
-        { &hf_fix_GapFillFlag,
-            { "GapFillFlag (123)", "fix.GapFillFlag",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "GapFillFlag", HFILL }
-        },
-        { &hf_fix_NoExecs,
-            { "NoExecs (124)", "fix.NoExecs",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoExecs", HFILL }
-        },
-        { &hf_fix_CxlType,
-            { "CxlType (125)", "fix.CxlType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CxlType", HFILL }
-        },
-        { &hf_fix_ExpireTime,
-            { "ExpireTime (126)", "fix.ExpireTime",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ExpireTime", HFILL }
-        },
-        { &hf_fix_DKReason,
-            { "DKReason (127)", "fix.DKReason",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "DKReason", HFILL }
-        },
-        { &hf_fix_DeliverToCompID,
-            { "DeliverToCompID (128)", "fix.DeliverToCompID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "DeliverToCompID", HFILL }
-        },
-        { &hf_fix_DeliverToSubID,
-            { "DeliverToSubID (129)", "fix.DeliverToSubID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "DeliverToSubID", HFILL }
-        },
-        { &hf_fix_IOINaturalFlag,
-            { "IOINaturalFlag (130)", "fix.IOINaturalFlag",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "IOINaturalFlag", HFILL }
-        },
-        { &hf_fix_QuoteReqID,
-            { "QuoteReqID (131)", "fix.QuoteReqID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "QuoteReqID", HFILL }
-        },
-        { &hf_fix_BidPx,
-            { "BidPx (132)", "fix.BidPx",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BidPx", HFILL }
-        },
-        { &hf_fix_OfferPx,
-            { "OfferPx (133)", "fix.OfferPx",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OfferPx", HFILL }
-        },
-        { &hf_fix_BidSize,
-            { "BidSize (134)", "fix.BidSize",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BidSize", HFILL }
-        },
-        { &hf_fix_OfferSize,
-            { "OfferSize (135)", "fix.OfferSize",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OfferSize", HFILL }
-        },
-        { &hf_fix_NoMiscFees,
-            { "NoMiscFees (136)", "fix.NoMiscFees",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoMiscFees", HFILL }
-        },
-        { &hf_fix_MiscFeeAmt,
-            { "MiscFeeAmt (137)", "fix.MiscFeeAmt",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MiscFeeAmt", HFILL }
-        },
-        { &hf_fix_MiscFeeCurr,
-            { "MiscFeeCurr (138)", "fix.MiscFeeCurr",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MiscFeeCurr", HFILL }
-        },
-        { &hf_fix_MiscFeeType,
-            { "MiscFeeType (139)", "fix.MiscFeeType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MiscFeeType", HFILL }
-        },
-        { &hf_fix_PrevClosePx,
-            { "PrevClosePx (140)", "fix.PrevClosePx",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "PrevClosePx", HFILL }
-        },
-        { &hf_fix_ResetSeqNumFlag,
-            { "ResetSeqNumFlag (141)", "fix.ResetSeqNumFlag",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ResetSeqNumFlag", HFILL }
-        },
-        { &hf_fix_SenderLocationID,
-            { "SenderLocationID (142)", "fix.SenderLocationID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SenderLocationID", HFILL }
-        },
-        { &hf_fix_TargetLocationID,
-            { "TargetLocationID (143)", "fix.TargetLocationID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TargetLocationID", HFILL }
-        },
-        { &hf_fix_OnBehalfOfLocationID,
-            { "OnBehalfOfLocationID (144)", "fix.OnBehalfOfLocationID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OnBehalfOfLocationID", HFILL }
-        },
-        { &hf_fix_DeliverToLocationID,
-            { "DeliverToLocationID (145)", "fix.DeliverToLocationID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "DeliverToLocationID", HFILL }
-        },
-        { &hf_fix_NoRelatedSym,
-            { "NoRelatedSym (146)", "fix.NoRelatedSym",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoRelatedSym", HFILL }
-        },
-        { &hf_fix_Subject,
-            { "Subject (147)", "fix.Subject",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Subject", HFILL }
-        },
-        { &hf_fix_Headline,
-            { "Headline (148)", "fix.Headline",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Headline", HFILL }
-        },
-        { &hf_fix_URLLink,
-            { "URLLink (149)", "fix.URLLink",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "URLLink", HFILL }
-        },
-        { &hf_fix_ExecType,
-            { "ExecType (150)", "fix.ExecType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ExecType", HFILL }
-        },
-        { &hf_fix_LeavesQty,
-            { "LeavesQty (151)", "fix.LeavesQty",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LeavesQty", HFILL }
-        },
-        { &hf_fix_CashOrderQty,
-            { "CashOrderQty (152)", "fix.CashOrderQty",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CashOrderQty", HFILL }
-        },
-        { &hf_fix_AllocAvgPx,
-            { "AllocAvgPx (153)", "fix.AllocAvgPx",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AllocAvgPx", HFILL }
-        },
-        { &hf_fix_AllocNetMoney,
-            { "AllocNetMoney (154)", "fix.AllocNetMoney",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AllocNetMoney", HFILL }
-        },
-        { &hf_fix_SettlCurrFxRate,
-            { "SettlCurrFxRate (155)", "fix.SettlCurrFxRate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SettlCurrFxRate", HFILL }
-        },
-        { &hf_fix_SettlCurrFxRateCalc,
-            { "SettlCurrFxRateCalc (156)", "fix.SettlCurrFxRateCalc",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SettlCurrFxRateCalc", HFILL }
-        },
-        { &hf_fix_NumDaysInterest,
-            { "NumDaysInterest (157)", "fix.NumDaysInterest",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NumDaysInterest", HFILL }
-        },
-        { &hf_fix_AccruedInterestRate,
-            { "AccruedInterestRate (158)", "fix.AccruedInterestRate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AccruedInterestRate", HFILL }
-        },
-        { &hf_fix_AccruedInterestAmt,
-            { "AccruedInterestAmt (159)", "fix.AccruedInterestAmt",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AccruedInterestAmt", HFILL }
-        },
-        { &hf_fix_SettlInstMode,
-            { "SettlInstMode (160)", "fix.SettlInstMode",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SettlInstMode", HFILL }
-        },
-        { &hf_fix_AllocText,
-            { "AllocText (161)", "fix.AllocText",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AllocText", HFILL }
-        },
-        { &hf_fix_SettlInstID,
-            { "SettlInstID (162)", "fix.SettlInstID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SettlInstID", HFILL }
-        },
-        { &hf_fix_SettlInstTransType,
-            { "SettlInstTransType (163)", "fix.SettlInstTransType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SettlInstTransType", HFILL }
-        },
-        { &hf_fix_EmailThreadID,
-            { "EmailThreadID (164)", "fix.EmailThreadID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EmailThreadID", HFILL }
-        },
-        { &hf_fix_SettlInstSource,
-            { "SettlInstSource (165)", "fix.SettlInstSource",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SettlInstSource", HFILL }
-        },
-        { &hf_fix_SettlLocation,
-            { "SettlLocation (166)", "fix.SettlLocation",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SettlLocation", HFILL }
-        },
-        { &hf_fix_SecurityType,
-            { "SecurityType (167)", "fix.SecurityType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecurityType", HFILL }
-        },
-        { &hf_fix_EffectiveTime,
-            { "EffectiveTime (168)", "fix.EffectiveTime",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EffectiveTime", HFILL }
-        },
-        { &hf_fix_StandInstDbType,
-            { "StandInstDbType (169)", "fix.StandInstDbType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "StandInstDbType", HFILL }
-        },
-        { &hf_fix_StandInstDbName,
-            { "StandInstDbName (170)", "fix.StandInstDbName",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "StandInstDbName", HFILL }
-        },
-        { &hf_fix_StandInstDbID,
-            { "StandInstDbID (171)", "fix.StandInstDbID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "StandInstDbID", HFILL }
-        },
-        { &hf_fix_SettlDeliveryType,
-            { "SettlDeliveryType (172)", "fix.SettlDeliveryType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SettlDeliveryType", HFILL }
-        },
-        { &hf_fix_SettlDepositoryCode,
-            { "SettlDepositoryCode (173)", "fix.SettlDepositoryCode",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SettlDepositoryCode", HFILL }
-        },
-        { &hf_fix_SettlBrkrCode,
-            { "SettlBrkrCode (174)", "fix.SettlBrkrCode",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SettlBrkrCode", HFILL }
-        },
-        { &hf_fix_SettlInstCode,
-            { "SettlInstCode (175)", "fix.SettlInstCode",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SettlInstCode", HFILL }
-        },
-        { &hf_fix_SecuritySettlAgentName,
-            { "SecuritySettlAgentName (176)", "fix.SecuritySettlAgentName",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecuritySettlAgentName", HFILL }
-        },
-        { &hf_fix_SecuritySettlAgentCode,
-            { "SecuritySettlAgentCode (177)", "fix.SecuritySettlAgentCode",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecuritySettlAgentCode", HFILL }
-        },
-        { &hf_fix_SecuritySettlAgentAcctNum,
-            { "SecuritySettlAgentAcctNum (178)", "fix.SecuritySettlAgentAcctNum",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecuritySettlAgentAcctNum", HFILL }
-        },
-        { &hf_fix_SecuritySettlAgentAcctName,
-            { "SecuritySettlAgentAcctName (179)", "fix.SecuritySettlAgentAcctName",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecuritySettlAgentAcctName", HFILL }
-        },
-        { &hf_fix_SecuritySettlAgentContactName,
-            { "SecuritySettlAgentContactName (180)", "fix.SecuritySettlAgentContactName",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecuritySettlAgentContactName", HFILL }
-        },
-        { &hf_fix_SecuritySettlAgentContactPhone,
-            { "SecuritySettlAgentContactPhone (181)", "fix.SecuritySettlAgentContactPhone",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecuritySettlAgentContactPhone", HFILL }
-        },
-        { &hf_fix_CashSettlAgentName,
-            { "CashSettlAgentName (182)", "fix.CashSettlAgentName",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CashSettlAgentName", HFILL }
-        },
-        { &hf_fix_CashSettlAgentCode,
-            { "CashSettlAgentCode (183)", "fix.CashSettlAgentCode",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CashSettlAgentCode", HFILL }
-        },
-        { &hf_fix_CashSettlAgentAcctNum,
-            { "CashSettlAgentAcctNum (184)", "fix.CashSettlAgentAcctNum",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CashSettlAgentAcctNum", HFILL }
-        },
-        { &hf_fix_CashSettlAgentAcctName,
-            { "CashSettlAgentAcctName (185)", "fix.CashSettlAgentAcctName",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CashSettlAgentAcctName", HFILL }
-        },
-        { &hf_fix_CashSettlAgentContactName,
-            { "CashSettlAgentContactName (186)", "fix.CashSettlAgentContactName",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CashSettlAgentContactName", HFILL }
-        },
-        { &hf_fix_CashSettlAgentContactPhone,
-            { "CashSettlAgentContactPhone (187)", "fix.CashSettlAgentContactPhone",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CashSettlAgentContactPhone", HFILL }
-        },
-        { &hf_fix_BidSpotRate,
-            { "BidSpotRate (188)", "fix.BidSpotRate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BidSpotRate", HFILL }
-        },
-        { &hf_fix_BidForwardPoints,
-            { "BidForwardPoints (189)", "fix.BidForwardPoints",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BidForwardPoints", HFILL }
-        },
-        { &hf_fix_OfferSpotRate,
-            { "OfferSpotRate (190)", "fix.OfferSpotRate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OfferSpotRate", HFILL }
-        },
-        { &hf_fix_OfferForwardPoints,
-            { "OfferForwardPoints (191)", "fix.OfferForwardPoints",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OfferForwardPoints", HFILL }
-        },
-        { &hf_fix_OrderQty2,
-            { "OrderQty2 (192)", "fix.OrderQty2",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OrderQty2", HFILL }
-        },
-        { &hf_fix_FutSettDate2,
-            { "FutSettDate2 (193)", "fix.FutSettDate2",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "FutSettDate2", HFILL }
-        },
-        { &hf_fix_LastSpotRate,
-            { "LastSpotRate (194)", "fix.LastSpotRate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LastSpotRate", HFILL }
-        },
-        { &hf_fix_LastForwardPoints,
-            { "LastForwardPoints (195)", "fix.LastForwardPoints",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LastForwardPoints", HFILL }
-        },
-        { &hf_fix_AllocLinkID,
-            { "AllocLinkID (196)", "fix.AllocLinkID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AllocLinkID", HFILL }
-        },
-        { &hf_fix_AllocLinkType,
-            { "AllocLinkType (197)", "fix.AllocLinkType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AllocLinkType", HFILL }
-        },
-        { &hf_fix_SecondaryOrderID,
-            { "SecondaryOrderID (198)", "fix.SecondaryOrderID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecondaryOrderID", HFILL }
-        },
-        { &hf_fix_NoIOIQualifiers,
-            { "NoIOIQualifiers (199)", "fix.NoIOIQualifiers",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoIOIQualifiers", HFILL }
-        },
-        { &hf_fix_MaturityMonthYear,
-            { "MaturityMonthYear (200)", "fix.MaturityMonthYear",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MaturityMonthYear", HFILL }
-        },
-        { &hf_fix_PutOrCall,
-            { "PutOrCall (201)", "fix.PutOrCall",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "PutOrCall", HFILL }
-        },
-        { &hf_fix_StrikePrice,
-            { "StrikePrice (202)", "fix.StrikePrice",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "StrikePrice", HFILL }
-        },
-        { &hf_fix_CoveredOrUncovered,
-            { "CoveredOrUncovered (203)", "fix.CoveredOrUncovered",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CoveredOrUncovered", HFILL }
-        },
-        { &hf_fix_CustomerOrFirm,
-            { "CustomerOrFirm (204)", "fix.CustomerOrFirm",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CustomerOrFirm", HFILL }
-        },
-        { &hf_fix_MaturityDay,
-            { "MaturityDay (205)", "fix.MaturityDay",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MaturityDay", HFILL }
-        },
-        { &hf_fix_OptAttribute,
-            { "OptAttribute (206)", "fix.OptAttribute",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OptAttribute", HFILL }
-        },
-        { &hf_fix_SecurityExchange,
-            { "SecurityExchange (207)", "fix.SecurityExchange",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecurityExchange", HFILL }
-        },
-        { &hf_fix_NotifyBrokerOfCredit,
-            { "NotifyBrokerOfCredit (208)", "fix.NotifyBrokerOfCredit",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NotifyBrokerOfCredit", HFILL }
-        },
-        { &hf_fix_AllocHandlInst,
-            { "AllocHandlInst (209)", "fix.AllocHandlInst",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AllocHandlInst", HFILL }
-        },
-        { &hf_fix_MaxShow,
-            { "MaxShow (210)", "fix.MaxShow",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MaxShow", HFILL }
-        },
-        { &hf_fix_PegDifference,
-            { "PegDifference (211)", "fix.PegDifference",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "PegDifference", HFILL }
-        },
-        { &hf_fix_XmlDataLen,
-            { "XmlDataLen (212)", "fix.XmlDataLen",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "XmlDataLen", HFILL }
-        },
-        { &hf_fix_XmlData,
-            { "XmlData (213)", "fix.XmlData",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "XmlData", HFILL }
-        },
-        { &hf_fix_SettlInstRefID,
-            { "SettlInstRefID (214)", "fix.SettlInstRefID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SettlInstRefID", HFILL }
-        },
-        { &hf_fix_NoRoutingIDs,
-            { "NoRoutingIDs (215)", "fix.NoRoutingIDs",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoRoutingIDs", HFILL }
-        },
-        { &hf_fix_RoutingType,
-            { "RoutingType (216)", "fix.RoutingType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RoutingType", HFILL }
-        },
-        { &hf_fix_RoutingID,
-            { "RoutingID (217)", "fix.RoutingID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RoutingID", HFILL }
-        },
-        { &hf_fix_Spread,
-            { "Spread (218)", "fix.Spread",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Spread", HFILL }
-        },
-        { &hf_fix_Benchmark,
-            { "Benchmark (219)", "fix.Benchmark",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Benchmark", HFILL }
-        },
-        { &hf_fix_BenchmarkCurveCurrency,
-            { "BenchmarkCurveCurrency (220)", "fix.BenchmarkCurveCurrency",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BenchmarkCurveCurrency", HFILL }
-        },
-        { &hf_fix_BenchmarkCurveName,
-            { "BenchmarkCurveName (221)", "fix.BenchmarkCurveName",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BenchmarkCurveName", HFILL }
-        },
-        { &hf_fix_BenchmarkCurvePoint,
-            { "BenchmarkCurvePoint (222)", "fix.BenchmarkCurvePoint",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BenchmarkCurvePoint", HFILL }
-        },
-        { &hf_fix_CouponRate,
-            { "CouponRate (223)", "fix.CouponRate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CouponRate", HFILL }
-        },
-        { &hf_fix_CouponPaymentDate,
-            { "CouponPaymentDate (224)", "fix.CouponPaymentDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CouponPaymentDate", HFILL }
-        },
-        { &hf_fix_IssueDate,
-            { "IssueDate (225)", "fix.IssueDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "IssueDate", HFILL }
-        },
-        { &hf_fix_RepurchaseTerm,
-            { "RepurchaseTerm (226)", "fix.RepurchaseTerm",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RepurchaseTerm", HFILL }
-        },
-        { &hf_fix_RepurchaseRate,
-            { "RepurchaseRate (227)", "fix.RepurchaseRate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RepurchaseRate", HFILL }
-        },
-        { &hf_fix_Factor,
-            { "Factor (228)", "fix.Factor",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Factor", HFILL }
-        },
-        { &hf_fix_TradeOriginationDate,
-            { "TradeOriginationDate (229)", "fix.TradeOriginationDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradeOriginationDate", HFILL }
-        },
-        { &hf_fix_ExDate,
-            { "ExDate (230)", "fix.ExDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ExDate", HFILL }
-        },
-        { &hf_fix_ContractMultiplier,
-            { "ContractMultiplier (231)", "fix.ContractMultiplier",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ContractMultiplier", HFILL }
-        },
-        { &hf_fix_NoStipulations,
-            { "NoStipulations (232)", "fix.NoStipulations",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoStipulations", HFILL }
-        },
-        { &hf_fix_StipulationType,
-            { "StipulationType (233)", "fix.StipulationType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "StipulationType", HFILL }
-        },
-        { &hf_fix_StipulationValue,
-            { "StipulationValue (234)", "fix.StipulationValue",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "StipulationValue", HFILL }
-        },
-        { &hf_fix_YieldType,
-            { "YieldType (235)", "fix.YieldType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "YieldType", HFILL }
-        },
-        { &hf_fix_Yield,
-            { "Yield (236)", "fix.Yield",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Yield", HFILL }
-        },
-        { &hf_fix_TotalTakedown,
-            { "TotalTakedown (237)", "fix.TotalTakedown",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TotalTakedown", HFILL }
-        },
-        { &hf_fix_Concession,
-            { "Concession (238)", "fix.Concession",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Concession", HFILL }
-        },
-        { &hf_fix_RepoCollateralSecurityType,
-            { "RepoCollateralSecurityType (239)", "fix.RepoCollateralSecurityType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RepoCollateralSecurityType", HFILL }
-        },
-        { &hf_fix_RedemptionDate,
-            { "RedemptionDate (240)", "fix.RedemptionDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RedemptionDate", HFILL }
-        },
-        { &hf_fix_UnderlyingCouponPaymentDate,
-            { "UnderlyingCouponPaymentDate (241)", "fix.UnderlyingCouponPaymentDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingCouponPaymentDate", HFILL }
-        },
-        { &hf_fix_UnderlyingIssueDate,
-            { "UnderlyingIssueDate (242)", "fix.UnderlyingIssueDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingIssueDate", HFILL }
-        },
-        { &hf_fix_UnderlyingRepoCollateralSecurityType,
-            { "UnderlyingRepoCollateralSecurityType (243)", "fix.UnderlyingRepoCollateralSecurityType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingRepoCollateralSecurityType", HFILL }
-        },
-        { &hf_fix_UnderlyingRepurchaseTerm,
-            { "UnderlyingRepurchaseTerm (244)", "fix.UnderlyingRepurchaseTerm",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingRepurchaseTerm", HFILL }
-        },
-        { &hf_fix_UnderlyingRepurchaseRate,
-            { "UnderlyingRepurchaseRate (245)", "fix.UnderlyingRepurchaseRate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingRepurchaseRate", HFILL }
-        },
-        { &hf_fix_UnderlyingFactor,
-            { "UnderlyingFactor (246)", "fix.UnderlyingFactor",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingFactor", HFILL }
-        },
-        { &hf_fix_UnderlyingRedemptionDate,
-            { "UnderlyingRedemptionDate (247)", "fix.UnderlyingRedemptionDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingRedemptionDate", HFILL }
-        },
-        { &hf_fix_LegCouponPaymentDate,
-            { "LegCouponPaymentDate (248)", "fix.LegCouponPaymentDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegCouponPaymentDate", HFILL }
-        },
-        { &hf_fix_LegIssueDate,
-            { "LegIssueDate (249)", "fix.LegIssueDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegIssueDate", HFILL }
-        },
-        { &hf_fix_LegRepoCollateralSecurityType,
-            { "LegRepoCollateralSecurityType (250)", "fix.LegRepoCollateralSecurityType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegRepoCollateralSecurityType", HFILL }
-        },
-        { &hf_fix_LegRepurchaseTerm,
-            { "LegRepurchaseTerm (251)", "fix.LegRepurchaseTerm",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegRepurchaseTerm", HFILL }
-        },
-        { &hf_fix_LegRepurchaseRate,
-            { "LegRepurchaseRate (252)", "fix.LegRepurchaseRate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegRepurchaseRate", HFILL }
-        },
-        { &hf_fix_LegFactor,
-            { "LegFactor (253)", "fix.LegFactor",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegFactor", HFILL }
-        },
-        { &hf_fix_LegRedemptionDate,
-            { "LegRedemptionDate (254)", "fix.LegRedemptionDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegRedemptionDate", HFILL }
-        },
-        { &hf_fix_CreditRating,
-            { "CreditRating (255)", "fix.CreditRating",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CreditRating", HFILL }
-        },
-        { &hf_fix_UnderlyingCreditRating,
-            { "UnderlyingCreditRating (256)", "fix.UnderlyingCreditRating",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingCreditRating", HFILL }
-        },
-        { &hf_fix_LegCreditRating,
-            { "LegCreditRating (257)", "fix.LegCreditRating",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegCreditRating", HFILL }
-        },
-        { &hf_fix_TradedFlatSwitch,
-            { "TradedFlatSwitch (258)", "fix.TradedFlatSwitch",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradedFlatSwitch", HFILL }
-        },
-        { &hf_fix_BasisFeatureDate,
-            { "BasisFeatureDate (259)", "fix.BasisFeatureDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BasisFeatureDate", HFILL }
-        },
-        { &hf_fix_BasisFeaturePrice,
-            { "BasisFeaturePrice (260)", "fix.BasisFeaturePrice",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BasisFeaturePrice", HFILL }
-        },
-        { &hf_fix_ReservedAllocated,
-            { "ReservedAllocated (261)", "fix.ReservedAllocated",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ReservedAllocated", HFILL }
-        },
-        { &hf_fix_MDReqID,
-            { "MDReqID (262)", "fix.MDReqID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MDReqID", HFILL }
-        },
-        { &hf_fix_SubscriptionRequestType,
-            { "SubscriptionRequestType (263)", "fix.SubscriptionRequestType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SubscriptionRequestType", HFILL }
-        },
-        { &hf_fix_MarketDepth,
-            { "MarketDepth (264)", "fix.MarketDepth",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MarketDepth", HFILL }
-        },
-        { &hf_fix_MDUpdateType,
-            { "MDUpdateType (265)", "fix.MDUpdateType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MDUpdateType", HFILL }
-        },
-        { &hf_fix_AggregatedBook,
-            { "AggregatedBook (266)", "fix.AggregatedBook",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AggregatedBook", HFILL }
-        },
-        { &hf_fix_NoMDEntryTypes,
-            { "NoMDEntryTypes (267)", "fix.NoMDEntryTypes",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoMDEntryTypes", HFILL }
-        },
-        { &hf_fix_NoMDEntries,
-            { "NoMDEntries (268)", "fix.NoMDEntries",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoMDEntries", HFILL }
-        },
-        { &hf_fix_MDEntryType,
-            { "MDEntryType (269)", "fix.MDEntryType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MDEntryType", HFILL }
-        },
-        { &hf_fix_MDEntryPx,
-            { "MDEntryPx (270)", "fix.MDEntryPx",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MDEntryPx", HFILL }
-        },
-        { &hf_fix_MDEntrySize,
-            { "MDEntrySize (271)", "fix.MDEntrySize",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MDEntrySize", HFILL }
-        },
-        { &hf_fix_MDEntryDate,
-            { "MDEntryDate (272)", "fix.MDEntryDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MDEntryDate", HFILL }
-        },
-        { &hf_fix_MDEntryTime,
-            { "MDEntryTime (273)", "fix.MDEntryTime",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MDEntryTime", HFILL }
-        },
-        { &hf_fix_TickDirection,
-            { "TickDirection (274)", "fix.TickDirection",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TickDirection", HFILL }
-        },
-        { &hf_fix_MDMkt,
-            { "MDMkt (275)", "fix.MDMkt",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MDMkt", HFILL }
-        },
-        { &hf_fix_QuoteCondition,
-            { "QuoteCondition (276)", "fix.QuoteCondition",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "QuoteCondition", HFILL }
-        },
-        { &hf_fix_TradeCondition,
-            { "TradeCondition (277)", "fix.TradeCondition",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradeCondition", HFILL }
-        },
-        { &hf_fix_MDEntryID,
-            { "MDEntryID (278)", "fix.MDEntryID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MDEntryID", HFILL }
-        },
-        { &hf_fix_MDUpdateAction,
-            { "MDUpdateAction (279)", "fix.MDUpdateAction",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MDUpdateAction", HFILL }
-        },
-        { &hf_fix_MDEntryRefID,
-            { "MDEntryRefID (280)", "fix.MDEntryRefID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MDEntryRefID", HFILL }
-        },
-        { &hf_fix_MDReqRejReason,
-            { "MDReqRejReason (281)", "fix.MDReqRejReason",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MDReqRejReason", HFILL }
-        },
-        { &hf_fix_MDEntryOriginator,
-            { "MDEntryOriginator (282)", "fix.MDEntryOriginator",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MDEntryOriginator", HFILL }
-        },
-        { &hf_fix_LocationID,
-            { "LocationID (283)", "fix.LocationID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LocationID", HFILL }
-        },
-        { &hf_fix_DeskID,
-            { "DeskID (284)", "fix.DeskID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "DeskID", HFILL }
-        },
-        { &hf_fix_DeleteReason,
-            { "DeleteReason (285)", "fix.DeleteReason",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "DeleteReason", HFILL }
-        },
-        { &hf_fix_OpenCloseSettleFlag,
-            { "OpenCloseSettleFlag (286)", "fix.OpenCloseSettleFlag",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OpenCloseSettleFlag", HFILL }
-        },
-        { &hf_fix_SellerDays,
-            { "SellerDays (287)", "fix.SellerDays",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SellerDays", HFILL }
-        },
-        { &hf_fix_MDEntryBuyer,
-            { "MDEntryBuyer (288)", "fix.MDEntryBuyer",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MDEntryBuyer", HFILL }
-        },
-        { &hf_fix_MDEntrySeller,
-            { "MDEntrySeller (289)", "fix.MDEntrySeller",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MDEntrySeller", HFILL }
-        },
-        { &hf_fix_MDEntryPositionNo,
-            { "MDEntryPositionNo (290)", "fix.MDEntryPositionNo",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MDEntryPositionNo", HFILL }
-        },
-        { &hf_fix_FinancialStatus,
-            { "FinancialStatus (291)", "fix.FinancialStatus",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "FinancialStatus", HFILL }
-        },
-        { &hf_fix_CorporateAction,
-            { "CorporateAction (292)", "fix.CorporateAction",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CorporateAction", HFILL }
-        },
-        { &hf_fix_DefBidSize,
-            { "DefBidSize (293)", "fix.DefBidSize",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "DefBidSize", HFILL }
-        },
-        { &hf_fix_DefOfferSize,
-            { "DefOfferSize (294)", "fix.DefOfferSize",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "DefOfferSize", HFILL }
-        },
-        { &hf_fix_NoQuoteEntries,
-            { "NoQuoteEntries (295)", "fix.NoQuoteEntries",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoQuoteEntries", HFILL }
-        },
-        { &hf_fix_NoQuoteSets,
-            { "NoQuoteSets (296)", "fix.NoQuoteSets",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoQuoteSets", HFILL }
-        },
-        { &hf_fix_QuoteStatus,
-            { "QuoteStatus (297)", "fix.QuoteStatus",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "QuoteStatus", HFILL }
-        },
-        { &hf_fix_QuoteCancelType,
-            { "QuoteCancelType (298)", "fix.QuoteCancelType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "QuoteCancelType", HFILL }
-        },
-        { &hf_fix_QuoteEntryID,
-            { "QuoteEntryID (299)", "fix.QuoteEntryID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "QuoteEntryID", HFILL }
-        },
-        { &hf_fix_QuoteRejectReason,
-            { "QuoteRejectReason (300)", "fix.QuoteRejectReason",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "QuoteRejectReason", HFILL }
-        },
-        { &hf_fix_QuoteResponseLevel,
-            { "QuoteResponseLevel (301)", "fix.QuoteResponseLevel",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "QuoteResponseLevel", HFILL }
-        },
-        { &hf_fix_QuoteSetID,
-            { "QuoteSetID (302)", "fix.QuoteSetID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "QuoteSetID", HFILL }
-        },
-        { &hf_fix_QuoteRequestType,
-            { "QuoteRequestType (303)", "fix.QuoteRequestType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "QuoteRequestType", HFILL }
-        },
-        { &hf_fix_TotQuoteEntries,
-            { "TotQuoteEntries (304)", "fix.TotQuoteEntries",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TotQuoteEntries", HFILL }
-        },
-        { &hf_fix_UnderlyingSecurityIDSource,
-            { "UnderlyingSecurityIDSource (305)", "fix.UnderlyingSecurityIDSource",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingSecurityIDSource", HFILL }
-        },
-        { &hf_fix_UnderlyingIssuer,
-            { "UnderlyingIssuer (306)", "fix.UnderlyingIssuer",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingIssuer", HFILL }
-        },
-        { &hf_fix_UnderlyingSecurityDesc,
-            { "UnderlyingSecurityDesc (307)", "fix.UnderlyingSecurityDesc",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingSecurityDesc", HFILL }
-        },
-        { &hf_fix_UnderlyingSecurityExchange,
-            { "UnderlyingSecurityExchange (308)", "fix.UnderlyingSecurityExchange",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingSecurityExchange", HFILL }
-        },
-        { &hf_fix_UnderlyingSecurityID,
-            { "UnderlyingSecurityID (309)", "fix.UnderlyingSecurityID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingSecurityID", HFILL }
-        },
-        { &hf_fix_UnderlyingSecurityType,
-            { "UnderlyingSecurityType (310)", "fix.UnderlyingSecurityType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingSecurityType", HFILL }
-        },
-        { &hf_fix_UnderlyingSymbol,
-            { "UnderlyingSymbol (311)", "fix.UnderlyingSymbol",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingSymbol", HFILL }
-        },
-        { &hf_fix_UnderlyingSymbolSfx,
-            { "UnderlyingSymbolSfx (312)", "fix.UnderlyingSymbolSfx",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingSymbolSfx", HFILL }
-        },
-        { &hf_fix_UnderlyingMaturityMonthYear,
-            { "UnderlyingMaturityMonthYear (313)", "fix.UnderlyingMaturityMonthYear",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingMaturityMonthYear", HFILL }
-        },
-        { &hf_fix_UnderlyingMaturityDay,
-            { "UnderlyingMaturityDay (314)", "fix.UnderlyingMaturityDay",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingMaturityDay", HFILL }
-        },
-        { &hf_fix_UnderlyingPutOrCall,
-            { "UnderlyingPutOrCall (315)", "fix.UnderlyingPutOrCall",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingPutOrCall", HFILL }
-        },
-        { &hf_fix_UnderlyingStrikePrice,
-            { "UnderlyingStrikePrice (316)", "fix.UnderlyingStrikePrice",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingStrikePrice", HFILL }
-        },
-        { &hf_fix_UnderlyingOptAttribute,
-            { "UnderlyingOptAttribute (317)", "fix.UnderlyingOptAttribute",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingOptAttribute", HFILL }
-        },
-        { &hf_fix_Underlying,
-            { "Underlying (318)", "fix.Underlying",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Underlying", HFILL }
-        },
-        { &hf_fix_RatioQty,
-            { "RatioQty (319)", "fix.RatioQty",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RatioQty", HFILL }
-        },
-        { &hf_fix_SecurityReqID,
-            { "SecurityReqID (320)", "fix.SecurityReqID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecurityReqID", HFILL }
-        },
-        { &hf_fix_SecurityRequestType,
-            { "SecurityRequestType (321)", "fix.SecurityRequestType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecurityRequestType", HFILL }
-        },
-        { &hf_fix_SecurityResponseID,
-            { "SecurityResponseID (322)", "fix.SecurityResponseID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecurityResponseID", HFILL }
-        },
-        { &hf_fix_SecurityResponseType,
-            { "SecurityResponseType (323)", "fix.SecurityResponseType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecurityResponseType", HFILL }
-        },
-        { &hf_fix_SecurityStatusReqID,
-            { "SecurityStatusReqID (324)", "fix.SecurityStatusReqID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecurityStatusReqID", HFILL }
-        },
-        { &hf_fix_UnsolicitedIndicator,
-            { "UnsolicitedIndicator (325)", "fix.UnsolicitedIndicator",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnsolicitedIndicator", HFILL }
-        },
-        { &hf_fix_SecurityTradingStatus,
-            { "SecurityTradingStatus (326)", "fix.SecurityTradingStatus",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecurityTradingStatus", HFILL }
-        },
-        { &hf_fix_HaltReason,
-            { "HaltReason (327)", "fix.HaltReason",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "HaltReason", HFILL }
-        },
-        { &hf_fix_InViewOfCommon,
-            { "InViewOfCommon (328)", "fix.InViewOfCommon",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "InViewOfCommon", HFILL }
-        },
-        { &hf_fix_DueToRelated,
-            { "DueToRelated (329)", "fix.DueToRelated",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "DueToRelated", HFILL }
-        },
-        { &hf_fix_BuyVolume,
-            { "BuyVolume (330)", "fix.BuyVolume",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BuyVolume", HFILL }
-        },
-        { &hf_fix_SellVolume,
-            { "SellVolume (331)", "fix.SellVolume",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SellVolume", HFILL }
-        },
-        { &hf_fix_HighPx,
-            { "HighPx (332)", "fix.HighPx",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "HighPx", HFILL }
-        },
-        { &hf_fix_LowPx,
-            { "LowPx (333)", "fix.LowPx",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LowPx", HFILL }
-        },
-        { &hf_fix_Adjustment,
-            { "Adjustment (334)", "fix.Adjustment",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Adjustment", HFILL }
-        },
-        { &hf_fix_TradSesReqID,
-            { "TradSesReqID (335)", "fix.TradSesReqID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradSesReqID", HFILL }
-        },
-        { &hf_fix_TradingSessionID,
-            { "TradingSessionID (336)", "fix.TradingSessionID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradingSessionID", HFILL }
-        },
-        { &hf_fix_ContraTrader,
-            { "ContraTrader (337)", "fix.ContraTrader",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ContraTrader", HFILL }
-        },
-        { &hf_fix_TradSesMethod,
-            { "TradSesMethod (338)", "fix.TradSesMethod",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradSesMethod", HFILL }
-        },
-        { &hf_fix_TradSesMode,
-            { "TradSesMode (339)", "fix.TradSesMode",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradSesMode", HFILL }
-        },
-        { &hf_fix_TradSesStatus,
-            { "TradSesStatus (340)", "fix.TradSesStatus",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradSesStatus", HFILL }
-        },
-        { &hf_fix_TradSesStartTime,
-            { "TradSesStartTime (341)", "fix.TradSesStartTime",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradSesStartTime", HFILL }
-        },
-        { &hf_fix_TradSesOpenTime,
-            { "TradSesOpenTime (342)", "fix.TradSesOpenTime",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradSesOpenTime", HFILL }
-        },
-        { &hf_fix_TradSesPreCloseTime,
-            { "TradSesPreCloseTime (343)", "fix.TradSesPreCloseTime",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradSesPreCloseTime", HFILL }
-        },
-        { &hf_fix_TradSesCloseTime,
-            { "TradSesCloseTime (344)", "fix.TradSesCloseTime",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradSesCloseTime", HFILL }
-        },
-        { &hf_fix_TradSesEndTime,
-            { "TradSesEndTime (345)", "fix.TradSesEndTime",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradSesEndTime", HFILL }
-        },
-        { &hf_fix_NumberOfOrders,
-            { "NumberOfOrders (346)", "fix.NumberOfOrders",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NumberOfOrders", HFILL }
-        },
-        { &hf_fix_MessageEncoding,
-            { "MessageEncoding (347)", "fix.MessageEncoding",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MessageEncoding", HFILL }
-        },
-        { &hf_fix_EncodedIssuerLen,
-            { "EncodedIssuerLen (348)", "fix.EncodedIssuerLen",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedIssuerLen", HFILL }
-        },
-        { &hf_fix_EncodedIssuer,
-            { "EncodedIssuer (349)", "fix.EncodedIssuer",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedIssuer", HFILL }
-        },
-        { &hf_fix_EncodedSecurityDescLen,
-            { "EncodedSecurityDescLen (350)", "fix.EncodedSecurityDescLen",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedSecurityDescLen", HFILL }
-        },
-        { &hf_fix_EncodedSecurityDesc,
-            { "EncodedSecurityDesc (351)", "fix.EncodedSecurityDesc",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedSecurityDesc", HFILL }
-        },
-        { &hf_fix_EncodedListExecInstLen,
-            { "EncodedListExecInstLen (352)", "fix.EncodedListExecInstLen",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedListExecInstLen", HFILL }
-        },
-        { &hf_fix_EncodedListExecInst,
-            { "EncodedListExecInst (353)", "fix.EncodedListExecInst",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedListExecInst", HFILL }
-        },
-        { &hf_fix_EncodedTextLen,
-            { "EncodedTextLen (354)", "fix.EncodedTextLen",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedTextLen", HFILL }
-        },
-        { &hf_fix_EncodedText,
-            { "EncodedText (355)", "fix.EncodedText",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedText", HFILL }
-        },
-        { &hf_fix_EncodedSubjectLen,
-            { "EncodedSubjectLen (356)", "fix.EncodedSubjectLen",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedSubjectLen", HFILL }
-        },
-        { &hf_fix_EncodedSubject,
-            { "EncodedSubject (357)", "fix.EncodedSubject",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedSubject", HFILL }
-        },
-        { &hf_fix_EncodedHeadlineLen,
-            { "EncodedHeadlineLen (358)", "fix.EncodedHeadlineLen",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedHeadlineLen", HFILL }
-        },
-        { &hf_fix_EncodedHeadline,
-            { "EncodedHeadline (359)", "fix.EncodedHeadline",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedHeadline", HFILL }
-        },
-        { &hf_fix_EncodedAllocTextLen,
-            { "EncodedAllocTextLen (360)", "fix.EncodedAllocTextLen",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedAllocTextLen", HFILL }
-        },
-        { &hf_fix_EncodedAllocText,
-            { "EncodedAllocText (361)", "fix.EncodedAllocText",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedAllocText", HFILL }
-        },
-        { &hf_fix_EncodedUnderlyingIssuerLen,
-            { "EncodedUnderlyingIssuerLen (362)", "fix.EncodedUnderlyingIssuerLen",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedUnderlyingIssuerLen", HFILL }
-        },
-        { &hf_fix_EncodedUnderlyingIssuer,
-            { "EncodedUnderlyingIssuer (363)", "fix.EncodedUnderlyingIssuer",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedUnderlyingIssuer", HFILL }
-        },
-        { &hf_fix_EncodedUnderlyingSecurityDescLen,
-            { "EncodedUnderlyingSecurityDescLen (364)", "fix.EncodedUnderlyingSecurityDescLen",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedUnderlyingSecurityDescLen", HFILL }
-        },
-        { &hf_fix_EncodedUnderlyingSecurityDesc,
-            { "EncodedUnderlyingSecurityDesc (365)", "fix.EncodedUnderlyingSecurityDesc",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedUnderlyingSecurityDesc", HFILL }
-        },
-        { &hf_fix_AllocPrice,
-            { "AllocPrice (366)", "fix.AllocPrice",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AllocPrice", HFILL }
-        },
-        { &hf_fix_QuoteSetValidUntilTime,
-            { "QuoteSetValidUntilTime (367)", "fix.QuoteSetValidUntilTime",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "QuoteSetValidUntilTime", HFILL }
-        },
-        { &hf_fix_QuoteEntryRejectReason,
-            { "QuoteEntryRejectReason (368)", "fix.QuoteEntryRejectReason",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "QuoteEntryRejectReason", HFILL }
-        },
-        { &hf_fix_LastMsgSeqNumProcessed,
-            { "LastMsgSeqNumProcessed (369)", "fix.LastMsgSeqNumProcessed",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LastMsgSeqNumProcessed", HFILL }
-        },
-        { &hf_fix_OnBehalfOfSendingTime,
-            { "OnBehalfOfSendingTime (370)", "fix.OnBehalfOfSendingTime",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OnBehalfOfSendingTime", HFILL }
-        },
-        { &hf_fix_RefTagID,
-            { "RefTagID (371)", "fix.RefTagID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RefTagID", HFILL }
-        },
-        { &hf_fix_RefMsgType,
-            { "RefMsgType (372)", "fix.RefMsgType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RefMsgType", HFILL }
-        },
-        { &hf_fix_SessionRejectReason,
-            { "SessionRejectReason (373)", "fix.SessionRejectReason",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SessionRejectReason", HFILL }
-        },
-        { &hf_fix_BidRequestTransType,
-            { "BidRequestTransType (374)", "fix.BidRequestTransType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BidRequestTransType", HFILL }
-        },
-        { &hf_fix_ContraBroker,
-            { "ContraBroker (375)", "fix.ContraBroker",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ContraBroker", HFILL }
-        },
-        { &hf_fix_ComplianceID,
-            { "ComplianceID (376)", "fix.ComplianceID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ComplianceID", HFILL }
-        },
-        { &hf_fix_SolicitedFlag,
-            { "SolicitedFlag (377)", "fix.SolicitedFlag",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SolicitedFlag", HFILL }
-        },
-        { &hf_fix_ExecRestatementReason,
-            { "ExecRestatementReason (378)", "fix.ExecRestatementReason",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ExecRestatementReason", HFILL }
-        },
-        { &hf_fix_BusinessRejectRefID,
-            { "BusinessRejectRefID (379)", "fix.BusinessRejectRefID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BusinessRejectRefID", HFILL }
-        },
-        { &hf_fix_BusinessRejectReason,
-            { "BusinessRejectReason (380)", "fix.BusinessRejectReason",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BusinessRejectReason", HFILL }
-        },
-        { &hf_fix_GrossTradeAmt,
-            { "GrossTradeAmt (381)", "fix.GrossTradeAmt",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "GrossTradeAmt", HFILL }
-        },
-        { &hf_fix_NoContraBrokers,
-            { "NoContraBrokers (382)", "fix.NoContraBrokers",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoContraBrokers", HFILL }
-        },
-        { &hf_fix_MaxMessageSize,
-            { "MaxMessageSize (383)", "fix.MaxMessageSize",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MaxMessageSize", HFILL }
-        },
-        { &hf_fix_NoMsgTypes,
-            { "NoMsgTypes (384)", "fix.NoMsgTypes",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoMsgTypes", HFILL }
-        },
-        { &hf_fix_MsgDirection,
-            { "MsgDirection (385)", "fix.MsgDirection",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MsgDirection", HFILL }
-        },
-        { &hf_fix_NoTradingSessions,
-            { "NoTradingSessions (386)", "fix.NoTradingSessions",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoTradingSessions", HFILL }
-        },
-        { &hf_fix_TotalVolumeTraded,
-            { "TotalVolumeTraded (387)", "fix.TotalVolumeTraded",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TotalVolumeTraded", HFILL }
-        },
-        { &hf_fix_DiscretionInst,
-            { "DiscretionInst (388)", "fix.DiscretionInst",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "DiscretionInst", HFILL }
-        },
-        { &hf_fix_DiscretionOffset,
-            { "DiscretionOffset (389)", "fix.DiscretionOffset",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "DiscretionOffset", HFILL }
-        },
-        { &hf_fix_BidID,
-            { "BidID (390)", "fix.BidID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BidID", HFILL }
-        },
-        { &hf_fix_ClientBidID,
-            { "ClientBidID (391)", "fix.ClientBidID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ClientBidID", HFILL }
-        },
-        { &hf_fix_ListName,
-            { "ListName (392)", "fix.ListName",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ListName", HFILL }
-        },
-        { &hf_fix_TotalNumSecurities,
-            { "TotalNumSecurities (393)", "fix.TotalNumSecurities",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TotalNumSecurities", HFILL }
-        },
-        { &hf_fix_BidType,
-            { "BidType (394)", "fix.BidType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BidType", HFILL }
-        },
-        { &hf_fix_NumTickets,
-            { "NumTickets (395)", "fix.NumTickets",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NumTickets", HFILL }
-        },
-        { &hf_fix_SideValue1,
-            { "SideValue1 (396)", "fix.SideValue1",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SideValue1", HFILL }
-        },
-        { &hf_fix_SideValue2,
-            { "SideValue2 (397)", "fix.SideValue2",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SideValue2", HFILL }
-        },
-        { &hf_fix_NoBidDescriptors,
-            { "NoBidDescriptors (398)", "fix.NoBidDescriptors",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoBidDescriptors", HFILL }
-        },
-        { &hf_fix_BidDescriptorType,
-            { "BidDescriptorType (399)", "fix.BidDescriptorType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BidDescriptorType", HFILL }
-        },
-        { &hf_fix_BidDescriptor,
-            { "BidDescriptor (400)", "fix.BidDescriptor",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BidDescriptor", HFILL }
-        },
-        { &hf_fix_SideValueInd,
-            { "SideValueInd (401)", "fix.SideValueInd",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SideValueInd", HFILL }
-        },
-        { &hf_fix_LiquidityPctLow,
-            { "LiquidityPctLow (402)", "fix.LiquidityPctLow",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LiquidityPctLow", HFILL }
-        },
-        { &hf_fix_LiquidityPctHigh,
-            { "LiquidityPctHigh (403)", "fix.LiquidityPctHigh",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LiquidityPctHigh", HFILL }
-        },
-        { &hf_fix_LiquidityValue,
-            { "LiquidityValue (404)", "fix.LiquidityValue",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LiquidityValue", HFILL }
-        },
-        { &hf_fix_EFPTrackingError,
-            { "EFPTrackingError (405)", "fix.EFPTrackingError",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EFPTrackingError", HFILL }
-        },
-        { &hf_fix_FairValue,
-            { "FairValue (406)", "fix.FairValue",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "FairValue", HFILL }
-        },
-        { &hf_fix_OutsideIndexPct,
-            { "OutsideIndexPct (407)", "fix.OutsideIndexPct",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OutsideIndexPct", HFILL }
-        },
-        { &hf_fix_ValueOfFutures,
-            { "ValueOfFutures (408)", "fix.ValueOfFutures",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ValueOfFutures", HFILL }
-        },
-        { &hf_fix_LiquidityIndType,
-            { "LiquidityIndType (409)", "fix.LiquidityIndType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LiquidityIndType", HFILL }
-        },
-        { &hf_fix_WtAverageLiquidity,
-            { "WtAverageLiquidity (410)", "fix.WtAverageLiquidity",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "WtAverageLiquidity", HFILL }
-        },
-        { &hf_fix_ExchangeForPhysical,
-            { "ExchangeForPhysical (411)", "fix.ExchangeForPhysical",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ExchangeForPhysical", HFILL }
-        },
-        { &hf_fix_OutMainCntryUIndex,
-            { "OutMainCntryUIndex (412)", "fix.OutMainCntryUIndex",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OutMainCntryUIndex", HFILL }
-        },
-        { &hf_fix_CrossPercent,
-            { "CrossPercent (413)", "fix.CrossPercent",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CrossPercent", HFILL }
-        },
-        { &hf_fix_ProgRptReqs,
-            { "ProgRptReqs (414)", "fix.ProgRptReqs",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ProgRptReqs", HFILL }
-        },
-        { &hf_fix_ProgPeriodInterval,
-            { "ProgPeriodInterval (415)", "fix.ProgPeriodInterval",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ProgPeriodInterval", HFILL }
-        },
-        { &hf_fix_IncTaxInd,
-            { "IncTaxInd (416)", "fix.IncTaxInd",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "IncTaxInd", HFILL }
-        },
-        { &hf_fix_NumBidders,
-            { "NumBidders (417)", "fix.NumBidders",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NumBidders", HFILL }
-        },
-        { &hf_fix_TradeType,
-            { "TradeType (418)", "fix.TradeType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradeType", HFILL }
-        },
-        { &hf_fix_BasisPxType,
-            { "BasisPxType (419)", "fix.BasisPxType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BasisPxType", HFILL }
-        },
-        { &hf_fix_NoBidComponents,
-            { "NoBidComponents (420)", "fix.NoBidComponents",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoBidComponents", HFILL }
-        },
-        { &hf_fix_Country,
-            { "Country (421)", "fix.Country",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Country", HFILL }
-        },
-        { &hf_fix_TotNoStrikes,
-            { "TotNoStrikes (422)", "fix.TotNoStrikes",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TotNoStrikes", HFILL }
-        },
-        { &hf_fix_PriceType,
-            { "PriceType (423)", "fix.PriceType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "PriceType", HFILL }
-        },
-        { &hf_fix_DayOrderQty,
-            { "DayOrderQty (424)", "fix.DayOrderQty",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "DayOrderQty", HFILL }
-        },
-        { &hf_fix_DayCumQty,
-            { "DayCumQty (425)", "fix.DayCumQty",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "DayCumQty", HFILL }
-        },
-        { &hf_fix_DayAvgPx,
-            { "DayAvgPx (426)", "fix.DayAvgPx",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "DayAvgPx", HFILL }
-        },
-        { &hf_fix_GTBookingInst,
-            { "GTBookingInst (427)", "fix.GTBookingInst",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "GTBookingInst", HFILL }
-        },
-        { &hf_fix_NoStrikes,
-            { "NoStrikes (428)", "fix.NoStrikes",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoStrikes", HFILL }
-        },
-        { &hf_fix_ListStatusType,
-            { "ListStatusType (429)", "fix.ListStatusType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ListStatusType", HFILL }
-        },
-        { &hf_fix_NetGrossInd,
-            { "NetGrossInd (430)", "fix.NetGrossInd",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NetGrossInd", HFILL }
-        },
-        { &hf_fix_ListOrderStatus,
-            { "ListOrderStatus (431)", "fix.ListOrderStatus",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ListOrderStatus", HFILL }
-        },
-        { &hf_fix_ExpireDate,
-            { "ExpireDate (432)", "fix.ExpireDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ExpireDate", HFILL }
-        },
-        { &hf_fix_ListExecInstType,
-            { "ListExecInstType (433)", "fix.ListExecInstType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ListExecInstType", HFILL }
-        },
-        { &hf_fix_CxlRejResponseTo,
-            { "CxlRejResponseTo (434)", "fix.CxlRejResponseTo",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CxlRejResponseTo", HFILL }
-        },
-        { &hf_fix_UnderlyingCouponRate,
-            { "UnderlyingCouponRate (435)", "fix.UnderlyingCouponRate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingCouponRate", HFILL }
-        },
-        { &hf_fix_UnderlyingContractMultiplier,
-            { "UnderlyingContractMultiplier (436)", "fix.UnderlyingContractMultiplier",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingContractMultiplier", HFILL }
-        },
-        { &hf_fix_ContraTradeQty,
-            { "ContraTradeQty (437)", "fix.ContraTradeQty",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ContraTradeQty", HFILL }
-        },
-        { &hf_fix_ContraTradeTime,
-            { "ContraTradeTime (438)", "fix.ContraTradeTime",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ContraTradeTime", HFILL }
-        },
-        { &hf_fix_ClearingFirm,
-            { "ClearingFirm (439)", "fix.ClearingFirm",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ClearingFirm", HFILL }
-        },
-        { &hf_fix_ClearingAccount,
-            { "ClearingAccount (440)", "fix.ClearingAccount",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ClearingAccount", HFILL }
-        },
-        { &hf_fix_LiquidityNumSecurities,
-            { "LiquidityNumSecurities (441)", "fix.LiquidityNumSecurities",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LiquidityNumSecurities", HFILL }
-        },
-        { &hf_fix_MultiLegReportingType,
-            { "MultiLegReportingType (442)", "fix.MultiLegReportingType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MultiLegReportingType", HFILL }
-        },
-        { &hf_fix_StrikeTime,
-            { "StrikeTime (443)", "fix.StrikeTime",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "StrikeTime", HFILL }
-        },
-        { &hf_fix_ListStatusText,
-            { "ListStatusText (444)", "fix.ListStatusText",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ListStatusText", HFILL }
-        },
-        { &hf_fix_EncodedListStatusTextLen,
-            { "EncodedListStatusTextLen (445)", "fix.EncodedListStatusTextLen",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedListStatusTextLen", HFILL }
-        },
-        { &hf_fix_EncodedListStatusText,
-            { "EncodedListStatusText (446)", "fix.EncodedListStatusText",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedListStatusText", HFILL }
-        },
-        { &hf_fix_PartyIDSource,
-            { "PartyIDSource (447)", "fix.PartyIDSource",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "PartyIDSource", HFILL }
-        },
-        { &hf_fix_PartyID,
-            { "PartyID (448)", "fix.PartyID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "PartyID", HFILL }
-        },
-        { &hf_fix_TotalVolumeTradedDate,
-            { "TotalVolumeTradedDate (449)", "fix.TotalVolumeTradedDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TotalVolumeTradedDate", HFILL }
-        },
-        { &hf_fix_TotalVolumeTradedTime,
-            { "TotalVolumeTradedTime (450)", "fix.TotalVolumeTradedTime",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TotalVolumeTradedTime", HFILL }
-        },
-        { &hf_fix_NetChgPrevDay,
-            { "NetChgPrevDay (451)", "fix.NetChgPrevDay",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NetChgPrevDay", HFILL }
-        },
-        { &hf_fix_PartyRole,
-            { "PartyRole (452)", "fix.PartyRole",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "PartyRole", HFILL }
-        },
-        { &hf_fix_NoPartyIDs,
-            { "NoPartyIDs (453)", "fix.NoPartyIDs",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoPartyIDs", HFILL }
-        },
-        { &hf_fix_NoSecurityAltID,
-            { "NoSecurityAltID (454)", "fix.NoSecurityAltID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoSecurityAltID", HFILL }
-        },
-        { &hf_fix_SecurityAltID,
-            { "SecurityAltID (455)", "fix.SecurityAltID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecurityAltID", HFILL }
-        },
-        { &hf_fix_SecurityAltIDSource,
-            { "SecurityAltIDSource (456)", "fix.SecurityAltIDSource",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecurityAltIDSource", HFILL }
-        },
-        { &hf_fix_NoUnderlyingSecurityAltID,
-            { "NoUnderlyingSecurityAltID (457)", "fix.NoUnderlyingSecurityAltID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoUnderlyingSecurityAltID", HFILL }
-        },
-        { &hf_fix_UnderlyingSecurityAltID,
-            { "UnderlyingSecurityAltID (458)", "fix.UnderlyingSecurityAltID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingSecurityAltID", HFILL }
-        },
-        { &hf_fix_UnderlyingSecurityAltIDSource,
-            { "UnderlyingSecurityAltIDSource (459)", "fix.UnderlyingSecurityAltIDSource",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingSecurityAltIDSource", HFILL }
-        },
-        { &hf_fix_Product,
-            { "Product (460)", "fix.Product",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Product", HFILL }
-        },
-        { &hf_fix_CFICode,
-            { "CFICode (461)", "fix.CFICode",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CFICode", HFILL }
-        },
-        { &hf_fix_UnderlyingProduct,
-            { "UnderlyingProduct (462)", "fix.UnderlyingProduct",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingProduct", HFILL }
-        },
-        { &hf_fix_UnderlyingCFICode,
-            { "UnderlyingCFICode (463)", "fix.UnderlyingCFICode",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingCFICode", HFILL }
-        },
-        { &hf_fix_TestMessageIndicator,
-            { "TestMessageIndicator (464)", "fix.TestMessageIndicator",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TestMessageIndicator", HFILL }
-        },
-        { &hf_fix_QuantityType,
-            { "QuantityType (465)", "fix.QuantityType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "QuantityType", HFILL }
-        },
-        { &hf_fix_BookingRefID,
-            { "BookingRefID (466)", "fix.BookingRefID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BookingRefID", HFILL }
-        },
-        { &hf_fix_IndividualAllocID,
-            { "IndividualAllocID (467)", "fix.IndividualAllocID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "IndividualAllocID", HFILL }
-        },
-        { &hf_fix_RoundingDirection,
-            { "RoundingDirection (468)", "fix.RoundingDirection",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RoundingDirection", HFILL }
-        },
-        { &hf_fix_RoundingModulus,
-            { "RoundingModulus (469)", "fix.RoundingModulus",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RoundingModulus", HFILL }
-        },
-        { &hf_fix_CountryOfIssue,
-            { "CountryOfIssue (470)", "fix.CountryOfIssue",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CountryOfIssue", HFILL }
-        },
-        { &hf_fix_StateOrProvinceOfIssue,
-            { "StateOrProvinceOfIssue (471)", "fix.StateOrProvinceOfIssue",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "StateOrProvinceOfIssue", HFILL }
-        },
-        { &hf_fix_LocaleOfIssue,
-            { "LocaleOfIssue (472)", "fix.LocaleOfIssue",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LocaleOfIssue", HFILL }
-        },
-        { &hf_fix_NoRegistDtls,
-            { "NoRegistDtls (473)", "fix.NoRegistDtls",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoRegistDtls", HFILL }
-        },
-        { &hf_fix_MailingDtls,
-            { "MailingDtls (474)", "fix.MailingDtls",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MailingDtls", HFILL }
-        },
-        { &hf_fix_InvestorCountryOfResidence,
-            { "InvestorCountryOfResidence (475)", "fix.InvestorCountryOfResidence",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "InvestorCountryOfResidence", HFILL }
-        },
-        { &hf_fix_PaymentRef,
-            { "PaymentRef (476)", "fix.PaymentRef",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "PaymentRef", HFILL }
-        },
-        { &hf_fix_DistribPaymentMethod,
-            { "DistribPaymentMethod (477)", "fix.DistribPaymentMethod",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "DistribPaymentMethod", HFILL }
-        },
-        { &hf_fix_CashDistribCurr,
-            { "CashDistribCurr (478)", "fix.CashDistribCurr",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CashDistribCurr", HFILL }
-        },
-        { &hf_fix_CommCurrency,
-            { "CommCurrency (479)", "fix.CommCurrency",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CommCurrency", HFILL }
-        },
-        { &hf_fix_CancellationRights,
-            { "CancellationRights (480)", "fix.CancellationRights",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CancellationRights", HFILL }
-        },
-        { &hf_fix_MoneyLaunderingStatus,
-            { "MoneyLaunderingStatus (481)", "fix.MoneyLaunderingStatus",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MoneyLaunderingStatus", HFILL }
-        },
-        { &hf_fix_MailingInst,
-            { "MailingInst (482)", "fix.MailingInst",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MailingInst", HFILL }
-        },
-        { &hf_fix_TransBkdTime,
-            { "TransBkdTime (483)", "fix.TransBkdTime",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TransBkdTime", HFILL }
-        },
-        { &hf_fix_ExecPriceType,
-            { "ExecPriceType (484)", "fix.ExecPriceType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ExecPriceType", HFILL }
-        },
-        { &hf_fix_ExecPriceAdjustment,
-            { "ExecPriceAdjustment (485)", "fix.ExecPriceAdjustment",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ExecPriceAdjustment", HFILL }
-        },
-        { &hf_fix_DateOfBirth,
-            { "DateOfBirth (486)", "fix.DateOfBirth",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "DateOfBirth", HFILL }
-        },
-        { &hf_fix_TradeReportTransType,
-            { "TradeReportTransType (487)", "fix.TradeReportTransType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradeReportTransType", HFILL }
-        },
-        { &hf_fix_CardHolderName,
-            { "CardHolderName (488)", "fix.CardHolderName",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CardHolderName", HFILL }
-        },
-        { &hf_fix_CardNumber,
-            { "CardNumber (489)", "fix.CardNumber",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CardNumber", HFILL }
-        },
-        { &hf_fix_CardExpDate,
-            { "CardExpDate (490)", "fix.CardExpDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CardExpDate", HFILL }
-        },
-        { &hf_fix_CardIssNo,
-            { "CardIssNo (491)", "fix.CardIssNo",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CardIssNo", HFILL }
-        },
-        { &hf_fix_PaymentMethod,
-            { "PaymentMethod (492)", "fix.PaymentMethod",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "PaymentMethod", HFILL }
-        },
-        { &hf_fix_RegistAcctType,
-            { "RegistAcctType (493)", "fix.RegistAcctType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RegistAcctType", HFILL }
-        },
-        { &hf_fix_Designation,
-            { "Designation (494)", "fix.Designation",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Designation", HFILL }
-        },
-        { &hf_fix_TaxAdvantageType,
-            { "TaxAdvantageType (495)", "fix.TaxAdvantageType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TaxAdvantageType", HFILL }
-        },
-        { &hf_fix_RegistRejReasonText,
-            { "RegistRejReasonText (496)", "fix.RegistRejReasonText",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RegistRejReasonText", HFILL }
-        },
-        { &hf_fix_FundRenewWaiv,
-            { "FundRenewWaiv (497)", "fix.FundRenewWaiv",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "FundRenewWaiv", HFILL }
-        },
-        { &hf_fix_CashDistribAgentName,
-            { "CashDistribAgentName (498)", "fix.CashDistribAgentName",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CashDistribAgentName", HFILL }
-        },
-        { &hf_fix_CashDistribAgentCode,
-            { "CashDistribAgentCode (499)", "fix.CashDistribAgentCode",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CashDistribAgentCode", HFILL }
-        },
-        { &hf_fix_CashDistribAgentAcctNumber,
-            { "CashDistribAgentAcctNumber (500)", "fix.CashDistribAgentAcctNumber",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CashDistribAgentAcctNumber", HFILL }
-        },
-        { &hf_fix_CashDistribPayRef,
-            { "CashDistribPayRef (501)", "fix.CashDistribPayRef",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CashDistribPayRef", HFILL }
-        },
-        { &hf_fix_CashDistribAgentAcctName,
-            { "CashDistribAgentAcctName (502)", "fix.CashDistribAgentAcctName",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CashDistribAgentAcctName", HFILL }
-        },
-        { &hf_fix_CardStartDate,
-            { "CardStartDate (503)", "fix.CardStartDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CardStartDate", HFILL }
-        },
-        { &hf_fix_PaymentDate,
-            { "PaymentDate (504)", "fix.PaymentDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "PaymentDate", HFILL }
-        },
-        { &hf_fix_PaymentRemitterID,
-            { "PaymentRemitterID (505)", "fix.PaymentRemitterID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "PaymentRemitterID", HFILL }
-        },
-        { &hf_fix_RegistStatus,
-            { "RegistStatus (506)", "fix.RegistStatus",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RegistStatus", HFILL }
-        },
-        { &hf_fix_RegistRejReasonCode,
-            { "RegistRejReasonCode (507)", "fix.RegistRejReasonCode",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RegistRejReasonCode", HFILL }
-        },
-        { &hf_fix_RegistRefID,
-            { "RegistRefID (508)", "fix.RegistRefID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RegistRefID", HFILL }
-        },
-        { &hf_fix_RegistDetls,
-            { "RegistDetls (509)", "fix.RegistDetls",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RegistDetls", HFILL }
-        },
-        { &hf_fix_NoDistribInsts,
-            { "NoDistribInsts (510)", "fix.NoDistribInsts",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoDistribInsts", HFILL }
-        },
-        { &hf_fix_RegistEmail,
-            { "RegistEmail (511)", "fix.RegistEmail",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RegistEmail", HFILL }
-        },
-        { &hf_fix_DistribPercentage,
-            { "DistribPercentage (512)", "fix.DistribPercentage",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "DistribPercentage", HFILL }
-        },
-        { &hf_fix_RegistID,
-            { "RegistID (513)", "fix.RegistID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RegistID", HFILL }
-        },
-        { &hf_fix_RegistTransType,
-            { "RegistTransType (514)", "fix.RegistTransType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RegistTransType", HFILL }
-        },
-        { &hf_fix_ExecValuationPoint,
-            { "ExecValuationPoint (515)", "fix.ExecValuationPoint",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ExecValuationPoint", HFILL }
-        },
-        { &hf_fix_OrderPercent,
-            { "OrderPercent (516)", "fix.OrderPercent",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OrderPercent", HFILL }
-        },
-        { &hf_fix_OwnershipType,
-            { "OwnershipType (517)", "fix.OwnershipType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OwnershipType", HFILL }
-        },
-        { &hf_fix_NoContAmts,
-            { "NoContAmts (518)", "fix.NoContAmts",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoContAmts", HFILL }
-        },
-        { &hf_fix_ContAmtType,
-            { "ContAmtType (519)", "fix.ContAmtType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ContAmtType", HFILL }
-        },
-        { &hf_fix_ContAmtValue,
-            { "ContAmtValue (520)", "fix.ContAmtValue",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ContAmtValue", HFILL }
-        },
-        { &hf_fix_ContAmtCurr,
-            { "ContAmtCurr (521)", "fix.ContAmtCurr",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ContAmtCurr", HFILL }
-        },
-        { &hf_fix_OwnerType,
-            { "OwnerType (522)", "fix.OwnerType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OwnerType", HFILL }
-        },
-        { &hf_fix_PartySubID,
-            { "PartySubID (523)", "fix.PartySubID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "PartySubID", HFILL }
-        },
-        { &hf_fix_NestedPartyID,
-            { "NestedPartyID (524)", "fix.NestedPartyID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NestedPartyID", HFILL }
-        },
-        { &hf_fix_NestedPartyIDSource,
-            { "NestedPartyIDSource (525)", "fix.NestedPartyIDSource",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NestedPartyIDSource", HFILL }
-        },
-        { &hf_fix_SecondaryClOrdID,
-            { "SecondaryClOrdID (526)", "fix.SecondaryClOrdID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecondaryClOrdID", HFILL }
-        },
-        { &hf_fix_SecondaryExecID,
-            { "SecondaryExecID (527)", "fix.SecondaryExecID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecondaryExecID", HFILL }
-        },
-        { &hf_fix_OrderCapacity,
-            { "OrderCapacity (528)", "fix.OrderCapacity",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OrderCapacity", HFILL }
-        },
-        { &hf_fix_OrderRestrictions,
-            { "OrderRestrictions (529)", "fix.OrderRestrictions",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OrderRestrictions", HFILL }
-        },
-        { &hf_fix_MassCancelRequestType,
-            { "MassCancelRequestType (530)", "fix.MassCancelRequestType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MassCancelRequestType", HFILL }
-        },
-        { &hf_fix_MassCancelResponse,
-            { "MassCancelResponse (531)", "fix.MassCancelResponse",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MassCancelResponse", HFILL }
-        },
-        { &hf_fix_MassCancelRejectReason,
-            { "MassCancelRejectReason (532)", "fix.MassCancelRejectReason",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MassCancelRejectReason", HFILL }
-        },
-        { &hf_fix_TotalAffectedOrders,
-            { "TotalAffectedOrders (533)", "fix.TotalAffectedOrders",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TotalAffectedOrders", HFILL }
-        },
-        { &hf_fix_NoAffectedOrders,
-            { "NoAffectedOrders (534)", "fix.NoAffectedOrders",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoAffectedOrders", HFILL }
-        },
-        { &hf_fix_AffectedOrderID,
-            { "AffectedOrderID (535)", "fix.AffectedOrderID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AffectedOrderID", HFILL }
-        },
-        { &hf_fix_AffectedSecondaryOrderID,
-            { "AffectedSecondaryOrderID (536)", "fix.AffectedSecondaryOrderID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AffectedSecondaryOrderID", HFILL }
-        },
-        { &hf_fix_QuoteType,
-            { "QuoteType (537)", "fix.QuoteType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "QuoteType", HFILL }
-        },
-        { &hf_fix_NestedPartyRole,
-            { "NestedPartyRole (538)", "fix.NestedPartyRole",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NestedPartyRole", HFILL }
-        },
-        { &hf_fix_NoNestedPartyIDs,
-            { "NoNestedPartyIDs (539)", "fix.NoNestedPartyIDs",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoNestedPartyIDs", HFILL }
-        },
-        { &hf_fix_TotalAccruedInterestAmt,
-            { "TotalAccruedInterestAmt (540)", "fix.TotalAccruedInterestAmt",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TotalAccruedInterestAmt", HFILL }
-        },
-        { &hf_fix_MaturityDate,
-            { "MaturityDate (541)", "fix.MaturityDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MaturityDate", HFILL }
-        },
-        { &hf_fix_UnderlyingMaturityDate,
-            { "UnderlyingMaturityDate (542)", "fix.UnderlyingMaturityDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingMaturityDate", HFILL }
-        },
-        { &hf_fix_InstrRegistry,
-            { "InstrRegistry (543)", "fix.InstrRegistry",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "InstrRegistry", HFILL }
-        },
-        { &hf_fix_CashMargin,
-            { "CashMargin (544)", "fix.CashMargin",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CashMargin", HFILL }
-        },
-        { &hf_fix_NestedPartySubID,
-            { "NestedPartySubID (545)", "fix.NestedPartySubID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NestedPartySubID", HFILL }
-        },
-        { &hf_fix_Scope,
-            { "Scope (546)", "fix.Scope",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Scope", HFILL }
-        },
-        { &hf_fix_MDImplicitDelete,
-            { "MDImplicitDelete (547)", "fix.MDImplicitDelete",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MDImplicitDelete", HFILL }
-        },
-        { &hf_fix_CrossID,
-            { "CrossID (548)", "fix.CrossID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CrossID", HFILL }
-        },
-        { &hf_fix_CrossType,
-            { "CrossType (549)", "fix.CrossType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CrossType", HFILL }
-        },
-        { &hf_fix_CrossPrioritization,
-            { "CrossPrioritization (550)", "fix.CrossPrioritization",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CrossPrioritization", HFILL }
-        },
-        { &hf_fix_OrigCrossID,
-            { "OrigCrossID (551)", "fix.OrigCrossID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OrigCrossID", HFILL }
-        },
-        { &hf_fix_NoSides,
-            { "NoSides (552)", "fix.NoSides",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoSides", HFILL }
-        },
-        { &hf_fix_Username,
-            { "Username (553)", "fix.Username",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Username", HFILL }
-        },
-        { &hf_fix_Password,
-            { "Password (554)", "fix.Password",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Password", HFILL }
-        },
-        { &hf_fix_NoLegs,
-            { "NoLegs (555)", "fix.NoLegs",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoLegs", HFILL }
-        },
-        { &hf_fix_LegCurrency,
-            { "LegCurrency (556)", "fix.LegCurrency",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegCurrency", HFILL }
-        },
-        { &hf_fix_TotalNumSecurityTypes,
-            { "TotalNumSecurityTypes (557)", "fix.TotalNumSecurityTypes",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TotalNumSecurityTypes", HFILL }
-        },
-        { &hf_fix_NoSecurityTypes,
-            { "NoSecurityTypes (558)", "fix.NoSecurityTypes",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoSecurityTypes", HFILL }
-        },
-        { &hf_fix_SecurityListRequestType,
-            { "SecurityListRequestType (559)", "fix.SecurityListRequestType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecurityListRequestType", HFILL }
-        },
-        { &hf_fix_SecurityRequestResult,
-            { "SecurityRequestResult (560)", "fix.SecurityRequestResult",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecurityRequestResult", HFILL }
-        },
-        { &hf_fix_RoundLot,
-            { "RoundLot (561)", "fix.RoundLot",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RoundLot", HFILL }
-        },
-        { &hf_fix_MinTradeVol,
-            { "MinTradeVol (562)", "fix.MinTradeVol",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MinTradeVol", HFILL }
-        },
-        { &hf_fix_MultiLegRptTypeReq,
-            { "MultiLegRptTypeReq (563)", "fix.MultiLegRptTypeReq",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MultiLegRptTypeReq", HFILL }
-        },
-        { &hf_fix_LegPositionEffect,
-            { "LegPositionEffect (564)", "fix.LegPositionEffect",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegPositionEffect", HFILL }
-        },
-        { &hf_fix_LegCoveredOrUncovered,
-            { "LegCoveredOrUncovered (565)", "fix.LegCoveredOrUncovered",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegCoveredOrUncovered", HFILL }
-        },
-        { &hf_fix_LegPrice,
-            { "LegPrice (566)", "fix.LegPrice",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegPrice", HFILL }
-        },
-        { &hf_fix_TradSesStatusRejReason,
-            { "TradSesStatusRejReason (567)", "fix.TradSesStatusRejReason",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradSesStatusRejReason", HFILL }
-        },
-        { &hf_fix_TradeRequestID,
-            { "TradeRequestID (568)", "fix.TradeRequestID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradeRequestID", HFILL }
-        },
-        { &hf_fix_TradeRequestType,
-            { "TradeRequestType (569)", "fix.TradeRequestType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradeRequestType", HFILL }
-        },
-        { &hf_fix_PreviouslyReported,
-            { "PreviouslyReported (570)", "fix.PreviouslyReported",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "PreviouslyReported", HFILL }
-        },
-        { &hf_fix_TradeReportID,
-            { "TradeReportID (571)", "fix.TradeReportID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradeReportID", HFILL }
-        },
-        { &hf_fix_TradeReportRefID,
-            { "TradeReportRefID (572)", "fix.TradeReportRefID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradeReportRefID", HFILL }
-        },
-        { &hf_fix_MatchStatus,
-            { "MatchStatus (573)", "fix.MatchStatus",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MatchStatus", HFILL }
-        },
-        { &hf_fix_MatchType,
-            { "MatchType (574)", "fix.MatchType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MatchType", HFILL }
-        },
-        { &hf_fix_OddLot,
-            { "OddLot (575)", "fix.OddLot",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OddLot", HFILL }
-        },
-        { &hf_fix_NoClearingInstructions,
-            { "NoClearingInstructions (576)", "fix.NoClearingInstructions",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoClearingInstructions", HFILL }
-        },
-        { &hf_fix_ClearingInstruction,
-            { "ClearingInstruction (577)", "fix.ClearingInstruction",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ClearingInstruction", HFILL }
-        },
-        { &hf_fix_TradeInputSource,
-            { "TradeInputSource (578)", "fix.TradeInputSource",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradeInputSource", HFILL }
-        },
-        { &hf_fix_TradeInputDevice,
-            { "TradeInputDevice (579)", "fix.TradeInputDevice",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradeInputDevice", HFILL }
-        },
-        { &hf_fix_NoDates,
-            { "NoDates (580)", "fix.NoDates",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoDates", HFILL }
-        },
-        { &hf_fix_AccountType,
-            { "AccountType (581)", "fix.AccountType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AccountType", HFILL }
-        },
-        { &hf_fix_CustOrderCapacity,
-            { "CustOrderCapacity (582)", "fix.CustOrderCapacity",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "CustOrderCapacity", HFILL }
-        },
-        { &hf_fix_ClOrdLinkID,
-            { "ClOrdLinkID (583)", "fix.ClOrdLinkID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ClOrdLinkID", HFILL }
-        },
-        { &hf_fix_MassStatusReqID,
-            { "MassStatusReqID (584)", "fix.MassStatusReqID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MassStatusReqID", HFILL }
-        },
-        { &hf_fix_MassStatusReqType,
-            { "MassStatusReqType (585)", "fix.MassStatusReqType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MassStatusReqType", HFILL }
-        },
-        { &hf_fix_OrigOrdModTime,
-            { "OrigOrdModTime (586)", "fix.OrigOrdModTime",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OrigOrdModTime", HFILL }
-        },
-        { &hf_fix_LegSettlmntTyp,
-            { "LegSettlmntTyp (587)", "fix.LegSettlmntTyp",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegSettlmntTyp", HFILL }
-        },
-        { &hf_fix_LegFutSettDate,
-            { "LegFutSettDate (588)", "fix.LegFutSettDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegFutSettDate", HFILL }
-        },
-        { &hf_fix_DayBookingInst,
-            { "DayBookingInst (589)", "fix.DayBookingInst",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "DayBookingInst", HFILL }
-        },
-        { &hf_fix_BookingUnit,
-            { "BookingUnit (590)", "fix.BookingUnit",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BookingUnit", HFILL }
-        },
-        { &hf_fix_PreallocMethod,
-            { "PreallocMethod (591)", "fix.PreallocMethod",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "PreallocMethod", HFILL }
-        },
-        { &hf_fix_UnderlyingCountryOfIssue,
-            { "UnderlyingCountryOfIssue (592)", "fix.UnderlyingCountryOfIssue",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingCountryOfIssue", HFILL }
-        },
-        { &hf_fix_UnderlyingStateOrProvinceOfIssue,
-            { "UnderlyingStateOrProvinceOfIssue (593)", "fix.UnderlyingStateOrProvinceOfIssue",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingStateOrProvinceOfIssue", HFILL }
-        },
-        { &hf_fix_UnderlyingLocaleOfIssue,
-            { "UnderlyingLocaleOfIssue (594)", "fix.UnderlyingLocaleOfIssue",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingLocaleOfIssue", HFILL }
-        },
-        { &hf_fix_UnderlyingInstrRegistry,
-            { "UnderlyingInstrRegistry (595)", "fix.UnderlyingInstrRegistry",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingInstrRegistry", HFILL }
-        },
-        { &hf_fix_LegCountryOfIssue,
-            { "LegCountryOfIssue (596)", "fix.LegCountryOfIssue",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegCountryOfIssue", HFILL }
-        },
-        { &hf_fix_LegStateOrProvinceOfIssue,
-            { "LegStateOrProvinceOfIssue (597)", "fix.LegStateOrProvinceOfIssue",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegStateOrProvinceOfIssue", HFILL }
-        },
-        { &hf_fix_LegLocaleOfIssue,
-            { "LegLocaleOfIssue (598)", "fix.LegLocaleOfIssue",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegLocaleOfIssue", HFILL }
-        },
-        { &hf_fix_LegInstrRegistry,
-            { "LegInstrRegistry (599)", "fix.LegInstrRegistry",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegInstrRegistry", HFILL }
-        },
-        { &hf_fix_LegSymbol,
-            { "LegSymbol (600)", "fix.LegSymbol",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegSymbol", HFILL }
-        },
-        { &hf_fix_LegSymbolSfx,
-            { "LegSymbolSfx (601)", "fix.LegSymbolSfx",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegSymbolSfx", HFILL }
-        },
-        { &hf_fix_LegSecurityID,
-            { "LegSecurityID (602)", "fix.LegSecurityID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegSecurityID", HFILL }
-        },
-        { &hf_fix_LegSecurityIDSource,
-            { "LegSecurityIDSource (603)", "fix.LegSecurityIDSource",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegSecurityIDSource", HFILL }
-        },
-        { &hf_fix_NoLegSecurityAltID,
-            { "NoLegSecurityAltID (604)", "fix.NoLegSecurityAltID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoLegSecurityAltID", HFILL }
-        },
-        { &hf_fix_LegSecurityAltID,
-            { "LegSecurityAltID (605)", "fix.LegSecurityAltID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegSecurityAltID", HFILL }
-        },
-        { &hf_fix_LegSecurityAltIDSource,
-            { "LegSecurityAltIDSource (606)", "fix.LegSecurityAltIDSource",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegSecurityAltIDSource", HFILL }
-        },
-        { &hf_fix_LegProduct,
-            { "LegProduct (607)", "fix.LegProduct",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegProduct", HFILL }
-        },
-        { &hf_fix_LegCFICode,
-            { "LegCFICode (608)", "fix.LegCFICode",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegCFICode", HFILL }
-        },
-        { &hf_fix_LegSecurityType,
-            { "LegSecurityType (609)", "fix.LegSecurityType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegSecurityType", HFILL }
-        },
-        { &hf_fix_LegMaturityMonthYear,
-            { "LegMaturityMonthYear (610)", "fix.LegMaturityMonthYear",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegMaturityMonthYear", HFILL }
-        },
-        { &hf_fix_LegMaturityDate,
-            { "LegMaturityDate (611)", "fix.LegMaturityDate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegMaturityDate", HFILL }
-        },
-        { &hf_fix_LegStrikePrice,
-            { "LegStrikePrice (612)", "fix.LegStrikePrice",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegStrikePrice", HFILL }
-        },
-        { &hf_fix_LegOptAttribute,
-            { "LegOptAttribute (613)", "fix.LegOptAttribute",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegOptAttribute", HFILL }
-        },
-        { &hf_fix_LegContractMultiplier,
-            { "LegContractMultiplier (614)", "fix.LegContractMultiplier",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegContractMultiplier", HFILL }
-        },
-        { &hf_fix_LegCouponRate,
-            { "LegCouponRate (615)", "fix.LegCouponRate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegCouponRate", HFILL }
-        },
-        { &hf_fix_LegSecurityExchange,
-            { "LegSecurityExchange (616)", "fix.LegSecurityExchange",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegSecurityExchange", HFILL }
-        },
-        { &hf_fix_LegIssuer,
-            { "LegIssuer (617)", "fix.LegIssuer",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegIssuer", HFILL }
-        },
-        { &hf_fix_EncodedLegIssuerLen,
-            { "EncodedLegIssuerLen (618)", "fix.EncodedLegIssuerLen",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedLegIssuerLen", HFILL }
-        },
-        { &hf_fix_EncodedLegIssuer,
-            { "EncodedLegIssuer (619)", "fix.EncodedLegIssuer",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedLegIssuer", HFILL }
-        },
-        { &hf_fix_LegSecurityDesc,
-            { "LegSecurityDesc (620)", "fix.LegSecurityDesc",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegSecurityDesc", HFILL }
-        },
-        { &hf_fix_EncodedLegSecurityDescLen,
-            { "EncodedLegSecurityDescLen (621)", "fix.EncodedLegSecurityDescLen",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedLegSecurityDescLen", HFILL }
-        },
-        { &hf_fix_EncodedLegSecurityDesc,
-            { "EncodedLegSecurityDesc (622)", "fix.EncodedLegSecurityDesc",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "EncodedLegSecurityDesc", HFILL }
-        },
-        { &hf_fix_LegRatioQty,
-            { "LegRatioQty (623)", "fix.LegRatioQty",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegRatioQty", HFILL }
-        },
-        { &hf_fix_LegSide,
-            { "LegSide (624)", "fix.LegSide",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegSide", HFILL }
-        },
-        { &hf_fix_TradingSessionSubID,
-            { "TradingSessionSubID (625)", "fix.TradingSessionSubID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "TradingSessionSubID", HFILL }
-        },
-        { &hf_fix_AllocType,
-            { "AllocType (626)", "fix.AllocType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AllocType", HFILL }
-        },
-        { &hf_fix_NoHops,
-            { "NoHops (627)", "fix.NoHops",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoHops", HFILL }
-        },
-        { &hf_fix_HopCompID,
-            { "HopCompID (628)", "fix.HopCompID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "HopCompID", HFILL }
-        },
-        { &hf_fix_HopSendingTime,
-            { "HopSendingTime (629)", "fix.HopSendingTime",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "HopSendingTime", HFILL }
-        },
-        { &hf_fix_HopRefID,
-            { "HopRefID (630)", "fix.HopRefID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "HopRefID", HFILL }
-        },
-        { &hf_fix_MidPx,
-            { "MidPx (631)", "fix.MidPx",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MidPx", HFILL }
-        },
-        { &hf_fix_BidYield,
-            { "BidYield (632)", "fix.BidYield",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BidYield", HFILL }
-        },
-        { &hf_fix_MidYield,
-            { "MidYield (633)", "fix.MidYield",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MidYield", HFILL }
-        },
-        { &hf_fix_OfferYield,
-            { "OfferYield (634)", "fix.OfferYield",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OfferYield", HFILL }
-        },
-        { &hf_fix_ClearingFeeIndicator,
-            { "ClearingFeeIndicator (635)", "fix.ClearingFeeIndicator",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ClearingFeeIndicator", HFILL }
-        },
-        { &hf_fix_WorkingIndicator,
-            { "WorkingIndicator (636)", "fix.WorkingIndicator",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "WorkingIndicator", HFILL }
-        },
-        { &hf_fix_LegLastPx,
-            { "LegLastPx (637)", "fix.LegLastPx",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegLastPx", HFILL }
-        },
-        { &hf_fix_PriorityIndicator,
-            { "PriorityIndicator (638)", "fix.PriorityIndicator",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "PriorityIndicator", HFILL }
-        },
-        { &hf_fix_PriceImprovement,
-            { "PriceImprovement (639)", "fix.PriceImprovement",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "PriceImprovement", HFILL }
-        },
-        { &hf_fix_Price2,
-            { "Price2 (640)", "fix.Price2",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Price2", HFILL }
-        },
-        { &hf_fix_LastForwardPoints2,
-            { "LastForwardPoints2 (641)", "fix.LastForwardPoints2",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LastForwardPoints2", HFILL }
-        },
-        { &hf_fix_BidForwardPoints2,
-            { "BidForwardPoints2 (642)", "fix.BidForwardPoints2",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BidForwardPoints2", HFILL }
-        },
-        { &hf_fix_OfferForwardPoints2,
-            { "OfferForwardPoints2 (643)", "fix.OfferForwardPoints2",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "OfferForwardPoints2", HFILL }
-        },
-        { &hf_fix_RFQReqID,
-            { "RFQReqID (644)", "fix.RFQReqID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "RFQReqID", HFILL }
-        },
-        { &hf_fix_MktBidPx,
-            { "MktBidPx (645)", "fix.MktBidPx",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MktBidPx", HFILL }
-        },
-        { &hf_fix_MktOfferPx,
-            { "MktOfferPx (646)", "fix.MktOfferPx",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MktOfferPx", HFILL }
-        },
-        { &hf_fix_MinBidSize,
-            { "MinBidSize (647)", "fix.MinBidSize",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MinBidSize", HFILL }
-        },
-        { &hf_fix_MinOfferSize,
-            { "MinOfferSize (648)", "fix.MinOfferSize",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "MinOfferSize", HFILL }
-        },
-        { &hf_fix_QuoteStatusReqID,
-            { "QuoteStatusReqID (649)", "fix.QuoteStatusReqID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "QuoteStatusReqID", HFILL }
-        },
-        { &hf_fix_LegalConfirm,
-            { "LegalConfirm (650)", "fix.LegalConfirm",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegalConfirm", HFILL }
-        },
-        { &hf_fix_UnderlyingLastPx,
-            { "UnderlyingLastPx (651)", "fix.UnderlyingLastPx",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingLastPx", HFILL }
-        },
-        { &hf_fix_UnderlyingLastQty,
-            { "UnderlyingLastQty (652)", "fix.UnderlyingLastQty",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "UnderlyingLastQty", HFILL }
-        },
-        { &hf_fix_SecDefStatus,
-            { "SecDefStatus (653)", "fix.SecDefStatus",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecDefStatus", HFILL }
-        },
-        { &hf_fix_LegRefID,
-            { "LegRefID (654)", "fix.LegRefID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LegRefID", HFILL }
-        },
-        { &hf_fix_ContraLegRefID,
-            { "ContraLegRefID (655)", "fix.ContraLegRefID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "ContraLegRefID", HFILL }
-        },
-        { &hf_fix_SettlCurrBidFxRate,
-            { "SettlCurrBidFxRate (656)", "fix.SettlCurrBidFxRate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SettlCurrBidFxRate", HFILL }
-        },
-        { &hf_fix_SettlCurrOfferFxRate,
-            { "SettlCurrOfferFxRate (657)", "fix.SettlCurrOfferFxRate",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SettlCurrOfferFxRate", HFILL }
-        },
-        { &hf_fix_QuoteRequestRejectReason,
-            { "QuoteRequestRejectReason (658)", "fix.QuoteRequestRejectReason",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "QuoteRequestRejectReason", HFILL }
-        },
-        { &hf_fix_SideComplianceID,
-            { "SideComplianceID (659)", "fix.SideComplianceID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SideComplianceID", HFILL }
-        },
-        { &hf_fix_BenchmarkPrice,
-            { "BenchmarkPrice (662)", "fix.BenchmarkPrice",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BenchmarkPrice", HFILL }
-        },
-        { &hf_fix_BenchmarkPriceType,
-            { "BenchmarkPriceType (663)", "fix.BenchmarkPriceType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BenchmarkPriceType", HFILL }
-        },
-        { &hf_fix_Pool,
-            { "Pool (691)", "fix.Pool",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "Pool", HFILL }
-        },
-        { &hf_fix_QuoteRespID,
-            { "QuoteRespID (693)", "fix.QuoteRespID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "QuoteRespID", HFILL }
-        },
-        { &hf_fix_QuoteRespType,
-            { "QuoteRespType (694)", "fix.QuoteRespType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "QuoteRespType", HFILL }
-        },
-        { &hf_fix_QuoteQualifier,
-            { "QuoteQualifier (695)", "fix.QuoteQualifier",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "QuoteQualifier", HFILL }
-        },
-        { &hf_fix_BenchmarkSecurityID,
-            { "BenchmarkSecurityID (699)", "fix.BenchmarkSecurityID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BenchmarkSecurityID", HFILL }
-        },
-        { &hf_fix_NoQuoteQualifiers,
-            { "NoQuoteQualifiers (735)", "fix.NoQuoteQualifiers",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoQuoteQualifiers", HFILL }
-        },
-        { &hf_fix_BenchmarkSecurityIDSource,
-            { "BenchmarkSecurityIDSource (761)", "fix.BenchmarkSecurityIDSource",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "BenchmarkSecurityIDSource", HFILL }
-        },
-        { &hf_fix_SecuritySubType,
-            { "SecuritySubType (762)", "fix.SecuritySubType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "SecuritySubType", HFILL }
-        },
-        { &hf_fix_AllocReportRefID,
-            { "AllocReportRefID (795)", "fix.AllocReportRefID",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "AllocReportRefID", HFILL }
-        },
-        { &hf_fix_NoInstrAttrib,
-            { "NoInstrAttrib (870)", "fix.NoInstrAttrib",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "NoInstrAttrib", HFILL }
-        },
-        { &hf_fix_InstrAttribType,
-            { "InstrAttribType (871)", "fix.InstrAttribType",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "InstrAttribType", HFILL }
-        },
-        { &hf_fix_InstrAttribValue,
-            { "InstrAttribValue (872)", "fix.InstrAttribValue",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "InstrAttribValue", HFILL }
-        },
-        { &hf_fix_LastFragment,
-            { "LastFragment (893)", "fix.LastFragment",
-            FT_STRING, BASE_NONE, NULL, 0x00,
-            "LastFragment", HFILL }
-        },
+        { &hf_fix_data,
+            { "Continuation Data", "fix.data", FT_BYTES, BASE_HEX, NULL, 0x00,
+            "Continuation Data", HFILL }
+        },
+        
+        { &hf_fix_field_tag,
+            { "Field Tag",         "fix.field.tag", FT_UINT16, BASE_DEC, NULL, 0x0,
+            "Field length.", HFILL }},
+            
+        { &hf_fix_field_value,
+            { "Field Value",       "fix.field.value", FT_STRING, BASE_NONE, NULL, 0x0,
+            "Field value", HFILL }},
+
+          { &hf_fix_checksum_good,
+            { "Good Checksum",    "fix.checksum_good", FT_BOOLEAN, BASE_NONE, NULL, 0x0,
+              "True: checksum matches packet content; False: doesn't match content or not checked", HFILL }},
+
+          { &hf_fix_checksum_bad,
+            { "Bad Checksum",     "fix.checksum_bad", FT_BOOLEAN, BASE_NONE, NULL, 0x0,
+              "True: checksum doesn't match packet content; False: matches content or not checked", HFILL }},
     };
 
 /* Setup protocol subtree array */
     static gint *ett[] = {
         &ett_fix,
+        &ett_unknow,
+        &ett_badfield,
+        &ett_checksum,
     };
 
+    module_t *fix_module;
+
     /* register re-init routine */
     register_init_routine(&dissect_fix_init);
 
@@ -6428,7 +523,19 @@ proto_register_fix(void)
 
     /* Required function calls to register the header fields and subtrees used */
     proto_register_field_array(proto_fix, hf, array_length(hf));
+    proto_register_field_array(proto_fix, hf_FIX, array_length(hf_FIX));
     proto_register_subtree_array(ett, array_length(ett));
+    
+    fix_module = prefs_register_protocol(proto_fix, fix_prefs);
+    prefs_register_bool_preference(fix_module, "desegment",
+    "Reassemble FIX messages spanning multiple TCP segments",
+    "Whether the FIX dissector should reassemble messages spanning multiple TCP segments."
+    " To use this option, you must also enable \"Allow subdissectors to reassemble TCP streams\" in the TCP protocol settings.",
+    &fix_desegment);
+
+    prefs_register_range_preference(fix_module, "tcp.port", "TCP Ports", "TCP Ports range", &global_fix_tcp_range, 65535);
+
+    fix_tcp_range = range_empty();
 }
 
 
@@ -6439,11 +546,10 @@ proto_register_fix(void)
 void
 proto_reg_handoff_fix(void)
 {
-    dissector_handle_t fix_handle;
     /* Let the tcp dissector know that we're interested in traffic      */
-    heur_dissector_add("tcp", dissect_fix, proto_fix);
+    heur_dissector_add("tcp", dissect_fix_heur, proto_fix);
     /* Register a fix handle to "tcp.port" to be able to do 'decode-as' */
-    fix_handle = new_create_dissector_handle(dissect_fix, proto_fix);
+    fix_handle = create_dissector_handle(dissect_fix, proto_fix);
     dissector_add_handle("tcp.port", fix_handle);
 }
 
diff --git a/epan/dissectors/packet-fix.h b/epan/dissectors/packet-fix.h
new file mode 100644 (file)
index 0000000..126bceb
--- /dev/null
@@ -0,0 +1,8575 @@
+/* DO NOT EDIT
+ * This file is autogenerated
+ */
+
+  
+   static const string_string messages_val[] = { 
+       { "0", "Heartbeat" }, 
+       { "A", "Logon" }, 
+       { "1", "TestRequest" }, 
+       { "2", "ResendRequest" }, 
+       { "3", "Reject" }, 
+       { "4", "SequenceReset" }, 
+       { "5", "Logout" }, 
+       { "j", "BusinessMessageReject" }, 
+       { "BE", "UserRequest" }, 
+       { "BF", "UserResponse" }, 
+       { "7", "Advertisement" }, 
+       { "6", "IndicationOfInterest" }, 
+       { "B", "News" }, 
+       { "C", "Email" }, 
+       { "R", "QuoteRequest" }, 
+       { "AJ", "QuoteResponse" }, 
+       { "AG", "QuoteRequestReject" }, 
+       { "AH", "RFQRequest" }, 
+       { "S", "Quote" }, 
+       { "Z", "QuoteCancel" }, 
+       { "a", "QuoteStatusRequest" }, 
+       { "AI", "QuoteStatusReport" }, 
+       { "i", "MassQuote" }, 
+       { "b", "MassQuoteAcknowledgement" }, 
+       { "V", "MarketDataRequest" }, 
+       { "W", "MarketDataSnapshotFullRefresh" }, 
+       { "X", "MarketDataIncrementalRefresh" }, 
+       { "Y", "MarketDataRequestReject" }, 
+       { "c", "SecurityDefinitionRequest" }, 
+       { "d", "SecurityDefinition" }, 
+       { "v", "SecurityTypeRequest" }, 
+       { "w", "SecurityTypes" }, 
+       { "x", "SecurityListRequest" }, 
+       { "y", "SecurityList" }, 
+       { "z", "DerivativeSecurityListRequest" }, 
+       { "AA", "DerivativeSecurityList" }, 
+       { "e", "SecurityStatusRequest" }, 
+       { "f", "SecurityStatus" }, 
+       { "g", "TradingSessionStatusRequest" }, 
+       { "h", "TradingSessionStatus" }, 
+       { "D", "NewOrderSingle" }, 
+       { "8", "ExecutionReport" }, 
+       { "Q", "DontKnowTrade" }, 
+       { "G", "OrderCancelReplaceRequest" }, 
+       { "F", "OrderCancelRequest" }, 
+       { "9", "OrderCancelReject" }, 
+       { "H", "OrderStatusRequest" }, 
+       { "q", "OrderMassCancelRequest" }, 
+       { "r", "OrderMassCancelReport" }, 
+       { "AF", "OrderMassStatusRequest" }, 
+       { "s", "NewOrderCross" }, 
+       { "t", "CrossOrderCancelReplaceRequest" }, 
+       { "u", "CrossOrderCancelRequest" }, 
+       { "AB", "NewOrderMultileg" }, 
+       { "AC", "MultilegOrderCancelReplaceRequest" }, 
+       { "k", "BidRequest" }, 
+       { "l", "BidResponse" }, 
+       { "E", "NewOrderList" }, 
+       { "m", "ListStrikePrice" }, 
+       { "N", "ListStatus" }, 
+       { "L", "ListExecute" }, 
+       { "K", "ListCancelRequest" }, 
+       { "M", "ListStatusRequest" }, 
+       { "J", "AllocationInstruction" }, 
+       { "P", "AllocationInstructionAck" }, 
+       { "AS", "AllocationReport" }, 
+       { "AT", "AllocationReportAck" }, 
+       { "AK", "Confirmation" }, 
+       { "AU", "ConfirmationAck" }, 
+       { "BH", "ConfirmationRequest" }, 
+       { "T", "SettlementInstructions" }, 
+       { "AV", "SettlementInstructionRequest" }, 
+       { "AD", "TradeCaptureReportRequest" }, 
+       { "AQ", "TradeCaptureReportRequestAck" }, 
+       { "AE", "TradeCaptureReport" }, 
+       { "AR", "TradeCaptureReportAck" }, 
+       { "o", "RegistrationInstructions" }, 
+       { "p", "RegistrationInstructionsResponse" }, 
+       { "AL", "PositionMaintenanceRequest" }, 
+       { "AM", "PositionMaintenanceReport" }, 
+       { "AN", "RequestForPositions" }, 
+       { "AO", "RequestForPositionsAck" }, 
+       { "AP", "PositionReport" }, 
+       { "AW", "AssignmentReport" }, 
+       { "AX", "CollateralRequest" }, 
+       { "AY", "CollateralAssignment" }, 
+       { "AZ", "CollateralResponse" }, 
+       { "BA", "CollateralReport" }, 
+       { "BB", "CollateralInquiry" }, 
+       { "BC", "NetworkStatusRequest" }, 
+       { "BD", "NetworkStatusRequest" }, 
+       { "BG", "CollateralInquiryAck" }, 
+       { "", NULL }
+   };
+
+   static const  value_string AdvSide_val[] = { 
+       { 'B', "BUY" },
+       { 'S', "SELL" },
+       { 'X', "CROSS" },
+       { 'T', "TRADE" },
+       { 0, NULL }
+   };
+
+
+   static const  string_string AdvTransType_val[] = { 
+       { "N", "NEW" },
+       { "C", "CANCEL" },
+       { "R", "REPLACE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string CommType_val[] = { 
+       { '1', "PER UNIT" },
+       { '2', "PERCENTAGE" },
+       { '3', "ABSOLUTE" },
+       { '4', "PERCENTAGE WAIVED CASH DISCOUNT" },
+       { '5', "PERCENTAGE WAIVED ENHANCED UNITS" },
+       { '6', "POINTS PER BOND OR OR CONTRACT" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string ExecInst_val[] = { 
+       { '1', "NOT HELD" },
+       { '2', "WORK" },
+       { '3', "GO ALONG" },
+       { '4', "OVER THE DAY" },
+       { '5', "HELD" },
+       { '6', "PARTICIPATE DONT INITIATE" },
+       { '7', "STRICT SCALE" },
+       { '8', "TRY TO SCALE" },
+       { '9', "STAY ON BIDSIDE" },
+       { '0', "STAY ON OFFERSIDE" },
+       { 'A', "NO CROSS" },
+       { 'B', "OK TO CROSS" },
+       { 'C', "CALL FIRST" },
+       { 'D', "PERCENT OF VOLUME" },
+       { 'E', "DO NOT INCREASE" },
+       { 'F', "DO NOT REDUCE" },
+       { 'G', "ALL OR NONE" },
+       { 'H', "REINSTATE ON SYSTEM FAILURE" },
+       { 'I', "INSTITUTIONS ONLY" },
+       { 'J', "REINSTATE ON TRADING HALT" },
+       { 'K', "CANCEL ON TRADING HALT" },
+       { 'L', "LAST PEG" },
+       { 'M', "MID PRICE" },
+       { 'N', "NON NEGOTIABLE" },
+       { 'O', "OPENING PEG" },
+       { 'P', "MARKET PEG" },
+       { 'Q', "CANCEL ON SYSTEM FAILURE" },
+       { 'R', "PRIMARY PEG" },
+       { 'S', "SUSPEND" },
+       { 'T', "FIXED PEG TO LOCAL BEST BID OR OFFER AT TIME OF ORDER" },
+       { 'U', "CUSTOMER DISPLAY INSTRUCTION" },
+       { 'V', "NETTING" },
+       { 'W', "PEG TO VWAP" },
+       { 'X', "TRADE ALONG" },
+       { 'Y', "TRY TO STOP" },
+       { 'Z', "CANCEL IF NOT BEST" },
+       { 'a', "TRAILING STOP PEG" },
+       { 'b', "STRICT LIMIT" },
+       { 'c', "IGNORE PRICE VALIDITY CHECKS" },
+       { 'd', "PEG TO LIMIT PRICE" },
+       { 'e', "WORK TO TARGET STRATEGY" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string ExecTransType_val[] = { 
+       { '0', "NEW" },
+       { '1', "CANCEL" },
+       { '2', "CORRECT" },
+       { '3', "STATUS" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string HandlInst_val[] = { 
+       { '1', "AUTOMATED EXECUTION ORDER PRIVATE" },
+       { '2', "AUTOMATED EXECUTION ORDER PUBLIC" },
+       { '3', "MANUAL ORDER" },
+       { 0, NULL }
+   };
+
+
+   static const  string_string SecurityIDSource_val[] = { 
+       { "1", "CUSIP" },
+       { "2", "SEDOL" },
+       { "3", "QUIK" },
+       { "4", "ISIN NUMBER" },
+       { "5", "RIC CODE" },
+       { "6", "ISO CURRENCY CODE" },
+       { "7", "ISO COUNTRY CODE" },
+       { "8", "EXCHANGE SYMBOL" },
+       { "9", "CONSOLIDATED TAPE ASSOCIATION" },
+       { "A", "BLOOMBERG SYMBOL" },
+       { "B", "WERTPAPIER" },
+       { "C", "DUTCH" },
+       { "D", "VALOREN" },
+       { "E", "SICOVAM" },
+       { "F", "BELGIAN" },
+       { "G", "COMMON" },
+       { "H", "CLEARING HOUSE CLEARING ORGANIZATION" },
+       { "I", "ISDA FPML PRODUCT SPECIFICATION" },
+       { "J", "OPTIONS PRICE REPORTING AUTHORITY" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string IOIQltyInd_val[] = { 
+       { 'L', "LOW" },
+       { 'M', "MEDIUM" },
+       { 'H', "HIGH" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string IOITransType_val[] = { 
+       { 'N', "NEW" },
+       { 'C', "CANCEL" },
+       { 'R', "REPLACE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string LastCapacity_val[] = { 
+       { '1', "AGENT" },
+       { '2', "CROSS AS AGENT" },
+       { '3', "CROSS AS PRINCIPAL" },
+       { '4', "PRINCIPAL" },
+       { 0, NULL }
+   };
+
+
+   static const  string_string MsgType_val[] = { 
+       { "0", "HEARTBEAT" },
+       { "1", "TEST REQUEST" },
+       { "2", "RESEND REQUEST" },
+       { "3", "REJECT" },
+       { "4", "SEQUENCE RESET" },
+       { "5", "LOGOUT" },
+       { "6", "INDICATION OF INTEREST" },
+       { "7", "ADVERTISEMENT" },
+       { "8", "EXECUTION REPORT" },
+       { "9", "ORDER CANCEL REJECT" },
+       { "A", "LOGON" },
+       { "B", "NEWS" },
+       { "C", "EMAIL" },
+       { "D", "ORDER SINGLE" },
+       { "E", "ORDER LIST" },
+       { "F", "ORDER CANCEL REQUEST" },
+       { "G", "ORDER CANCEL REPLACE REQUEST" },
+       { "H", "ORDER STATUS REQUEST" },
+       { "J", "ALLOCATION INSTRUCTION" },
+       { "K", "LIST CANCEL REQUEST" },
+       { "L", "LIST EXECUTE" },
+       { "M", "LIST STATUS REQUEST" },
+       { "N", "LIST STATUS" },
+       { "P", "ALLOCATION INSTRUCTION ACK" },
+       { "Q", "DONT KNOW TRADE" },
+       { "R", "QUOTE REQUEST" },
+       { "S", "QUOTE" },
+       { "T", "SETTLEMENT INSTRUCTIONS" },
+       { "V", "MARKET DATA REQUEST" },
+       { "W", "MARKET DATA SNAPSHOT FULL REFRESH" },
+       { "X", "MARKET DATA INCREMENTAL REFRESH" },
+       { "Y", "MARKET DATA REQUEST REJECT" },
+       { "Z", "QUOTE CANCEL" },
+       { "a", "QUOTE STATUS REQUEST" },
+       { "b", "MASS QUOTE ACKNOWLEDGEMENT" },
+       { "c", "SECURITY DEFINITION REQUEST" },
+       { "d", "SECURITY DEFINITION" },
+       { "e", "SECURITY STATUS REQUEST" },
+       { "f", "SECURITY STATUS" },
+       { "g", "TRADING SESSION STATUS REQUEST" },
+       { "h", "TRADING SESSION STATUS" },
+       { "i", "MASS QUOTE" },
+       { "j", "BUSINESS MESSAGE REJECT" },
+       { "k", "BID REQUEST" },
+       { "l", "BID RESPONSE" },
+       { "m", "LIST STRIKE PRICE" },
+       { "n", "XML MESSAGE" },
+       { "o", "REGISTRATION INSTRUCTIONS" },
+       { "p", "REGISTRATION INSTRUCTIONS RESPONSE" },
+       { "q", "ORDER MASS CANCEL REQUEST" },
+       { "r", "ORDER MASS CANCEL REPORT" },
+       { "s", "NEW ORDER CROSS" },
+       { "t", "CROSS ORDER CANCEL REPLACE REQUEST" },
+       { "u", "CROSS ORDER CANCEL REQUEST" },
+       { "v", "SECURITY TYPE REQUEST" },
+       { "w", "SECURITY TYPES" },
+       { "x", "SECURITY LIST REQUEST" },
+       { "y", "SECURITY LIST" },
+       { "z", "DERIVATIVE SECURITY LIST REQUEST" },
+       { "AA", "DERIVATIVE SECURITY LIST" },
+       { "AB", "NEW ORDER MULTILEG" },
+       { "AC", "MULTILEG ORDER CANCEL REPLACE" },
+       { "AD", "TRADE CAPTURE REPORT REQUEST" },
+       { "AE", "TRADE CAPTURE REPORT" },
+       { "AF", "ORDER MASS STATUS REQUEST" },
+       { "AG", "QUOTE REQUEST REJECT" },
+       { "AH", "RFQ REQUEST" },
+       { "AI", "QUOTE STATUS REPORT" },
+       { "AJ", "QUOTE RESPONSE" },
+       { "AK", "CONFIRMATION" },
+       { "AL", "POSITION MAINTENANCE REQUEST" },
+       { "AM", "POSITION MAINTENANCE REPORT" },
+       { "AN", "REQUEST FOR POSITIONS" },
+       { "AO", "REQUEST FOR POSITIONS ACK" },
+       { "AP", "POSITION REPORT" },
+       { "AQ", "TRADE CAPTURE REPORT REQUEST ACK" },
+       { "AR", "TRADE CAPTURE REPORT ACK" },
+       { "AS", "ALLOCATION REPORT" },
+       { "AT", "ALLOCATION REPORT ACK" },
+       { "AU", "CONFIRMATION ACK" },
+       { "AV", "SETTLEMENT INSTRUCTION REQUEST" },
+       { "AW", "ASSIGNMENT REPORT" },
+       { "AX", "COLLATERAL REQUEST" },
+       { "AY", "COLLATERAL ASSIGNMENT" },
+       { "AZ", "COLLATERAL RESPONSE" },
+       { "BA", "COLLATERAL REPORT" },
+       { "BB", "COLLATERAL INQUIRY" },
+       { "BC", "NETWORK STATUS REQUEST" },
+       { "BD", "NETWORK STATUS RESPONSE" },
+       { "BE", "USER REQUEST" },
+       { "BF", "USER RESPONSE" },
+       { "BG", "COLLATERAL INQUIRY ACK" },
+       { "BH", "CONFIRMATION REQUEST" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string OrdStatus_val[] = { 
+       { '0', "NEW" },
+       { '1', "PARTIALLY FILLED" },
+       { '2', "FILLED" },
+       { '3', "DONE FOR DAY" },
+       { '4', "CANCELED" },
+       { '5', "REPLACED" },
+       { '6', "PENDING CANCEL" },
+       { '7', "STOPPED" },
+       { '8', "REJECTED" },
+       { '9', "SUSPENDED" },
+       { 'A', "PENDING NEW" },
+       { 'B', "CALCULATED" },
+       { 'C', "EXPIRED" },
+       { 'D', "ACCEPTED FOR BIDDING" },
+       { 'E', "PENDING REPLACE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string OrdType_val[] = { 
+       { '1', "MARKET" },
+       { '2', "LIMIT" },
+       { '3', "STOP" },
+       { '4', "STOP LIMIT" },
+       { '5', "MARKET ON CLOSE" },
+       { '6', "WITH OR WITHOUT" },
+       { '7', "LIMIT OR BETTER" },
+       { '8', "LIMIT WITH OR WITHOUT" },
+       { '9', "ON BASIS" },
+       { 'A', "ON CLOSE" },
+       { 'B', "LIMIT ON CLOSE" },
+       { 'C', "FOREX MARKET" },
+       { 'D', "PREVIOUSLY QUOTED" },
+       { 'E', "PREVIOUSLY INDICATED" },
+       { 'F', "FOREX LIMIT" },
+       { 'G', "FOREX SWAP" },
+       { 'H', "FOREX PREVIOUSLY QUOTED" },
+       { 'I', "FUNARI" },
+       { 'J', "MARKET IF TOUCHED" },
+       { 'K', "MARKET WITH LEFTOVER AS LIMIT" },
+       { 'L', "PREVIOUS FUND VALUATION POINT" },
+       { 'M', "NEXT FUND VALUATION POINT" },
+       { 'P', "PEGGED" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string Rule80A_val[] = { 
+       { 'A', "AGENCY SINGLE ORDER" },
+       { 'B', "SHORT EXEMPT TRANSACTION REFER TO A TYPE" },
+       { 'C', "PROGRAM ORDER NON INDEX ARB FOR MEMBER FIRM" },
+       { 'D', "PROGRAM ORDER INDEX ARB FOR MEMBER FIRM" },
+       { 'E', "SHORT EXEMPT TRANSACTION FOR PRINCIPAL" },
+       { 'F', "SHORT EXEMPT TRANSACTION REFER TO W TYPE" },
+       { 'H', "SHORT EXEMPT TRANSACTION REFER TO I TYPE" },
+       { 'I', "INDIVIDUAL INVESTOR" },
+       { 'J', "PROGRAM ORDER INDEX ARB FOR INDIVIDUAL CUSTOMER" },
+       { 'K', "PROGRAM ORDER NON INDEX ARB FOR INDIVIDUAL CUSTOMER" },
+       { 'L', "SHORT EXEMPT AFFILIATED" },
+       { 'M', "PROGRAM ORDER INDEX ARB FOR OTHER MEMBER" },
+       { 'N', "PROGRAM ORDER NON INDEX ARB FOR OTHER MEMBER" },
+       { 'O', "PROPRIETARY AFFILIATED" },
+       { 'P', "PRINCIPAL" },
+       { 'R', "TRANSACTIONS NON MEMBER" },
+       { 'S', "SPECIALIST TRADES" },
+       { 'T', "TRANSACTIONS UNAFFILIATED MEMBER" },
+       { 'U', "PROGRAM ORDER INDEX ARB FOR OTHER AGENCY" },
+       { 'W', "ALL OTHER ORDERS AS AGENT FOR OTHER MEMBER" },
+       { 'X', "SHORT EXEMPT NOT AFFILIATED" },
+       { 'Y', "PROGRAM ORDER NON INDEX ARB FOR OTHER AGENCY" },
+       { 'Z', "SHORT EXEMPT NONMEMBER" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string Side_val[] = { 
+       { '1', "BUY" },
+       { '2', "SELL" },
+       { '3', "BUY MINUS" },
+       { '4', "SELL PLUS" },
+       { '5', "SELL SHORT" },
+       { '6', "SELL SHORT EXEMPT" },
+       { '7', "UNDISCLOSED" },
+       { '8', "CROSS" },
+       { '9', "CROSS SHORT" },
+       { 'A', "CROSS SHORT EXEMPT" },
+       { 'B', "AS DEFINED" },
+       { 'C', "OPPOSITE" },
+       { 'D', "SUBSCRIBE" },
+       { 'E', "REDEEM" },
+       { 'F', "LEND" },
+       { 'G', "BORROW" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string TimeInForce_val[] = { 
+       { '0', "DAY" },
+       { '1', "GOOD TILL CANCEL" },
+       { '2', "AT THE OPENING" },
+       { '3', "IMMEDIATE OR CANCEL" },
+       { '4', "FILL OR KILL" },
+       { '5', "GOOD TILL CROSSING" },
+       { '6', "GOOD TILL DATE" },
+       { '7', "AT THE CLOSE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string Urgency_val[] = { 
+       { '0', "NORMAL" },
+       { '1', "FLASH" },
+       { '2', "BACKGROUND" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string SettlType_val[] = { 
+       { '0', "REGULAR" },
+       { '1', "CASH" },
+       { '2', "NEXT DAY" },
+       { '3', "T PLUS 2" },
+       { '4', "T PLUS 3" },
+       { '5', "T PLUS 4" },
+       { '6', "FUTURE" },
+       { '7', "WHEN AND IF ISSUED" },
+       { '8', "SELLERS OPTION" },
+       { '9', "T PLUS 5" },
+       { 0, NULL }
+   };
+
+
+   static const  string_string SymbolSfx_val[] = { 
+       { "WI", "WHEN ISSUED" },
+       { "CD", "A EUCP WITH LUMP SUM INTEREST" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string AllocTransType_val[] = { 
+       { '0', "NEW" },
+       { '1', "REPLACE" },
+       { '2', "CANCEL" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string PositionEffect_val[] = { 
+       { 'O', "OPEN" },
+       { 'C', "CLOSE" },
+       { 'R', "ROLLED" },
+       { 'F', "FIFO" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string ProcessCode_val[] = { 
+       { '0', "REGULAR" },
+       { '1', "SOFT DOLLAR" },
+       { '2', "STEP IN" },
+       { '3', "STEP OUT" },
+       { '4', "SOFT DOLLAR STEP IN" },
+       { '5', "SOFT DOLLAR STEP OUT" },
+       { '6', "PLAN SPONSOR" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string AllocStatus_val[] = { 
+       { 0, "ACCEPTED" },
+       { 1, "BLOCK LEVEL REJECT" },
+       { 2, "ACCOUNT LEVEL REJECT" },
+       { 3, "RECEIVED" },
+       { 4, "INCOMPLETE" },
+       { 5, "REJECTED BY INTERMEDIARY" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string AllocRejCode_val[] = { 
+       { 0, "UNKNOWN ACCOUNT" },
+       { 1, "INCORRECT QUANTITY" },
+       { 2, "INCORRECT AVERAGE PRICE" },
+       { 3, "UNKNOWN EXECUTING BROKER MNEMONIC" },
+       { 4, "COMMISSION DIFFERENCE" },
+       { 5, "UNKNOWN ORDERID" },
+       { 6, "UNKNOWN LISTID" },
+       { 7, "OTHER" },
+       { 8, "INCORRECT ALLOCATED QUANTITY" },
+       { 9, "CALCULATION DIFFERENCE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string EmailType_val[] = { 
+       { '0', "NEW" },
+       { '1', "REPLY" },
+       { '2', "ADMIN REPLY" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string EncryptMethod_val[] = { 
+       { 0, "NONE OTHER" },
+       { 1, "PKCS" },
+       { 2, "DES" },
+       { 3, "PKCS DES" },
+       { 4, "PGP DES" },
+       { 5, "PGP DES MD5" },
+       { 6, "PEM DES MD5" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string CxlRejReason_val[] = { 
+       { 0, "TOO LATE TO CANCEL" },
+       { 1, "UNKNOWN ORDER" },
+       { 2, "BROKER EXCHANGE OPTION" },
+       { 3, "ORDER ALREADY IN PENDING CANCEL OR PENDING REPLACE STATUS" },
+       { 4, "UNABLE TO PROCESS ORDER MASS CANCEL REQUEST" },
+       { 5, "ORIGORDMODTIME DID NOT MATCH LAST TRANSACTTIME OF ORDER" },
+       { 6, "DUPLICATE CLORDID RECEIVED" },
+       { 99, "OTHER" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string OrdRejReason_val[] = { 
+       { 0, "BROKER EXCHANGE OPTION" },
+       { 1, "UNKNOWN SYMBOL" },
+       { 2, "EXCHANGE CLOSED" },
+       { 3, "ORDER EXCEEDS LIMIT" },
+       { 4, "TOO LATE TO ENTER" },
+       { 5, "UNKNOWN ORDER" },
+       { 6, "DUPLICATE ORDER" },
+       { 7, "DUPLICATE OF A VERBALLY COMMUNICATED ORDER" },
+       { 8, "STALE ORDER" },
+       { 9, "TRADE ALONG REQUIRED" },
+       { 10, "INVALID INVESTOR ID" },
+       { 11, "UNSUPPORTED ORDER CHARACTERISTIC" },
+       { 12, "SURVEILLENCE OPTION" },
+       { 13, "INCORRECT QUANTITY" },
+       { 14, "INCORRECT ALLOCATED QUANTITY" },
+       { 15, "UNKNOWN ACCOUNT" },
+       { 99, "OTHER" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string IOIQualifier_val[] = { 
+       { 'A', "ALL OR NONE" },
+       { 'B', "MARKET ON CLOSE" },
+       { 'C', "AT THE CLOSE" },
+       { 'D', "VWAP" },
+       { 'I', "IN TOUCH WITH" },
+       { 'L', "LIMIT" },
+       { 'M', "MORE BEHIND" },
+       { 'O', "AT THE OPEN" },
+       { 'P', "TAKING A POSITION" },
+       { 'Q', "AT THE MARKET" },
+       { 'R', "READY TO TRADE" },
+       { 'S', "PORTFOLIO SHOWN" },
+       { 'T', "THROUGH THE DAY" },
+       { 'V', "VERSUS" },
+       { 'W', "INDICATION WORKING AWAY" },
+       { 'X', "CROSSING OPPORTUNITY" },
+       { 'Y', "AT THE MIDPOINT" },
+       { 'Z', "PRE OPEN" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string DKReason_val[] = { 
+       { 'A', "UNKNOWN SYMBOL" },
+       { 'B', "WRONG SIDE" },
+       { 'C', "QUANTITY EXCEEDS ORDER" },
+       { 'D', "NO MATCHING ORDER" },
+       { 'E', "PRICE EXCEEDS LIMIT" },
+       { 'F', "CALCULATION DIFFERENCE" },
+       { 'Z', "OTHER" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string MiscFeeType_val[] = { 
+       { '1', "REGULATORY" },
+       { '2', "TAX" },
+       { '3', "LOCAL COMMISSION" },
+       { '4', "EXCHANGE FEES" },
+       { '5', "STAMP" },
+       { '6', "LEVY" },
+       { '7', "OTHER" },
+       { '8', "MARKUP" },
+       { '9', "CONSUMPTION TAX" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string ExecType_val[] = { 
+       { '0', "NEW" },
+       { '1', "PARTIAL FILL" },
+       { '2', "FILL" },
+       { '3', "DONE FOR DAY" },
+       { '4', "CANCELED" },
+       { '5', "REPLACE" },
+       { '6', "PENDING CANCEL" },
+       { '7', "STOPPED" },
+       { '8', "REJECTED" },
+       { '9', "SUSPENDED" },
+       { 'A', "PENDING NEW" },
+       { 'B', "CALCULATED" },
+       { 'C', "EXPIRED" },
+       { 'D', "RESTATED" },
+       { 'E', "PENDING REPLACE" },
+       { 'F', "TRADE" },
+       { 'G', "TRADE CORRECT" },
+       { 'H', "TRADE CANCEL" },
+       { 'I', "ORDER STATUS" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string SettlCurrFxRateCalc_val[] = { 
+       { 'M', "MULTIPLY" },
+       { 'D', "DIVIDE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string SettlInstMode_val[] = { 
+       { '0', "DEFAULT" },
+       { '1', "STANDING INSTRUCTIONS PROVIDED" },
+       { '4', "SPECIFIC ORDER FOR A SINGLE ACCOUNT" },
+       { '5', "REQUEST REJECT" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string SettlInstTransType_val[] = { 
+       { 'N', "NEW" },
+       { 'C', "CANCEL" },
+       { 'R', "REPLACE" },
+       { 'T', "RESTATE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string SettlInstSource_val[] = { 
+       { '1', "BROKERS INSTRUCTIONS" },
+       { '2', "INSTITUTIONS INSTRUCTIONS" },
+       { '3', "INVESTOR" },
+       { 0, NULL }
+   };
+
+
+   static const  string_string SettlLocation_val[] = { 
+       { "CED", "CEDEL" },
+       { "DTC", "DEPOSITORY TRUST COMPANY" },
+       { "EUR", "EUROCLEAR" },
+       { "FED", "FEDERAL BOOK ENTRY" },
+       { "PED", "PHYSICAL" },
+       { "PTC", "PARTICIPANT TRUST COMPANY ISO COUNTRY" },
+       { 0, NULL }
+   };
+
+
+   static const  string_string SecurityType_val[] = { 
+       { "EUSUPRA", "EURO SUPRANATIONAL COUPONS" },
+       { "FAC", "FEDERAL AGENCY COUPON" },
+       { "FADN", "FEDERAL AGENCY DISCOUNT NOTE" },
+       { "PEF", "PRIVATE EXPORT FUNDING" },
+       { "SUPRA", "USD SUPRANATIONAL COUPONS" },
+       { "FUT", "FUTURE" },
+       { "OPT", "OPTION" },
+       { "CORP", "CORPORATE BOND" },
+       { "CPP", "CORPORATE PRIVATE PLACEMENT" },
+       { "CB", "CONVERTIBLE BOND" },
+       { "DUAL", "DUAL CURRENCY" },
+       { "EUCORP", "EURO CORPORATE BOND" },
+       { "XLINKD", "INDEXED LINKED" },
+       { "STRUCT", "STRUCTURED NOTES" },
+       { "YANK", "YANKEE CORPORATE BOND" },
+       { "FOR", "FOREIGN EXCHANGE CONTRACT" },
+       { "CS", "COMMON STOCK" },
+       { "PS", "PREFERRED STOCK" },
+       { "BRADY", "BRADY BOND" },
+       { "EUSOV", "EURO SOVEREIGNS" },
+       { "TBOND", "US TREASURY BOND" },
+       { "TINT", "INTEREST STRIP FROM ANY BOND OR NOTE" },
+       { "TIPS", "TREASURY INFLATION PROTECTED SECURITIES" },
+       { "TCAL", "PRINCIPAL STRIP OF A CALLABLE BOND OR NOTE" },
+       { "TPRN", "PRINCIPAL STRIP FROM A NON CALLABLE BOND OR NOTE" },
+       { "TNOTE", "US TREASURY NOTE" },
+       { "TBILL", "US TREASURY BILL" },
+       { "REPO", "REPURCHASE" },
+       { "FORWARD", "FORWARD" },
+       { "BUYSELL", "BUY SELLBACK" },
+       { "SECLOAN", "SECURITIES LOAN" },
+       { "SECPLEDGE", "SECURITIES PLEDGE" },
+       { "TERM", "TERM LOAN" },
+       { "RVLV", "REVOLVER LOAN" },
+       { "RVLVTRM", "REVOLVER TERM LOAN" },
+       { "BRIDGE", "BRIDGE LOAN" },
+       { "LOFC", "LETTER OF CREDIT" },
+       { "SWING", "SWING LINE FACILITY" },
+       { "DINP", "DEBTOR IN POSSESSION" },
+       { "DEFLTED", "DEFAULTED" },
+       { "WITHDRN", "WITHDRAWN" },
+       { "REPLACD", "REPLACED" },
+       { "MATURED", "MATURED" },
+       { "AMENDED", "AMENDED AND RESTATED" },
+       { "RETIRED", "RETIRED" },
+       { "BA", "BANKERS ACCEPTANCE" },
+       { "BN", "BANK NOTES" },
+       { "BOX", "BILL OF EXCHANGES" },
+       { "CD", "CERTIFICATE OF DEPOSIT" },
+       { "CL", "CALL LOANS" },
+       { "CP", "COMMERCIAL PAPER" },
+       { "DN", "DEPOSIT NOTES" },
+       { "EUCD", "EURO CERTIFICATE OF DEPOSIT" },
+       { "EUCP", "EURO COMMERCIAL PAPER" },
+       { "LQN", "LIQUIDITY NOTE" },
+       { "MTN", "MEDIUM TERM NOTES" },
+       { "ONITE", "OVERNIGHT" },
+       { "PN", "PROMISSORY NOTE" },
+       { "PZFJ", "PLAZOS FIJOS" },
+       { "STN", "SHORT TERM LOAN NOTE" },
+       { "TD", "TIME DEPOSIT" },
+       { "XCN", "EXTENDED COMM NOTE" },
+       { "YCD", "YANKEE CERTIFICATE OF DEPOSIT" },
+       { "ABS", "ASSET BACKED SECURITIES" },
+       { "CMBS", "CORP MORTGAGE BACKED SECURITIES" },
+       { "CMO", "COLLATERALIZED MORTGAGE OBLIGATION" },
+       { "IET", "IOETTE MORTGAGE" },
+       { "MBS", "MORTGAGE BACKED SECURITIES" },
+       { "MIO", "MORTGAGE INTEREST ONLY" },
+       { "MPO", "MORTGAGE PRINCIPAL ONLY" },
+       { "MPP", "MORTGAGE PRIVATE PLACEMENT" },
+       { "MPT", "MISCELLANEOUS PASS THROUGH" },
+       { "PFAND", "PFANDBRIEFE" },
+       { "TBA", "TO BE ANNOUNCED" },
+       { "AN", "OTHER ANTICIPATION NOTES" },
+       { "COFO", "CERTIFICATE OF OBLIGATION" },
+       { "COFP", "CERTIFICATE OF PARTICIPATION" },
+       { "GO", "GENERAL OBLIGATION BONDS" },
+       { "MT", "MANDATORY TENDER" },
+       { "RAN", "REVENUE ANTICIPATION NOTE" },
+       { "REV", "REVENUE BONDS" },
+       { "SPCLA", "SPECIAL ASSESSMENT" },
+       { "SPCLO", "SPECIAL OBLIGATION" },
+       { "SPCLT", "SPECIAL TAX" },
+       { "TAN", "TAX ANTICIPATION NOTE" },
+       { "TAXA", "TAX ALLOCATION" },
+       { "TECP", "TAX EXEMPT COMMERCIAL PAPER" },
+       { "TRAN", "TAX AND REVENUE ANTICIPATION NOTE" },
+       { "VRDN", "VARIABLE RATE DEMAND NOTE" },
+       { "WAR", "WARRANT" },
+       { "MF", "MUTUAL FUND" },
+       { "MLEG", "MULTI LEG INSTRUMENT" },
+       { "NONE", "NO SECURITY TYPE" },
+       { "?", "WILDCARD" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string StandInstDbType_val[] = { 
+       { 0, "OTHER" },
+       { 1, "DTC SID" },
+       { 2, "THOMSON ALERT" },
+       { 3, "A GLOBAL CUSTODIAN" },
+       { 4, "ACCOUNTNET" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string SettlDeliveryType_val[] = { 
+       { 0, "VERSUS PAYMENT" },
+       { 1, "FREE" },
+       { 2, "TRI PARTY" },
+       { 3, "HOLD IN CUSTODY" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string AllocLinkType_val[] = { 
+       { 0, "F X NETTING" },
+       { 1, "F X SWAP" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string PutOrCall_val[] = { 
+       { 0, "PUT" },
+       { 1, "CALL" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string CoveredOrUncovered_val[] = { 
+       { 0, "COVERED" },
+       { 1, "UNCOVERED" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string CustomerOrFirm_val[] = { 
+       { 0, "CUSTOMER" },
+       { 1, "FIRM" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string AllocHandlInst_val[] = { 
+       { 1, "MATCH" },
+       { 2, "FORWARD" },
+       { 3, "FORWARD AND MATCH" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string RoutingType_val[] = { 
+       { 1, "TARGET FIRM" },
+       { 2, "TARGET LIST" },
+       { 3, "BLOCK FIRM" },
+       { 4, "BLOCK LIST" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string Benchmark_val[] = { 
+       { '1', "CURVE" },
+       { '2', "FIVEYR" },
+       { '3', "OLD5" },
+       { '4', "TENYR" },
+       { '5', "OLD10" },
+       { '6', "THIRTYYR" },
+       { '7', "OLD30" },
+       { '8', "THREEMOLIBOR" },
+       { '9', "SIXMOLIBOR" },
+       { 0, NULL }
+   };
+
+
+   static const  string_string BenchmarkCurveName_val[] = { 
+       { "MuniAAA", "MUNIAAA" },
+       { "FutureSWAP", "FUTURESWAP" },
+       { "LIBID", "LIBID" },
+       { "LIBOR", "LIBOR" },
+       { "OTHER", "OTHER" },
+       { "SWAP", "SWAP" },
+       { "Treasury", "TREASURY" },
+       { "Euribor", "EURIBOR" },
+       { "Pfandbriefe", "PFANDBRIEFE" },
+       { "EONIA", "EONIA" },
+       { "SONIA", "SONIA" },
+       { "EUREPO", "EUREPO" },
+       { 0, NULL }
+   };
+
+
+   static const  string_string StipulationType_val[] = { 
+       { "AMT", "AMT" },
+       { "AUTOREINV", "AUTO REINVESTMENT AT OR BETTER" },
+       { "BANKQUAL", "BANK QUALIFIED" },
+       { "BGNCON", "BARGAIN CONDITIONS" },
+       { "COUPON", "COUPON RANGE" },
+       { "CURRENCY", "ISO CURRENCY CODE" },
+       { "CUSTOMDATE", "CUSTOM START END DATE" },
+       { "GEOG", "GEOGRAPHICS AND PERCENT RANGE" },
+       { "HAIRCUT", "VALUATION DISCOUNT" },
+       { "INSURED", "INSURED" },
+       { "ISSUE", "YEAR OR YEAR MONTH OF ISSUE" },
+       { "ISSUER", "ISSUERS TICKER" },
+       { "ISSUESIZE", "ISSUE SIZE RANGE" },
+       { "LOOKBACK", "LOOKBACK DAYS" },
+       { "LOT", "EXPLICIT LOT IDENTIFIER" },
+       { "LOTVAR", "LOT VARIANCE" },
+       { "MAT", "MATURITY YEAR AND MONTH" },
+       { "MATURITY", "MATURITY RANGE" },
+       { "MAXSUBS", "MAXIMUM SUBSTITUTIONS" },
+       { "MINQTY", "MINIMUM QUANTITY" },
+       { "MININCR", "MINIMUM INCREMENT" },
+       { "MINDNOM", "MINIMUM DENOMINATION" },
+       { "PAYFREQ", "PAYMENT FREQUENCY CALENDAR" },
+       { "PIECES", "NUMBER OF PIECES" },
+       { "PMAX", "POOLS MAXIMUM" },
+       { "PPM", "POOLS PER MILLION" },
+       { "PPL", "POOLS PER LOT" },
+       { "PPT", "POOLS PER TRADE" },
+       { "PRICE", "PRICE RANGE" },
+       { "PRICEFREQ", "PRICING FREQUENCY" },
+       { "PROD", "PRODUCTION YEAR" },
+       { "PROTECT", "CALL PROTECTION" },
+       { "PURPOSE", "PURPOSE" },
+       { "PXSOURCE", "BENCHMARK PRICE SOURCE" },
+       { "RATING", "RATING SOURCE AND RANGE" },
+       { "RESTRICTED", "RESTRICTED" },
+       { "SECTOR", "MARKET SECTOR" },
+       { "SECTYPE", "SECURITYTYPE INCLUDED OR EXCLUDED" },
+       { "STRUCT", "STRUCTURE" },
+       { "SUBSFREQ", "SUBSTITUTIONS FREQUENCY" },
+       { "SUBSLEFT", "SUBSTITUTIONS LEFT" },
+       { "TEXT", "FREEFORM TEXT" },
+       { "TRDVAR", "TRADE VARIANCE" },
+       { "WAC", "WEIGHTED AVERAGE COUPON" },
+       { "WAL", "WEIGHTED AVERAGE LIFE COUPON" },
+       { "WALA", "WEIGHTED AVERAGE LOAN AGE" },
+       { "WAM", "WEIGHTED AVERAGE MATURITY" },
+       { "WHOLE", "WHOLE POOL" },
+       { "YIELD", "YIELD RANGE" },
+       { "SMM", "SINGLE MONTHLY MORTALITY" },
+       { "CPR", "CONSTANT PREPAYMENT RATE" },
+       { "CPY", "CONSTANT PREPAYMENT YIELD" },
+       { "CPP", "CONSTANT PREPAYMENT PENALTY" },
+       { "ABS", "ABSOLUTE PREPAYMENT SPEED" },
+       { "MPR", "MONTHLY PREPAYMENT RATE" },
+       { "PSA", "PERCENT OF BMA PREPAYMENT CURVE" },
+       { "PPC", "PERCENT OF PROSPECTUS PREPAYMENT CURVE" },
+       { "MHP", "PERCENT OF MANUFACTURED HOUSING PREPAYMENT CURVE" },
+       { "HEP", "FINAL CPR OF HOME EQUITY PREPAYMENT CURVE" },
+       { 0, NULL }
+   };
+
+
+   static const  string_string StipulationValue_val[] = { 
+       { "CD", "SPECIAL CUM DIVIDEND" },
+       { "XD", "SPECIAL EX DIVIDEND" },
+       { "CC", "SPECIAL CUM COUPON" },
+       { "XC", "SPECIAL EX COUPON" },
+       { "CB", "SPECIAL CUM BONUS" },
+       { "XB", "SPECIAL EX BONUS" },
+       { "CR", "SPECIAL CUM RIGHTS" },
+       { "XR", "SPECIAL EX RIGHTS" },
+       { "CP", "SPECIAL CUM CAPITAL REPAYMENTS" },
+       { "XP", "SPECIAL EX CAPITAL REPAYMENTS" },
+       { "CS", "CASH SETTLEMENT" },
+       { "SP", "SPECIAL PRICE" },
+       { "TR", "REPORT FOR EUROPEAN EQUITY MARKET SECURITIES" },
+       { "GD", "GUARANTEED DELIVERY" },
+       { 0, NULL }
+   };
+
+
+   static const  string_string YieldType_val[] = { 
+       { "AFTERTAX", "AFTER TAX YIELD" },
+       { "ANNUAL", "ANNUAL YIELD" },
+       { "ATISSUE", "YIELD AT ISSUE" },
+       { "AVGMATURITY", "YIELD TO AVERAGE MATURITY" },
+       { "BOOK", "BOOK YIELD" },
+       { "CALL", "YIELD TO NEXT CALL" },
+       { "CHANGE", "YIELD CHANGE SINCE CLOSE" },
+       { "CLOSE", "CLOSING YIELD" },
+       { "COMPOUND", "COMPOUND YIELD" },
+       { "CURRENT", "CURRENT YIELD" },
+       { "GROSS", "TRUE GROSS YIELD" },
+       { "GOVTEQUIV", "GOVERNMENT EQUIVALENT YIELD" },
+       { "INFLATION", "YIELD WITH INFLATION ASSUMPTION" },
+       { "INVERSEFLOATER", "INVERSE FLOATER BOND YIELD" },
+       { "LASTCLOSE", "MOST RECENT CLOSING YIELD" },
+       { "LASTMONTH", "CLOSING YIELD MOST RECENT MONTH" },
+       { "LASTQUARTER", "CLOSING YIELD MOST RECENT QUARTER" },
+       { "LASTYEAR", "CLOSING YIELD MOST RECENT YEAR" },
+       { "LONGAVGLIFE", "YIELD TO LONGEST AVERAGE LIFE" },
+       { "MARK", "MARK TO MARKET YIELD" },
+       { "MATURITY", "YIELD TO MATURITY" },
+       { "NEXTREFUND", "YIELD TO NEXT REFUND" },
+       { "OPENAVG", "OPEN AVERAGE YIELD" },
+       { "PUT", "YIELD TO NEXT PUT" },
+       { "PREVCLOSE", "PREVIOUS CLOSE YIELD" },
+       { "PROCEEDS", "PROCEEDS YIELD" },
+       { "SEMIANNUAL", "SEMI ANNUAL YIELD" },
+       { "SHORTAVGLIFE", "YIELD TO SHORTEST AVERAGE LIFE" },
+       { "SIMPLE", "SIMPLE YIELD" },
+       { "TAXEQUIV", "TAX EQUIVALENT YIELD" },
+       { "TENDER", "YIELD TO TENDER DATE" },
+       { "TRUE", "TRUE YIELD" },
+       { "VALUE1_32", "YIELD VALUE OF 1 32" },
+       { "WORST", "YIELD TO WORST" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string SubscriptionRequestType_val[] = { 
+       { '0', "SNAPSHOT" },
+       { '1', "SNAPSHOT PLUS UPDATES" },
+       { '2', "DISABLE PREVIOUS SNAPSHOT PLUS UPDATE REQUEST" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string MDUpdateType_val[] = { 
+       { 0, "FULL REFRESH" },
+       { 1, "INCREMENTAL REFRESH" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string MDEntryType_val[] = { 
+       { '0', "BID" },
+       { '1', "OFFER" },
+       { '2', "TRADE" },
+       { '3', "INDEX VALUE" },
+       { '4', "OPENING PRICE" },
+       { '5', "CLOSING PRICE" },
+       { '6', "SETTLEMENT PRICE" },
+       { '7', "TRADING SESSION HIGH PRICE" },
+       { '8', "TRADING SESSION LOW PRICE" },
+       { '9', "TRADING SESSION VWAP PRICE" },
+       { 'A', "IMBALANCE" },
+       { 'B', "TRADE VOLUME" },
+       { 'C', "OPEN INTEREST" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string TickDirection_val[] = { 
+       { '0', "PLUS TICK" },
+       { '1', "ZERO PLUS TICK" },
+       { '2', "MINUS TICK" },
+       { '3', "ZERO MINUS TICK" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string QuoteCondition_val[] = { 
+       { 'A', "OPEN ACTIVE" },
+       { 'B', "CLOSED INACTIVE" },
+       { 'C', "EXCHANGE BEST" },
+       { 'D', "CONSOLIDATED BEST" },
+       { 'E', "LOCKED" },
+       { 'F', "CROSSED" },
+       { 'G', "DEPTH" },
+       { 'H', "FAST TRADING" },
+       { 'I', "NON FIRM" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string TradeCondition_val[] = { 
+       { 'A', "CASH MARKET" },
+       { 'B', "AVERAGE PRICE TRADE" },
+       { 'C', "CASH TRADE" },
+       { 'D', "NEXT DAY MARKET" },
+       { 'E', "OPENING REOPENING TRADE DETAIL" },
+       { 'F', "INTRADAY TRADE DETAIL" },
+       { 'G', "RULE127" },
+       { 'H', "RULE155" },
+       { 'I', "SOLD LAST" },
+       { 'J', "NEXT DAY TRADE" },
+       { 'K', "OPENED" },
+       { 'L', "SELLER" },
+       { 'M', "SOLD" },
+       { 'N', "STOPPED STOCK" },
+       { 'P', "IMBALANCE MORE BUYERS" },
+       { 'Q', "IMBALANCE MORE SELLERS" },
+       { 'R', "OPENING PRICE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string MDUpdateAction_val[] = { 
+       { '0', "NEW" },
+       { '1', "CHANGE" },
+       { '2', "DELETE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string MDReqRejReason_val[] = { 
+       { '0', "UNKNOWN SYMBOL" },
+       { '1', "DUPLICATE MDREQID" },
+       { '2', "INSUFFICIENT BANDWIDTH" },
+       { '3', "INSUFFICIENT PERMISSIONS" },
+       { '4', "UNSUPPORTED SUBSCRIPTIONREQUESTTYPE" },
+       { '5', "UNSUPPORTED MARKETDEPTH" },
+       { '6', "UNSUPPORTED MDUPDATETYPE" },
+       { '7', "UNSUPPORTED AGGREGATEDBOOK" },
+       { '8', "UNSUPPORTED MDENTRYTYPE" },
+       { '9', "UNSUPPORTED TRADINGSESSIONID" },
+       { 'A', "UNSUPPORTED SCOPE" },
+       { 'B', "UNSUPPORTED OPENCLOSESETTLEFLAG" },
+       { 'C', "UNSUPPORTED MDIMPLICITDELETE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string DeleteReason_val[] = { 
+       { '0', "CANCELATION TRADE BUST" },
+       { '1', "ERROR" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string OpenCloseSettlFlag_val[] = { 
+       { '0', "DAILY OPEN CLOSE SETTLEMENT ENTRY" },
+       { '1', "SESSION OPEN CLOSE SETTLEMENT ENTRY" },
+       { '2', "DELIVERY SETTLEMENT ENTRY" },
+       { '3', "EXPECTED ENTRY" },
+       { '4', "ENTRY FROM PREVIOUS BUSINESS DAY" },
+       { '5', "THEORETICAL PRICE VALUE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string FinancialStatus_val[] = { 
+       { '1', "BANKRUPT" },
+       { '2', "PENDING DELISTING" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string CorporateAction_val[] = { 
+       { 'A', "EX DIVIDEND" },
+       { 'B', "EX DISTRIBUTION" },
+       { 'C', "EX RIGHTS" },
+       { 'D', "NEW" },
+       { 'E', "EX INTEREST" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string QuoteStatus_val[] = { 
+       { 0, "ACCEPTED" },
+       { 1, "CANCELED FOR SYMBOL" },
+       { 2, "CANCELED FOR SECURITY TYPE" },
+       { 3, "CANCELED FOR UNDERLYING" },
+       { 4, "CANCELED ALL" },
+       { 5, "REJECTED" },
+       { 6, "REMOVED FROM MARKET" },
+       { 7, "EXPIRED" },
+       { 8, "QUERY" },
+       { 9, "QUOTE NOT FOUND" },
+       { 10, "PENDING" },
+       { 11, "PASS" },
+       { 12, "LOCKED MARKET WARNING" },
+       { 13, "CROSS MARKET WARNING" },
+       { 14, "CANCELED DUE TO LOCK MARKET" },
+       { 15, "CANCELED DUE TO CROSS MARKET" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string QuoteCancelType_val[] = { 
+       { 1, "CANCEL FOR SYMBOL" },
+       { 2, "CANCEL FOR SECURITY TYPE" },
+       { 3, "CANCEL FOR UNDERLYING SYMBOL" },
+       { 4, "CANCEL ALL QUOTES" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string QuoteRejectReason_val[] = { 
+       { 1, "UNKNOWN SYMBOL" },
+       { 2, "EXCHANGE CLOSED" },
+       { 3, "QUOTE REQUEST EXCEEDS LIMIT" },
+       { 4, "TOO LATE TO ENTER" },
+       { 5, "UNKNOWN QUOTE" },
+       { 6, "DUPLICATE QUOTE" },
+       { 7, "INVALID BID ASK SPREAD" },
+       { 8, "INVALID PRICE" },
+       { 9, "NOT AUTHORIZED TO QUOTE SECURITY" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string QuoteResponseLevel_val[] = { 
+       { 0, "NO ACKNOWLEDGEMENT" },
+       { 1, "ACKNOWLEDGE ONLY NEGATIVE OR ERRONEOUS QUOTES" },
+       { 2, "ACKNOWLEDGE EACH QUOTE MESSAGES" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string QuoteRequestType_val[] = { 
+       { 1, "MANUAL" },
+       { 2, "AUTOMATIC" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string SecurityRequestType_val[] = { 
+       { 0, "REQUEST SECURITY IDENTITY AND SPECIFICATIONS" },
+       { 1, "REQUEST SECURITY IDENTITY FOR THE SPECIFICATIONS PROVIDED" },
+       { 2, "REQUEST LIST SECURITY TYPES" },
+       { 3, "REQUEST LIST SECURITIES" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string SecurityResponseType_val[] = { 
+       { 1, "ACCEPT SECURITY PROPOSAL AS IS" },
+       { 2, "ACCEPT SECURITY PROPOSAL WITH REVISIONS AS INDICATED IN THE MESSAGE" },
+       { 3, "LIST OF SECURITY TYPES RETURNED PER REQUEST" },
+       { 4, "LIST OF SECURITIES RETURNED PER REQUEST" },
+       { 5, "REJECT SECURITY PROPOSAL" },
+       { 6, "CAN NOT MATCH SELECTION CRITERIA" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string SecurityTradingStatus_val[] = { 
+       { 1, "OPENING DELAY" },
+       { 2, "TRADING HALT" },
+       { 3, "RESUME" },
+       { 4, "NO OPEN NO RESUME" },
+       { 5, "PRICE INDICATION" },
+       { 6, "TRADING RANGE INDICATION" },
+       { 7, "MARKET IMBALANCE BUY" },
+       { 8, "MARKET IMBALANCE SELL" },
+       { 9, "MARKET ON CLOSE IMBALANCE BUY" },
+       { 10, "MARKET ON CLOSE IMBALANCE SELL" },
+       { 11, "NOT ASSIGNED" },
+       { 12, "NO MARKET IMBALANCE" },
+       { 13, "NO MARKET ON CLOSE IMBALANCE" },
+       { 14, "ITS PRE OPENING" },
+       { 15, "NEW PRICE INDICATION" },
+       { 16, "TRADE DISSEMINATION TIME" },
+       { 17, "READY TO TRADE START OF SESSION" },
+       { 18, "NOT AVAILABLE FOR TRADING END OF SESSION" },
+       { 19, "NOT TRADED ON THIS MARKET" },
+       { 20, "UNKNOWN OR INVALID" },
+       { 21, "PRE OPEN" },
+       { 22, "OPENING ROTATION" },
+       { 23, "FAST MARKET" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string HaltReason_val[] = { 
+       { 'I', "ORDER IMBALANCE" },
+       { 'X', "EQUIPMENT CHANGEOVER" },
+       { 'P', "NEWS PENDING" },
+       { 'D', "NEWS DISSEMINATION" },
+       { 'E', "ORDER INFLUX" },
+       { 'M', "ADDITIONAL INFORMATION" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string Adjustment_val[] = { 
+       { 1, "CANCEL" },
+       { 2, "ERROR" },
+       { 3, "CORRECTION" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string TradSesMethod_val[] = { 
+       { 1, "ELECTRONIC" },
+       { 2, "OPEN OUTCRY" },
+       { 3, "TWO PARTY" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string TradSesMode_val[] = { 
+       { 1, "TESTING" },
+       { 2, "SIMULATED" },
+       { 3, "PRODUCTION" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string TradSesStatus_val[] = { 
+       { 0, "UNKNOWN" },
+       { 1, "HALTED" },
+       { 2, "OPEN" },
+       { 3, "CLOSED" },
+       { 4, "PRE OPEN" },
+       { 5, "PRE CLOSE" },
+       { 6, "REQUEST REJECTED" },
+       { 0, NULL }
+   };
+
+
+   static const  string_string MessageEncoding_val[] = { 
+       { "ISO-2022-JP", "ISO 2022 JP" },
+       { "EUC-JP", "EUC JP" },
+       { "SHIFT_JIS", "SHIFT JIS" },
+       { "UTF-8", "UTF 8" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string QuoteEntryRejectReason_val[] = { 
+       { 1, "UNKNOWN SYMBOL" },
+       { 2, "EXCHANGE CLOSED" },
+       { 3, "QUOTE EXCEEDS LIMIT" },
+       { 4, "TOO LATE TO ENTER" },
+       { 5, "UNKNOWN QUOTE" },
+       { 6, "DUPLICATE QUOTE" },
+       { 7, "INVALID BID ASK SPREAD" },
+       { 8, "INVALID PRICE" },
+       { 9, "NOT AUTHORIZED TO QUOTE SECURITY" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string SessionRejectReason_val[] = { 
+       { 0, "INVALID TAG NUMBER" },
+       { 1, "REQUIRED TAG MISSING" },
+       { 2, "TAG NOT DEFINED FOR THIS MESSAGE TYPE" },
+       { 3, "UNDEFINED TAG" },
+       { 4, "TAG SPECIFIED WITHOUT A VALUE" },
+       { 5, "VALUE IS INCORRECT" },
+       { 6, "INCORRECT DATA FORMAT FOR VALUE" },
+       { 7, "DECRYPTION PROBLEM" },
+       { 8, "SIGNATURE PROBLEM" },
+       { 9, "COMPID PROBLEM" },
+       { 10, "SENDINGTIME ACCURACY PROBLEM" },
+       { 11, "INVALID MSGTYPE" },
+       { 12, "XML VALIDATION ERROR" },
+       { 13, "TAG APPEARS MORE THAN ONCE" },
+       { 14, "TAG SPECIFIED OUT OF REQUIRED ORDER" },
+       { 15, "REPEATING GROUP FIELDS OUT OF ORDER" },
+       { 16, "INCORRECT NUMINGROUP COUNT FOR REPEATING GROUP" },
+       { 17, "NON DATA VALUE INCLUDES FIELD DELIMITER" },
+       { 99, "OTHER" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string BidRequestTransType_val[] = { 
+       { 'N', "NEW" },
+       { 'C', "CANCEL" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string ExecRestatementReason_val[] = { 
+       { 0, "GT CORPORATE ACTION" },
+       { 1, "GT RENEWAL RESTATEMENT" },
+       { 2, "VERBAL CHANGE" },
+       { 3, "REPRICING OF ORDER" },
+       { 4, "BROKER OPTION" },
+       { 5, "PARTIAL DECLINE OF ORDERQTY" },
+       { 6, "CANCEL ON TRADING HALT" },
+       { 7, "CANCEL ON SYSTEM FAILURE" },
+       { 8, "MARKET OPTION" },
+       { 9, "CANCELED NOT BEST" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string BusinessRejectReason_val[] = { 
+       { 0, "OTHER" },
+       { 1, "UNKOWN ID" },
+       { 2, "UNKNOWN SECURITY" },
+       { 3, "UNSUPPORTED MESSAGE TYPE" },
+       { 4, "APPLICATION NOT AVAILABLE" },
+       { 5, "CONDITIONALLY REQUIRED FIELD MISSING" },
+       { 6, "NOT AUTHORIZED" },
+       { 7, "DELIVERTO FIRM NOT AVAILABLE AT THIS TIME" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string MsgDirection_val[] = { 
+       { 'S', "SEND" },
+       { 'R', "RECEIVE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string DiscretionInst_val[] = { 
+       { '0', "RELATED TO DISPLAYED PRICE" },
+       { '1', "RELATED TO MARKET PRICE" },
+       { '2', "RELATED TO PRIMARY PRICE" },
+       { '3', "RELATED TO LOCAL PRIMARY PRICE" },
+       { '4', "RELATED TO MIDPOINT PRICE" },
+       { '5', "RELATED TO LAST TRADE PRICE" },
+       { '6', "RELATED TO VWAP" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string BidType_val[] = { 
+       { 1, "NON DISCLOSED" },
+       { 2, "DISCLOSED STYLE" },
+       { 3, "NO BIDDING PROCESS" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string BidDescriptorType_val[] = { 
+       { 1, "SECTOR" },
+       { 2, "COUNTRY" },
+       { 3, "INDEX" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string SideValueInd_val[] = { 
+       { 1, "SIDEVALUE1" },
+       { 2, "SIDEVALUE2" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string LiquidityIndType_val[] = { 
+       { 1, "FIVEDAY MOVING AVERAGE" },
+       { 2, "TWENTYDAY MOVING AVERAGE" },
+       { 3, "NORMAL MARKET SIZE" },
+       { 4, "OTHER" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string ProgRptReqs_val[] = { 
+       { 1, "BUYSIDE EXPLICITLY REQUESTS STATUS USING STATUSREQUEST" },
+       { 2, "SELLSIDE PERIODICALLY SENDS STATUS USING LISTSTATUS" },
+       { 3, "REAL TIME EXECUTION REPORTS" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string IncTaxInd_val[] = { 
+       { 1, "NET" },
+       { 2, "GROSS" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string BidTradeType_val[] = { 
+       { 'R', "RISK TRADE" },
+       { 'G', "VWAP GUARANTEE" },
+       { 'A', "AGENCY" },
+       { 'J', "GUARANTEED CLOSE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string BasisPxType_val[] = { 
+       { '2', "CLOSING PRICE AT MORNING SESSION" },
+       { '3', "CLOSING PRICE" },
+       { '4', "CURRENT PRICE" },
+       { '5', "SQ" },
+       { '6', "VWAP THROUGH A DAY" },
+       { '7', "VWAP THROUGH A MORNING SESSION" },
+       { '8', "VWAP THROUGH AN AFTERNOON SESSION" },
+       { '9', "VWAP THROUGH A DAY EXCEPT YORI" },
+       { 'A', "VWAP THROUGH A MORNING SESSION EXCEPT YORI" },
+       { 'B', "VWAP THROUGH AN AFTERNOON SESSION EXCEPT YORI" },
+       { 'C', "STRIKE" },
+       { 'D', "OPEN" },
+       { 'Z', "OTHERS" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string PriceType_val[] = { 
+       { 1, "PERCENTAGE" },
+       { 2, "PER UNIT" },
+       { 3, "FIXED AMOUNT" },
+       { 4, "DISCOUNT" },
+       { 5, "PREMIUM" },
+       { 6, "SPREAD" },
+       { 7, "TED PRICE" },
+       { 8, "TED YIELD" },
+       { 9, "YIELD" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string GTBookingInst_val[] = { 
+       { 0, "BOOK OUT ALL TRADES ON DAY OF EXECUTION" },
+       { 1, "ACCUMULATE EXECUTIONS UNTIL ORDER IS FILLED OR EXPIRES" },
+       { 2, "ACCUMULATE UNTIL VERBALLY NOTIFIED OTHERWISE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string ListStatusType_val[] = { 
+       { 1, "ACK" },
+       { 2, "RESPONSE" },
+       { 3, "TIMED" },
+       { 4, "EXECSTARTED" },
+       { 5, "ALLDONE" },
+       { 6, "ALERT" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string NetGrossInd_val[] = { 
+       { 1, "NET" },
+       { 2, "GROSS" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string ListOrderStatus_val[] = { 
+       { 1, "INBIDDINGPROCESS" },
+       { 2, "RECEIVEDFOREXECUTION" },
+       { 3, "EXECUTING" },
+       { 4, "CANCELING" },
+       { 5, "ALERT" },
+       { 6, "ALL DONE" },
+       { 7, "REJECT" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string ListExecInstType_val[] = { 
+       { '1', "IMMEDIATE" },
+       { '2', "WAIT FOR EXECUTE INSTRUCTION" },
+       { '3', "EXCHANGE SWITCH CIV ORDER SELL DRIVEN" },
+       { '4', "EXCHANGE SWITCH CIV ORDER BUY DRIVEN CASH TOP UP" },
+       { '5', "EXCHANGE SWITCH CIV ORDER BUY DRIVEN CASH WITHDRAW" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string CxlRejResponseTo_val[] = { 
+       { '1', "ORDER CANCEL REQUEST" },
+       { '2', "ORDER CANCEL REPLACE REQUEST" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string MultiLegReportingType_val[] = { 
+       { '1', "SINGLE SECURITY" },
+       { '2', "INDIVIDUAL LEG OF A MULTI LEG SECURITY" },
+       { '3', "MULTI LEG SECURITY" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string PartyIDSource_val[] = { 
+       { 'B', "BIC" },
+       { 'C', "GENERALLY ACCEPTED MARKET PARTICIPANT IDENTIFIER" },
+       { 'D', "PROPRIETARY CUSTOM CODE" },
+       { 'E', "ISO COUNTRY CODE" },
+       { 'F', "SETTLEMENT ENTITY LOCATION" },
+       { 'G', "MIC" },
+       { 'H', "CSD PARTICIPANT MEMBER CODE" },
+       { '1', "KOREAN INVESTOR ID" },
+       { '2', "TAIWANESE QUALIFIED FOREIGN INVESTOR ID QFII FID" },
+       { '3', "TAIWANESE TRADING ACCOUNT" },
+       { '4', "MALAYSIAN CENTRAL DEPOSITORY NUMBER" },
+       { '5', "CHINESE B SHARE" },
+       { '6', "UK NATIONAL INSURANCE OR PENSION NUMBER" },
+       { '7', "US SOCIAL SECURITY NUMBER" },
+       { '8', "US EMPLOYER IDENTIFICATION NUMBER" },
+       { '9', "AUSTRALIAN BUSINESS NUMBER" },
+       { 'A', "AUSTRALIAN TAX FILE NUMBER" },
+       { 'I', "DIRECTED BROKER" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string PartyRole_val[] = { 
+       { 1, "EXECUTING FIRM" },
+       { 2, "BROKER OF CREDIT" },
+       { 3, "CLIENT ID" },
+       { 4, "CLEARING FIRM" },
+       { 5, "INVESTOR ID" },
+       { 6, "INTRODUCING FIRM" },
+       { 7, "ENTERING FIRM" },
+       { 8, "LOCATE LENDING FIRM" },
+       { 9, "FUND MANAGER CLIENT ID" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string Product_val[] = { 
+       { 1, "AGENCY" },
+       { 2, "COMMODITY" },
+       { 3, "CORPORATE" },
+       { 4, "CURRENCY" },
+       { 5, "EQUITY" },
+       { 6, "GOVERNMENT" },
+       { 7, "INDEX" },
+       { 8, "LOAN" },
+       { 9, "MONEYMARKET" },
+       { 10, "MORTGAGE" },
+       { 11, "MUNICIPAL" },
+       { 12, "OTHER" },
+       { 13, "FINANCING" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string QuantityType_val[] = { 
+       { 1, "SHARES" },
+       { 2, "BONDS" },
+       { 3, "CURRENTFACE" },
+       { 4, "ORIGINALFACE" },
+       { 5, "CURRENCY" },
+       { 6, "CONTRACTS" },
+       { 7, "OTHER" },
+       { 8, "PAR" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string RoundingDirection_val[] = { 
+       { '0', "ROUND TO NEAREST" },
+       { '1', "ROUND DOWN" },
+       { '2', "ROUND UP" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string DistribPaymentMethod_val[] = { 
+       { 1, "CREST" },
+       { 2, "NSCC" },
+       { 3, "EUROCLEAR" },
+       { 4, "CLEARSTREAM" },
+       { 5, "CHEQUE" },
+       { 6, "TELEGRAPHIC TRANSFER" },
+       { 7, "FEDWIRE" },
+       { 8, "DIRECT CREDIT" },
+       { 9, "ACH CREDIT" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string CancellationRights_val[] = { 
+       { 'N', "NO EXECUTION ONLY" },
+       { 'M', "NO WAIVER AGREEMENT" },
+       { 'O', "NO INSTITUTIONAL" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string MoneyLaunderingStatus_val[] = { 
+       { 'Y', "PASSED" },
+       { 'N', "NOT CHECKED" },
+       { '1', "EXEMPT BELOW THE LIMIT" },
+       { '2', "EXEMPT CLIENT MONEY TYPE EXEMPTION" },
+       { '3', "EXEMPT AUTHORISED CREDIT OR FINANCIAL INSTITUTION" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string ExecPriceType_val[] = { 
+       { 'B', "BID PRICE" },
+       { 'C', "CREATION PRICE" },
+       { 'D', "CREATION PRICE PLUS ADJUSTMENT PERCENT" },
+       { 'E', "CREATION PRICE PLUS ADJUSTMENT AMOUNT" },
+       { 'O', "OFFER PRICE" },
+       { 'P', "OFFER PRICE MINUS ADJUSTMENT PERCENT" },
+       { 'Q', "OFFER PRICE MINUS ADJUSTMENT AMOUNT" },
+       { 'S', "SINGLE PRICE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string TradeReportTransType_val[] = { 
+       { 0, "NEW" },
+       { 1, "CANCEL" },
+       { 2, "REPLACE" },
+       { 3, "RELEASE" },
+       { 4, "REVERSE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string PaymentMethod_val[] = { 
+       { 1, "CREST" },
+       { 2, "NSCC" },
+       { 3, "EUROCLEAR" },
+       { 4, "CLEARSTREAM" },
+       { 5, "CHEQUE" },
+       { 6, "TELEGRAPHIC TRANSFER" },
+       { 7, "FEDWIRE" },
+       { 8, "DEBIT CARD" },
+       { 9, "DIRECT DEBIT" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string TaxAdvantageType_val[] = { 
+       { 0, "NONE" },
+       { 1, "MAXI ISA" },
+       { 2, "TESSA" },
+       { 3, "MINI CASH ISA" },
+       { 4, "MINI STOCKS AND SHARES ISA" },
+       { 5, "MINI INSURANCE ISA" },
+       { 6, "CURRENT YEAR PAYMENT" },
+       { 7, "PRIOR YEAR PAYMENT" },
+       { 8, "ASSET TRANSFER" },
+       { 9, "EMPLOYEE PRIOR YEAR" },
+       { 999, "OTHER" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string FundRenewWaiv_val[] = { 
+       { 'Y', "YES" },
+       { 'N', "NO" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string RegistStatus_val[] = { 
+       { 'A', "ACCEPTED" },
+       { 'R', "REJECTED" },
+       { 'H', "HELD" },
+       { 'N', "REMINDER" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string RegistRejReasonCode_val[] = { 
+       { 1, "INVALID UNACCEPTABLE ACCOUNT TYPE" },
+       { 2, "INVALID UNACCEPTABLE TAX EXEMPT TYPE" },
+       { 3, "INVALID UNACCEPTABLE OWNERSHIP TYPE" },
+       { 4, "INVALID UNACCEPTABLE NO REG DETLS" },
+       { 5, "INVALID UNACCEPTABLE REG SEQ NO" },
+       { 6, "INVALID UNACCEPTABLE REG DTLS" },
+       { 7, "INVALID UNACCEPTABLE MAILING DTLS" },
+       { 8, "INVALID UNACCEPTABLE MAILING INST" },
+       { 9, "INVALID UNACCEPTABLE INVESTOR ID" },
+       { 10, "INVALID UNACCEPTABLE INVESTOR ID SOURCE" },
+       { 11, "INVALID UNACCEPTABLE DATE OF BIRTH" },
+       { 12, "INVALID UNACCEPTABLE INVESTOR COUNTRY OF RESIDENCE" },
+       { 13, "INVALID UNACCEPTABLE NODISTRIBINSTNS" },
+       { 14, "INVALID UNACCEPTABLE DISTRIB PERCENTAGE" },
+       { 15, "INVALID UNACCEPTABLE DISTRIB PAYMENT METHOD" },
+       { 16, "INVALID UNACCEPTABLE CASH DISTRIB AGENT ACCT NAME" },
+       { 17, "INVALID UNACCEPTABLE CASH DISTRIB AGENT CODE" },
+       { 18, "INVALID UNACCEPTABLE CASH DISTRIB AGENT ACCT NUM" },
+       { 99, "OTHER" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string RegistTransType_val[] = { 
+       { '0', "NEW" },
+       { '1', "REPLACE" },
+       { '2', "CANCEL" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string OwnershipType_val[] = { 
+       { 'J', "JOINT INVESTORS" },
+       { 'T', "TENANTS IN COMMON" },
+       { '2', "JOINT TRUSTEES" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string ContAmtType_val[] = { 
+       { 1, "COMMISSION AMOUNT" },
+       { 2, "COMMISSION PERCENT" },
+       { 3, "INITIAL CHARGE AMOUNT" },
+       { 4, "INITIAL CHARGE PERCENT" },
+       { 5, "DISCOUNT AMOUNT" },
+       { 6, "DISCOUNT PERCENT" },
+       { 7, "DILUTION LEVY AMOUNT" },
+       { 8, "DILUTION LEVY PERCENT" },
+       { 9, "EXIT CHARGE AMOUNT" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string OwnerType_val[] = { 
+       { 1, "INDIVIDUAL INVESTOR" },
+       { 2, "PUBLIC COMPANY" },
+       { 3, "PRIVATE COMPANY" },
+       { 4, "INDIVIDUAL TRUSTEE" },
+       { 5, "COMPANY TRUSTEE" },
+       { 6, "PENSION PLAN" },
+       { 7, "CUSTODIAN UNDER GIFTS TO MINORS ACT" },
+       { 8, "TRUSTS" },
+       { 9, "FIDUCIARIES" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string OrderCapacity_val[] = { 
+       { 'A', "AGENCY" },
+       { 'G', "PROPRIETARY" },
+       { 'I', "INDIVIDUAL" },
+       { 'P', "PRINCIPAL" },
+       { 'R', "RISKLESS PRINCIPAL" },
+       { 'W', "AGENT FOR OTHER MEMBER" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string OrderRestrictions_val[] = { 
+       { '1', "PROGRAM TRADE" },
+       { '2', "INDEX ARBITRAGE" },
+       { '3', "NON INDEX ARBITRAGE" },
+       { '4', "COMPETING MARKET MAKER" },
+       { '5', "ACTING AS MARKET MAKER OR SPECIALIST IN THE SECURITY" },
+       { '6', "ACTING AS MARKET MAKER OR SPECIALIST IN THE UNDERLYING SECURITY OF A DERIVATIVE SECURITY" },
+       { '7', "FOREIGN ENTITY" },
+       { '8', "EXTERNAL MARKET PARTICIPANT" },
+       { '9', "EXTERNAL INTER CONNECTED MARKET LINKAGE" },
+       { 'A', "RISKLESS ARBITRAGE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string MassCancelRequestType_val[] = { 
+       { '1', "CANCEL ORDERS FOR A SECURITY" },
+       { '2', "CANCEL ORDERS FOR AN UNDERLYING SECURITY" },
+       { '3', "CANCEL ORDERS FOR A PRODUCT" },
+       { '4', "CANCEL ORDERS FOR A CFICODE" },
+       { '5', "CANCEL ORDERS FOR A SECURITYTYPE" },
+       { '6', "CANCEL ORDERS FOR A TRADING SESSION" },
+       { '7', "CANCEL ALL ORDERS" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string MassCancelResponse_val[] = { 
+       { '0', "CANCEL REQUEST REJECTED" },
+       { '1', "CANCEL ORDERS FOR A SECURITY" },
+       { '2', "CANCEL ORDERS FOR AN UNDERLYING SECURITY" },
+       { '3', "CANCEL ORDERS FOR A PRODUCT" },
+       { '4', "CANCEL ORDERS FOR A CFICODE" },
+       { '5', "CANCEL ORDERS FOR A SECURITYTYPE" },
+       { '6', "CANCEL ORDERS FOR A TRADING SESSION" },
+       { '7', "CANCEL ALL ORDERS" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string MassCancelRejectReason_val[] = { 
+       { '0', "MASS CANCEL NOT SUPPORTED" },
+       { '1', "INVALID OR UNKNOWN SECURITY" },
+       { '2', "INVALID OR UNKNOWN UNDERLYING" },
+       { '3', "INVALID OR UNKNOWN PRODUCT" },
+       { '4', "INVALID OR UNKNOWN CFICODE" },
+       { '5', "INVALID OR UNKNOWN SECURITY TYPE" },
+       { '6', "INVALID OR UNKNOWN TRADING SESSION" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string QuoteType_val[] = { 
+       { 0, "INDICATIVE" },
+       { 1, "TRADEABLE" },
+       { 2, "RESTRICTED TRADEABLE" },
+       { 3, "COUNTER" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string CashMargin_val[] = { 
+       { '1', "CASH" },
+       { '2', "MARGIN OPEN" },
+       { '3', "MARGIN CLOSE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string Scope_val[] = { 
+       { '1', "LOCAL" },
+       { '2', "NATIONAL" },
+       { '3', "GLOBAL" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string CrossType_val[] = { 
+       { 1, "CROSS TRADE WHICH IS EXECUTED COMPLETELY OR NOT" },
+       { 2, "CROSS TRADE WHICH IS EXECUTED PARTIALLY AND THE REST IS CANCELLED" },
+       { 3, "CROSS TRADE WHICH IS PARTIALLY EXECUTED WITH THE UNFILLED PORTIONS REMAINING ACTIVE" },
+       { 4, "CROSS TRADE IS EXECUTED WITH EXISTING ORDERS WITH THE SAME PRICE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string CrossPrioritization_val[] = { 
+       { 0, "NONE" },
+       { 1, "BUY SIDE IS PRIORITIZED" },
+       { 2, "SELL SIDE IS PRIORITIZED" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string NoSides_val[] = { 
+       { '1', "ONE SIDE" },
+       { '2', "BOTH SIDES" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string SecurityListRequestType_val[] = { 
+       { 0, "SYMBOL" },
+       { 1, "SECURITYTYPE AND OR CFICODE" },
+       { 2, "PRODUCT" },
+       { 3, "TRADINGSESSIONID" },
+       { 4, "ALL SECURITIES" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string SecurityRequestResult_val[] = { 
+       { 0, "VALID REQUEST" },
+       { 1, "INVALID OR UNSUPPORTED REQUEST" },
+       { 2, "NO INSTRUMENTS FOUND THAT MATCH SELECTION CRITERIA" },
+       { 3, "NOT AUTHORIZED TO RETRIEVE INSTRUMENT DATA" },
+       { 4, "INSTRUMENT DATA TEMPORARILY UNAVAILABLE" },
+       { 5, "REQUEST FOR INSTRUMENT DATA NOT SUPPORTED" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string MultiLegRptTypeReq_val[] = { 
+       { 0, "REPORT BY MULITLEG SECURITY ONLY" },
+       { 1, "REPORT BY MULTILEG SECURITY AND BY INSTRUMENT LEGS BELONGING TO THE MULTILEG SECURITY" },
+       { 2, "REPORT BY INSTRUMENT LEGS BELONGING TO THE MULTILEG SECURITY ONLY" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string TradSesStatusRejReason_val[] = { 
+       { 1, "UNKNOWN OR INVALID TRADINGSESSIONID" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string TradeRequestType_val[] = { 
+       { 0, "ALL TRADES" },
+       { 1, "MATCHED TRADES MATCHING CRITERIA PROVIDED ON REQUEST" },
+       { 2, "UNMATCHED TRADES THAT MATCH CRITERIA" },
+       { 3, "UNREPORTED TRADES THAT MATCH CRITERIA" },
+       { 4, "ADVISORIES THAT MATCH CRITERIA" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string MatchStatus_val[] = { 
+       { '0', "COMPARED MATCHED OR AFFIRMED" },
+       { '1', "UNCOMPARED UNMATCHED OR UNAFFIRMED" },
+       { '2', "ADVISORY OR ALERT" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string ClearingInstruction_val[] = { 
+       { 0, "PROCESS NORMALLY" },
+       { 1, "EXCLUDE FROM ALL NETTING" },
+       { 2, "BILATERAL NETTING ONLY" },
+       { 3, "EX CLEARING" },
+       { 4, "SPECIAL TRADE" },
+       { 5, "MULTILATERAL NETTING" },
+       { 6, "CLEAR AGAINST CENTRAL COUNTERPARTY" },
+       { 7, "EXCLUDE FROM CENTRAL COUNTERPARTY" },
+       { 8, "MANUAL MODE" },
+       { 9, "AUTOMATIC POSTING MODE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string AccountType_val[] = { 
+       { 1, "ACCOUNT IS CARRIED ON CUSTOMER SIDE OF BOOKS" },
+       { 2, "ACCOUNT IS CARRIED ON NON CUSTOMER SIDE OF BOOKS" },
+       { 3, "HOUSE TRADER" },
+       { 4, "FLOOR TRADER" },
+       { 6, "ACCOUNT IS CARRIED ON NON CUSTOMER SIDE OF BOOKS AND IS CROSS MARGINED" },
+       { 7, "ACCOUNT IS HOUSE TRADER AND IS CROSS MARGINED" },
+       { 8, "JOINT BACKOFFICE ACCOUNT" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string CustOrderCapacity_val[] = { 
+       { 1, "MEMBER TRADING FOR THEIR OWN ACCOUNT" },
+       { 2, "CLEARING FIRM TRADING FOR ITS PROPRIETARY ACCOUNT" },
+       { 3, "MEMBER TRADING FOR ANOTHER MEMBER" },
+       { 4, "ALL OTHER" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string MassStatusReqType_val[] = { 
+       { 1, "STATUS FOR ORDERS FOR A SECURITY" },
+       { 2, "STATUS FOR ORDERS FOR AN UNDERLYING SECURITY" },
+       { 3, "STATUS FOR ORDERS FOR A PRODUCT" },
+       { 4, "STATUS FOR ORDERS FOR A CFICODE" },
+       { 5, "STATUS FOR ORDERS FOR A SECURITYTYPE" },
+       { 6, "STATUS FOR ORDERS FOR A TRADING SESSION" },
+       { 7, "STATUS FOR ALL ORDERS" },
+       { 8, "STATUS FOR ORDERS FOR A PARTYID" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string DayBookingInst_val[] = { 
+       { '0', "CAN TRIGGER BOOKING WITHOUT REFERENCE TO THE ORDER INITIATOR" },
+       { '1', "SPEAK WITH ORDER INITIATOR BEFORE BOOKING" },
+       { '2', "ACCUMULATE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string BookingUnit_val[] = { 
+       { '0', "EACH PARTIAL EXECUTION IS A BOOKABLE UNIT" },
+       { '1', "AGGREGATE PARTIAL EXECUTIONS ON THIS ORDER AND BOOK ONE TRADE PER ORDER" },
+       { '2', "AGGREGATE EXECUTIONS FOR THIS SYMBOL SIDE AND SETTLEMENT DATE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string PreallocMethod_val[] = { 
+       { '0', "PRO RATA" },
+       { '1', "DO NOT PRO RATA" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string AllocType_val[] = { 
+       { 1, "CALCULATED" },
+       { 2, "PRELIMINARY" },
+       { 5, "READY TO BOOK SINGLE ORDER" },
+       { 7, "WAREHOUSE INSTRUCTION" },
+       { 8, "REQUEST TO INTERMEDIARY" },
+       { 0, NULL }
+   };
+
+
+   static const  string_string ClearingFeeIndicator_val[] = { 
+       { "B", "CBOE MEMBER" },
+       { "C", "NON MEMBER AND CUSTOMER" },
+       { "E", "EQUITY MEMBER AND CLEARING MEMBER" },
+       { "F", "FULL AND ASSOCIATE MEMBER TRADING FOR OWN ACCOUNT AND AS FLOOR BROKERS" },
+       { "H", "FIRMS 106H AND 106J" },
+       { "I", "GIM IDEM AND COM MEMBERSHIP INTEREST HOLDERS" },
+       { "L", "LESSEE AND 106F EMPLOYEES" },
+       { "M", "ALL OTHER OWNERSHIP TYPES" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string PriorityIndicator_val[] = { 
+       { 0, "PRIORITY UNCHANGED" },
+       { 1, "LOST PRIORITY AS RESULT OF ORDER CHANGE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string SecDefStatus_val[] = { 
+       { 0, "PENDING APPROVAL" },
+       { 1, "APPROVED" },
+       { 2, "REJECTED" },
+       { 3, "UNAUTHORIZED REQUEST" },
+       { 4, "INVALID DEFINITION REQUEST" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string QuoteRequestRejectReason_val[] = { 
+       { 1, "UNKNOWN SYMBOL" },
+       { 2, "EXCHANGE CLOSED" },
+       { 3, "QUOTE REQUEST EXCEEDS LIMIT" },
+       { 4, "TOO LATE TO ENTER" },
+       { 5, "INVALID PRICE" },
+       { 6, "NOT AUTHORIZED TO REQUEST QUOTE" },
+       { 7, "NO MATCH FOR INQUIRY" },
+       { 8, "NO MARKET FOR INSTRUMENT" },
+       { 9, "NO INVENTORY" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string AcctIDSource_val[] = { 
+       { 1, "BIC" },
+       { 2, "SID CODE" },
+       { 3, "TFM" },
+       { 4, "OMGEO" },
+       { 5, "DTCC CODE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string ConfirmStatus_val[] = { 
+       { 1, "RECEIVED" },
+       { 2, "MISMATCHED ACCOUNT" },
+       { 3, "MISSING SETTLEMENT INSTRUCTIONS" },
+       { 4, "CONFIRMED" },
+       { 5, "REQUEST REJECTED" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string ConfirmTransType_val[] = { 
+       { 0, "NEW" },
+       { 1, "REPLACE" },
+       { 2, "CANCEL" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string DeliveryForm_val[] = { 
+       { 1, "BOOKENTRY" },
+       { 2, "BEARER" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string LegSwapType_val[] = { 
+       { 1, "PAR FOR PAR" },
+       { 2, "MODIFIED DURATION" },
+       { 4, "RISK" },
+       { 5, "PROCEEDS" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string QuotePriceType_val[] = { 
+       { 1, "PERCENT" },
+       { 2, "PER SHARE" },
+       { 3, "FIXED AMOUNT" },
+       { 4, "DISCOUNT" },
+       { 5, "PREMIUM" },
+       { 6, "BASIS POINTS RELATIVE TO BENCHMARK" },
+       { 7, "TED PRICE" },
+       { 8, "TED YIELD" },
+       { 9, "YIELD SPREAD" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string QuoteRespType_val[] = { 
+       { 1, "HIT LIFT" },
+       { 2, "COUNTER" },
+       { 3, "EXPIRED" },
+       { 4, "COVER" },
+       { 5, "DONE AWAY" },
+       { 6, "PASS" },
+       { 0, NULL }
+   };
+
+
+   static const  string_string PosType_val[] = { 
+       { "TQ", "TRANSACTION QUANTITY" },
+       { "IAS", "INTRA SPREAD QTY" },
+       { "IES", "INTER SPREAD QTY" },
+       { "FIN", "END OF DAY QTY" },
+       { "SOD", "START OF DAY QTY" },
+       { "EX", "OPTION EXERCISE QTY" },
+       { "AS", "OPTION ASSIGNMENT" },
+       { "TX", "TRANSACTION FROM EXERCISE" },
+       { "TA", "TRANSACTION FROM ASSIGNMENT" },
+       { "PIT", "PIT TRADE QTY" },
+       { "TRF", "TRANSFER TRADE QTY" },
+       { "ETR", "ELECTRONIC TRADE QTY" },
+       { "ALC", "ALLOCATION TRADE QTY" },
+       { "PA", "ADJUSTMENT QTY" },
+       { "ASF", "AS OF TRADE QTY" },
+       { "DLV", "DELIVERY QTY" },
+       { "TOT", "TOTAL TRANSACTION QTY" },
+       { "XM", "CROSS MARGIN QTY" },
+       { "SPL", "INTEGRAL SPLIT" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string PosQtyStatus_val[] = { 
+       { 0, "SUBMITTED" },
+       { 1, "ACCEPTED" },
+       { 2, "REJECTED" },
+       { 0, NULL }
+   };
+
+
+   static const  string_string PosAmtType_val[] = { 
+       { "FMTM", "FINAL MARK TO MARKET AMOUNT" },
+       { "IMTM", "INCREMENTAL MARK TO MARKET AMOUNT" },
+       { "TVAR", "TRADE VARIATION AMOUNT" },
+       { "SMTM", "START OF DAY MARK TO MARKET AMOUNT" },
+       { "PREM", "PREMIUM AMOUNT" },
+       { "CRES", "CASH RESIDUAL AMOUNT" },
+       { "CASH", "CASH AMOUNT" },
+       { "VADJ", "VALUE ADJUSTED AMOUNT" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string PosTransType_val[] = { 
+       { 1, "EXERCISE" },
+       { 2, "DO NOT EXERCISE" },
+       { 3, "POSITION ADJUSTMENT" },
+       { 4, "POSITION CHANGE SUBMISSION MARGIN DISPOSITION" },
+       { 5, "PLEDGE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string PosMaintAction_val[] = { 
+       { 1, "NEW" },
+       { 2, "REPLACE" },
+       { 3, "CANCEL" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string AdjustmentType_val[] = { 
+       { 0, "PROCESS REQUEST AS MARGIN DISPOSITION" },
+       { 1, "DELTA PLUS" },
+       { 2, "DELTA MINUS" },
+       { 3, "FINAL" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string PosMaintStatus_val[] = { 
+       { 0, "ACCEPTED" },
+       { 1, "ACCEPTED WITH WARNINGS" },
+       { 2, "REJECTED" },
+       { 3, "COMPLETED" },
+       { 4, "COMPLETED WITH WARNINGS" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string PosMaintResult_val[] = { 
+       { 0, "SUCCESSFUL COMPLETION NO WARNINGS OR ERRORS" },
+       { 1, "REJECTED" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string PosReqType_val[] = { 
+       { 0, "POSITIONS" },
+       { 1, "TRADES" },
+       { 2, "EXERCISES" },
+       { 3, "ASSIGNMENTS" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string ResponseTransportType_val[] = { 
+       { 0, "INBAND" },
+       { 1, "OUT OF BAND" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string PosReqResult_val[] = { 
+       { 0, "VALID REQUEST" },
+       { 1, "INVALID OR UNSUPPORTED REQUEST" },
+       { 2, "NO POSITIONS FOUND THAT MATCH CRITERIA" },
+       { 3, "NOT AUTHORIZED TO REQUEST POSITIONS" },
+       { 4, "REQUEST FOR POSITION NOT SUPPORTED" },
+       { 99, "OTHER" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string PosReqStatus_val[] = { 
+       { 0, "COMPLETED" },
+       { 1, "COMPLETED WITH WARNINGS" },
+       { 2, "REJECTED" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string SettlPriceType_val[] = { 
+       { 1, "FINAL" },
+       { 2, "THEORETICAL" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string AssignmentMethod_val[] = { 
+       { 'R', "RANDOM" },
+       { 'P', "PRORATA" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string ExerciseMethod_val[] = { 
+       { 'A', "AUTOMATIC" },
+       { 'M', "MANUAL" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string TradeRequestResult_val[] = { 
+       { 0, "SUCCESSFUL" },
+       { 1, "INVALID OR UNKNOWN INSTRUMENT" },
+       { 2, "INVALID TYPE OF TRADE REQUESTED" },
+       { 3, "INVALID PARTIES" },
+       { 4, "INVALID TRANSPORT TYPE REQUESTED" },
+       { 5, "INVALID DESTINATION REQUESTED" },
+       { 8, "TRADEREQUESTTYPE NOT SUPPORTED" },
+       { 9, "UNAUTHORIZED FOR TRADE CAPTURE REPORT REQUEST" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string TradeRequestStatus_val[] = { 
+       { 0, "ACCEPTED" },
+       { 1, "COMPLETED" },
+       { 2, "REJECTED" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string TradeReportRejectReason_val[] = { 
+       { 0, "SUCCESSFUL" },
+       { 1, "INVALID PARTY INFORMATION" },
+       { 2, "UNKNOWN INSTRUMENT" },
+       { 3, "UNAUTHORIZED TO REPORT TRADES" },
+       { 4, "INVALID TRADE TYPE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string SideMultiLegReportingType_val[] = { 
+       { 1, "SINGLE SECURITY" },
+       { 2, "INDIVIDUAL LEG OF A MULTI LEG SECURITY" },
+       { 3, "MULTI LEG SECURITY" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string TrdRegTimestampType_val[] = { 
+       { 1, "EXECUTION TIME" },
+       { 2, "TIME IN" },
+       { 3, "TIME OUT" },
+       { 4, "BROKER RECEIPT" },
+       { 5, "BROKER EXECUTION" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string ConfirmType_val[] = { 
+       { 1, "STATUS" },
+       { 2, "CONFIRMATION" },
+       { 3, "CONFIRMATION REQUEST REJECTED" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string ConfirmRejReason_val[] = { 
+       { 1, "MISMATCHED ACCOUNT" },
+       { 2, "MISSING SETTLEMENT INSTRUCTIONS" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string BookingType_val[] = { 
+       { 0, "REGULAR BOOKING" },
+       { 1, "CFD" },
+       { 2, "TOTAL RETURN SWAP" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string AllocSettlInstType_val[] = { 
+       { 0, "USE DEFAULT INSTRUCTIONS" },
+       { 1, "DERIVE FROM PARAMETERS PROVIDED" },
+       { 2, "FULL DETAILS PROVIDED" },
+       { 3, "SSI DB IDS PROVIDED" },
+       { 4, "PHONE FOR INSTRUCTIONS" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string DlvyInstType_val[] = { 
+       { 'S', "SECURITIES" },
+       { 'C', "CASH" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string TerminationType_val[] = { 
+       { 1, "OVERNIGHT" },
+       { 2, "TERM" },
+       { 3, "FLEXIBLE" },
+       { 4, "OPEN" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string SettlInstReqRejCode_val[] = { 
+       { 0, "UNABLE TO PROCESS REQUEST" },
+       { 1, "UNKNOWN ACCOUNT" },
+       { 2, "NO MATCHING SETTLEMENT INSTRUCTIONS FOUND" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string AllocReportType_val[] = { 
+       { 3, "SELLSIDE CALCULATED USING PRELIMINARY" },
+       { 4, "SELLSIDE CALCULATED WITHOUT PRELIMINARY" },
+       { 5, "WAREHOUSE RECAP" },
+       { 8, "REQUEST TO INTERMEDIARY" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string AllocCancReplaceReason_val[] = { 
+       { 1, "ORIGINAL DETAILS INCOMPLETE INCORRECT" },
+       { 2, "CHANGE IN UNDERLYING ORDER DETAILS" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string AllocAccountType_val[] = { 
+       { 1, "ACCOUNT IS CARRIED ON CUSTOMER SIDE OF BOOKS" },
+       { 2, "ACCOUNT IS CARRIED ON NON CUSTOMER SIDE OF BOOKS" },
+       { 3, "HOUSE TRADER" },
+       { 4, "FLOOR TRADER" },
+       { 6, "ACCOUNT IS CARRIED ON NON CUSTOMER SIDE OF BOOKS AND IS CROSS MARGINED" },
+       { 7, "ACCOUNT IS HOUSE TRADER AND IS CROSS MARGINED" },
+       { 8, "JOINT BACKOFFICE ACCOUNT" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string AllocIntermedReqType_val[] = { 
+       { 1, "PENDING ACCEPT" },
+       { 2, "PENDING RELEASE" },
+       { 3, "PENDING REVERSAL" },
+       { 4, "ACCEPT" },
+       { 5, "BLOCK LEVEL REJECT" },
+       { 6, "ACCOUNT LEVEL REJECT" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string ApplQueueResolution_val[] = { 
+       { 0, "NO ACTION TAKEN" },
+       { 1, "QUEUE FLUSHED" },
+       { 2, "OVERLAY LAST" },
+       { 3, "END SESSION" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string ApplQueueAction_val[] = { 
+       { 0, "NO ACTION TAKEN" },
+       { 1, "QUEUE FLUSHED" },
+       { 2, "OVERLAY LAST" },
+       { 3, "END SESSION" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string AvgPxIndicator_val[] = { 
+       { 0, "NO AVERAGE PRICING" },
+       { 1, "TRADE IS PART OF AN AVERAGE PRICE GROUP IDENTIFIED BY THE TRADELINKID" },
+       { 2, "LAST TRADE IN THE AVERAGE PRICE GROUP IDENTIFIED BY THE TRADELINKID" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string TradeAllocIndicator_val[] = { 
+       { 0, "ALLOCATION NOT REQUIRED" },
+       { 1, "ALLOCATION REQUIRED" },
+       { 2, "USE ALLOCATION PROVIDED WITH THE TRADE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string ExpirationCycle_val[] = { 
+       { 0, "EXPIRE ON TRADING SESSION CLOSE" },
+       { 1, "EXPIRE ON TRADING SESSION OPEN" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string TrdType_val[] = { 
+       { 0, "REGULAR TRADE" },
+       { 1, "BLOCK TRADE" },
+       { 2, "EFP" },
+       { 3, "TRANSFER" },
+       { 4, "LATE TRADE" },
+       { 5, "T TRADE" },
+       { 6, "WEIGHTED AVERAGE PRICE TRADE" },
+       { 7, "BUNCHED TRADE" },
+       { 8, "LATE BUNCHED TRADE" },
+       { 9, "PRIOR REFERENCE PRICE TRADE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string PegMoveType_val[] = { 
+       { 0, "FLOATING" },
+       { 1, "FIXED" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string PegOffsetType_val[] = { 
+       { 0, "PRICE" },
+       { 1, "BASIS POINTS" },
+       { 2, "TICKS" },
+       { 3, "PRICE TIER LEVEL" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string PegLimitType_val[] = { 
+       { 0, "OR BETTER" },
+       { 1, "STRICT" },
+       { 2, "OR WORSE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string PegRoundDirection_val[] = { 
+       { 1, "MORE AGGRESSIVE" },
+       { 2, "MORE PASSIVE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string PegScope_val[] = { 
+       { 1, "LOCAL" },
+       { 2, "NATIONAL" },
+       { 3, "GLOBAL" },
+       { 4, "NATIONAL EXCLUDING LOCAL" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string DiscretionMoveType_val[] = { 
+       { 0, "FLOATING" },
+       { 1, "FIXED" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string DiscretionOffsetType_val[] = { 
+       { 0, "PRICE" },
+       { 1, "BASIS POINTS" },
+       { 2, "TICKS" },
+       { 3, "PRICE TIER LEVEL" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string DiscretionLimitType_val[] = { 
+       { 0, "OR BETTER" },
+       { 1, "STRICT" },
+       { 2, "OR WORSE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string DiscretionRoundDirection_val[] = { 
+       { 1, "MORE AGGRESSIVE" },
+       { 2, "MORE PASSIVE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string DiscretionScope_val[] = { 
+       { 1, "LOCAL" },
+       { 2, "NATIONAL" },
+       { 3, "GLOBAL" },
+       { 4, "NATIONAL EXCLUDING LOCAL" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string LastLiquidityInd_val[] = { 
+       { 1, "ADDED LIQUIDITY" },
+       { 2, "REMOVED LIQUIDITY" },
+       { 3, "LIQUIDITY ROUTED OUT" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string ShortSaleReason_val[] = { 
+       { 0, "DEALER SOLD SHORT" },
+       { 1, "DEALER SOLD SHORT EXEMPT" },
+       { 2, "SELLING CUSTOMER SOLD SHORT" },
+       { 3, "SELLING CUSTOMER SOLD SHORT EXEMPT" },
+       { 4, "QUALIFED SERVICE REPRESENTATIVE OR AUTOMATIC GIVEUP CONTRA SIDE SOLD SHORT" },
+       { 5, "QSR OR AGU CONTRA SIDE SOLD SHORT EXEMPT" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string QtyType_val[] = { 
+       { 0, "UNITS" },
+       { 1, "CONTRACTS" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string TradeReportType_val[] = { 
+       { 0, "SUBMIT" },
+       { 1, "ALLEGED" },
+       { 2, "ACCEPT" },
+       { 3, "DECLINE" },
+       { 4, "ADDENDUM" },
+       { 5, "NO WAS" },
+       { 6, "TRADE REPORT CANCEL" },
+       { 7, "LOCKED IN TRADE BREAK" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string AllocNoOrdersType_val[] = { 
+       { 0, "NOT SPECIFIED" },
+       { 1, "EXPLICIT LIST PROVIDED" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string EventType_val[] = { 
+       { 1, "PUT" },
+       { 2, "CALL" },
+       { 3, "TENDER" },
+       { 4, "SINKING FUND CALL" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string InstrAttribType_val[] = { 
+       { 1, "FLAT" },
+       { 2, "ZERO COUPON" },
+       { 3, "INTEREST BEARING" },
+       { 4, "NO PERIODIC PAYMENTS" },
+       { 5, "VARIABLE RATE" },
+       { 6, "LESS FEE FOR PUT" },
+       { 7, "STEPPED COUPON" },
+       { 8, "COUPON PERIOD" },
+       { 9, "WHEN AND IF ISSUED" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string MiscFeeBasis_val[] = { 
+       { 0, "ABSOLUTE" },
+       { 1, "PER UNIT" },
+       { 2, "PERCENTAGE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string CollAsgnReason_val[] = { 
+       { 0, "INITIAL" },
+       { 1, "SCHEDULED" },
+       { 2, "TIME WARNING" },
+       { 3, "MARGIN DEFICIENCY" },
+       { 4, "MARGIN EXCESS" },
+       { 5, "FORWARD COLLATERAL DEMAND" },
+       { 6, "EVENT OF DEFAULT" },
+       { 7, "ADVERSE TAX EVENT" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string CollInquiryQualifier_val[] = { 
+       { 0, "TRADEDATE" },
+       { 1, "GC INSTRUMENT" },
+       { 2, "COLLATERALINSTRUMENT" },
+       { 3, "SUBSTITUTION ELIGIBLE" },
+       { 4, "NOT ASSIGNED" },
+       { 5, "PARTIALLY ASSIGNED" },
+       { 6, "FULLY ASSIGNED" },
+       { 7, "OUTSTANDING TRADES" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string CollAsgnTransType_val[] = { 
+       { 0, "NEW" },
+       { 1, "REPLACE" },
+       { 2, "CANCEL" },
+       { 3, "RELEASE" },
+       { 4, "REVERSE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string CollAsgnRespType_val[] = { 
+       { 0, "RECEIVED" },
+       { 1, "ACCEPTED" },
+       { 2, "DECLINED" },
+       { 3, "REJECTED" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string CollAsgnRejectReason_val[] = { 
+       { 0, "UNKNOWN DEAL" },
+       { 1, "UNKNOWN OR INVALID INSTRUMENT" },
+       { 2, "UNAUTHORIZED TRANSACTION" },
+       { 3, "INSUFFICIENT COLLATERAL" },
+       { 4, "INVALID TYPE OF COLLATERAL" },
+       { 5, "EXCESSIVE SUBSTITUTION" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string CollStatus_val[] = { 
+       { 0, "UNASSIGNED" },
+       { 1, "PARTIALLY ASSIGNED" },
+       { 2, "ASSIGNMENT PROPOSED" },
+       { 3, "ASSIGNED" },
+       { 4, "CHALLENGED" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string DeliveryType_val[] = { 
+       { 0, "VERSUS PAYMENT" },
+       { 1, "FREE" },
+       { 2, "TRI PARTY" },
+       { 3, "HOLD IN CUSTODY" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string UserRequestType_val[] = { 
+       { 1, "LOGONUSER" },
+       { 2, "LOGOFFUSER" },
+       { 3, "CHANGEPASSWORDFORUSER" },
+       { 4, "REQUEST INDIVIDUAL USER STATUS" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string UserStatus_val[] = { 
+       { 1, "LOGGED IN" },
+       { 2, "NOT LOGGED IN" },
+       { 3, "USER NOT RECOGNISED" },
+       { 4, "PASSWORD INCORRECT" },
+       { 5, "PASSWORD CHANGED" },
+       { 6, "OTHER" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string StatusValue_val[] = { 
+       { 1, "CONNECTED" },
+       { 2, "NOT CONNECTED DOWN EXPECTED UP" },
+       { 3, "NOT CONNECTED DOWN EXPECTED DOWN" },
+       { 4, "IN PROCESS" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string NetworkRequestType_val[] = { 
+       { 1, "SNAPSHOT" },
+       { 2, "SUBSCRIBE" },
+       { 4, "STOP SUBSCRIBING" },
+       { 8, "LEVEL OF DETAIL" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string NetworkStatusResponseType_val[] = { 
+       { 1, "FULL" },
+       { 2, "INCREMENTAL UPDATE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string TrdRptStatus_val[] = { 
+       { 0, "ACCEPTED" },
+       { 1, "REJECTED" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string AffirmStatus_val[] = { 
+       { 1, "RECEIVED" },
+       { 2, "CONFIRM REJECTED" },
+       { 3, "AFFIRMED" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string CollAction_val[] = { 
+       { 0, "RETAIN" },
+       { 1, "ADD" },
+       { 2, "REMOVE" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string CollInquiryStatus_val[] = { 
+       { 0, "ACCEPTED" },
+       { 1, "ACCEPTED WITH WARNINGS" },
+       { 2, "COMPLETED" },
+       { 3, "COMPLETED WITH WARNINGS" },
+       { 4, "REJECTED" },
+       { 0, NULL }
+   };
+
+
+   static const  value_string CollInquiryResult_val[] = { 
+       { 0, "SUCCESSFUL" },
+       { 1, "INVALID OR UNKNOWN INSTRUMENT" },
+       { 2, "INVALID OR UNKNOWN COLLATERAL TYPE" },
+       { 3, "INVALID PARTIES" },
+       { 4, "INVALID TRANSPORT TYPE REQUESTED" },
+       { 5, "INVALID DESTINATION REQUESTED" },
+       { 6, "NO COLLATERAL FOUND FOR THE TRADE SPECIFIED" },
+       { 7, "NO COLLATERAL FOUND FOR THE ORDER SPECIFIED" },
+       { 8, "COLLATERAL INQUIRY TYPE NOT SUPPORTED" },
+       { 9, "UNAUTHORIZED FOR COLLATERAL INQUIRY" },
+       { 99, "OTHER" },
+       { 0, NULL }
+   };
+
+
+static fix_field fix_fields[] = {
+       
+               { 1, -1, 0, NULL }, /* Account */   
+               { 2, -1, 0, NULL }, /* AdvId */   
+               { 3, -1, 0, NULL }, /* AdvRefID */  
+               { 4, -1, 2 , AdvSide_val },  
+               { 5, -1, 1 , AdvTransType_val },   
+               { 6, -1, 0, NULL }, /* AvgPx */   
+               { 7, -1, 0, NULL }, /* BeginSeqNo */   
+               { 8, -1, 0, NULL }, /* BeginString */   
+               { 9, -1, 0, NULL }, /* BodyLength */   
+               { 10, -1, 0, NULL }, /* CheckSum */   
+               { 11, -1, 0, NULL }, /* ClOrdID */   
+               { 12, -1, 0, NULL }, /* Commission */  
+               { 13, -1, 2 , CommType_val },   
+               { 14, -1, 0, NULL }, /* CumQty */   
+               { 15, -1, 0, NULL }, /* Currency */   
+               { 16, -1, 0, NULL }, /* EndSeqNo */   
+               { 17, -1, 0, NULL }, /* ExecID */  
+               { 18, -1, 2 , ExecInst_val },   
+               { 19, -1, 0, NULL }, /* ExecRefID */  
+               { 20, -1, 2 , ExecTransType_val },  
+               { 21, -1, 2 , HandlInst_val },  
+               { 22, -1, 1 , SecurityIDSource_val },   
+               { 23, -1, 0, NULL }, /* IOIid */   
+               { 24, -1, 0, NULL }, /* IOIOthSvc */  
+               { 25, -1, 2 , IOIQltyInd_val },   
+               { 26, -1, 0, NULL }, /* IOIRefID */   
+               { 27, -1, 0, NULL }, /* IOIQty */  
+               { 28, -1, 2 , IOITransType_val },  
+               { 29, -1, 2 , LastCapacity_val },   
+               { 30, -1, 0, NULL }, /* LastMkt */   
+               { 31, -1, 0, NULL }, /* LastPx */   
+               { 32, -1, 0, NULL }, /* LastQty */   
+               { 33, -1, 0, NULL }, /* LinesOfText */   
+               { 34, -1, 0, NULL }, /* MsgSeqNum */  
+               { 35, -1, 1 , MsgType_val },   
+               { 36, -1, 0, NULL }, /* NewSeqNo */   
+               { 37, -1, 0, NULL }, /* OrderID */   
+               { 38, -1, 0, NULL }, /* OrderQty */  
+               { 39, -1, 2 , OrdStatus_val },  
+               { 40, -1, 2 , OrdType_val },   
+               { 41, -1, 0, NULL }, /* OrigClOrdID */   
+               { 42, -1, 0, NULL }, /* OrigTime */   
+               { 43, -1, 0, NULL }, /* PossDupFlag */   
+               { 44, -1, 0, NULL }, /* Price */   
+               { 45, -1, 0, NULL }, /* RefSeqNum */   
+               { 46, -1, 0, NULL }, /* RelatdSym */  
+               { 47, -1, 2 , Rule80A_val },   
+               { 48, -1, 0, NULL }, /* SecurityID */   
+               { 49, -1, 0, NULL }, /* SenderCompID */   
+               { 50, -1, 0, NULL }, /* SenderSubID */   
+               { 51, -1, 0, NULL }, /* SendingDate */   
+               { 52, -1, 0, NULL }, /* SendingTime */   
+               { 53, -1, 0, NULL }, /* Quantity */  
+               { 54, -1, 2 , Side_val },   
+               { 55, -1, 0, NULL }, /* Symbol */   
+               { 56, -1, 0, NULL }, /* TargetCompID */   
+               { 57, -1, 0, NULL }, /* TargetSubID */   
+               { 58, -1, 0, NULL }, /* Text */  
+               { 59, -1, 2 , TimeInForce_val },   
+               { 60, -1, 0, NULL }, /* TransactTime */  
+               { 61, -1, 2 , Urgency_val },   
+               { 62, -1, 0, NULL }, /* ValidUntilTime */  
+               { 63, -1, 2 , SettlType_val },   
+               { 64, -1, 0, NULL }, /* SettlDate */  
+               { 65, -1, 1 , SymbolSfx_val },   
+               { 66, -1, 0, NULL }, /* ListID */   
+               { 67, -1, 0, NULL }, /* ListSeqNo */   
+               { 68, -1, 0, NULL }, /* TotNoOrders */   
+               { 69, -1, 0, NULL }, /* ListExecInst */   
+               { 70, -1, 0, NULL }, /* AllocID */  
+               { 71, -1, 2 , AllocTransType_val },   
+               { 72, -1, 0, NULL }, /* RefAllocID */   
+               { 73, -1, 0, NULL }, /* NoOrders */   
+               { 74, -1, 0, NULL }, /* AvgPxPrecision */   
+               { 75, -1, 0, NULL }, /* TradeDate */   
+               { 76, -1, 0, NULL }, /* ExecBroker */  
+               { 77, -1, 2 , PositionEffect_val },   
+               { 78, -1, 0, NULL }, /* NoAllocs */   
+               { 79, -1, 0, NULL }, /* AllocAccount */   
+               { 80, -1, 0, NULL }, /* AllocQty */  
+               { 81, -1, 2 , ProcessCode_val },   
+               { 82, -1, 0, NULL }, /* NoRpts */   
+               { 83, -1, 0, NULL }, /* RptSeq */   
+               { 84, -1, 0, NULL }, /* CxlQty */   
+               { 85, -1, 0, NULL }, /* NoDlvyInst */   
+               { 86, -1, 0, NULL }, /* DlvyInst */  
+               { 87, -1, 0 , AllocStatus_val },  
+               { 88, -1, 0 , AllocRejCode_val },   
+               { 89, -1, 0, NULL }, /* Signature */   
+               { 90, -1, 0, NULL }, /* SecureDataLen */   
+               { 91, -1, 0, NULL }, /* SecureData */   
+               { 92, -1, 0, NULL }, /* BrokerOfCredit */   
+               { 93, -1, 0, NULL }, /* SignatureLength */  
+               { 94, -1, 2 , EmailType_val },   
+               { 95, -1, 0, NULL }, /* RawDataLength */   
+               { 96, -1, 0, NULL }, /* RawData */   
+               { 97, -1, 0, NULL }, /* PossResend */  
+               { 98, -1, 0 , EncryptMethod_val },   
+               { 99, -1, 0, NULL }, /* StopPx */   
+               { 100, -1, 0, NULL }, /* ExDestination */  
+               { 102, -1, 0 , CxlRejReason_val },  
+               { 103, -1, 0 , OrdRejReason_val },  
+               { 104, -1, 2 , IOIQualifier_val },   
+               { 105, -1, 0, NULL }, /* WaveNo */   
+               { 106, -1, 0, NULL }, /* Issuer */   
+               { 107, -1, 0, NULL }, /* SecurityDesc */   
+               { 108, -1, 0, NULL }, /* HeartBtInt */   
+               { 109, -1, 0, NULL }, /* ClientID */   
+               { 110, -1, 0, NULL }, /* MinQty */   
+               { 111, -1, 0, NULL }, /* MaxFloor */   
+               { 112, -1, 0, NULL }, /* TestReqID */   
+               { 113, -1, 0, NULL }, /* ReportToExch */   
+               { 114, -1, 0, NULL }, /* LocateReqd */   
+               { 115, -1, 0, NULL }, /* OnBehalfOfCompID */   
+               { 116, -1, 0, NULL }, /* OnBehalfOfSubID */   
+               { 117, -1, 0, NULL }, /* QuoteID */   
+               { 118, -1, 0, NULL }, /* NetMoney */   
+               { 119, -1, 0, NULL }, /* SettlCurrAmt */   
+               { 120, -1, 0, NULL }, /* SettlCurrency */   
+               { 121, -1, 0, NULL }, /* ForexReq */   
+               { 122, -1, 0, NULL }, /* OrigSendingTime */   
+               { 123, -1, 0, NULL }, /* GapFillFlag */   
+               { 124, -1, 0, NULL }, /* NoExecs */   
+               { 125, -1, 0, NULL }, /* CxlType */   
+               { 126, -1, 0, NULL }, /* ExpireTime */  
+               { 127, -1, 2 , DKReason_val },   
+               { 128, -1, 0, NULL }, /* DeliverToCompID */   
+               { 129, -1, 0, NULL }, /* DeliverToSubID */   
+               { 130, -1, 0, NULL }, /* IOINaturalFlag */   
+               { 131, -1, 0, NULL }, /* QuoteReqID */   
+               { 132, -1, 0, NULL }, /* BidPx */   
+               { 133, -1, 0, NULL }, /* OfferPx */   
+               { 134, -1, 0, NULL }, /* BidSize */   
+               { 135, -1, 0, NULL }, /* OfferSize */   
+               { 136, -1, 0, NULL }, /* NoMiscFees */   
+               { 137, -1, 0, NULL }, /* MiscFeeAmt */   
+               { 138, -1, 0, NULL }, /* MiscFeeCurr */  
+               { 139, -1, 2 , MiscFeeType_val },   
+               { 140, -1, 0, NULL }, /* PrevClosePx */   
+               { 141, -1, 0, NULL }, /* ResetSeqNumFlag */   
+               { 142, -1, 0, NULL }, /* SenderLocationID */   
+               { 143, -1, 0, NULL }, /* TargetLocationID */   
+               { 144, -1, 0, NULL }, /* OnBehalfOfLocationID */   
+               { 145, -1, 0, NULL }, /* DeliverToLocationID */   
+               { 146, -1, 0, NULL }, /* NoRelatedSym */   
+               { 147, -1, 0, NULL }, /* Subject */   
+               { 148, -1, 0, NULL }, /* Headline */   
+               { 149, -1, 0, NULL }, /* URLLink */  
+               { 150, -1, 2 , ExecType_val },   
+               { 151, -1, 0, NULL }, /* LeavesQty */   
+               { 152, -1, 0, NULL }, /* CashOrderQty */   
+               { 153, -1, 0, NULL }, /* AllocAvgPx */   
+               { 154, -1, 0, NULL }, /* AllocNetMoney */   
+               { 155, -1, 0, NULL }, /* SettlCurrFxRate */  
+               { 156, -1, 2 , SettlCurrFxRateCalc_val },   
+               { 157, -1, 0, NULL }, /* NumDaysInterest */   
+               { 158, -1, 0, NULL }, /* AccruedInterestRate */   
+               { 159, -1, 0, NULL }, /* AccruedInterestAmt */  
+               { 160, -1, 2 , SettlInstMode_val },   
+               { 161, -1, 0, NULL }, /* AllocText */   
+               { 162, -1, 0, NULL }, /* SettlInstID */  
+               { 163, -1, 2 , SettlInstTransType_val },   
+               { 164, -1, 0, NULL }, /* EmailThreadID */  
+               { 165, -1, 2 , SettlInstSource_val },  
+               { 166, -1, 1 , SettlLocation_val },  
+               { 167, -1, 1 , SecurityType_val },   
+               { 168, -1, 0, NULL }, /* EffectiveTime */  
+               { 169, -1, 0 , StandInstDbType_val },   
+               { 170, -1, 0, NULL }, /* StandInstDbName */   
+               { 171, -1, 0, NULL }, /* StandInstDbID */  
+               { 172, -1, 0 , SettlDeliveryType_val },   
+               { 173, -1, 0, NULL }, /* SettlDepositoryCode */   
+               { 174, -1, 0, NULL }, /* SettlBrkrCode */   
+               { 175, -1, 0, NULL }, /* SettlInstCode */   
+               { 176, -1, 0, NULL }, /* SecuritySettlAgentName */   
+               { 177, -1, 0, NULL }, /* SecuritySettlAgentCode */   
+               { 178, -1, 0, NULL }, /* SecuritySettlAgentAcctNum */   
+               { 179, -1, 0, NULL }, /* SecuritySettlAgentAcctName */   
+               { 180, -1, 0, NULL }, /* SecuritySettlAgentContactName */   
+               { 181, -1, 0, NULL }, /* SecuritySettlAgentContactPhone */   
+               { 182, -1, 0, NULL }, /* CashSettlAgentName */   
+               { 183, -1, 0, NULL }, /* CashSettlAgentCode */   
+               { 184, -1, 0, NULL }, /* CashSettlAgentAcctNum */   
+               { 185, -1, 0, NULL }, /* CashSettlAgentAcctName */   
+               { 186, -1, 0, NULL }, /* CashSettlAgentContactName */   
+               { 187, -1, 0, NULL }, /* CashSettlAgentContactPhone */   
+               { 188, -1, 0, NULL }, /* BidSpotRate */   
+               { 189, -1, 0, NULL }, /* BidForwardPoints */   
+               { 190, -1, 0, NULL }, /* OfferSpotRate */   
+               { 191, -1, 0, NULL }, /* OfferForwardPoints */   
+               { 192, -1, 0, NULL }, /* OrderQty2 */   
+               { 193, -1, 0, NULL }, /* SettlDate2 */   
+               { 194, -1, 0, NULL }, /* LastSpotRate */   
+               { 195, -1, 0, NULL }, /* LastForwardPoints */   
+               { 196, -1, 0, NULL }, /* AllocLinkID */  
+               { 197, -1, 0 , AllocLinkType_val },   
+               { 198, -1, 0, NULL }, /* SecondaryOrderID */   
+               { 199, -1, 0, NULL }, /* NoIOIQualifiers */   
+               { 200, -1, 0, NULL }, /* MaturityMonthYear */  
+               { 201, -1, 0 , PutOrCall_val },   
+               { 202, -1, 0, NULL }, /* StrikePrice */  
+               { 203, -1, 0 , CoveredOrUncovered_val },  
+               { 204, -1, 0 , CustomerOrFirm_val },   
+               { 205, -1, 0, NULL }, /* MaturityDay */   
+               { 206, -1, 0, NULL }, /* OptAttribute */   
+               { 207, -1, 0, NULL }, /* SecurityExchange */   
+               { 208, -1, 0, NULL }, /* NotifyBrokerOfCredit */  
+               { 209, -1, 0 , AllocHandlInst_val },   
+               { 210, -1, 0, NULL }, /* MaxShow */   
+               { 211, -1, 0, NULL }, /* PegOffsetValue */   
+               { 212, -1, 0, NULL }, /* XmlDataLen */   
+               { 213, -1, 0, NULL }, /* XmlData */   
+               { 214, -1, 0, NULL }, /* SettlInstRefID */   
+               { 215, -1, 0, NULL }, /* NoRoutingIDs */  
+               { 216, -1, 0 , RoutingType_val },   
+               { 217, -1, 0, NULL }, /* RoutingID */   
+               { 218, -1, 0, NULL }, /* Spread */  
+               { 219, -1, 2 , Benchmark_val },   
+               { 220, -1, 0, NULL }, /* BenchmarkCurveCurrency */  
+               { 221, -1, 1 , BenchmarkCurveName_val },   
+               { 222, -1, 0, NULL }, /* BenchmarkCurvePoint */   
+               { 223, -1, 0, NULL }, /* CouponRate */   
+               { 224, -1, 0, NULL }, /* CouponPaymentDate */   
+               { 225, -1, 0, NULL }, /* IssueDate */   
+               { 226, -1, 0, NULL }, /* RepurchaseTerm */   
+               { 227, -1, 0, NULL }, /* RepurchaseRate */   
+               { 228, -1, 0, NULL }, /* Factor */   
+               { 229, -1, 0, NULL }, /* TradeOriginationDate */   
+               { 230, -1, 0, NULL }, /* ExDate */   
+               { 231, -1, 0, NULL }, /* ContractMultiplier */   
+               { 232, -1, 0, NULL }, /* NoStipulations */  
+               { 233, -1, 1 , StipulationType_val },  
+               { 234, -1, 1 , StipulationValue_val },  
+               { 235, -1, 1 , YieldType_val },   
+               { 236, -1, 0, NULL }, /* Yield */   
+               { 237, -1, 0, NULL }, /* TotalTakedown */   
+               { 238, -1, 0, NULL }, /* Concession */   
+               { 239, -1, 0, NULL }, /* RepoCollateralSecurityType */   
+               { 240, -1, 0, NULL }, /* RedemptionDate */   
+               { 241, -1, 0, NULL }, /* UnderlyingCouponPaymentDate */   
+               { 242, -1, 0, NULL }, /* UnderlyingIssueDate */   
+               { 243, -1, 0, NULL }, /* UnderlyingRepoCollateralSecurityType */   
+               { 244, -1, 0, NULL }, /* UnderlyingRepurchaseTerm */   
+               { 245, -1, 0, NULL }, /* UnderlyingRepurchaseRate */   
+               { 246, -1, 0, NULL }, /* UnderlyingFactor */   
+               { 247, -1, 0, NULL }, /* UnderlyingRedemptionDate */   
+               { 248, -1, 0, NULL }, /* LegCouponPaymentDate */   
+               { 249, -1, 0, NULL }, /* LegIssueDate */   
+               { 250, -1, 0, NULL }, /* LegRepoCollateralSecurityType */   
+               { 251, -1, 0, NULL }, /* LegRepurchaseTerm */   
+               { 252, -1, 0, NULL }, /* LegRepurchaseRate */   
+               { 253, -1, 0, NULL }, /* LegFactor */   
+               { 254, -1, 0, NULL }, /* LegRedemptionDate */   
+               { 255, -1, 0, NULL }, /* CreditRating */   
+               { 256, -1, 0, NULL }, /* UnderlyingCreditRating */   
+               { 257, -1, 0, NULL }, /* LegCreditRating */   
+               { 258, -1, 0, NULL }, /* TradedFlatSwitch */   
+               { 259, -1, 0, NULL }, /* BasisFeatureDate */   
+               { 260, -1, 0, NULL }, /* BasisFeaturePrice */   
+               { 262, -1, 0, NULL }, /* MDReqID */  
+               { 263, -1, 2 , SubscriptionRequestType_val },   
+               { 264, -1, 0, NULL }, /* MarketDepth */  
+               { 265, -1, 0 , MDUpdateType_val },   
+               { 266, -1, 0, NULL }, /* AggregatedBook */   
+               { 267, -1, 0, NULL }, /* NoMDEntryTypes */   
+               { 268, -1, 0, NULL }, /* NoMDEntries */  
+               { 269, -1, 2 , MDEntryType_val },   
+               { 270, -1, 0, NULL }, /* MDEntryPx */   
+               { 271, -1, 0, NULL }, /* MDEntrySize */   
+               { 272, -1, 0, NULL }, /* MDEntryDate */   
+               { 273, -1, 0, NULL }, /* MDEntryTime */  
+               { 274, -1, 2 , TickDirection_val },   
+               { 275, -1, 0, NULL }, /* MDMkt */  
+               { 276, -1, 2 , QuoteCondition_val },  
+               { 277, -1, 2 , TradeCondition_val },   
+               { 278, -1, 0, NULL }, /* MDEntryID */  
+               { 279, -1, 2 , MDUpdateAction_val },   
+               { 280, -1, 0, NULL }, /* MDEntryRefID */  
+               { 281, -1, 2 , MDReqRejReason_val },   
+               { 282, -1, 0, NULL }, /* MDEntryOriginator */   
+               { 283, -1, 0, NULL }, /* LocationID */   
+               { 284, -1, 0, NULL }, /* DeskID */  
+               { 285, -1, 2 , DeleteReason_val },  
+               { 286, -1, 2 , OpenCloseSettlFlag_val },   
+               { 287, -1, 0, NULL }, /* SellerDays */   
+               { 288, -1, 0, NULL }, /* MDEntryBuyer */   
+               { 289, -1, 0, NULL }, /* MDEntrySeller */   
+               { 290, -1, 0, NULL }, /* MDEntryPositionNo */  
+               { 291, -1, 2 , FinancialStatus_val },  
+               { 292, -1, 2 , CorporateAction_val },   
+               { 293, -1, 0, NULL }, /* DefBidSize */   
+               { 294, -1, 0, NULL }, /* DefOfferSize */   
+               { 295, -1, 0, NULL }, /* NoQuoteEntries */   
+               { 296, -1, 0, NULL }, /* NoQuoteSets */  
+               { 297, -1, 0 , QuoteStatus_val },  
+               { 298, -1, 0 , QuoteCancelType_val },   
+               { 299, -1, 0, NULL }, /* QuoteEntryID */  
+               { 300, -1, 0 , QuoteRejectReason_val },  
+               { 301, -1, 0 , QuoteResponseLevel_val },   
+               { 302, -1, 0, NULL }, /* QuoteSetID */  
+               { 303, -1, 0 , QuoteRequestType_val },   
+               { 304, -1, 0, NULL }, /* TotNoQuoteEntries */   
+               { 305, -1, 0, NULL }, /* UnderlyingSecurityIDSource */   
+               { 306, -1, 0, NULL }, /* UnderlyingIssuer */   
+               { 307, -1, 0, NULL }, /* UnderlyingSecurityDesc */   
+               { 308, -1, 0, NULL }, /* UnderlyingSecurityExchange */   
+               { 309, -1, 0, NULL }, /* UnderlyingSecurityID */   
+               { 310, -1, 0, NULL }, /* UnderlyingSecurityType */   
+               { 311, -1, 0, NULL }, /* UnderlyingSymbol */   
+               { 312, -1, 0, NULL }, /* UnderlyingSymbolSfx */   
+               { 313, -1, 0, NULL }, /* UnderlyingMaturityMonthYear */   
+               { 314, -1, 0, NULL }, /* UnderlyingMaturityDay */   
+               { 315, -1, 0, NULL }, /* UnderlyingPutOrCall */   
+               { 316, -1, 0, NULL }, /* UnderlyingStrikePrice */   
+               { 317, -1, 0, NULL }, /* UnderlyingOptAttribute */   
+               { 318, -1, 0, NULL }, /* UnderlyingCurrency */   
+               { 319, -1, 0, NULL }, /* RatioQty */   
+               { 320, -1, 0, NULL }, /* SecurityReqID */  
+               { 321, -1, 0 , SecurityRequestType_val },   
+               { 322, -1, 0, NULL }, /* SecurityResponseID */  
+               { 323, -1, 0 , SecurityResponseType_val },   
+               { 324, -1, 0, NULL }, /* SecurityStatusReqID */   
+               { 325, -1, 0, NULL }, /* UnsolicitedIndicator */  
+               { 326, -1, 0 , SecurityTradingStatus_val },  
+               { 327, -1, 2 , HaltReason_val },   
+               { 328, -1, 0, NULL }, /* InViewOfCommon */   
+               { 329, -1, 0, NULL }, /* DueToRelated */   
+               { 330, -1, 0, NULL }, /* BuyVolume */   
+               { 331, -1, 0, NULL }, /* SellVolume */   
+               { 332, -1, 0, NULL }, /* HighPx */   
+               { 333, -1, 0, NULL }, /* LowPx */  
+               { 334, -1, 0 , Adjustment_val },   
+               { 335, -1, 0, NULL }, /* TradSesReqID */   
+               { 336, -1, 0, NULL }, /* TradingSessionID */   
+               { 337, -1, 0, NULL }, /* ContraTrader */  
+               { 338, -1, 0 , TradSesMethod_val },  
+               { 339, -1, 0 , TradSesMode_val },  
+               { 340, -1, 0 , TradSesStatus_val },   
+               { 341, -1, 0, NULL }, /* TradSesStartTime */   
+               { 342, -1, 0, NULL }, /* TradSesOpenTime */   
+               { 343, -1, 0, NULL }, /* TradSesPreCloseTime */   
+               { 344, -1, 0, NULL }, /* TradSesCloseTime */   
+               { 345, -1, 0, NULL }, /* TradSesEndTime */   
+               { 346, -1, 0, NULL }, /* NumberOfOrders */  
+               { 347, -1, 1 , MessageEncoding_val },   
+               { 348, -1, 0, NULL }, /* EncodedIssuerLen */   
+               { 349, -1, 0, NULL }, /* EncodedIssuer */   
+               { 350, -1, 0, NULL }, /* EncodedSecurityDescLen */   
+               { 351, -1, 0, NULL }, /* EncodedSecurityDesc */   
+               { 352, -1, 0, NULL }, /* EncodedListExecInstLen */   
+               { 353, -1, 0, NULL }, /* EncodedListExecInst */   
+               { 354, -1, 0, NULL }, /* EncodedTextLen */   
+               { 355, -1, 0, NULL }, /* EncodedText */   
+               { 356, -1, 0, NULL }, /* EncodedSubjectLen */   
+               { 357, -1, 0, NULL }, /* EncodedSubject */   
+               { 358, -1, 0, NULL }, /* EncodedHeadlineLen */   
+               { 359, -1, 0, NULL }, /* EncodedHeadline */   
+               { 360, -1, 0, NULL }, /* EncodedAllocTextLen */   
+               { 361, -1, 0, NULL }, /* EncodedAllocText */   
+               { 362, -1, 0, NULL }, /* EncodedUnderlyingIssuerLen */   
+               { 363, -1, 0, NULL }, /* EncodedUnderlyingIssuer */   
+               { 364, -1, 0, NULL }, /* EncodedUnderlyingSecurityDescLen */   
+               { 365, -1, 0, NULL }, /* EncodedUnderlyingSecurityDesc */   
+               { 366, -1, 0, NULL }, /* AllocPrice */   
+               { 367, -1, 0, NULL }, /* QuoteSetValidUntilTime */  
+               { 368, -1, 0 , QuoteEntryRejectReason_val },   
+               { 369, -1, 0, NULL }, /* LastMsgSeqNumProcessed */   
+               { 370, -1, 0, NULL }, /* OnBehalfOfSendingTime */   
+               { 371, -1, 0, NULL }, /* RefTagID */   
+               { 372, -1, 0, NULL }, /* RefMsgType */  
+               { 373, -1, 0 , SessionRejectReason_val },  
+               { 374, -1, 2 , BidRequestTransType_val },   
+               { 375, -1, 0, NULL }, /* ContraBroker */   
+               { 376, -1, 0, NULL }, /* ComplianceID */   
+               { 377, -1, 0, NULL }, /* SolicitedFlag */  
+               { 378, -1, 0 , ExecRestatementReason_val },   
+               { 379, -1, 0, NULL }, /* BusinessRejectRefID */  
+               { 380, -1, 0 , BusinessRejectReason_val },   
+               { 381, -1, 0, NULL }, /* GrossTradeAmt */   
+               { 382, -1, 0, NULL }, /* NoContraBrokers */   
+               { 383, -1, 0, NULL }, /* MaxMessageSize */   
+               { 384, -1, 0, NULL }, /* NoMsgTypes */  
+               { 385, -1, 2 , MsgDirection_val },   
+               { 386, -1, 0, NULL }, /* NoTradingSessions */   
+               { 387, -1, 0, NULL }, /* TotalVolumeTraded */  
+               { 388, -1, 2 , DiscretionInst_val },   
+               { 389, -1, 0, NULL }, /* DiscretionOffsetValue */   
+               { 390, -1, 0, NULL }, /* BidID */   
+               { 391, -1, 0, NULL }, /* ClientBidID */   
+               { 392, -1, 0, NULL }, /* ListName */   
+               { 393, -1, 0, NULL }, /* TotNoRelatedSym */  
+               { 394, -1, 0 , BidType_val },   
+               { 395, -1, 0, NULL }, /* NumTickets */   
+               { 396, -1, 0, NULL }, /* SideValue1 */   
+               { 397, -1, 0, NULL }, /* SideValue2 */   
+               { 398, -1, 0, NULL }, /* NoBidDescriptors */  
+               { 399, -1, 0 , BidDescriptorType_val },   
+               { 400, -1, 0, NULL }, /* BidDescriptor */  
+               { 401, -1, 0 , SideValueInd_val },   
+               { 402, -1, 0, NULL }, /* LiquidityPctLow */   
+               { 403, -1, 0, NULL }, /* LiquidityPctHigh */   
+               { 404, -1, 0, NULL }, /* LiquidityValue */   
+               { 405, -1, 0, NULL }, /* EFPTrackingError */   
+               { 406, -1, 0, NULL }, /* FairValue */   
+               { 407, -1, 0, NULL }, /* OutsideIndexPct */   
+               { 408, -1, 0, NULL }, /* ValueOfFutures */  
+               { 409, -1, 0 , LiquidityIndType_val },   
+               { 410, -1, 0, NULL }, /* WtAverageLiquidity */   
+               { 411, -1, 0, NULL }, /* ExchangeForPhysical */   
+               { 412, -1, 0, NULL }, /* OutMainCntryUIndex */   
+               { 413, -1, 0, NULL }, /* CrossPercent */  
+               { 414, -1, 0 , ProgRptReqs_val },   
+               { 415, -1, 0, NULL }, /* ProgPeriodInterval */  
+               { 416, -1, 0 , IncTaxInd_val },   
+               { 417, -1, 0, NULL }, /* NumBidders */  
+               { 418, -1, 2 , BidTradeType_val },  
+               { 419, -1, 2 , BasisPxType_val },   
+               { 420, -1, 0, NULL }, /* NoBidComponents */   
+               { 421, -1, 0, NULL }, /* Country */   
+               { 422, -1, 0, NULL }, /* TotNoStrikes */  
+               { 423, -1, 0 , PriceType_val },   
+               { 424, -1, 0, NULL }, /* DayOrderQty */   
+               { 425, -1, 0, NULL }, /* DayCumQty */   
+               { 426, -1, 0, NULL }, /* DayAvgPx */  
+               { 427, -1, 0 , GTBookingInst_val },   
+               { 428, -1, 0, NULL }, /* NoStrikes */  
+               { 429, -1, 0 , ListStatusType_val },  
+               { 430, -1, 0 , NetGrossInd_val },  
+               { 431, -1, 0 , ListOrderStatus_val },   
+               { 432, -1, 0, NULL }, /* ExpireDate */  
+               { 433, -1, 2 , ListExecInstType_val },  
+               { 434, -1, 2 , CxlRejResponseTo_val },   
+               { 435, -1, 0, NULL }, /* UnderlyingCouponRate */   
+               { 436, -1, 0, NULL }, /* UnderlyingContractMultiplier */   
+               { 437, -1, 0, NULL }, /* ContraTradeQty */   
+               { 438, -1, 0, NULL }, /* ContraTradeTime */   
+               { 439, -1, 0, NULL }, /* ClearingFirm */   
+               { 440, -1, 0, NULL }, /* ClearingAccount */   
+               { 441, -1, 0, NULL }, /* LiquidityNumSecurities */  
+               { 442, -1, 2 , MultiLegReportingType_val },   
+               { 443, -1, 0, NULL }, /* StrikeTime */   
+               { 444, -1, 0, NULL }, /* ListStatusText */   
+               { 445, -1, 0, NULL }, /* EncodedListStatusTextLen */   
+               { 446, -1, 0, NULL }, /* EncodedListStatusText */  
+               { 447, -1, 2 , PartyIDSource_val },   
+               { 448, -1, 0, NULL }, /* PartyID */   
+               { 449, -1, 0, NULL }, /* TotalVolumeTradedDate */   
+               { 450, -1, 0, NULL }, /* TotalVolumeTradedTime */   
+               { 451, -1, 0, NULL }, /* NetChgPrevDay */  
+               { 452, -1, 0 , PartyRole_val },   
+               { 453, -1, 0, NULL }, /* NoPartyIDs */   
+               { 454, -1, 0, NULL }, /* NoSecurityAltID */   
+               { 455, -1, 0, NULL }, /* SecurityAltID */   
+               { 456, -1, 0, NULL }, /* SecurityAltIDSource */   
+               { 457, -1, 0, NULL }, /* NoUnderlyingSecurityAltID */   
+               { 458, -1, 0, NULL }, /* UnderlyingSecurityAltID */   
+               { 459, -1, 0, NULL }, /* UnderlyingSecurityAltIDSource */  
+               { 460, -1, 0 , Product_val },   
+               { 461, -1, 0, NULL }, /* CFICode */   
+               { 462, -1, 0, NULL }, /* UnderlyingProduct */   
+               { 463, -1, 0, NULL }, /* UnderlyingCFICode */   
+               { 464, -1, 0, NULL }, /* TestMessageIndicator */  
+               { 465, -1, 0 , QuantityType_val },   
+               { 466, -1, 0, NULL }, /* BookingRefID */   
+               { 467, -1, 0, NULL }, /* IndividualAllocID */  
+               { 468, -1, 2 , RoundingDirection_val },   
+               { 469, -1, 0, NULL }, /* RoundingModulus */   
+               { 470, -1, 0, NULL }, /* CountryOfIssue */   
+               { 471, -1, 0, NULL }, /* StateOrProvinceOfIssue */   
+               { 472, -1, 0, NULL }, /* LocaleOfIssue */   
+               { 473, -1, 0, NULL }, /* NoRegistDtls */   
+               { 474, -1, 0, NULL }, /* MailingDtls */   
+               { 475, -1, 0, NULL }, /* InvestorCountryOfResidence */   
+               { 476, -1, 0, NULL }, /* PaymentRef */  
+               { 477, -1, 0 , DistribPaymentMethod_val },   
+               { 478, -1, 0, NULL }, /* CashDistribCurr */   
+               { 479, -1, 0, NULL }, /* CommCurrency */  
+               { 480, -1, 2 , CancellationRights_val },  
+               { 481, -1, 2 , MoneyLaunderingStatus_val },   
+               { 482, -1, 0, NULL }, /* MailingInst */   
+               { 483, -1, 0, NULL }, /* TransBkdTime */  
+               { 484, -1, 2 , ExecPriceType_val },   
+               { 485, -1, 0, NULL }, /* ExecPriceAdjustment */   
+               { 486, -1, 0, NULL }, /* DateOfBirth */  
+               { 487, -1, 0 , TradeReportTransType_val },   
+               { 488, -1, 0, NULL }, /* CardHolderName */   
+               { 489, -1, 0, NULL }, /* CardNumber */   
+               { 490, -1, 0, NULL }, /* CardExpDate */   
+               { 491, -1, 0, NULL }, /* CardIssNum */  
+               { 492, -1, 0 , PaymentMethod_val },   
+               { 493, -1, 0, NULL }, /* RegistAcctType */   
+               { 494, -1, 0, NULL }, /* Designation */  
+               { 495, -1, 0 , TaxAdvantageType_val },   
+               { 496, -1, 0, NULL }, /* RegistRejReasonText */  
+               { 497, -1, 2 , FundRenewWaiv_val },   
+               { 498, -1, 0, NULL }, /* CashDistribAgentName */   
+               { 499, -1, 0, NULL }, /* CashDistribAgentCode */   
+               { 500, -1, 0, NULL }, /* CashDistribAgentAcctNumber */   
+               { 501, -1, 0, NULL }, /* CashDistribPayRef */   
+               { 502, -1, 0, NULL }, /* CashDistribAgentAcctName */   
+               { 503, -1, 0, NULL }, /* CardStartDate */   
+               { 504, -1, 0, NULL }, /* PaymentDate */   
+               { 505, -1, 0, NULL }, /* PaymentRemitterID */  
+               { 506, -1, 2 , RegistStatus_val },  
+               { 507, -1, 0 , RegistRejReasonCode_val },   
+               { 508, -1, 0, NULL }, /* RegistRefID */   
+               { 509, -1, 0, NULL }, /* RegistDtls */   
+               { 510, -1, 0, NULL }, /* NoDistribInsts */   
+               { 511, -1, 0, NULL }, /* RegistEmail */   
+               { 512, -1, 0, NULL }, /* DistribPercentage */   
+               { 513, -1, 0, NULL }, /* RegistID */  
+               { 514, -1, 2 , RegistTransType_val },   
+               { 515, -1, 0, NULL }, /* ExecValuationPoint */   
+               { 516, -1, 0, NULL }, /* OrderPercent */  
+               { 517, -1, 2 , OwnershipType_val },   
+               { 518, -1, 0, NULL }, /* NoContAmts */  
+               { 519, -1, 0 , ContAmtType_val },   
+               { 520, -1, 0, NULL }, /* ContAmtValue */   
+               { 521, -1, 0, NULL }, /* ContAmtCurr */  
+               { 522, -1, 0 , OwnerType_val },   
+               { 523, -1, 0, NULL }, /* PartySubID */   
+               { 524, -1, 0, NULL }, /* NestedPartyID */   
+               { 525, -1, 0, NULL }, /* NestedPartyIDSource */   
+               { 526, -1, 0, NULL }, /* SecondaryClOrdID */   
+               { 527, -1, 0, NULL }, /* SecondaryExecID */  
+               { 528, -1, 2 , OrderCapacity_val },  
+               { 529, -1, 2 , OrderRestrictions_val },  
+               { 530, -1, 2 , MassCancelRequestType_val },  
+               { 531, -1, 2 , MassCancelResponse_val },  
+               { 532, -1, 2 , MassCancelRejectReason_val },   
+               { 533, -1, 0, NULL }, /* TotalAffectedOrders */   
+               { 534, -1, 0, NULL }, /* NoAffectedOrders */   
+               { 535, -1, 0, NULL }, /* AffectedOrderID */   
+               { 536, -1, 0, NULL }, /* AffectedSecondaryOrderID */  
+               { 537, -1, 0 , QuoteType_val },   
+               { 538, -1, 0, NULL }, /* NestedPartyRole */   
+               { 539, -1, 0, NULL }, /* NoNestedPartyIDs */   
+               { 540, -1, 0, NULL }, /* TotalAccruedInterestAmt */   
+               { 541, -1, 0, NULL }, /* MaturityDate */   
+               { 542, -1, 0, NULL }, /* UnderlyingMaturityDate */   
+               { 543, -1, 0, NULL }, /* InstrRegistry */  
+               { 544, -1, 2 , CashMargin_val },   
+               { 545, -1, 0, NULL }, /* NestedPartySubID */  
+               { 546, -1, 2 , Scope_val },   
+               { 547, -1, 0, NULL }, /* MDImplicitDelete */   
+               { 548, -1, 0, NULL }, /* CrossID */  
+               { 549, -1, 0 , CrossType_val },  
+               { 550, -1, 0 , CrossPrioritization_val },   
+               { 551, -1, 0, NULL }, /* OrigCrossID */  
+               { 552, -1, 2 , NoSides_val },   
+               { 553, -1, 0, NULL }, /* Username */   
+               { 554, -1, 0, NULL }, /* Password */   
+               { 555, -1, 0, NULL }, /* NoLegs */   
+               { 556, -1, 0, NULL }, /* LegCurrency */   
+               { 557, -1, 0, NULL }, /* TotNoSecurityTypes */   
+               { 558, -1, 0, NULL }, /* NoSecurityTypes */  
+               { 559, -1, 0 , SecurityListRequestType_val },  
+               { 560, -1, 0 , SecurityRequestResult_val },   
+               { 561, -1, 0, NULL }, /* RoundLot */   
+               { 562, -1, 0, NULL }, /* MinTradeVol */  
+               { 563, -1, 0 , MultiLegRptTypeReq_val },   
+               { 564, -1, 0, NULL }, /* LegPositionEffect */   
+               { 565, -1, 0, NULL }, /* LegCoveredOrUncovered */   
+               { 566, -1, 0, NULL }, /* LegPrice */  
+               { 567, -1, 0 , TradSesStatusRejReason_val },   
+               { 568, -1, 0, NULL }, /* TradeRequestID */  
+               { 569, -1, 0 , TradeRequestType_val },   
+               { 570, -1, 0, NULL }, /* PreviouslyReported */   
+               { 571, -1, 0, NULL }, /* TradeReportID */   
+               { 572, -1, 0, NULL }, /* TradeReportRefID */  
+               { 573, -1, 2 , MatchStatus_val },   
+               { 574, -1, 0, NULL }, /* MatchType */   
+               { 575, -1, 0, NULL }, /* OddLot */   
+               { 576, -1, 0, NULL }, /* NoClearingInstructions */  
+               { 577, -1, 0 , ClearingInstruction_val },   
+               { 578, -1, 0, NULL }, /* TradeInputSource */   
+               { 579, -1, 0, NULL }, /* TradeInputDevice */   
+               { 580, -1, 0, NULL }, /* NoDates */  
+               { 581, -1, 0 , AccountType_val },  
+               { 582, -1, 0 , CustOrderCapacity_val },   
+               { 583, -1, 0, NULL }, /* ClOrdLinkID */   
+               { 584, -1, 0, NULL }, /* MassStatusReqID */  
+               { 585, -1, 0 , MassStatusReqType_val },   
+               { 586, -1, 0, NULL }, /* OrigOrdModTime */   
+               { 587, -1, 0, NULL }, /* LegSettlType */   
+               { 588, -1, 0, NULL }, /* LegSettlDate */  
+               { 589, -1, 2 , DayBookingInst_val },  
+               { 590, -1, 2 , BookingUnit_val },  
+               { 591, -1, 2 , PreallocMethod_val },   
+               { 592, -1, 0, NULL }, /* UnderlyingCountryOfIssue */   
+               { 593, -1, 0, NULL }, /* UnderlyingStateOrProvinceOfIssue */   
+               { 594, -1, 0, NULL }, /* UnderlyingLocaleOfIssue */   
+               { 595, -1, 0, NULL }, /* UnderlyingInstrRegistry */   
+               { 596, -1, 0, NULL }, /* LegCountryOfIssue */   
+               { 597, -1, 0, NULL }, /* LegStateOrProvinceOfIssue */   
+               { 598, -1, 0, NULL }, /* LegLocaleOfIssue */   
+               { 599, -1, 0, NULL }, /* LegInstrRegistry */   
+               { 600, -1, 0, NULL }, /* LegSymbol */   
+               { 601, -1, 0, NULL }, /* LegSymbolSfx */   
+               { 602, -1, 0, NULL }, /* LegSecurityID */   
+               { 603, -1, 0, NULL }, /* LegSecurityIDSource */   
+               { 604, -1, 0, NULL }, /* NoLegSecurityAltID */   
+               { 605, -1, 0, NULL }, /* LegSecurityAltID */   
+               { 606, -1, 0, NULL }, /* LegSecurityAltIDSource */   
+               { 607, -1, 0, NULL }, /* LegProduct */   
+               { 608, -1, 0, NULL }, /* LegCFICode */   
+               { 609, -1, 0, NULL }, /* LegSecurityType */   
+               { 610, -1, 0, NULL }, /* LegMaturityMonthYear */   
+               { 611, -1, 0, NULL }, /* LegMaturityDate */   
+               { 612, -1, 0, NULL }, /* LegStrikePrice */   
+               { 613, -1, 0, NULL }, /* LegOptAttribute */   
+               { 614, -1, 0, NULL }, /* LegContractMultiplier */   
+               { 615, -1, 0, NULL }, /* LegCouponRate */   
+               { 616, -1, 0, NULL }, /* LegSecurityExchange */   
+               { 617, -1, 0, NULL }, /* LegIssuer */   
+               { 618, -1, 0, NULL }, /* EncodedLegIssuerLen */   
+               { 619, -1, 0, NULL }, /* EncodedLegIssuer */   
+               { 620, -1, 0, NULL }, /* LegSecurityDesc */   
+               { 621, -1, 0, NULL }, /* EncodedLegSecurityDescLen */   
+               { 622, -1, 0, NULL }, /* EncodedLegSecurityDesc */   
+               { 623, -1, 0, NULL }, /* LegRatioQty */   
+               { 624, -1, 0, NULL }, /* LegSide */   
+               { 625, -1, 0, NULL }, /* TradingSessionSubID */  
+               { 626, -1, 0 , AllocType_val },   
+               { 627, -1, 0, NULL }, /* NoHops */   
+               { 628, -1, 0, NULL }, /* HopCompID */   
+               { 629, -1, 0, NULL }, /* HopSendingTime */   
+               { 630, -1, 0, NULL }, /* HopRefID */   
+               { 631, -1, 0, NULL }, /* MidPx */   
+               { 632, -1, 0, NULL }, /* BidYield */   
+               { 633, -1, 0, NULL }, /* MidYield */   
+               { 634, -1, 0, NULL }, /* OfferYield */  
+               { 635, -1, 1 , ClearingFeeIndicator_val },   
+               { 636, -1, 0, NULL }, /* WorkingIndicator */   
+               { 637, -1, 0, NULL }, /* LegLastPx */  
+               { 638, -1, 0 , PriorityIndicator_val },   
+               { 639, -1, 0, NULL }, /* PriceImprovement */   
+               { 640, -1, 0, NULL }, /* Price2 */   
+               { 641, -1, 0, NULL }, /* LastForwardPoints2 */   
+               { 642, -1, 0, NULL }, /* BidForwardPoints2 */   
+               { 643, -1, 0, NULL }, /* OfferForwardPoints2 */   
+               { 644, -1, 0, NULL }, /* RFQReqID */   
+               { 645, -1, 0, NULL }, /* MktBidPx */   
+               { 646, -1, 0, NULL }, /* MktOfferPx */   
+               { 647, -1, 0, NULL }, /* MinBidSize */   
+               { 648, -1, 0, NULL }, /* MinOfferSize */   
+               { 649, -1, 0, NULL }, /* QuoteStatusReqID */   
+               { 650, -1, 0, NULL }, /* LegalConfirm */   
+               { 651, -1, 0, NULL }, /* UnderlyingLastPx */   
+               { 652, -1, 0, NULL }, /* UnderlyingLastQty */  
+               { 653, -1, 0 , SecDefStatus_val },   
+               { 654, -1, 0, NULL }, /* LegRefID */   
+               { 655, -1, 0, NULL }, /* ContraLegRefID */   
+               { 656, -1, 0, NULL }, /* SettlCurrBidFxRate */   
+               { 657, -1, 0, NULL }, /* SettlCurrOfferFxRate */  
+               { 658, -1, 0 , QuoteRequestRejectReason_val },   
+               { 659, -1, 0, NULL }, /* SideComplianceID */  
+               { 660, -1, 0 , AcctIDSource_val },   
+               { 661, -1, 0, NULL }, /* AllocAcctIDSource */   
+               { 662, -1, 0, NULL }, /* BenchmarkPrice */   
+               { 663, -1, 0, NULL }, /* BenchmarkPriceType */   
+               { 664, -1, 0, NULL }, /* ConfirmID */  
+               { 665, -1, 0 , ConfirmStatus_val },  
+               { 666, -1, 0 , ConfirmTransType_val },   
+               { 667, -1, 0, NULL }, /* ContractSettlMonth */  
+               { 668, -1, 0 , DeliveryForm_val },   
+               { 669, -1, 0, NULL }, /* LastParPx */   
+               { 670, -1, 0, NULL }, /* NoLegAllocs */   
+               { 671, -1, 0, NULL }, /* LegAllocAccount */   
+               { 672, -1, 0, NULL }, /* LegIndividualAllocID */   
+               { 673, -1, 0, NULL }, /* LegAllocQty */   
+               { 674, -1, 0, NULL }, /* LegAllocAcctIDSource */   
+               { 675, -1, 0, NULL }, /* LegSettlCurrency */   
+               { 676, -1, 0, NULL }, /* LegBenchmarkCurveCurrency */   
+               { 677, -1, 0, NULL }, /* LegBenchmarkCurveName */   
+               { 678, -1, 0, NULL }, /* LegBenchmarkCurvePoint */   
+               { 679, -1, 0, NULL }, /* LegBenchmarkPrice */   
+               { 680, -1, 0, NULL }, /* LegBenchmarkPriceType */   
+               { 681, -1, 0, NULL }, /* LegBidPx */   
+               { 682, -1, 0, NULL }, /* LegIOIQty */   
+               { 683, -1, 0, NULL }, /* NoLegStipulations */   
+               { 684, -1, 0, NULL }, /* LegOfferPx */   
+               { 685, -1, 0, NULL }, /* LegOrderQty */   
+               { 686, -1, 0, NULL }, /* LegPriceType */   
+               { 687, -1, 0, NULL }, /* LegQty */   
+               { 688, -1, 0, NULL }, /* LegStipulationType */   
+               { 689, -1, 0, NULL }, /* LegStipulationValue */  
+               { 690, -1, 0 , LegSwapType_val },   
+               { 691, -1, 0, NULL }, /* Pool */  
+               { 692, -1, 0 , QuotePriceType_val },   
+               { 693, -1, 0, NULL }, /* QuoteRespID */  
+               { 694, -1, 0 , QuoteRespType_val },   
+               { 695, -1, 0, NULL }, /* QuoteQualifier */   
+               { 696, -1, 0, NULL }, /* YieldRedemptionDate */   
+               { 697, -1, 0, NULL }, /* YieldRedemptionPrice */   
+               { 698, -1, 0, NULL }, /* YieldRedemptionPriceType */   
+               { 699, -1, 0, NULL }, /* BenchmarkSecurityID */   
+               { 700, -1, 0, NULL }, /* ReversalIndicator */   
+               { 701, -1, 0, NULL }, /* YieldCalcDate */   
+               { 702, -1, 0, NULL }, /* NoPositions */  
+               { 703, -1, 1 , PosType_val },   
+               { 704, -1, 0, NULL }, /* LongQty */   
+               { 705, -1, 0, NULL }, /* ShortQty */  
+               { 706, -1, 0 , PosQtyStatus_val },  
+               { 707, -1, 1 , PosAmtType_val },   
+               { 708, -1, 0, NULL }, /* PosAmt */  
+               { 709, -1, 0 , PosTransType_val },   
+               { 710, -1, 0, NULL }, /* PosReqID */   
+               { 711, -1, 0, NULL }, /* NoUnderlyings */  
+               { 712, -1, 0 , PosMaintAction_val },   
+               { 713, -1, 0, NULL }, /* OrigPosReqRefID */   
+               { 714, -1, 0, NULL }, /* PosMaintRptRefID */   
+               { 715, -1, 0, NULL }, /* ClearingBusinessDate */   
+               { 716, -1, 0, NULL }, /* SettlSessID */   
+               { 717, -1, 0, NULL }, /* SettlSessSubID */  
+               { 718, -1, 0 , AdjustmentType_val },   
+               { 719, -1, 0, NULL }, /* ContraryInstructionIndicator */   
+               { 720, -1, 0, NULL }, /* PriorSpreadIndicator */   
+               { 721, -1, 0, NULL }, /* PosMaintRptID */  
+               { 722, -1, 0 , PosMaintStatus_val },  
+               { 723, -1, 0 , PosMaintResult_val },  
+               { 724, -1, 0 , PosReqType_val },  
+               { 725, -1, 0 , ResponseTransportType_val },   
+               { 726, -1, 0, NULL }, /* ResponseDestination */   
+               { 727, -1, 0, NULL }, /* TotalNumPosReports */  
+               { 728, -1, 0 , PosReqResult_val },  
+               { 729, -1, 0 , PosReqStatus_val },   
+               { 730, -1, 0, NULL }, /* SettlPrice */  
+               { 731, -1, 0 , SettlPriceType_val },   
+               { 732, -1, 0, NULL }, /* UnderlyingSettlPrice */   
+               { 733, -1, 0, NULL }, /* UnderlyingSettlPriceType */   
+               { 734, -1, 0, NULL }, /* PriorSettlPrice */   
+               { 735, -1, 0, NULL }, /* NoQuoteQualifiers */   
+               { 736, -1, 0, NULL }, /* AllocSettlCurrency */   
+               { 737, -1, 0, NULL }, /* AllocSettlCurrAmt */   
+               { 738, -1, 0, NULL }, /* InterestAtMaturity */   
+               { 739, -1, 0, NULL }, /* LegDatedDate */   
+               { 740, -1, 0, NULL }, /* LegPool */   
+               { 741, -1, 0, NULL }, /* AllocInterestAtMaturity */   
+               { 742, -1, 0, NULL }, /* AllocAccruedInterestAmt */   
+               { 743, -1, 0, NULL }, /* DeliveryDate */  
+               { 744, -1, 2 , AssignmentMethod_val },   
+               { 745, -1, 0, NULL }, /* AssignmentUnit */   
+               { 746, -1, 0, NULL }, /* OpenInterest */  
+               { 747, -1, 2 , ExerciseMethod_val },   
+               { 748, -1, 0, NULL }, /* TotNumTradeReports */  
+               { 749, -1, 0 , TradeRequestResult_val },  
+               { 750, -1, 0 , TradeRequestStatus_val },  
+               { 751, -1, 0 , TradeReportRejectReason_val },  
+               { 752, -1, 0 , SideMultiLegReportingType_val },   
+               { 753, -1, 0, NULL }, /* NoPosAmt */   
+               { 754, -1, 0, NULL }, /* AutoAcceptIndicator */   
+               { 755, -1, 0, NULL }, /* AllocReportID */   
+               { 756, -1, 0, NULL }, /* NoNested2PartyIDs */   
+               { 757, -1, 0, NULL }, /* Nested2PartyID */   
+               { 758, -1, 0, NULL }, /* Nested2PartyIDSource */   
+               { 759, -1, 0, NULL }, /* Nested2PartyRole */   
+               { 760, -1, 0, NULL }, /* Nested2PartySubID */   
+               { 761, -1, 0, NULL }, /* BenchmarkSecurityIDSource */   
+               { 762, -1, 0, NULL }, /* SecuritySubType */   
+               { 763, -1, 0, NULL }, /* UnderlyingSecuritySubType */   
+               { 764, -1, 0, NULL }, /* LegSecuritySubType */   
+               { 765, -1, 0, NULL }, /* AllowableOneSidednessPct */   
+               { 766, -1, 0, NULL }, /* AllowableOneSidednessValue */   
+               { 767, -1, 0, NULL }, /* AllowableOneSidednessCurr */   
+               { 768, -1, 0, NULL }, /* NoTrdRegTimestamps */   
+               { 769, -1, 0, NULL }, /* TrdRegTimestamp */  
+               { 770, -1, 0 , TrdRegTimestampType_val },   
+               { 771, -1, 0, NULL }, /* TrdRegTimestampOrigin */   
+               { 772, -1, 0, NULL }, /* ConfirmRefID */  
+               { 773, -1, 0 , ConfirmType_val },  
+               { 774, -1, 0 , ConfirmRejReason_val },  
+               { 775, -1, 0 , BookingType_val },   
+               { 776, -1, 0, NULL }, /* IndividualAllocRejCode */   
+               { 777, -1, 0, NULL }, /* SettlInstMsgID */   
+               { 778, -1, 0, NULL }, /* NoSettlInst */   
+               { 779, -1, 0, NULL }, /* LastUpdateTime */  
+               { 780, -1, 0 , AllocSettlInstType_val },   
+               { 781, -1, 0, NULL }, /* NoSettlPartyIDs */   
+               { 782, -1, 0, NULL }, /* SettlPartyID */   
+               { 783, -1, 0, NULL }, /* SettlPartyIDSource */   
+               { 784, -1, 0, NULL }, /* SettlPartyRole */   
+               { 785, -1, 0, NULL }, /* SettlPartySubID */   
+               { 786, -1, 0, NULL }, /* SettlPartySubIDType */  
+               { 787, -1, 2 , DlvyInstType_val },  
+               { 788, -1, 0 , TerminationType_val },   
+               { 789, -1, 0, NULL }, /* NextExpectedMsgSeqNum */   
+               { 790, -1, 0, NULL }, /* OrdStatusReqID */   
+               { 791, -1, 0, NULL }, /* SettlInstReqID */  
+               { 792, -1, 0 , SettlInstReqRejCode_val },   
+               { 793, -1, 0, NULL }, /* SecondaryAllocID */  
+               { 794, -1, 0 , AllocReportType_val },   
+               { 795, -1, 0, NULL }, /* AllocReportRefID */  
+               { 796, -1, 0 , AllocCancReplaceReason_val },   
+               { 797, -1, 0, NULL }, /* CopyMsgIndicator */  
+               { 798, -1, 0 , AllocAccountType_val },   
+               { 799, -1, 0, NULL }, /* OrderAvgPx */   
+               { 800, -1, 0, NULL }, /* OrderBookingQty */   
+               { 801, -1, 0, NULL }, /* NoSettlPartySubIDs */   
+               { 802, -1, 0, NULL }, /* NoPartySubIDs */   
+               { 803, -1, 0, NULL }, /* PartySubIDType */   
+               { 804, -1, 0, NULL }, /* NoNestedPartySubIDs */   
+               { 805, -1, 0, NULL }, /* NestedPartySubIDType */   
+               { 806, -1, 0, NULL }, /* NoNested2PartySubIDs */   
+               { 807, -1, 0, NULL }, /* Nested2PartySubIDType */  
+               { 808, -1, 0 , AllocIntermedReqType_val },   
+               { 810, -1, 0, NULL }, /* UnderlyingPx */   
+               { 811, -1, 0, NULL }, /* PriceDelta */   
+               { 812, -1, 0, NULL }, /* ApplQueueMax */   
+               { 813, -1, 0, NULL }, /* ApplQueueDepth */  
+               { 814, -1, 0 , ApplQueueResolution_val },  
+               { 815, -1, 0 , ApplQueueAction_val },   
+               { 816, -1, 0, NULL }, /* NoAltMDSource */   
+               { 817, -1, 0, NULL }, /* AltMDSourceID */   
+               { 818, -1, 0, NULL }, /* SecondaryTradeReportID */  
+               { 819, -1, 0 , AvgPxIndicator_val },   
+               { 820, -1, 0, NULL }, /* TradeLinkID */   
+               { 821, -1, 0, NULL }, /* OrderInputDevice */   
+               { 822, -1, 0, NULL }, /* UnderlyingTradingSessionID */   
+               { 823, -1, 0, NULL }, /* UnderlyingTradingSessionSubID */   
+               { 824, -1, 0, NULL }, /* TradeLegRefID */   
+               { 825, -1, 0, NULL }, /* ExchangeRule */  
+               { 826, -1, 0 , TradeAllocIndicator_val },  
+               { 827, -1, 0 , ExpirationCycle_val },  
+               { 828, -1, 0 , TrdType_val },   
+               { 829, -1, 0, NULL }, /* TrdSubType */   
+               { 830, -1, 0, NULL }, /* TransferReason */   
+               { 831, -1, 0, NULL }, /* AsgnReqID */   
+               { 832, -1, 0, NULL }, /* TotNumAssignmentReports */   
+               { 833, -1, 0, NULL }, /* AsgnRptID */   
+               { 834, -1, 0, NULL }, /* ThresholdAmount */  
+               { 835, -1, 0 , PegMoveType_val },  
+               { 836, -1, 0 , PegOffsetType_val },  
+               { 837, -1, 0 , PegLimitType_val },  
+               { 838, -1, 0 , PegRoundDirection_val },   
+               { 839, -1, 0, NULL }, /* PeggedPrice */  
+               { 840, -1, 0 , PegScope_val },  
+               { 841, -1, 0 , DiscretionMoveType_val },  
+               { 842, -1, 0 , DiscretionOffsetType_val },  
+               { 843, -1, 0 , DiscretionLimitType_val },  
+               { 844, -1, 0 , DiscretionRoundDirection_val },   
+               { 845, -1, 0, NULL }, /* DiscretionPrice */  
+               { 846, -1, 0 , DiscretionScope_val },   
+               { 847, -1, 0, NULL }, /* TargetStrategy */   
+               { 848, -1, 0, NULL }, /* TargetStrategyParameters */   
+               { 849, -1, 0, NULL }, /* ParticipationRate */   
+               { 850, -1, 0, NULL }, /* TargetStrategyPerformance */  
+               { 851, -1, 0 , LastLiquidityInd_val },   
+               { 852, -1, 0, NULL }, /* PublishTrdIndicator */  
+               { 853, -1, 0 , ShortSaleReason_val },  
+               { 854, -1, 0 , QtyType_val },   
+               { 855, -1, 0, NULL }, /* SecondaryTrdType */  
+               { 856, -1, 0 , TradeReportType_val },  
+               { 857, -1, 0 , AllocNoOrdersType_val },   
+               { 858, -1, 0, NULL }, /* SharedCommission */   
+               { 859, -1, 0, NULL }, /* ConfirmReqID */   
+               { 860, -1, 0, NULL }, /* AvgParPx */   
+               { 861, -1, 0, NULL }, /* ReportedPx */   
+               { 862, -1, 0, NULL }, /* NoCapacities */   
+               { 863, -1, 0, NULL }, /* OrderCapacityQty */   
+               { 864, -1, 0, NULL }, /* NoEvents */  
+               { 865, -1, 0 , EventType_val },   
+               { 866, -1, 0, NULL }, /* EventDate */   
+               { 867, -1, 0, NULL }, /* EventPx */   
+               { 868, -1, 0, NULL }, /* EventText */   
+               { 869, -1, 0, NULL }, /* PctAtRisk */   
+               { 870, -1, 0, NULL }, /* NoInstrAttrib */  
+               { 871, -1, 0 , InstrAttribType_val },   
+               { 872, -1, 0, NULL }, /* InstrAttribValue */   
+               { 873, -1, 0, NULL }, /* DatedDate */   
+               { 874, -1, 0, NULL }, /* InterestAccrualDate */   
+               { 875, -1, 0, NULL }, /* CPProgram */   
+               { 876, -1, 0, NULL }, /* CPRegType */   
+               { 877, -1, 0, NULL }, /* UnderlyingCPProgram */   
+               { 878, -1, 0, NULL }, /* UnderlyingCPRegType */   
+               { 879, -1, 0, NULL }, /* UnderlyingQty */   
+               { 880, -1, 0, NULL }, /* TrdMatchID */   
+               { 881, -1, 0, NULL }, /* SecondaryTradeReportRefID */   
+               { 882, -1, 0, NULL }, /* UnderlyingDirtyPrice */   
+               { 883, -1, 0, NULL }, /* UnderlyingEndPrice */   
+               { 884, -1, 0, NULL }, /* UnderlyingStartValue */   
+               { 885, -1, 0, NULL }, /* UnderlyingCurrentValue */   
+               { 886, -1, 0, NULL }, /* UnderlyingEndValue */   
+               { 887, -1, 0, NULL }, /* NoUnderlyingStips */   
+               { 888, -1, 0, NULL }, /* UnderlyingStipType */   
+               { 889, -1, 0, NULL }, /* UnderlyingStipValue */   
+               { 890, -1, 0, NULL }, /* MaturityNetMoney */  
+               { 891, -1, 0 , MiscFeeBasis_val },   
+               { 892, -1, 0, NULL }, /* TotNoAllocs */   
+               { 893, -1, 0, NULL }, /* LastFragment */   
+               { 894, -1, 0, NULL }, /* CollReqID */  
+               { 895, -1, 0 , CollAsgnReason_val },  
+               { 896, -1, 0 , CollInquiryQualifier_val },   
+               { 897, -1, 0, NULL }, /* NoTrades */   
+               { 898, -1, 0, NULL }, /* MarginRatio */   
+               { 899, -1, 0, NULL }, /* MarginExcess */   
+               { 900, -1, 0, NULL }, /* TotalNetValue */   
+               { 901, -1, 0, NULL }, /* CashOutstanding */   
+               { 902, -1, 0, NULL }, /* CollAsgnID */  
+               { 903, -1, 0 , CollAsgnTransType_val },   
+               { 904, -1, 0, NULL }, /* CollRespID */  
+               { 905, -1, 0 , CollAsgnRespType_val },  
+               { 906, -1, 0 , CollAsgnRejectReason_val },   
+               { 907, -1, 0, NULL }, /* CollAsgnRefID */   
+               { 908, -1, 0, NULL }, /* CollRptID */   
+               { 909, -1, 0, NULL }, /* CollInquiryID */  
+               { 910, -1, 0 , CollStatus_val },   
+               { 911, -1, 0, NULL }, /* TotNumReports */   
+               { 912, -1, 0, NULL }, /* LastRptRequested */   
+               { 913, -1, 0, NULL }, /* AgreementDesc */   
+               { 914, -1, 0, NULL }, /* AgreementID */   
+               { 915, -1, 0, NULL }, /* AgreementDate */   
+               { 916, -1, 0, NULL }, /* StartDate */   
+               { 917, -1, 0, NULL }, /* EndDate */   
+               { 918, -1, 0, NULL }, /* AgreementCurrency */  
+               { 919, -1, 0 , DeliveryType_val },   
+               { 920, -1, 0, NULL }, /* EndAccruedInterestAmt */   
+               { 921, -1, 0, NULL }, /* StartCash */   
+               { 922, -1, 0, NULL }, /* EndCash */   
+               { 923, -1, 0, NULL }, /* UserRequestID */  
+               { 924, -1, 0 , UserRequestType_val },   
+               { 925, -1, 0, NULL }, /* NewPassword */  
+               { 926, -1, 0 , UserStatus_val },   
+               { 927, -1, 0, NULL }, /* UserStatusText */  
+               { 928, -1, 0 , StatusValue_val },   
+               { 929, -1, 0, NULL }, /* StatusText */   
+               { 930, -1, 0, NULL }, /* RefCompID */   
+               { 931, -1, 0, NULL }, /* RefSubID */   
+               { 932, -1, 0, NULL }, /* NetworkResponseID */   
+               { 933, -1, 0, NULL }, /* NetworkRequestID */   
+               { 934, -1, 0, NULL }, /* LastNetworkResponseID */  
+               { 935, -1, 0 , NetworkRequestType_val },   
+               { 936, -1, 0, NULL }, /* NoCompIDs */  
+               { 937, -1, 0 , NetworkStatusResponseType_val },   
+               { 938, -1, 0, NULL }, /* NoCollInquiryQualifier */  
+               { 939, -1, 0 , TrdRptStatus_val },  
+               { 940, -1, 0 , AffirmStatus_val },   
+               { 941, -1, 0, NULL }, /* UnderlyingStrikeCurrency */   
+               { 942, -1, 0, NULL }, /* LegStrikeCurrency */   
+               { 943, -1, 0, NULL }, /* TimeBracket */  
+               { 944, -1, 0 , CollAction_val },  
+               { 945, -1, 0 , CollInquiryStatus_val },  
+               { 946, -1, 0 , CollInquiryResult_val },   
+               { 947, -1, 0, NULL }, /* StrikeCurrency */   
+               { 948, -1, 0, NULL }, /* NoNested3PartyIDs */   
+               { 949, -1, 0, NULL }, /* Nested3PartyID */   
+               { 950, -1, 0, NULL }, /* Nested3PartyIDSource */   
+               { 951, -1, 0, NULL }, /* Nested3PartyRole */   
+               { 952, -1, 0, NULL }, /* NoNested3PartySubIDs */   
+               { 953, -1, 0, NULL }, /* Nested3PartySubID */   
+               { 954, -1, 0, NULL }, /* Nested3PartySubIDType */   
+               { 955, -1, 0, NULL }, /* LegContractSettlMonth */   
+               { 956, -1, 0, NULL }, /* LegInterestAccrualDate */   
+  };
+static hf_register_info hf_FIX[] = {
+       
+        { &fix_fields[0].hf_id, 
+            { "Account (1)", "fix.Account",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Account (1)", HFILL }
+        }, 
+        { &fix_fields[1].hf_id, 
+            { "AdvId (2)", "fix.AdvId",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AdvId (2)", HFILL }
+        }, 
+        { &fix_fields[2].hf_id, 
+            { "AdvRefID (3)", "fix.AdvRefID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AdvRefID (3)", HFILL }
+        }, 
+        { &fix_fields[3].hf_id, 
+            { "AdvSide (4)", "fix.AdvSide",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AdvSide (4)", HFILL }
+        }, 
+        { &fix_fields[4].hf_id, 
+            { "AdvTransType (5)", "fix.AdvTransType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AdvTransType (5)", HFILL }
+        }, 
+        { &fix_fields[5].hf_id, 
+            { "AvgPx (6)", "fix.AvgPx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AvgPx (6)", HFILL }
+        }, 
+        { &fix_fields[6].hf_id, 
+            { "BeginSeqNo (7)", "fix.BeginSeqNo",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BeginSeqNo (7)", HFILL }
+        }, 
+        { &fix_fields[7].hf_id, 
+            { "BeginString (8)", "fix.BeginString",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BeginString (8)", HFILL }
+        }, 
+        { &fix_fields[8].hf_id, 
+            { "BodyLength (9)", "fix.BodyLength",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BodyLength (9)", HFILL }
+        }, 
+        { &fix_fields[9].hf_id, 
+            { "CheckSum (10)", "fix.CheckSum",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CheckSum (10)", HFILL }
+        }, 
+        { &fix_fields[10].hf_id, 
+            { "ClOrdID (11)", "fix.ClOrdID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ClOrdID (11)", HFILL }
+        }, 
+        { &fix_fields[11].hf_id, 
+            { "Commission (12)", "fix.Commission",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Commission (12)", HFILL }
+        }, 
+        { &fix_fields[12].hf_id, 
+            { "CommType (13)", "fix.CommType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CommType (13)", HFILL }
+        }, 
+        { &fix_fields[13].hf_id, 
+            { "CumQty (14)", "fix.CumQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CumQty (14)", HFILL }
+        }, 
+        { &fix_fields[14].hf_id, 
+            { "Currency (15)", "fix.Currency",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Currency (15)", HFILL }
+        }, 
+        { &fix_fields[15].hf_id, 
+            { "EndSeqNo (16)", "fix.EndSeqNo",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EndSeqNo (16)", HFILL }
+        }, 
+        { &fix_fields[16].hf_id, 
+            { "ExecID (17)", "fix.ExecID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ExecID (17)", HFILL }
+        }, 
+        { &fix_fields[17].hf_id, 
+            { "ExecInst (18)", "fix.ExecInst",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ExecInst (18)", HFILL }
+        }, 
+        { &fix_fields[18].hf_id, 
+            { "ExecRefID (19)", "fix.ExecRefID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ExecRefID (19)", HFILL }
+        }, 
+        { &fix_fields[19].hf_id, 
+            { "ExecTransType (20)", "fix.ExecTransType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ExecTransType (20)", HFILL }
+        }, 
+        { &fix_fields[20].hf_id, 
+            { "HandlInst (21)", "fix.HandlInst",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "HandlInst (21)", HFILL }
+        }, 
+        { &fix_fields[21].hf_id, 
+            { "SecurityIDSource (22)", "fix.SecurityIDSource",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecurityIDSource (22)", HFILL }
+        }, 
+        { &fix_fields[22].hf_id, 
+            { "IOIid (23)", "fix.IOIid",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "IOIid (23)", HFILL }
+        }, 
+        { &fix_fields[23].hf_id, 
+            { "IOIOthSvc (24)", "fix.IOIOthSvc",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "IOIOthSvc (24)", HFILL }
+        }, 
+        { &fix_fields[24].hf_id, 
+            { "IOIQltyInd (25)", "fix.IOIQltyInd",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "IOIQltyInd (25)", HFILL }
+        }, 
+        { &fix_fields[25].hf_id, 
+            { "IOIRefID (26)", "fix.IOIRefID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "IOIRefID (26)", HFILL }
+        }, 
+        { &fix_fields[26].hf_id, 
+            { "IOIQty (27)", "fix.IOIQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "IOIQty (27)", HFILL }
+        }, 
+        { &fix_fields[27].hf_id, 
+            { "IOITransType (28)", "fix.IOITransType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "IOITransType (28)", HFILL }
+        }, 
+        { &fix_fields[28].hf_id, 
+            { "LastCapacity (29)", "fix.LastCapacity",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LastCapacity (29)", HFILL }
+        }, 
+        { &fix_fields[29].hf_id, 
+            { "LastMkt (30)", "fix.LastMkt",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LastMkt (30)", HFILL }
+        }, 
+        { &fix_fields[30].hf_id, 
+            { "LastPx (31)", "fix.LastPx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LastPx (31)", HFILL }
+        }, 
+        { &fix_fields[31].hf_id, 
+            { "LastQty (32)", "fix.LastQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LastQty (32)", HFILL }
+        }, 
+        { &fix_fields[32].hf_id, 
+            { "LinesOfText (33)", "fix.LinesOfText",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LinesOfText (33)", HFILL }
+        }, 
+        { &fix_fields[33].hf_id, 
+            { "MsgSeqNum (34)", "fix.MsgSeqNum",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MsgSeqNum (34)", HFILL }
+        }, 
+        { &fix_fields[34].hf_id, 
+            { "MsgType (35)", "fix.MsgType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MsgType (35)", HFILL }
+        }, 
+        { &fix_fields[35].hf_id, 
+            { "NewSeqNo (36)", "fix.NewSeqNo",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NewSeqNo (36)", HFILL }
+        }, 
+        { &fix_fields[36].hf_id, 
+            { "OrderID (37)", "fix.OrderID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OrderID (37)", HFILL }
+        }, 
+        { &fix_fields[37].hf_id, 
+            { "OrderQty (38)", "fix.OrderQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OrderQty (38)", HFILL }
+        }, 
+        { &fix_fields[38].hf_id, 
+            { "OrdStatus (39)", "fix.OrdStatus",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OrdStatus (39)", HFILL }
+        }, 
+        { &fix_fields[39].hf_id, 
+            { "OrdType (40)", "fix.OrdType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OrdType (40)", HFILL }
+        }, 
+        { &fix_fields[40].hf_id, 
+            { "OrigClOrdID (41)", "fix.OrigClOrdID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OrigClOrdID (41)", HFILL }
+        }, 
+        { &fix_fields[41].hf_id, 
+            { "OrigTime (42)", "fix.OrigTime",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OrigTime (42)", HFILL }
+        }, 
+        { &fix_fields[42].hf_id, 
+            { "PossDupFlag (43)", "fix.PossDupFlag",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PossDupFlag (43)", HFILL }
+        }, 
+        { &fix_fields[43].hf_id, 
+            { "Price (44)", "fix.Price",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Price (44)", HFILL }
+        }, 
+        { &fix_fields[44].hf_id, 
+            { "RefSeqNum (45)", "fix.RefSeqNum",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RefSeqNum (45)", HFILL }
+        }, 
+        { &fix_fields[45].hf_id, 
+            { "RelatdSym (46)", "fix.RelatdSym",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RelatdSym (46)", HFILL }
+        }, 
+        { &fix_fields[46].hf_id, 
+            { "Rule80A (47)", "fix.Rule80A",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Rule80A (47)", HFILL }
+        }, 
+        { &fix_fields[47].hf_id, 
+            { "SecurityID (48)", "fix.SecurityID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecurityID (48)", HFILL }
+        }, 
+        { &fix_fields[48].hf_id, 
+            { "SenderCompID (49)", "fix.SenderCompID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SenderCompID (49)", HFILL }
+        }, 
+        { &fix_fields[49].hf_id, 
+            { "SenderSubID (50)", "fix.SenderSubID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SenderSubID (50)", HFILL }
+        }, 
+        { &fix_fields[50].hf_id, 
+            { "SendingDate (51)", "fix.SendingDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SendingDate (51)", HFILL }
+        }, 
+        { &fix_fields[51].hf_id, 
+            { "SendingTime (52)", "fix.SendingTime",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SendingTime (52)", HFILL }
+        }, 
+        { &fix_fields[52].hf_id, 
+            { "Quantity (53)", "fix.Quantity",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Quantity (53)", HFILL }
+        }, 
+        { &fix_fields[53].hf_id, 
+            { "Side (54)", "fix.Side",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Side (54)", HFILL }
+        }, 
+        { &fix_fields[54].hf_id, 
+            { "Symbol (55)", "fix.Symbol",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Symbol (55)", HFILL }
+        }, 
+        { &fix_fields[55].hf_id, 
+            { "TargetCompID (56)", "fix.TargetCompID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TargetCompID (56)", HFILL }
+        }, 
+        { &fix_fields[56].hf_id, 
+            { "TargetSubID (57)", "fix.TargetSubID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TargetSubID (57)", HFILL }
+        }, 
+        { &fix_fields[57].hf_id, 
+            { "Text (58)", "fix.Text",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Text (58)", HFILL }
+        }, 
+        { &fix_fields[58].hf_id, 
+            { "TimeInForce (59)", "fix.TimeInForce",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TimeInForce (59)", HFILL }
+        }, 
+        { &fix_fields[59].hf_id, 
+            { "TransactTime (60)", "fix.TransactTime",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TransactTime (60)", HFILL }
+        }, 
+        { &fix_fields[60].hf_id, 
+            { "Urgency (61)", "fix.Urgency",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Urgency (61)", HFILL }
+        }, 
+        { &fix_fields[61].hf_id, 
+            { "ValidUntilTime (62)", "fix.ValidUntilTime",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ValidUntilTime (62)", HFILL }
+        }, 
+        { &fix_fields[62].hf_id, 
+            { "SettlType (63)", "fix.SettlType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlType (63)", HFILL }
+        }, 
+        { &fix_fields[63].hf_id, 
+            { "SettlDate (64)", "fix.SettlDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlDate (64)", HFILL }
+        }, 
+        { &fix_fields[64].hf_id, 
+            { "SymbolSfx (65)", "fix.SymbolSfx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SymbolSfx (65)", HFILL }
+        }, 
+        { &fix_fields[65].hf_id, 
+            { "ListID (66)", "fix.ListID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ListID (66)", HFILL }
+        }, 
+        { &fix_fields[66].hf_id, 
+            { "ListSeqNo (67)", "fix.ListSeqNo",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ListSeqNo (67)", HFILL }
+        }, 
+        { &fix_fields[67].hf_id, 
+            { "TotNoOrders (68)", "fix.TotNoOrders",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TotNoOrders (68)", HFILL }
+        }, 
+        { &fix_fields[68].hf_id, 
+            { "ListExecInst (69)", "fix.ListExecInst",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ListExecInst (69)", HFILL }
+        }, 
+        { &fix_fields[69].hf_id, 
+            { "AllocID (70)", "fix.AllocID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocID (70)", HFILL }
+        }, 
+        { &fix_fields[70].hf_id, 
+            { "AllocTransType (71)", "fix.AllocTransType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocTransType (71)", HFILL }
+        }, 
+        { &fix_fields[71].hf_id, 
+            { "RefAllocID (72)", "fix.RefAllocID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RefAllocID (72)", HFILL }
+        }, 
+        { &fix_fields[72].hf_id, 
+            { "NoOrders (73)", "fix.NoOrders",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoOrders (73)", HFILL }
+        }, 
+        { &fix_fields[73].hf_id, 
+            { "AvgPxPrecision (74)", "fix.AvgPxPrecision",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AvgPxPrecision (74)", HFILL }
+        }, 
+        { &fix_fields[74].hf_id, 
+            { "TradeDate (75)", "fix.TradeDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradeDate (75)", HFILL }
+        }, 
+        { &fix_fields[75].hf_id, 
+            { "ExecBroker (76)", "fix.ExecBroker",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ExecBroker (76)", HFILL }
+        }, 
+        { &fix_fields[76].hf_id, 
+            { "PositionEffect (77)", "fix.PositionEffect",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PositionEffect (77)", HFILL }
+        }, 
+        { &fix_fields[77].hf_id, 
+            { "NoAllocs (78)", "fix.NoAllocs",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoAllocs (78)", HFILL }
+        }, 
+        { &fix_fields[78].hf_id, 
+            { "AllocAccount (79)", "fix.AllocAccount",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocAccount (79)", HFILL }
+        }, 
+        { &fix_fields[79].hf_id, 
+            { "AllocQty (80)", "fix.AllocQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocQty (80)", HFILL }
+        }, 
+        { &fix_fields[80].hf_id, 
+            { "ProcessCode (81)", "fix.ProcessCode",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ProcessCode (81)", HFILL }
+        }, 
+        { &fix_fields[81].hf_id, 
+            { "NoRpts (82)", "fix.NoRpts",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoRpts (82)", HFILL }
+        }, 
+        { &fix_fields[82].hf_id, 
+            { "RptSeq (83)", "fix.RptSeq",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RptSeq (83)", HFILL }
+        }, 
+        { &fix_fields[83].hf_id, 
+            { "CxlQty (84)", "fix.CxlQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CxlQty (84)", HFILL }
+        }, 
+        { &fix_fields[84].hf_id, 
+            { "NoDlvyInst (85)", "fix.NoDlvyInst",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoDlvyInst (85)", HFILL }
+        }, 
+        { &fix_fields[85].hf_id, 
+            { "DlvyInst (86)", "fix.DlvyInst",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DlvyInst (86)", HFILL }
+        }, 
+        { &fix_fields[86].hf_id, 
+            { "AllocStatus (87)", "fix.AllocStatus",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocStatus (87)", HFILL }
+        }, 
+        { &fix_fields[87].hf_id, 
+            { "AllocRejCode (88)", "fix.AllocRejCode",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocRejCode (88)", HFILL }
+        }, 
+        { &fix_fields[88].hf_id, 
+            { "Signature (89)", "fix.Signature",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Signature (89)", HFILL }
+        }, 
+        { &fix_fields[89].hf_id, 
+            { "SecureDataLen (90)", "fix.SecureDataLen",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecureDataLen (90)", HFILL }
+        }, 
+        { &fix_fields[90].hf_id, 
+            { "SecureData (91)", "fix.SecureData",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecureData (91)", HFILL }
+        }, 
+        { &fix_fields[91].hf_id, 
+            { "BrokerOfCredit (92)", "fix.BrokerOfCredit",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BrokerOfCredit (92)", HFILL }
+        }, 
+        { &fix_fields[92].hf_id, 
+            { "SignatureLength (93)", "fix.SignatureLength",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SignatureLength (93)", HFILL }
+        }, 
+        { &fix_fields[93].hf_id, 
+            { "EmailType (94)", "fix.EmailType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EmailType (94)", HFILL }
+        }, 
+        { &fix_fields[94].hf_id, 
+            { "RawDataLength (95)", "fix.RawDataLength",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RawDataLength (95)", HFILL }
+        }, 
+        { &fix_fields[95].hf_id, 
+            { "RawData (96)", "fix.RawData",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RawData (96)", HFILL }
+        }, 
+        { &fix_fields[96].hf_id, 
+            { "PossResend (97)", "fix.PossResend",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PossResend (97)", HFILL }
+        }, 
+        { &fix_fields[97].hf_id, 
+            { "EncryptMethod (98)", "fix.EncryptMethod",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncryptMethod (98)", HFILL }
+        }, 
+        { &fix_fields[98].hf_id, 
+            { "StopPx (99)", "fix.StopPx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "StopPx (99)", HFILL }
+        }, 
+        { &fix_fields[99].hf_id, 
+            { "ExDestination (100)", "fix.ExDestination",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ExDestination (100)", HFILL }
+        }, 
+        { &fix_fields[100].hf_id, 
+            { "CxlRejReason (102)", "fix.CxlRejReason",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CxlRejReason (102)", HFILL }
+        }, 
+        { &fix_fields[101].hf_id, 
+            { "OrdRejReason (103)", "fix.OrdRejReason",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OrdRejReason (103)", HFILL }
+        }, 
+        { &fix_fields[102].hf_id, 
+            { "IOIQualifier (104)", "fix.IOIQualifier",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "IOIQualifier (104)", HFILL }
+        }, 
+        { &fix_fields[103].hf_id, 
+            { "WaveNo (105)", "fix.WaveNo",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "WaveNo (105)", HFILL }
+        }, 
+        { &fix_fields[104].hf_id, 
+            { "Issuer (106)", "fix.Issuer",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Issuer (106)", HFILL }
+        }, 
+        { &fix_fields[105].hf_id, 
+            { "SecurityDesc (107)", "fix.SecurityDesc",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecurityDesc (107)", HFILL }
+        }, 
+        { &fix_fields[106].hf_id, 
+            { "HeartBtInt (108)", "fix.HeartBtInt",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "HeartBtInt (108)", HFILL }
+        }, 
+        { &fix_fields[107].hf_id, 
+            { "ClientID (109)", "fix.ClientID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ClientID (109)", HFILL }
+        }, 
+        { &fix_fields[108].hf_id, 
+            { "MinQty (110)", "fix.MinQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MinQty (110)", HFILL }
+        }, 
+        { &fix_fields[109].hf_id, 
+            { "MaxFloor (111)", "fix.MaxFloor",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MaxFloor (111)", HFILL }
+        }, 
+        { &fix_fields[110].hf_id, 
+            { "TestReqID (112)", "fix.TestReqID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TestReqID (112)", HFILL }
+        }, 
+        { &fix_fields[111].hf_id, 
+            { "ReportToExch (113)", "fix.ReportToExch",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ReportToExch (113)", HFILL }
+        }, 
+        { &fix_fields[112].hf_id, 
+            { "LocateReqd (114)", "fix.LocateReqd",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LocateReqd (114)", HFILL }
+        }, 
+        { &fix_fields[113].hf_id, 
+            { "OnBehalfOfCompID (115)", "fix.OnBehalfOfCompID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OnBehalfOfCompID (115)", HFILL }
+        }, 
+        { &fix_fields[114].hf_id, 
+            { "OnBehalfOfSubID (116)", "fix.OnBehalfOfSubID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OnBehalfOfSubID (116)", HFILL }
+        }, 
+        { &fix_fields[115].hf_id, 
+            { "QuoteID (117)", "fix.QuoteID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "QuoteID (117)", HFILL }
+        }, 
+        { &fix_fields[116].hf_id, 
+            { "NetMoney (118)", "fix.NetMoney",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NetMoney (118)", HFILL }
+        }, 
+        { &fix_fields[117].hf_id, 
+            { "SettlCurrAmt (119)", "fix.SettlCurrAmt",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlCurrAmt (119)", HFILL }
+        }, 
+        { &fix_fields[118].hf_id, 
+            { "SettlCurrency (120)", "fix.SettlCurrency",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlCurrency (120)", HFILL }
+        }, 
+        { &fix_fields[119].hf_id, 
+            { "ForexReq (121)", "fix.ForexReq",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ForexReq (121)", HFILL }
+        }, 
+        { &fix_fields[120].hf_id, 
+            { "OrigSendingTime (122)", "fix.OrigSendingTime",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OrigSendingTime (122)", HFILL }
+        }, 
+        { &fix_fields[121].hf_id, 
+            { "GapFillFlag (123)", "fix.GapFillFlag",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "GapFillFlag (123)", HFILL }
+        }, 
+        { &fix_fields[122].hf_id, 
+            { "NoExecs (124)", "fix.NoExecs",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoExecs (124)", HFILL }
+        }, 
+        { &fix_fields[123].hf_id, 
+            { "CxlType (125)", "fix.CxlType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CxlType (125)", HFILL }
+        }, 
+        { &fix_fields[124].hf_id, 
+            { "ExpireTime (126)", "fix.ExpireTime",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ExpireTime (126)", HFILL }
+        }, 
+        { &fix_fields[125].hf_id, 
+            { "DKReason (127)", "fix.DKReason",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DKReason (127)", HFILL }
+        }, 
+        { &fix_fields[126].hf_id, 
+            { "DeliverToCompID (128)", "fix.DeliverToCompID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DeliverToCompID (128)", HFILL }
+        }, 
+        { &fix_fields[127].hf_id, 
+            { "DeliverToSubID (129)", "fix.DeliverToSubID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DeliverToSubID (129)", HFILL }
+        }, 
+        { &fix_fields[128].hf_id, 
+            { "IOINaturalFlag (130)", "fix.IOINaturalFlag",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "IOINaturalFlag (130)", HFILL }
+        }, 
+        { &fix_fields[129].hf_id, 
+            { "QuoteReqID (131)", "fix.QuoteReqID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "QuoteReqID (131)", HFILL }
+        }, 
+        { &fix_fields[130].hf_id, 
+            { "BidPx (132)", "fix.BidPx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BidPx (132)", HFILL }
+        }, 
+        { &fix_fields[131].hf_id, 
+            { "OfferPx (133)", "fix.OfferPx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OfferPx (133)", HFILL }
+        }, 
+        { &fix_fields[132].hf_id, 
+            { "BidSize (134)", "fix.BidSize",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BidSize (134)", HFILL }
+        }, 
+        { &fix_fields[133].hf_id, 
+            { "OfferSize (135)", "fix.OfferSize",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OfferSize (135)", HFILL }
+        }, 
+        { &fix_fields[134].hf_id, 
+            { "NoMiscFees (136)", "fix.NoMiscFees",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoMiscFees (136)", HFILL }
+        }, 
+        { &fix_fields[135].hf_id, 
+            { "MiscFeeAmt (137)", "fix.MiscFeeAmt",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MiscFeeAmt (137)", HFILL }
+        }, 
+        { &fix_fields[136].hf_id, 
+            { "MiscFeeCurr (138)", "fix.MiscFeeCurr",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MiscFeeCurr (138)", HFILL }
+        }, 
+        { &fix_fields[137].hf_id, 
+            { "MiscFeeType (139)", "fix.MiscFeeType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MiscFeeType (139)", HFILL }
+        }, 
+        { &fix_fields[138].hf_id, 
+            { "PrevClosePx (140)", "fix.PrevClosePx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PrevClosePx (140)", HFILL }
+        }, 
+        { &fix_fields[139].hf_id, 
+            { "ResetSeqNumFlag (141)", "fix.ResetSeqNumFlag",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ResetSeqNumFlag (141)", HFILL }
+        }, 
+        { &fix_fields[140].hf_id, 
+            { "SenderLocationID (142)", "fix.SenderLocationID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SenderLocationID (142)", HFILL }
+        }, 
+        { &fix_fields[141].hf_id, 
+            { "TargetLocationID (143)", "fix.TargetLocationID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TargetLocationID (143)", HFILL }
+        }, 
+        { &fix_fields[142].hf_id, 
+            { "OnBehalfOfLocationID (144)", "fix.OnBehalfOfLocationID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OnBehalfOfLocationID (144)", HFILL }
+        }, 
+        { &fix_fields[143].hf_id, 
+            { "DeliverToLocationID (145)", "fix.DeliverToLocationID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DeliverToLocationID (145)", HFILL }
+        }, 
+        { &fix_fields[144].hf_id, 
+            { "NoRelatedSym (146)", "fix.NoRelatedSym",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoRelatedSym (146)", HFILL }
+        }, 
+        { &fix_fields[145].hf_id, 
+            { "Subject (147)", "fix.Subject",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Subject (147)", HFILL }
+        }, 
+        { &fix_fields[146].hf_id, 
+            { "Headline (148)", "fix.Headline",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Headline (148)", HFILL }
+        }, 
+        { &fix_fields[147].hf_id, 
+            { "URLLink (149)", "fix.URLLink",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "URLLink (149)", HFILL }
+        }, 
+        { &fix_fields[148].hf_id, 
+            { "ExecType (150)", "fix.ExecType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ExecType (150)", HFILL }
+        }, 
+        { &fix_fields[149].hf_id, 
+            { "LeavesQty (151)", "fix.LeavesQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LeavesQty (151)", HFILL }
+        }, 
+        { &fix_fields[150].hf_id, 
+            { "CashOrderQty (152)", "fix.CashOrderQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CashOrderQty (152)", HFILL }
+        }, 
+        { &fix_fields[151].hf_id, 
+            { "AllocAvgPx (153)", "fix.AllocAvgPx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocAvgPx (153)", HFILL }
+        }, 
+        { &fix_fields[152].hf_id, 
+            { "AllocNetMoney (154)", "fix.AllocNetMoney",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocNetMoney (154)", HFILL }
+        }, 
+        { &fix_fields[153].hf_id, 
+            { "SettlCurrFxRate (155)", "fix.SettlCurrFxRate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlCurrFxRate (155)", HFILL }
+        }, 
+        { &fix_fields[154].hf_id, 
+            { "SettlCurrFxRateCalc (156)", "fix.SettlCurrFxRateCalc",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlCurrFxRateCalc (156)", HFILL }
+        }, 
+        { &fix_fields[155].hf_id, 
+            { "NumDaysInterest (157)", "fix.NumDaysInterest",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NumDaysInterest (157)", HFILL }
+        }, 
+        { &fix_fields[156].hf_id, 
+            { "AccruedInterestRate (158)", "fix.AccruedInterestRate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AccruedInterestRate (158)", HFILL }
+        }, 
+        { &fix_fields[157].hf_id, 
+            { "AccruedInterestAmt (159)", "fix.AccruedInterestAmt",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AccruedInterestAmt (159)", HFILL }
+        }, 
+        { &fix_fields[158].hf_id, 
+            { "SettlInstMode (160)", "fix.SettlInstMode",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlInstMode (160)", HFILL }
+        }, 
+        { &fix_fields[159].hf_id, 
+            { "AllocText (161)", "fix.AllocText",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocText (161)", HFILL }
+        }, 
+        { &fix_fields[160].hf_id, 
+            { "SettlInstID (162)", "fix.SettlInstID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlInstID (162)", HFILL }
+        }, 
+        { &fix_fields[161].hf_id, 
+            { "SettlInstTransType (163)", "fix.SettlInstTransType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlInstTransType (163)", HFILL }
+        }, 
+        { &fix_fields[162].hf_id, 
+            { "EmailThreadID (164)", "fix.EmailThreadID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EmailThreadID (164)", HFILL }
+        }, 
+        { &fix_fields[163].hf_id, 
+            { "SettlInstSource (165)", "fix.SettlInstSource",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlInstSource (165)", HFILL }
+        }, 
+        { &fix_fields[164].hf_id, 
+            { "SettlLocation (166)", "fix.SettlLocation",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlLocation (166)", HFILL }
+        }, 
+        { &fix_fields[165].hf_id, 
+            { "SecurityType (167)", "fix.SecurityType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecurityType (167)", HFILL }
+        }, 
+        { &fix_fields[166].hf_id, 
+            { "EffectiveTime (168)", "fix.EffectiveTime",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EffectiveTime (168)", HFILL }
+        }, 
+        { &fix_fields[167].hf_id, 
+            { "StandInstDbType (169)", "fix.StandInstDbType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "StandInstDbType (169)", HFILL }
+        }, 
+        { &fix_fields[168].hf_id, 
+            { "StandInstDbName (170)", "fix.StandInstDbName",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "StandInstDbName (170)", HFILL }
+        }, 
+        { &fix_fields[169].hf_id, 
+            { "StandInstDbID (171)", "fix.StandInstDbID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "StandInstDbID (171)", HFILL }
+        }, 
+        { &fix_fields[170].hf_id, 
+            { "SettlDeliveryType (172)", "fix.SettlDeliveryType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlDeliveryType (172)", HFILL }
+        }, 
+        { &fix_fields[171].hf_id, 
+            { "SettlDepositoryCode (173)", "fix.SettlDepositoryCode",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlDepositoryCode (173)", HFILL }
+        }, 
+        { &fix_fields[172].hf_id, 
+            { "SettlBrkrCode (174)", "fix.SettlBrkrCode",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlBrkrCode (174)", HFILL }
+        }, 
+        { &fix_fields[173].hf_id, 
+            { "SettlInstCode (175)", "fix.SettlInstCode",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlInstCode (175)", HFILL }
+        }, 
+        { &fix_fields[174].hf_id, 
+            { "SecuritySettlAgentName (176)", "fix.SecuritySettlAgentName",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecuritySettlAgentName (176)", HFILL }
+        }, 
+        { &fix_fields[175].hf_id, 
+            { "SecuritySettlAgentCode (177)", "fix.SecuritySettlAgentCode",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecuritySettlAgentCode (177)", HFILL }
+        }, 
+        { &fix_fields[176].hf_id, 
+            { "SecuritySettlAgentAcctNum (178)", "fix.SecuritySettlAgentAcctNum",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecuritySettlAgentAcctNum (178)", HFILL }
+        }, 
+        { &fix_fields[177].hf_id, 
+            { "SecuritySettlAgentAcctName (179)", "fix.SecuritySettlAgentAcctName",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecuritySettlAgentAcctName (179)", HFILL }
+        }, 
+        { &fix_fields[178].hf_id, 
+            { "SecuritySettlAgentContactName (180)", "fix.SecuritySettlAgentContactName",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecuritySettlAgentContactName (180)", HFILL }
+        }, 
+        { &fix_fields[179].hf_id, 
+            { "SecuritySettlAgentContactPhone (181)", "fix.SecuritySettlAgentContactPhone",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecuritySettlAgentContactPhone (181)", HFILL }
+        }, 
+        { &fix_fields[180].hf_id, 
+            { "CashSettlAgentName (182)", "fix.CashSettlAgentName",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CashSettlAgentName (182)", HFILL }
+        }, 
+        { &fix_fields[181].hf_id, 
+            { "CashSettlAgentCode (183)", "fix.CashSettlAgentCode",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CashSettlAgentCode (183)", HFILL }
+        }, 
+        { &fix_fields[182].hf_id, 
+            { "CashSettlAgentAcctNum (184)", "fix.CashSettlAgentAcctNum",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CashSettlAgentAcctNum (184)", HFILL }
+        }, 
+        { &fix_fields[183].hf_id, 
+            { "CashSettlAgentAcctName (185)", "fix.CashSettlAgentAcctName",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CashSettlAgentAcctName (185)", HFILL }
+        }, 
+        { &fix_fields[184].hf_id, 
+            { "CashSettlAgentContactName (186)", "fix.CashSettlAgentContactName",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CashSettlAgentContactName (186)", HFILL }
+        }, 
+        { &fix_fields[185].hf_id, 
+            { "CashSettlAgentContactPhone (187)", "fix.CashSettlAgentContactPhone",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CashSettlAgentContactPhone (187)", HFILL }
+        }, 
+        { &fix_fields[186].hf_id, 
+            { "BidSpotRate (188)", "fix.BidSpotRate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BidSpotRate (188)", HFILL }
+        }, 
+        { &fix_fields[187].hf_id, 
+            { "BidForwardPoints (189)", "fix.BidForwardPoints",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BidForwardPoints (189)", HFILL }
+        }, 
+        { &fix_fields[188].hf_id, 
+            { "OfferSpotRate (190)", "fix.OfferSpotRate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OfferSpotRate (190)", HFILL }
+        }, 
+        { &fix_fields[189].hf_id, 
+            { "OfferForwardPoints (191)", "fix.OfferForwardPoints",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OfferForwardPoints (191)", HFILL }
+        }, 
+        { &fix_fields[190].hf_id, 
+            { "OrderQty2 (192)", "fix.OrderQty2",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OrderQty2 (192)", HFILL }
+        }, 
+        { &fix_fields[191].hf_id, 
+            { "SettlDate2 (193)", "fix.SettlDate2",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlDate2 (193)", HFILL }
+        }, 
+        { &fix_fields[192].hf_id, 
+            { "LastSpotRate (194)", "fix.LastSpotRate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LastSpotRate (194)", HFILL }
+        }, 
+        { &fix_fields[193].hf_id, 
+            { "LastForwardPoints (195)", "fix.LastForwardPoints",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LastForwardPoints (195)", HFILL }
+        }, 
+        { &fix_fields[194].hf_id, 
+            { "AllocLinkID (196)", "fix.AllocLinkID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocLinkID (196)", HFILL }
+        }, 
+        { &fix_fields[195].hf_id, 
+            { "AllocLinkType (197)", "fix.AllocLinkType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocLinkType (197)", HFILL }
+        }, 
+        { &fix_fields[196].hf_id, 
+            { "SecondaryOrderID (198)", "fix.SecondaryOrderID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecondaryOrderID (198)", HFILL }
+        }, 
+        { &fix_fields[197].hf_id, 
+            { "NoIOIQualifiers (199)", "fix.NoIOIQualifiers",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoIOIQualifiers (199)", HFILL }
+        }, 
+        { &fix_fields[198].hf_id, 
+            { "MaturityMonthYear (200)", "fix.MaturityMonthYear",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MaturityMonthYear (200)", HFILL }
+        }, 
+        { &fix_fields[199].hf_id, 
+            { "PutOrCall (201)", "fix.PutOrCall",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PutOrCall (201)", HFILL }
+        }, 
+        { &fix_fields[200].hf_id, 
+            { "StrikePrice (202)", "fix.StrikePrice",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "StrikePrice (202)", HFILL }
+        }, 
+        { &fix_fields[201].hf_id, 
+            { "CoveredOrUncovered (203)", "fix.CoveredOrUncovered",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CoveredOrUncovered (203)", HFILL }
+        }, 
+        { &fix_fields[202].hf_id, 
+            { "CustomerOrFirm (204)", "fix.CustomerOrFirm",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CustomerOrFirm (204)", HFILL }
+        }, 
+        { &fix_fields[203].hf_id, 
+            { "MaturityDay (205)", "fix.MaturityDay",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MaturityDay (205)", HFILL }
+        }, 
+        { &fix_fields[204].hf_id, 
+            { "OptAttribute (206)", "fix.OptAttribute",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OptAttribute (206)", HFILL }
+        }, 
+        { &fix_fields[205].hf_id, 
+            { "SecurityExchange (207)", "fix.SecurityExchange",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecurityExchange (207)", HFILL }
+        }, 
+        { &fix_fields[206].hf_id, 
+            { "NotifyBrokerOfCredit (208)", "fix.NotifyBrokerOfCredit",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NotifyBrokerOfCredit (208)", HFILL }
+        }, 
+        { &fix_fields[207].hf_id, 
+            { "AllocHandlInst (209)", "fix.AllocHandlInst",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocHandlInst (209)", HFILL }
+        }, 
+        { &fix_fields[208].hf_id, 
+            { "MaxShow (210)", "fix.MaxShow",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MaxShow (210)", HFILL }
+        }, 
+        { &fix_fields[209].hf_id, 
+            { "PegOffsetValue (211)", "fix.PegOffsetValue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PegOffsetValue (211)", HFILL }
+        }, 
+        { &fix_fields[210].hf_id, 
+            { "XmlDataLen (212)", "fix.XmlDataLen",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "XmlDataLen (212)", HFILL }
+        }, 
+        { &fix_fields[211].hf_id, 
+            { "XmlData (213)", "fix.XmlData",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "XmlData (213)", HFILL }
+        }, 
+        { &fix_fields[212].hf_id, 
+            { "SettlInstRefID (214)", "fix.SettlInstRefID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlInstRefID (214)", HFILL }
+        }, 
+        { &fix_fields[213].hf_id, 
+            { "NoRoutingIDs (215)", "fix.NoRoutingIDs",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoRoutingIDs (215)", HFILL }
+        }, 
+        { &fix_fields[214].hf_id, 
+            { "RoutingType (216)", "fix.RoutingType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RoutingType (216)", HFILL }
+        }, 
+        { &fix_fields[215].hf_id, 
+            { "RoutingID (217)", "fix.RoutingID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RoutingID (217)", HFILL }
+        }, 
+        { &fix_fields[216].hf_id, 
+            { "Spread (218)", "fix.Spread",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Spread (218)", HFILL }
+        }, 
+        { &fix_fields[217].hf_id, 
+            { "Benchmark (219)", "fix.Benchmark",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Benchmark (219)", HFILL }
+        }, 
+        { &fix_fields[218].hf_id, 
+            { "BenchmarkCurveCurrency (220)", "fix.BenchmarkCurveCurrency",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BenchmarkCurveCurrency (220)", HFILL }
+        }, 
+        { &fix_fields[219].hf_id, 
+            { "BenchmarkCurveName (221)", "fix.BenchmarkCurveName",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BenchmarkCurveName (221)", HFILL }
+        }, 
+        { &fix_fields[220].hf_id, 
+            { "BenchmarkCurvePoint (222)", "fix.BenchmarkCurvePoint",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BenchmarkCurvePoint (222)", HFILL }
+        }, 
+        { &fix_fields[221].hf_id, 
+            { "CouponRate (223)", "fix.CouponRate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CouponRate (223)", HFILL }
+        }, 
+        { &fix_fields[222].hf_id, 
+            { "CouponPaymentDate (224)", "fix.CouponPaymentDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CouponPaymentDate (224)", HFILL }
+        }, 
+        { &fix_fields[223].hf_id, 
+            { "IssueDate (225)", "fix.IssueDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "IssueDate (225)", HFILL }
+        }, 
+        { &fix_fields[224].hf_id, 
+            { "RepurchaseTerm (226)", "fix.RepurchaseTerm",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RepurchaseTerm (226)", HFILL }
+        }, 
+        { &fix_fields[225].hf_id, 
+            { "RepurchaseRate (227)", "fix.RepurchaseRate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RepurchaseRate (227)", HFILL }
+        }, 
+        { &fix_fields[226].hf_id, 
+            { "Factor (228)", "fix.Factor",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Factor (228)", HFILL }
+        }, 
+        { &fix_fields[227].hf_id, 
+            { "TradeOriginationDate (229)", "fix.TradeOriginationDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradeOriginationDate (229)", HFILL }
+        }, 
+        { &fix_fields[228].hf_id, 
+            { "ExDate (230)", "fix.ExDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ExDate (230)", HFILL }
+        }, 
+        { &fix_fields[229].hf_id, 
+            { "ContractMultiplier (231)", "fix.ContractMultiplier",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ContractMultiplier (231)", HFILL }
+        }, 
+        { &fix_fields[230].hf_id, 
+            { "NoStipulations (232)", "fix.NoStipulations",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoStipulations (232)", HFILL }
+        }, 
+        { &fix_fields[231].hf_id, 
+            { "StipulationType (233)", "fix.StipulationType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "StipulationType (233)", HFILL }
+        }, 
+        { &fix_fields[232].hf_id, 
+            { "StipulationValue (234)", "fix.StipulationValue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "StipulationValue (234)", HFILL }
+        }, 
+        { &fix_fields[233].hf_id, 
+            { "YieldType (235)", "fix.YieldType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "YieldType (235)", HFILL }
+        }, 
+        { &fix_fields[234].hf_id, 
+            { "Yield (236)", "fix.Yield",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Yield (236)", HFILL }
+        }, 
+        { &fix_fields[235].hf_id, 
+            { "TotalTakedown (237)", "fix.TotalTakedown",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TotalTakedown (237)", HFILL }
+        }, 
+        { &fix_fields[236].hf_id, 
+            { "Concession (238)", "fix.Concession",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Concession (238)", HFILL }
+        }, 
+        { &fix_fields[237].hf_id, 
+            { "RepoCollateralSecurityType (239)", "fix.RepoCollateralSecurityType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RepoCollateralSecurityType (239)", HFILL }
+        }, 
+        { &fix_fields[238].hf_id, 
+            { "RedemptionDate (240)", "fix.RedemptionDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RedemptionDate (240)", HFILL }
+        }, 
+        { &fix_fields[239].hf_id, 
+            { "UnderlyingCouponPaymentDate (241)", "fix.UnderlyingCouponPaymentDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingCouponPaymentDate (241)", HFILL }
+        }, 
+        { &fix_fields[240].hf_id, 
+            { "UnderlyingIssueDate (242)", "fix.UnderlyingIssueDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingIssueDate (242)", HFILL }
+        }, 
+        { &fix_fields[241].hf_id, 
+            { "UnderlyingRepoCollateralSecurityType (243)", "fix.UnderlyingRepoCollateralSecurityType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingRepoCollateralSecurityType (243)", HFILL }
+        }, 
+        { &fix_fields[242].hf_id, 
+            { "UnderlyingRepurchaseTerm (244)", "fix.UnderlyingRepurchaseTerm",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingRepurchaseTerm (244)", HFILL }
+        }, 
+        { &fix_fields[243].hf_id, 
+            { "UnderlyingRepurchaseRate (245)", "fix.UnderlyingRepurchaseRate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingRepurchaseRate (245)", HFILL }
+        }, 
+        { &fix_fields[244].hf_id, 
+            { "UnderlyingFactor (246)", "fix.UnderlyingFactor",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingFactor (246)", HFILL }
+        }, 
+        { &fix_fields[245].hf_id, 
+            { "UnderlyingRedemptionDate (247)", "fix.UnderlyingRedemptionDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingRedemptionDate (247)", HFILL }
+        }, 
+        { &fix_fields[246].hf_id, 
+            { "LegCouponPaymentDate (248)", "fix.LegCouponPaymentDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegCouponPaymentDate (248)", HFILL }
+        }, 
+        { &fix_fields[247].hf_id, 
+            { "LegIssueDate (249)", "fix.LegIssueDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegIssueDate (249)", HFILL }
+        }, 
+        { &fix_fields[248].hf_id, 
+            { "LegRepoCollateralSecurityType (250)", "fix.LegRepoCollateralSecurityType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegRepoCollateralSecurityType (250)", HFILL }
+        }, 
+        { &fix_fields[249].hf_id, 
+            { "LegRepurchaseTerm (251)", "fix.LegRepurchaseTerm",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegRepurchaseTerm (251)", HFILL }
+        }, 
+        { &fix_fields[250].hf_id, 
+            { "LegRepurchaseRate (252)", "fix.LegRepurchaseRate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegRepurchaseRate (252)", HFILL }
+        }, 
+        { &fix_fields[251].hf_id, 
+            { "LegFactor (253)", "fix.LegFactor",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegFactor (253)", HFILL }
+        }, 
+        { &fix_fields[252].hf_id, 
+            { "LegRedemptionDate (254)", "fix.LegRedemptionDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegRedemptionDate (254)", HFILL }
+        }, 
+        { &fix_fields[253].hf_id, 
+            { "CreditRating (255)", "fix.CreditRating",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CreditRating (255)", HFILL }
+        }, 
+        { &fix_fields[254].hf_id, 
+            { "UnderlyingCreditRating (256)", "fix.UnderlyingCreditRating",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingCreditRating (256)", HFILL }
+        }, 
+        { &fix_fields[255].hf_id, 
+            { "LegCreditRating (257)", "fix.LegCreditRating",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegCreditRating (257)", HFILL }
+        }, 
+        { &fix_fields[256].hf_id, 
+            { "TradedFlatSwitch (258)", "fix.TradedFlatSwitch",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradedFlatSwitch (258)", HFILL }
+        }, 
+        { &fix_fields[257].hf_id, 
+            { "BasisFeatureDate (259)", "fix.BasisFeatureDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BasisFeatureDate (259)", HFILL }
+        }, 
+        { &fix_fields[258].hf_id, 
+            { "BasisFeaturePrice (260)", "fix.BasisFeaturePrice",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BasisFeaturePrice (260)", HFILL }
+        }, 
+        { &fix_fields[259].hf_id, 
+            { "MDReqID (262)", "fix.MDReqID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MDReqID (262)", HFILL }
+        }, 
+        { &fix_fields[260].hf_id, 
+            { "SubscriptionRequestType (263)", "fix.SubscriptionRequestType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SubscriptionRequestType (263)", HFILL }
+        }, 
+        { &fix_fields[261].hf_id, 
+            { "MarketDepth (264)", "fix.MarketDepth",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MarketDepth (264)", HFILL }
+        }, 
+        { &fix_fields[262].hf_id, 
+            { "MDUpdateType (265)", "fix.MDUpdateType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MDUpdateType (265)", HFILL }
+        }, 
+        { &fix_fields[263].hf_id, 
+            { "AggregatedBook (266)", "fix.AggregatedBook",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AggregatedBook (266)", HFILL }
+        }, 
+        { &fix_fields[264].hf_id, 
+            { "NoMDEntryTypes (267)", "fix.NoMDEntryTypes",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoMDEntryTypes (267)", HFILL }
+        }, 
+        { &fix_fields[265].hf_id, 
+            { "NoMDEntries (268)", "fix.NoMDEntries",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoMDEntries (268)", HFILL }
+        }, 
+        { &fix_fields[266].hf_id, 
+            { "MDEntryType (269)", "fix.MDEntryType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MDEntryType (269)", HFILL }
+        }, 
+        { &fix_fields[267].hf_id, 
+            { "MDEntryPx (270)", "fix.MDEntryPx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MDEntryPx (270)", HFILL }
+        }, 
+        { &fix_fields[268].hf_id, 
+            { "MDEntrySize (271)", "fix.MDEntrySize",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MDEntrySize (271)", HFILL }
+        }, 
+        { &fix_fields[269].hf_id, 
+            { "MDEntryDate (272)", "fix.MDEntryDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MDEntryDate (272)", HFILL }
+        }, 
+        { &fix_fields[270].hf_id, 
+            { "MDEntryTime (273)", "fix.MDEntryTime",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MDEntryTime (273)", HFILL }
+        }, 
+        { &fix_fields[271].hf_id, 
+            { "TickDirection (274)", "fix.TickDirection",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TickDirection (274)", HFILL }
+        }, 
+        { &fix_fields[272].hf_id, 
+            { "MDMkt (275)", "fix.MDMkt",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MDMkt (275)", HFILL }
+        }, 
+        { &fix_fields[273].hf_id, 
+            { "QuoteCondition (276)", "fix.QuoteCondition",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "QuoteCondition (276)", HFILL }
+        }, 
+        { &fix_fields[274].hf_id, 
+            { "TradeCondition (277)", "fix.TradeCondition",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradeCondition (277)", HFILL }
+        }, 
+        { &fix_fields[275].hf_id, 
+            { "MDEntryID (278)", "fix.MDEntryID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MDEntryID (278)", HFILL }
+        }, 
+        { &fix_fields[276].hf_id, 
+            { "MDUpdateAction (279)", "fix.MDUpdateAction",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MDUpdateAction (279)", HFILL }
+        }, 
+        { &fix_fields[277].hf_id, 
+            { "MDEntryRefID (280)", "fix.MDEntryRefID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MDEntryRefID (280)", HFILL }
+        }, 
+        { &fix_fields[278].hf_id, 
+            { "MDReqRejReason (281)", "fix.MDReqRejReason",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MDReqRejReason (281)", HFILL }
+        }, 
+        { &fix_fields[279].hf_id, 
+            { "MDEntryOriginator (282)", "fix.MDEntryOriginator",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MDEntryOriginator (282)", HFILL }
+        }, 
+        { &fix_fields[280].hf_id, 
+            { "LocationID (283)", "fix.LocationID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LocationID (283)", HFILL }
+        }, 
+        { &fix_fields[281].hf_id, 
+            { "DeskID (284)", "fix.DeskID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DeskID (284)", HFILL }
+        }, 
+        { &fix_fields[282].hf_id, 
+            { "DeleteReason (285)", "fix.DeleteReason",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DeleteReason (285)", HFILL }
+        }, 
+        { &fix_fields[283].hf_id, 
+            { "OpenCloseSettlFlag (286)", "fix.OpenCloseSettlFlag",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OpenCloseSettlFlag (286)", HFILL }
+        }, 
+        { &fix_fields[284].hf_id, 
+            { "SellerDays (287)", "fix.SellerDays",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SellerDays (287)", HFILL }
+        }, 
+        { &fix_fields[285].hf_id, 
+            { "MDEntryBuyer (288)", "fix.MDEntryBuyer",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MDEntryBuyer (288)", HFILL }
+        }, 
+        { &fix_fields[286].hf_id, 
+            { "MDEntrySeller (289)", "fix.MDEntrySeller",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MDEntrySeller (289)", HFILL }
+        }, 
+        { &fix_fields[287].hf_id, 
+            { "MDEntryPositionNo (290)", "fix.MDEntryPositionNo",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MDEntryPositionNo (290)", HFILL }
+        }, 
+        { &fix_fields[288].hf_id, 
+            { "FinancialStatus (291)", "fix.FinancialStatus",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "FinancialStatus (291)", HFILL }
+        }, 
+        { &fix_fields[289].hf_id, 
+            { "CorporateAction (292)", "fix.CorporateAction",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CorporateAction (292)", HFILL }
+        }, 
+        { &fix_fields[290].hf_id, 
+            { "DefBidSize (293)", "fix.DefBidSize",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DefBidSize (293)", HFILL }
+        }, 
+        { &fix_fields[291].hf_id, 
+            { "DefOfferSize (294)", "fix.DefOfferSize",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DefOfferSize (294)", HFILL }
+        }, 
+        { &fix_fields[292].hf_id, 
+            { "NoQuoteEntries (295)", "fix.NoQuoteEntries",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoQuoteEntries (295)", HFILL }
+        }, 
+        { &fix_fields[293].hf_id, 
+            { "NoQuoteSets (296)", "fix.NoQuoteSets",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoQuoteSets (296)", HFILL }
+        }, 
+        { &fix_fields[294].hf_id, 
+            { "QuoteStatus (297)", "fix.QuoteStatus",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "QuoteStatus (297)", HFILL }
+        }, 
+        { &fix_fields[295].hf_id, 
+            { "QuoteCancelType (298)", "fix.QuoteCancelType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "QuoteCancelType (298)", HFILL }
+        }, 
+        { &fix_fields[296].hf_id, 
+            { "QuoteEntryID (299)", "fix.QuoteEntryID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "QuoteEntryID (299)", HFILL }
+        }, 
+        { &fix_fields[297].hf_id, 
+            { "QuoteRejectReason (300)", "fix.QuoteRejectReason",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "QuoteRejectReason (300)", HFILL }
+        }, 
+        { &fix_fields[298].hf_id, 
+            { "QuoteResponseLevel (301)", "fix.QuoteResponseLevel",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "QuoteResponseLevel (301)", HFILL }
+        }, 
+        { &fix_fields[299].hf_id, 
+            { "QuoteSetID (302)", "fix.QuoteSetID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "QuoteSetID (302)", HFILL }
+        }, 
+        { &fix_fields[300].hf_id, 
+            { "QuoteRequestType (303)", "fix.QuoteRequestType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "QuoteRequestType (303)", HFILL }
+        }, 
+        { &fix_fields[301].hf_id, 
+            { "TotNoQuoteEntries (304)", "fix.TotNoQuoteEntries",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TotNoQuoteEntries (304)", HFILL }
+        }, 
+        { &fix_fields[302].hf_id, 
+            { "UnderlyingSecurityIDSource (305)", "fix.UnderlyingSecurityIDSource",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingSecurityIDSource (305)", HFILL }
+        }, 
+        { &fix_fields[303].hf_id, 
+            { "UnderlyingIssuer (306)", "fix.UnderlyingIssuer",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingIssuer (306)", HFILL }
+        }, 
+        { &fix_fields[304].hf_id, 
+            { "UnderlyingSecurityDesc (307)", "fix.UnderlyingSecurityDesc",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingSecurityDesc (307)", HFILL }
+        }, 
+        { &fix_fields[305].hf_id, 
+            { "UnderlyingSecurityExchange (308)", "fix.UnderlyingSecurityExchange",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingSecurityExchange (308)", HFILL }
+        }, 
+        { &fix_fields[306].hf_id, 
+            { "UnderlyingSecurityID (309)", "fix.UnderlyingSecurityID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingSecurityID (309)", HFILL }
+        }, 
+        { &fix_fields[307].hf_id, 
+            { "UnderlyingSecurityType (310)", "fix.UnderlyingSecurityType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingSecurityType (310)", HFILL }
+        }, 
+        { &fix_fields[308].hf_id, 
+            { "UnderlyingSymbol (311)", "fix.UnderlyingSymbol",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingSymbol (311)", HFILL }
+        }, 
+        { &fix_fields[309].hf_id, 
+            { "UnderlyingSymbolSfx (312)", "fix.UnderlyingSymbolSfx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingSymbolSfx (312)", HFILL }
+        }, 
+        { &fix_fields[310].hf_id, 
+            { "UnderlyingMaturityMonthYear (313)", "fix.UnderlyingMaturityMonthYear",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingMaturityMonthYear (313)", HFILL }
+        }, 
+        { &fix_fields[311].hf_id, 
+            { "UnderlyingMaturityDay (314)", "fix.UnderlyingMaturityDay",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingMaturityDay (314)", HFILL }
+        }, 
+        { &fix_fields[312].hf_id, 
+            { "UnderlyingPutOrCall (315)", "fix.UnderlyingPutOrCall",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingPutOrCall (315)", HFILL }
+        }, 
+        { &fix_fields[313].hf_id, 
+            { "UnderlyingStrikePrice (316)", "fix.UnderlyingStrikePrice",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingStrikePrice (316)", HFILL }
+        }, 
+        { &fix_fields[314].hf_id, 
+            { "UnderlyingOptAttribute (317)", "fix.UnderlyingOptAttribute",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingOptAttribute (317)", HFILL }
+        }, 
+        { &fix_fields[315].hf_id, 
+            { "UnderlyingCurrency (318)", "fix.UnderlyingCurrency",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingCurrency (318)", HFILL }
+        }, 
+        { &fix_fields[316].hf_id, 
+            { "RatioQty (319)", "fix.RatioQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RatioQty (319)", HFILL }
+        }, 
+        { &fix_fields[317].hf_id, 
+            { "SecurityReqID (320)", "fix.SecurityReqID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecurityReqID (320)", HFILL }
+        }, 
+        { &fix_fields[318].hf_id, 
+            { "SecurityRequestType (321)", "fix.SecurityRequestType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecurityRequestType (321)", HFILL }
+        }, 
+        { &fix_fields[319].hf_id, 
+            { "SecurityResponseID (322)", "fix.SecurityResponseID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecurityResponseID (322)", HFILL }
+        }, 
+        { &fix_fields[320].hf_id, 
+            { "SecurityResponseType (323)", "fix.SecurityResponseType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecurityResponseType (323)", HFILL }
+        }, 
+        { &fix_fields[321].hf_id, 
+            { "SecurityStatusReqID (324)", "fix.SecurityStatusReqID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecurityStatusReqID (324)", HFILL }
+        }, 
+        { &fix_fields[322].hf_id, 
+            { "UnsolicitedIndicator (325)", "fix.UnsolicitedIndicator",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnsolicitedIndicator (325)", HFILL }
+        }, 
+        { &fix_fields[323].hf_id, 
+            { "SecurityTradingStatus (326)", "fix.SecurityTradingStatus",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecurityTradingStatus (326)", HFILL }
+        }, 
+        { &fix_fields[324].hf_id, 
+            { "HaltReason (327)", "fix.HaltReason",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "HaltReason (327)", HFILL }
+        }, 
+        { &fix_fields[325].hf_id, 
+            { "InViewOfCommon (328)", "fix.InViewOfCommon",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "InViewOfCommon (328)", HFILL }
+        }, 
+        { &fix_fields[326].hf_id, 
+            { "DueToRelated (329)", "fix.DueToRelated",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DueToRelated (329)", HFILL }
+        }, 
+        { &fix_fields[327].hf_id, 
+            { "BuyVolume (330)", "fix.BuyVolume",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BuyVolume (330)", HFILL }
+        }, 
+        { &fix_fields[328].hf_id, 
+            { "SellVolume (331)", "fix.SellVolume",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SellVolume (331)", HFILL }
+        }, 
+        { &fix_fields[329].hf_id, 
+            { "HighPx (332)", "fix.HighPx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "HighPx (332)", HFILL }
+        }, 
+        { &fix_fields[330].hf_id, 
+            { "LowPx (333)", "fix.LowPx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LowPx (333)", HFILL }
+        }, 
+        { &fix_fields[331].hf_id, 
+            { "Adjustment (334)", "fix.Adjustment",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Adjustment (334)", HFILL }
+        }, 
+        { &fix_fields[332].hf_id, 
+            { "TradSesReqID (335)", "fix.TradSesReqID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradSesReqID (335)", HFILL }
+        }, 
+        { &fix_fields[333].hf_id, 
+            { "TradingSessionID (336)", "fix.TradingSessionID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradingSessionID (336)", HFILL }
+        }, 
+        { &fix_fields[334].hf_id, 
+            { "ContraTrader (337)", "fix.ContraTrader",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ContraTrader (337)", HFILL }
+        }, 
+        { &fix_fields[335].hf_id, 
+            { "TradSesMethod (338)", "fix.TradSesMethod",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradSesMethod (338)", HFILL }
+        }, 
+        { &fix_fields[336].hf_id, 
+            { "TradSesMode (339)", "fix.TradSesMode",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradSesMode (339)", HFILL }
+        }, 
+        { &fix_fields[337].hf_id, 
+            { "TradSesStatus (340)", "fix.TradSesStatus",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradSesStatus (340)", HFILL }
+        }, 
+        { &fix_fields[338].hf_id, 
+            { "TradSesStartTime (341)", "fix.TradSesStartTime",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradSesStartTime (341)", HFILL }
+        }, 
+        { &fix_fields[339].hf_id, 
+            { "TradSesOpenTime (342)", "fix.TradSesOpenTime",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradSesOpenTime (342)", HFILL }
+        }, 
+        { &fix_fields[340].hf_id, 
+            { "TradSesPreCloseTime (343)", "fix.TradSesPreCloseTime",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradSesPreCloseTime (343)", HFILL }
+        }, 
+        { &fix_fields[341].hf_id, 
+            { "TradSesCloseTime (344)", "fix.TradSesCloseTime",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradSesCloseTime (344)", HFILL }
+        }, 
+        { &fix_fields[342].hf_id, 
+            { "TradSesEndTime (345)", "fix.TradSesEndTime",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradSesEndTime (345)", HFILL }
+        }, 
+        { &fix_fields[343].hf_id, 
+            { "NumberOfOrders (346)", "fix.NumberOfOrders",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NumberOfOrders (346)", HFILL }
+        }, 
+        { &fix_fields[344].hf_id, 
+            { "MessageEncoding (347)", "fix.MessageEncoding",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MessageEncoding (347)", HFILL }
+        }, 
+        { &fix_fields[345].hf_id, 
+            { "EncodedIssuerLen (348)", "fix.EncodedIssuerLen",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedIssuerLen (348)", HFILL }
+        }, 
+        { &fix_fields[346].hf_id, 
+            { "EncodedIssuer (349)", "fix.EncodedIssuer",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedIssuer (349)", HFILL }
+        }, 
+        { &fix_fields[347].hf_id, 
+            { "EncodedSecurityDescLen (350)", "fix.EncodedSecurityDescLen",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedSecurityDescLen (350)", HFILL }
+        }, 
+        { &fix_fields[348].hf_id, 
+            { "EncodedSecurityDesc (351)", "fix.EncodedSecurityDesc",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedSecurityDesc (351)", HFILL }
+        }, 
+        { &fix_fields[349].hf_id, 
+            { "EncodedListExecInstLen (352)", "fix.EncodedListExecInstLen",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedListExecInstLen (352)", HFILL }
+        }, 
+        { &fix_fields[350].hf_id, 
+            { "EncodedListExecInst (353)", "fix.EncodedListExecInst",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedListExecInst (353)", HFILL }
+        }, 
+        { &fix_fields[351].hf_id, 
+            { "EncodedTextLen (354)", "fix.EncodedTextLen",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedTextLen (354)", HFILL }
+        }, 
+        { &fix_fields[352].hf_id, 
+            { "EncodedText (355)", "fix.EncodedText",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedText (355)", HFILL }
+        }, 
+        { &fix_fields[353].hf_id, 
+            { "EncodedSubjectLen (356)", "fix.EncodedSubjectLen",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedSubjectLen (356)", HFILL }
+        }, 
+        { &fix_fields[354].hf_id, 
+            { "EncodedSubject (357)", "fix.EncodedSubject",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedSubject (357)", HFILL }
+        }, 
+        { &fix_fields[355].hf_id, 
+            { "EncodedHeadlineLen (358)", "fix.EncodedHeadlineLen",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedHeadlineLen (358)", HFILL }
+        }, 
+        { &fix_fields[356].hf_id, 
+            { "EncodedHeadline (359)", "fix.EncodedHeadline",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedHeadline (359)", HFILL }
+        }, 
+        { &fix_fields[357].hf_id, 
+            { "EncodedAllocTextLen (360)", "fix.EncodedAllocTextLen",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedAllocTextLen (360)", HFILL }
+        }, 
+        { &fix_fields[358].hf_id, 
+            { "EncodedAllocText (361)", "fix.EncodedAllocText",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedAllocText (361)", HFILL }
+        }, 
+        { &fix_fields[359].hf_id, 
+            { "EncodedUnderlyingIssuerLen (362)", "fix.EncodedUnderlyingIssuerLen",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedUnderlyingIssuerLen (362)", HFILL }
+        }, 
+        { &fix_fields[360].hf_id, 
+            { "EncodedUnderlyingIssuer (363)", "fix.EncodedUnderlyingIssuer",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedUnderlyingIssuer (363)", HFILL }
+        }, 
+        { &fix_fields[361].hf_id, 
+            { "EncodedUnderlyingSecurityDescLen (364)", "fix.EncodedUnderlyingSecurityDescLen",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedUnderlyingSecurityDescLen (364)", HFILL }
+        }, 
+        { &fix_fields[362].hf_id, 
+            { "EncodedUnderlyingSecurityDesc (365)", "fix.EncodedUnderlyingSecurityDesc",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedUnderlyingSecurityDesc (365)", HFILL }
+        }, 
+        { &fix_fields[363].hf_id, 
+            { "AllocPrice (366)", "fix.AllocPrice",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocPrice (366)", HFILL }
+        }, 
+        { &fix_fields[364].hf_id, 
+            { "QuoteSetValidUntilTime (367)", "fix.QuoteSetValidUntilTime",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "QuoteSetValidUntilTime (367)", HFILL }
+        }, 
+        { &fix_fields[365].hf_id, 
+            { "QuoteEntryRejectReason (368)", "fix.QuoteEntryRejectReason",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "QuoteEntryRejectReason (368)", HFILL }
+        }, 
+        { &fix_fields[366].hf_id, 
+            { "LastMsgSeqNumProcessed (369)", "fix.LastMsgSeqNumProcessed",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LastMsgSeqNumProcessed (369)", HFILL }
+        }, 
+        { &fix_fields[367].hf_id, 
+            { "OnBehalfOfSendingTime (370)", "fix.OnBehalfOfSendingTime",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OnBehalfOfSendingTime (370)", HFILL }
+        }, 
+        { &fix_fields[368].hf_id, 
+            { "RefTagID (371)", "fix.RefTagID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RefTagID (371)", HFILL }
+        }, 
+        { &fix_fields[369].hf_id, 
+            { "RefMsgType (372)", "fix.RefMsgType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RefMsgType (372)", HFILL }
+        }, 
+        { &fix_fields[370].hf_id, 
+            { "SessionRejectReason (373)", "fix.SessionRejectReason",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SessionRejectReason (373)", HFILL }
+        }, 
+        { &fix_fields[371].hf_id, 
+            { "BidRequestTransType (374)", "fix.BidRequestTransType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BidRequestTransType (374)", HFILL }
+        }, 
+        { &fix_fields[372].hf_id, 
+            { "ContraBroker (375)", "fix.ContraBroker",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ContraBroker (375)", HFILL }
+        }, 
+        { &fix_fields[373].hf_id, 
+            { "ComplianceID (376)", "fix.ComplianceID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ComplianceID (376)", HFILL }
+        }, 
+        { &fix_fields[374].hf_id, 
+            { "SolicitedFlag (377)", "fix.SolicitedFlag",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SolicitedFlag (377)", HFILL }
+        }, 
+        { &fix_fields[375].hf_id, 
+            { "ExecRestatementReason (378)", "fix.ExecRestatementReason",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ExecRestatementReason (378)", HFILL }
+        }, 
+        { &fix_fields[376].hf_id, 
+            { "BusinessRejectRefID (379)", "fix.BusinessRejectRefID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BusinessRejectRefID (379)", HFILL }
+        }, 
+        { &fix_fields[377].hf_id, 
+            { "BusinessRejectReason (380)", "fix.BusinessRejectReason",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BusinessRejectReason (380)", HFILL }
+        }, 
+        { &fix_fields[378].hf_id, 
+            { "GrossTradeAmt (381)", "fix.GrossTradeAmt",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "GrossTradeAmt (381)", HFILL }
+        }, 
+        { &fix_fields[379].hf_id, 
+            { "NoContraBrokers (382)", "fix.NoContraBrokers",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoContraBrokers (382)", HFILL }
+        }, 
+        { &fix_fields[380].hf_id, 
+            { "MaxMessageSize (383)", "fix.MaxMessageSize",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MaxMessageSize (383)", HFILL }
+        }, 
+        { &fix_fields[381].hf_id, 
+            { "NoMsgTypes (384)", "fix.NoMsgTypes",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoMsgTypes (384)", HFILL }
+        }, 
+        { &fix_fields[382].hf_id, 
+            { "MsgDirection (385)", "fix.MsgDirection",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MsgDirection (385)", HFILL }
+        }, 
+        { &fix_fields[383].hf_id, 
+            { "NoTradingSessions (386)", "fix.NoTradingSessions",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoTradingSessions (386)", HFILL }
+        }, 
+        { &fix_fields[384].hf_id, 
+            { "TotalVolumeTraded (387)", "fix.TotalVolumeTraded",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TotalVolumeTraded (387)", HFILL }
+        }, 
+        { &fix_fields[385].hf_id, 
+            { "DiscretionInst (388)", "fix.DiscretionInst",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DiscretionInst (388)", HFILL }
+        }, 
+        { &fix_fields[386].hf_id, 
+            { "DiscretionOffsetValue (389)", "fix.DiscretionOffsetValue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DiscretionOffsetValue (389)", HFILL }
+        }, 
+        { &fix_fields[387].hf_id, 
+            { "BidID (390)", "fix.BidID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BidID (390)", HFILL }
+        }, 
+        { &fix_fields[388].hf_id, 
+            { "ClientBidID (391)", "fix.ClientBidID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ClientBidID (391)", HFILL }
+        }, 
+        { &fix_fields[389].hf_id, 
+            { "ListName (392)", "fix.ListName",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ListName (392)", HFILL }
+        }, 
+        { &fix_fields[390].hf_id, 
+            { "TotNoRelatedSym (393)", "fix.TotNoRelatedSym",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TotNoRelatedSym (393)", HFILL }
+        }, 
+        { &fix_fields[391].hf_id, 
+            { "BidType (394)", "fix.BidType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BidType (394)", HFILL }
+        }, 
+        { &fix_fields[392].hf_id, 
+            { "NumTickets (395)", "fix.NumTickets",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NumTickets (395)", HFILL }
+        }, 
+        { &fix_fields[393].hf_id, 
+            { "SideValue1 (396)", "fix.SideValue1",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SideValue1 (396)", HFILL }
+        }, 
+        { &fix_fields[394].hf_id, 
+            { "SideValue2 (397)", "fix.SideValue2",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SideValue2 (397)", HFILL }
+        }, 
+        { &fix_fields[395].hf_id, 
+            { "NoBidDescriptors (398)", "fix.NoBidDescriptors",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoBidDescriptors (398)", HFILL }
+        }, 
+        { &fix_fields[396].hf_id, 
+            { "BidDescriptorType (399)", "fix.BidDescriptorType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BidDescriptorType (399)", HFILL }
+        }, 
+        { &fix_fields[397].hf_id, 
+            { "BidDescriptor (400)", "fix.BidDescriptor",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BidDescriptor (400)", HFILL }
+        }, 
+        { &fix_fields[398].hf_id, 
+            { "SideValueInd (401)", "fix.SideValueInd",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SideValueInd (401)", HFILL }
+        }, 
+        { &fix_fields[399].hf_id, 
+            { "LiquidityPctLow (402)", "fix.LiquidityPctLow",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LiquidityPctLow (402)", HFILL }
+        }, 
+        { &fix_fields[400].hf_id, 
+            { "LiquidityPctHigh (403)", "fix.LiquidityPctHigh",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LiquidityPctHigh (403)", HFILL }
+        }, 
+        { &fix_fields[401].hf_id, 
+            { "LiquidityValue (404)", "fix.LiquidityValue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LiquidityValue (404)", HFILL }
+        }, 
+        { &fix_fields[402].hf_id, 
+            { "EFPTrackingError (405)", "fix.EFPTrackingError",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EFPTrackingError (405)", HFILL }
+        }, 
+        { &fix_fields[403].hf_id, 
+            { "FairValue (406)", "fix.FairValue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "FairValue (406)", HFILL }
+        }, 
+        { &fix_fields[404].hf_id, 
+            { "OutsideIndexPct (407)", "fix.OutsideIndexPct",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OutsideIndexPct (407)", HFILL }
+        }, 
+        { &fix_fields[405].hf_id, 
+            { "ValueOfFutures (408)", "fix.ValueOfFutures",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ValueOfFutures (408)", HFILL }
+        }, 
+        { &fix_fields[406].hf_id, 
+            { "LiquidityIndType (409)", "fix.LiquidityIndType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LiquidityIndType (409)", HFILL }
+        }, 
+        { &fix_fields[407].hf_id, 
+            { "WtAverageLiquidity (410)", "fix.WtAverageLiquidity",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "WtAverageLiquidity (410)", HFILL }
+        }, 
+        { &fix_fields[408].hf_id, 
+            { "ExchangeForPhysical (411)", "fix.ExchangeForPhysical",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ExchangeForPhysical (411)", HFILL }
+        }, 
+        { &fix_fields[409].hf_id, 
+            { "OutMainCntryUIndex (412)", "fix.OutMainCntryUIndex",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OutMainCntryUIndex (412)", HFILL }
+        }, 
+        { &fix_fields[410].hf_id, 
+            { "CrossPercent (413)", "fix.CrossPercent",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CrossPercent (413)", HFILL }
+        }, 
+        { &fix_fields[411].hf_id, 
+            { "ProgRptReqs (414)", "fix.ProgRptReqs",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ProgRptReqs (414)", HFILL }
+        }, 
+        { &fix_fields[412].hf_id, 
+            { "ProgPeriodInterval (415)", "fix.ProgPeriodInterval",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ProgPeriodInterval (415)", HFILL }
+        }, 
+        { &fix_fields[413].hf_id, 
+            { "IncTaxInd (416)", "fix.IncTaxInd",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "IncTaxInd (416)", HFILL }
+        }, 
+        { &fix_fields[414].hf_id, 
+            { "NumBidders (417)", "fix.NumBidders",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NumBidders (417)", HFILL }
+        }, 
+        { &fix_fields[415].hf_id, 
+            { "BidTradeType (418)", "fix.BidTradeType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BidTradeType (418)", HFILL }
+        }, 
+        { &fix_fields[416].hf_id, 
+            { "BasisPxType (419)", "fix.BasisPxType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BasisPxType (419)", HFILL }
+        }, 
+        { &fix_fields[417].hf_id, 
+            { "NoBidComponents (420)", "fix.NoBidComponents",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoBidComponents (420)", HFILL }
+        }, 
+        { &fix_fields[418].hf_id, 
+            { "Country (421)", "fix.Country",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Country (421)", HFILL }
+        }, 
+        { &fix_fields[419].hf_id, 
+            { "TotNoStrikes (422)", "fix.TotNoStrikes",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TotNoStrikes (422)", HFILL }
+        }, 
+        { &fix_fields[420].hf_id, 
+            { "PriceType (423)", "fix.PriceType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PriceType (423)", HFILL }
+        }, 
+        { &fix_fields[421].hf_id, 
+            { "DayOrderQty (424)", "fix.DayOrderQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DayOrderQty (424)", HFILL }
+        }, 
+        { &fix_fields[422].hf_id, 
+            { "DayCumQty (425)", "fix.DayCumQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DayCumQty (425)", HFILL }
+        }, 
+        { &fix_fields[423].hf_id, 
+            { "DayAvgPx (426)", "fix.DayAvgPx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DayAvgPx (426)", HFILL }
+        }, 
+        { &fix_fields[424].hf_id, 
+            { "GTBookingInst (427)", "fix.GTBookingInst",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "GTBookingInst (427)", HFILL }
+        }, 
+        { &fix_fields[425].hf_id, 
+            { "NoStrikes (428)", "fix.NoStrikes",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoStrikes (428)", HFILL }
+        }, 
+        { &fix_fields[426].hf_id, 
+            { "ListStatusType (429)", "fix.ListStatusType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ListStatusType (429)", HFILL }
+        }, 
+        { &fix_fields[427].hf_id, 
+            { "NetGrossInd (430)", "fix.NetGrossInd",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NetGrossInd (430)", HFILL }
+        }, 
+        { &fix_fields[428].hf_id, 
+            { "ListOrderStatus (431)", "fix.ListOrderStatus",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ListOrderStatus (431)", HFILL }
+        }, 
+        { &fix_fields[429].hf_id, 
+            { "ExpireDate (432)", "fix.ExpireDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ExpireDate (432)", HFILL }
+        }, 
+        { &fix_fields[430].hf_id, 
+            { "ListExecInstType (433)", "fix.ListExecInstType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ListExecInstType (433)", HFILL }
+        }, 
+        { &fix_fields[431].hf_id, 
+            { "CxlRejResponseTo (434)", "fix.CxlRejResponseTo",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CxlRejResponseTo (434)", HFILL }
+        }, 
+        { &fix_fields[432].hf_id, 
+            { "UnderlyingCouponRate (435)", "fix.UnderlyingCouponRate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingCouponRate (435)", HFILL }
+        }, 
+        { &fix_fields[433].hf_id, 
+            { "UnderlyingContractMultiplier (436)", "fix.UnderlyingContractMultiplier",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingContractMultiplier (436)", HFILL }
+        }, 
+        { &fix_fields[434].hf_id, 
+            { "ContraTradeQty (437)", "fix.ContraTradeQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ContraTradeQty (437)", HFILL }
+        }, 
+        { &fix_fields[435].hf_id, 
+            { "ContraTradeTime (438)", "fix.ContraTradeTime",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ContraTradeTime (438)", HFILL }
+        }, 
+        { &fix_fields[436].hf_id, 
+            { "ClearingFirm (439)", "fix.ClearingFirm",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ClearingFirm (439)", HFILL }
+        }, 
+        { &fix_fields[437].hf_id, 
+            { "ClearingAccount (440)", "fix.ClearingAccount",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ClearingAccount (440)", HFILL }
+        }, 
+        { &fix_fields[438].hf_id, 
+            { "LiquidityNumSecurities (441)", "fix.LiquidityNumSecurities",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LiquidityNumSecurities (441)", HFILL }
+        }, 
+        { &fix_fields[439].hf_id, 
+            { "MultiLegReportingType (442)", "fix.MultiLegReportingType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MultiLegReportingType (442)", HFILL }
+        }, 
+        { &fix_fields[440].hf_id, 
+            { "StrikeTime (443)", "fix.StrikeTime",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "StrikeTime (443)", HFILL }
+        }, 
+        { &fix_fields[441].hf_id, 
+            { "ListStatusText (444)", "fix.ListStatusText",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ListStatusText (444)", HFILL }
+        }, 
+        { &fix_fields[442].hf_id, 
+            { "EncodedListStatusTextLen (445)", "fix.EncodedListStatusTextLen",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedListStatusTextLen (445)", HFILL }
+        }, 
+        { &fix_fields[443].hf_id, 
+            { "EncodedListStatusText (446)", "fix.EncodedListStatusText",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedListStatusText (446)", HFILL }
+        }, 
+        { &fix_fields[444].hf_id, 
+            { "PartyIDSource (447)", "fix.PartyIDSource",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PartyIDSource (447)", HFILL }
+        }, 
+        { &fix_fields[445].hf_id, 
+            { "PartyID (448)", "fix.PartyID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PartyID (448)", HFILL }
+        }, 
+        { &fix_fields[446].hf_id, 
+            { "TotalVolumeTradedDate (449)", "fix.TotalVolumeTradedDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TotalVolumeTradedDate (449)", HFILL }
+        }, 
+        { &fix_fields[447].hf_id, 
+            { "TotalVolumeTradedTime (450)", "fix.TotalVolumeTradedTime",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TotalVolumeTradedTime (450)", HFILL }
+        }, 
+        { &fix_fields[448].hf_id, 
+            { "NetChgPrevDay (451)", "fix.NetChgPrevDay",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NetChgPrevDay (451)", HFILL }
+        }, 
+        { &fix_fields[449].hf_id, 
+            { "PartyRole (452)", "fix.PartyRole",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PartyRole (452)", HFILL }
+        }, 
+        { &fix_fields[450].hf_id, 
+            { "NoPartyIDs (453)", "fix.NoPartyIDs",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoPartyIDs (453)", HFILL }
+        }, 
+        { &fix_fields[451].hf_id, 
+            { "NoSecurityAltID (454)", "fix.NoSecurityAltID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoSecurityAltID (454)", HFILL }
+        }, 
+        { &fix_fields[452].hf_id, 
+            { "SecurityAltID (455)", "fix.SecurityAltID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecurityAltID (455)", HFILL }
+        }, 
+        { &fix_fields[453].hf_id, 
+            { "SecurityAltIDSource (456)", "fix.SecurityAltIDSource",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecurityAltIDSource (456)", HFILL }
+        }, 
+        { &fix_fields[454].hf_id, 
+            { "NoUnderlyingSecurityAltID (457)", "fix.NoUnderlyingSecurityAltID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoUnderlyingSecurityAltID (457)", HFILL }
+        }, 
+        { &fix_fields[455].hf_id, 
+            { "UnderlyingSecurityAltID (458)", "fix.UnderlyingSecurityAltID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingSecurityAltID (458)", HFILL }
+        }, 
+        { &fix_fields[456].hf_id, 
+            { "UnderlyingSecurityAltIDSource (459)", "fix.UnderlyingSecurityAltIDSource",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingSecurityAltIDSource (459)", HFILL }
+        }, 
+        { &fix_fields[457].hf_id, 
+            { "Product (460)", "fix.Product",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Product (460)", HFILL }
+        }, 
+        { &fix_fields[458].hf_id, 
+            { "CFICode (461)", "fix.CFICode",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CFICode (461)", HFILL }
+        }, 
+        { &fix_fields[459].hf_id, 
+            { "UnderlyingProduct (462)", "fix.UnderlyingProduct",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingProduct (462)", HFILL }
+        }, 
+        { &fix_fields[460].hf_id, 
+            { "UnderlyingCFICode (463)", "fix.UnderlyingCFICode",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingCFICode (463)", HFILL }
+        }, 
+        { &fix_fields[461].hf_id, 
+            { "TestMessageIndicator (464)", "fix.TestMessageIndicator",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TestMessageIndicator (464)", HFILL }
+        }, 
+        { &fix_fields[462].hf_id, 
+            { "QuantityType (465)", "fix.QuantityType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "QuantityType (465)", HFILL }
+        }, 
+        { &fix_fields[463].hf_id, 
+            { "BookingRefID (466)", "fix.BookingRefID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BookingRefID (466)", HFILL }
+        }, 
+        { &fix_fields[464].hf_id, 
+            { "IndividualAllocID (467)", "fix.IndividualAllocID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "IndividualAllocID (467)", HFILL }
+        }, 
+        { &fix_fields[465].hf_id, 
+            { "RoundingDirection (468)", "fix.RoundingDirection",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RoundingDirection (468)", HFILL }
+        }, 
+        { &fix_fields[466].hf_id, 
+            { "RoundingModulus (469)", "fix.RoundingModulus",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RoundingModulus (469)", HFILL }
+        }, 
+        { &fix_fields[467].hf_id, 
+            { "CountryOfIssue (470)", "fix.CountryOfIssue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CountryOfIssue (470)", HFILL }
+        }, 
+        { &fix_fields[468].hf_id, 
+            { "StateOrProvinceOfIssue (471)", "fix.StateOrProvinceOfIssue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "StateOrProvinceOfIssue (471)", HFILL }
+        }, 
+        { &fix_fields[469].hf_id, 
+            { "LocaleOfIssue (472)", "fix.LocaleOfIssue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LocaleOfIssue (472)", HFILL }
+        }, 
+        { &fix_fields[470].hf_id, 
+            { "NoRegistDtls (473)", "fix.NoRegistDtls",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoRegistDtls (473)", HFILL }
+        }, 
+        { &fix_fields[471].hf_id, 
+            { "MailingDtls (474)", "fix.MailingDtls",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MailingDtls (474)", HFILL }
+        }, 
+        { &fix_fields[472].hf_id, 
+            { "InvestorCountryOfResidence (475)", "fix.InvestorCountryOfResidence",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "InvestorCountryOfResidence (475)", HFILL }
+        }, 
+        { &fix_fields[473].hf_id, 
+            { "PaymentRef (476)", "fix.PaymentRef",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PaymentRef (476)", HFILL }
+        }, 
+        { &fix_fields[474].hf_id, 
+            { "DistribPaymentMethod (477)", "fix.DistribPaymentMethod",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DistribPaymentMethod (477)", HFILL }
+        }, 
+        { &fix_fields[475].hf_id, 
+            { "CashDistribCurr (478)", "fix.CashDistribCurr",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CashDistribCurr (478)", HFILL }
+        }, 
+        { &fix_fields[476].hf_id, 
+            { "CommCurrency (479)", "fix.CommCurrency",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CommCurrency (479)", HFILL }
+        }, 
+        { &fix_fields[477].hf_id, 
+            { "CancellationRights (480)", "fix.CancellationRights",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CancellationRights (480)", HFILL }
+        }, 
+        { &fix_fields[478].hf_id, 
+            { "MoneyLaunderingStatus (481)", "fix.MoneyLaunderingStatus",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MoneyLaunderingStatus (481)", HFILL }
+        }, 
+        { &fix_fields[479].hf_id, 
+            { "MailingInst (482)", "fix.MailingInst",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MailingInst (482)", HFILL }
+        }, 
+        { &fix_fields[480].hf_id, 
+            { "TransBkdTime (483)", "fix.TransBkdTime",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TransBkdTime (483)", HFILL }
+        }, 
+        { &fix_fields[481].hf_id, 
+            { "ExecPriceType (484)", "fix.ExecPriceType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ExecPriceType (484)", HFILL }
+        }, 
+        { &fix_fields[482].hf_id, 
+            { "ExecPriceAdjustment (485)", "fix.ExecPriceAdjustment",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ExecPriceAdjustment (485)", HFILL }
+        }, 
+        { &fix_fields[483].hf_id, 
+            { "DateOfBirth (486)", "fix.DateOfBirth",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DateOfBirth (486)", HFILL }
+        }, 
+        { &fix_fields[484].hf_id, 
+            { "TradeReportTransType (487)", "fix.TradeReportTransType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradeReportTransType (487)", HFILL }
+        }, 
+        { &fix_fields[485].hf_id, 
+            { "CardHolderName (488)", "fix.CardHolderName",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CardHolderName (488)", HFILL }
+        }, 
+        { &fix_fields[486].hf_id, 
+            { "CardNumber (489)", "fix.CardNumber",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CardNumber (489)", HFILL }
+        }, 
+        { &fix_fields[487].hf_id, 
+            { "CardExpDate (490)", "fix.CardExpDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CardExpDate (490)", HFILL }
+        }, 
+        { &fix_fields[488].hf_id, 
+            { "CardIssNum (491)", "fix.CardIssNum",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CardIssNum (491)", HFILL }
+        }, 
+        { &fix_fields[489].hf_id, 
+            { "PaymentMethod (492)", "fix.PaymentMethod",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PaymentMethod (492)", HFILL }
+        }, 
+        { &fix_fields[490].hf_id, 
+            { "RegistAcctType (493)", "fix.RegistAcctType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RegistAcctType (493)", HFILL }
+        }, 
+        { &fix_fields[491].hf_id, 
+            { "Designation (494)", "fix.Designation",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Designation (494)", HFILL }
+        }, 
+        { &fix_fields[492].hf_id, 
+            { "TaxAdvantageType (495)", "fix.TaxAdvantageType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TaxAdvantageType (495)", HFILL }
+        }, 
+        { &fix_fields[493].hf_id, 
+            { "RegistRejReasonText (496)", "fix.RegistRejReasonText",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RegistRejReasonText (496)", HFILL }
+        }, 
+        { &fix_fields[494].hf_id, 
+            { "FundRenewWaiv (497)", "fix.FundRenewWaiv",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "FundRenewWaiv (497)", HFILL }
+        }, 
+        { &fix_fields[495].hf_id, 
+            { "CashDistribAgentName (498)", "fix.CashDistribAgentName",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CashDistribAgentName (498)", HFILL }
+        }, 
+        { &fix_fields[496].hf_id, 
+            { "CashDistribAgentCode (499)", "fix.CashDistribAgentCode",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CashDistribAgentCode (499)", HFILL }
+        }, 
+        { &fix_fields[497].hf_id, 
+            { "CashDistribAgentAcctNumber (500)", "fix.CashDistribAgentAcctNumber",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CashDistribAgentAcctNumber (500)", HFILL }
+        }, 
+        { &fix_fields[498].hf_id, 
+            { "CashDistribPayRef (501)", "fix.CashDistribPayRef",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CashDistribPayRef (501)", HFILL }
+        }, 
+        { &fix_fields[499].hf_id, 
+            { "CashDistribAgentAcctName (502)", "fix.CashDistribAgentAcctName",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CashDistribAgentAcctName (502)", HFILL }
+        }, 
+        { &fix_fields[500].hf_id, 
+            { "CardStartDate (503)", "fix.CardStartDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CardStartDate (503)", HFILL }
+        }, 
+        { &fix_fields[501].hf_id, 
+            { "PaymentDate (504)", "fix.PaymentDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PaymentDate (504)", HFILL }
+        }, 
+        { &fix_fields[502].hf_id, 
+            { "PaymentRemitterID (505)", "fix.PaymentRemitterID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PaymentRemitterID (505)", HFILL }
+        }, 
+        { &fix_fields[503].hf_id, 
+            { "RegistStatus (506)", "fix.RegistStatus",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RegistStatus (506)", HFILL }
+        }, 
+        { &fix_fields[504].hf_id, 
+            { "RegistRejReasonCode (507)", "fix.RegistRejReasonCode",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RegistRejReasonCode (507)", HFILL }
+        }, 
+        { &fix_fields[505].hf_id, 
+            { "RegistRefID (508)", "fix.RegistRefID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RegistRefID (508)", HFILL }
+        }, 
+        { &fix_fields[506].hf_id, 
+            { "RegistDtls (509)", "fix.RegistDtls",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RegistDtls (509)", HFILL }
+        }, 
+        { &fix_fields[507].hf_id, 
+            { "NoDistribInsts (510)", "fix.NoDistribInsts",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoDistribInsts (510)", HFILL }
+        }, 
+        { &fix_fields[508].hf_id, 
+            { "RegistEmail (511)", "fix.RegistEmail",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RegistEmail (511)", HFILL }
+        }, 
+        { &fix_fields[509].hf_id, 
+            { "DistribPercentage (512)", "fix.DistribPercentage",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DistribPercentage (512)", HFILL }
+        }, 
+        { &fix_fields[510].hf_id, 
+            { "RegistID (513)", "fix.RegistID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RegistID (513)", HFILL }
+        }, 
+        { &fix_fields[511].hf_id, 
+            { "RegistTransType (514)", "fix.RegistTransType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RegistTransType (514)", HFILL }
+        }, 
+        { &fix_fields[512].hf_id, 
+            { "ExecValuationPoint (515)", "fix.ExecValuationPoint",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ExecValuationPoint (515)", HFILL }
+        }, 
+        { &fix_fields[513].hf_id, 
+            { "OrderPercent (516)", "fix.OrderPercent",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OrderPercent (516)", HFILL }
+        }, 
+        { &fix_fields[514].hf_id, 
+            { "OwnershipType (517)", "fix.OwnershipType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OwnershipType (517)", HFILL }
+        }, 
+        { &fix_fields[515].hf_id, 
+            { "NoContAmts (518)", "fix.NoContAmts",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoContAmts (518)", HFILL }
+        }, 
+        { &fix_fields[516].hf_id, 
+            { "ContAmtType (519)", "fix.ContAmtType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ContAmtType (519)", HFILL }
+        }, 
+        { &fix_fields[517].hf_id, 
+            { "ContAmtValue (520)", "fix.ContAmtValue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ContAmtValue (520)", HFILL }
+        }, 
+        { &fix_fields[518].hf_id, 
+            { "ContAmtCurr (521)", "fix.ContAmtCurr",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ContAmtCurr (521)", HFILL }
+        }, 
+        { &fix_fields[519].hf_id, 
+            { "OwnerType (522)", "fix.OwnerType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OwnerType (522)", HFILL }
+        }, 
+        { &fix_fields[520].hf_id, 
+            { "PartySubID (523)", "fix.PartySubID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PartySubID (523)", HFILL }
+        }, 
+        { &fix_fields[521].hf_id, 
+            { "NestedPartyID (524)", "fix.NestedPartyID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NestedPartyID (524)", HFILL }
+        }, 
+        { &fix_fields[522].hf_id, 
+            { "NestedPartyIDSource (525)", "fix.NestedPartyIDSource",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NestedPartyIDSource (525)", HFILL }
+        }, 
+        { &fix_fields[523].hf_id, 
+            { "SecondaryClOrdID (526)", "fix.SecondaryClOrdID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecondaryClOrdID (526)", HFILL }
+        }, 
+        { &fix_fields[524].hf_id, 
+            { "SecondaryExecID (527)", "fix.SecondaryExecID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecondaryExecID (527)", HFILL }
+        }, 
+        { &fix_fields[525].hf_id, 
+            { "OrderCapacity (528)", "fix.OrderCapacity",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OrderCapacity (528)", HFILL }
+        }, 
+        { &fix_fields[526].hf_id, 
+            { "OrderRestrictions (529)", "fix.OrderRestrictions",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OrderRestrictions (529)", HFILL }
+        }, 
+        { &fix_fields[527].hf_id, 
+            { "MassCancelRequestType (530)", "fix.MassCancelRequestType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MassCancelRequestType (530)", HFILL }
+        }, 
+        { &fix_fields[528].hf_id, 
+            { "MassCancelResponse (531)", "fix.MassCancelResponse",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MassCancelResponse (531)", HFILL }
+        }, 
+        { &fix_fields[529].hf_id, 
+            { "MassCancelRejectReason (532)", "fix.MassCancelRejectReason",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MassCancelRejectReason (532)", HFILL }
+        }, 
+        { &fix_fields[530].hf_id, 
+            { "TotalAffectedOrders (533)", "fix.TotalAffectedOrders",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TotalAffectedOrders (533)", HFILL }
+        }, 
+        { &fix_fields[531].hf_id, 
+            { "NoAffectedOrders (534)", "fix.NoAffectedOrders",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoAffectedOrders (534)", HFILL }
+        }, 
+        { &fix_fields[532].hf_id, 
+            { "AffectedOrderID (535)", "fix.AffectedOrderID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AffectedOrderID (535)", HFILL }
+        }, 
+        { &fix_fields[533].hf_id, 
+            { "AffectedSecondaryOrderID (536)", "fix.AffectedSecondaryOrderID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AffectedSecondaryOrderID (536)", HFILL }
+        }, 
+        { &fix_fields[534].hf_id, 
+            { "QuoteType (537)", "fix.QuoteType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "QuoteType (537)", HFILL }
+        }, 
+        { &fix_fields[535].hf_id, 
+            { "NestedPartyRole (538)", "fix.NestedPartyRole",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NestedPartyRole (538)", HFILL }
+        }, 
+        { &fix_fields[536].hf_id, 
+            { "NoNestedPartyIDs (539)", "fix.NoNestedPartyIDs",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoNestedPartyIDs (539)", HFILL }
+        }, 
+        { &fix_fields[537].hf_id, 
+            { "TotalAccruedInterestAmt (540)", "fix.TotalAccruedInterestAmt",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TotalAccruedInterestAmt (540)", HFILL }
+        }, 
+        { &fix_fields[538].hf_id, 
+            { "MaturityDate (541)", "fix.MaturityDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MaturityDate (541)", HFILL }
+        }, 
+        { &fix_fields[539].hf_id, 
+            { "UnderlyingMaturityDate (542)", "fix.UnderlyingMaturityDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingMaturityDate (542)", HFILL }
+        }, 
+        { &fix_fields[540].hf_id, 
+            { "InstrRegistry (543)", "fix.InstrRegistry",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "InstrRegistry (543)", HFILL }
+        }, 
+        { &fix_fields[541].hf_id, 
+            { "CashMargin (544)", "fix.CashMargin",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CashMargin (544)", HFILL }
+        }, 
+        { &fix_fields[542].hf_id, 
+            { "NestedPartySubID (545)", "fix.NestedPartySubID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NestedPartySubID (545)", HFILL }
+        }, 
+        { &fix_fields[543].hf_id, 
+            { "Scope (546)", "fix.Scope",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Scope (546)", HFILL }
+        }, 
+        { &fix_fields[544].hf_id, 
+            { "MDImplicitDelete (547)", "fix.MDImplicitDelete",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MDImplicitDelete (547)", HFILL }
+        }, 
+        { &fix_fields[545].hf_id, 
+            { "CrossID (548)", "fix.CrossID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CrossID (548)", HFILL }
+        }, 
+        { &fix_fields[546].hf_id, 
+            { "CrossType (549)", "fix.CrossType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CrossType (549)", HFILL }
+        }, 
+        { &fix_fields[547].hf_id, 
+            { "CrossPrioritization (550)", "fix.CrossPrioritization",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CrossPrioritization (550)", HFILL }
+        }, 
+        { &fix_fields[548].hf_id, 
+            { "OrigCrossID (551)", "fix.OrigCrossID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OrigCrossID (551)", HFILL }
+        }, 
+        { &fix_fields[549].hf_id, 
+            { "NoSides (552)", "fix.NoSides",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoSides (552)", HFILL }
+        }, 
+        { &fix_fields[550].hf_id, 
+            { "Username (553)", "fix.Username",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Username (553)", HFILL }
+        }, 
+        { &fix_fields[551].hf_id, 
+            { "Password (554)", "fix.Password",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Password (554)", HFILL }
+        }, 
+        { &fix_fields[552].hf_id, 
+            { "NoLegs (555)", "fix.NoLegs",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoLegs (555)", HFILL }
+        }, 
+        { &fix_fields[553].hf_id, 
+            { "LegCurrency (556)", "fix.LegCurrency",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegCurrency (556)", HFILL }
+        }, 
+        { &fix_fields[554].hf_id, 
+            { "TotNoSecurityTypes (557)", "fix.TotNoSecurityTypes",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TotNoSecurityTypes (557)", HFILL }
+        }, 
+        { &fix_fields[555].hf_id, 
+            { "NoSecurityTypes (558)", "fix.NoSecurityTypes",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoSecurityTypes (558)", HFILL }
+        }, 
+        { &fix_fields[556].hf_id, 
+            { "SecurityListRequestType (559)", "fix.SecurityListRequestType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecurityListRequestType (559)", HFILL }
+        }, 
+        { &fix_fields[557].hf_id, 
+            { "SecurityRequestResult (560)", "fix.SecurityRequestResult",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecurityRequestResult (560)", HFILL }
+        }, 
+        { &fix_fields[558].hf_id, 
+            { "RoundLot (561)", "fix.RoundLot",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RoundLot (561)", HFILL }
+        }, 
+        { &fix_fields[559].hf_id, 
+            { "MinTradeVol (562)", "fix.MinTradeVol",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MinTradeVol (562)", HFILL }
+        }, 
+        { &fix_fields[560].hf_id, 
+            { "MultiLegRptTypeReq (563)", "fix.MultiLegRptTypeReq",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MultiLegRptTypeReq (563)", HFILL }
+        }, 
+        { &fix_fields[561].hf_id, 
+            { "LegPositionEffect (564)", "fix.LegPositionEffect",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegPositionEffect (564)", HFILL }
+        }, 
+        { &fix_fields[562].hf_id, 
+            { "LegCoveredOrUncovered (565)", "fix.LegCoveredOrUncovered",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegCoveredOrUncovered (565)", HFILL }
+        }, 
+        { &fix_fields[563].hf_id, 
+            { "LegPrice (566)", "fix.LegPrice",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegPrice (566)", HFILL }
+        }, 
+        { &fix_fields[564].hf_id, 
+            { "TradSesStatusRejReason (567)", "fix.TradSesStatusRejReason",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradSesStatusRejReason (567)", HFILL }
+        }, 
+        { &fix_fields[565].hf_id, 
+            { "TradeRequestID (568)", "fix.TradeRequestID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradeRequestID (568)", HFILL }
+        }, 
+        { &fix_fields[566].hf_id, 
+            { "TradeRequestType (569)", "fix.TradeRequestType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradeRequestType (569)", HFILL }
+        }, 
+        { &fix_fields[567].hf_id, 
+            { "PreviouslyReported (570)", "fix.PreviouslyReported",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PreviouslyReported (570)", HFILL }
+        }, 
+        { &fix_fields[568].hf_id, 
+            { "TradeReportID (571)", "fix.TradeReportID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradeReportID (571)", HFILL }
+        }, 
+        { &fix_fields[569].hf_id, 
+            { "TradeReportRefID (572)", "fix.TradeReportRefID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradeReportRefID (572)", HFILL }
+        }, 
+        { &fix_fields[570].hf_id, 
+            { "MatchStatus (573)", "fix.MatchStatus",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MatchStatus (573)", HFILL }
+        }, 
+        { &fix_fields[571].hf_id, 
+            { "MatchType (574)", "fix.MatchType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MatchType (574)", HFILL }
+        }, 
+        { &fix_fields[572].hf_id, 
+            { "OddLot (575)", "fix.OddLot",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OddLot (575)", HFILL }
+        }, 
+        { &fix_fields[573].hf_id, 
+            { "NoClearingInstructions (576)", "fix.NoClearingInstructions",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoClearingInstructions (576)", HFILL }
+        }, 
+        { &fix_fields[574].hf_id, 
+            { "ClearingInstruction (577)", "fix.ClearingInstruction",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ClearingInstruction (577)", HFILL }
+        }, 
+        { &fix_fields[575].hf_id, 
+            { "TradeInputSource (578)", "fix.TradeInputSource",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradeInputSource (578)", HFILL }
+        }, 
+        { &fix_fields[576].hf_id, 
+            { "TradeInputDevice (579)", "fix.TradeInputDevice",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradeInputDevice (579)", HFILL }
+        }, 
+        { &fix_fields[577].hf_id, 
+            { "NoDates (580)", "fix.NoDates",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoDates (580)", HFILL }
+        }, 
+        { &fix_fields[578].hf_id, 
+            { "AccountType (581)", "fix.AccountType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AccountType (581)", HFILL }
+        }, 
+        { &fix_fields[579].hf_id, 
+            { "CustOrderCapacity (582)", "fix.CustOrderCapacity",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CustOrderCapacity (582)", HFILL }
+        }, 
+        { &fix_fields[580].hf_id, 
+            { "ClOrdLinkID (583)", "fix.ClOrdLinkID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ClOrdLinkID (583)", HFILL }
+        }, 
+        { &fix_fields[581].hf_id, 
+            { "MassStatusReqID (584)", "fix.MassStatusReqID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MassStatusReqID (584)", HFILL }
+        }, 
+        { &fix_fields[582].hf_id, 
+            { "MassStatusReqType (585)", "fix.MassStatusReqType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MassStatusReqType (585)", HFILL }
+        }, 
+        { &fix_fields[583].hf_id, 
+            { "OrigOrdModTime (586)", "fix.OrigOrdModTime",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OrigOrdModTime (586)", HFILL }
+        }, 
+        { &fix_fields[584].hf_id, 
+            { "LegSettlType (587)", "fix.LegSettlType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegSettlType (587)", HFILL }
+        }, 
+        { &fix_fields[585].hf_id, 
+            { "LegSettlDate (588)", "fix.LegSettlDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegSettlDate (588)", HFILL }
+        }, 
+        { &fix_fields[586].hf_id, 
+            { "DayBookingInst (589)", "fix.DayBookingInst",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DayBookingInst (589)", HFILL }
+        }, 
+        { &fix_fields[587].hf_id, 
+            { "BookingUnit (590)", "fix.BookingUnit",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BookingUnit (590)", HFILL }
+        }, 
+        { &fix_fields[588].hf_id, 
+            { "PreallocMethod (591)", "fix.PreallocMethod",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PreallocMethod (591)", HFILL }
+        }, 
+        { &fix_fields[589].hf_id, 
+            { "UnderlyingCountryOfIssue (592)", "fix.UnderlyingCountryOfIssue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingCountryOfIssue (592)", HFILL }
+        }, 
+        { &fix_fields[590].hf_id, 
+            { "UnderlyingStateOrProvinceOfIssue (593)", "fix.UnderlyingStateOrProvinceOfIssue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingStateOrProvinceOfIssue (593)", HFILL }
+        }, 
+        { &fix_fields[591].hf_id, 
+            { "UnderlyingLocaleOfIssue (594)", "fix.UnderlyingLocaleOfIssue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingLocaleOfIssue (594)", HFILL }
+        }, 
+        { &fix_fields[592].hf_id, 
+            { "UnderlyingInstrRegistry (595)", "fix.UnderlyingInstrRegistry",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingInstrRegistry (595)", HFILL }
+        }, 
+        { &fix_fields[593].hf_id, 
+            { "LegCountryOfIssue (596)", "fix.LegCountryOfIssue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegCountryOfIssue (596)", HFILL }
+        }, 
+        { &fix_fields[594].hf_id, 
+            { "LegStateOrProvinceOfIssue (597)", "fix.LegStateOrProvinceOfIssue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegStateOrProvinceOfIssue (597)", HFILL }
+        }, 
+        { &fix_fields[595].hf_id, 
+            { "LegLocaleOfIssue (598)", "fix.LegLocaleOfIssue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegLocaleOfIssue (598)", HFILL }
+        }, 
+        { &fix_fields[596].hf_id, 
+            { "LegInstrRegistry (599)", "fix.LegInstrRegistry",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegInstrRegistry (599)", HFILL }
+        }, 
+        { &fix_fields[597].hf_id, 
+            { "LegSymbol (600)", "fix.LegSymbol",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegSymbol (600)", HFILL }
+        }, 
+        { &fix_fields[598].hf_id, 
+            { "LegSymbolSfx (601)", "fix.LegSymbolSfx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegSymbolSfx (601)", HFILL }
+        }, 
+        { &fix_fields[599].hf_id, 
+            { "LegSecurityID (602)", "fix.LegSecurityID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegSecurityID (602)", HFILL }
+        }, 
+        { &fix_fields[600].hf_id, 
+            { "LegSecurityIDSource (603)", "fix.LegSecurityIDSource",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegSecurityIDSource (603)", HFILL }
+        }, 
+        { &fix_fields[601].hf_id, 
+            { "NoLegSecurityAltID (604)", "fix.NoLegSecurityAltID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoLegSecurityAltID (604)", HFILL }
+        }, 
+        { &fix_fields[602].hf_id, 
+            { "LegSecurityAltID (605)", "fix.LegSecurityAltID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegSecurityAltID (605)", HFILL }
+        }, 
+        { &fix_fields[603].hf_id, 
+            { "LegSecurityAltIDSource (606)", "fix.LegSecurityAltIDSource",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegSecurityAltIDSource (606)", HFILL }
+        }, 
+        { &fix_fields[604].hf_id, 
+            { "LegProduct (607)", "fix.LegProduct",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegProduct (607)", HFILL }
+        }, 
+        { &fix_fields[605].hf_id, 
+            { "LegCFICode (608)", "fix.LegCFICode",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegCFICode (608)", HFILL }
+        }, 
+        { &fix_fields[606].hf_id, 
+            { "LegSecurityType (609)", "fix.LegSecurityType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegSecurityType (609)", HFILL }
+        }, 
+        { &fix_fields[607].hf_id, 
+            { "LegMaturityMonthYear (610)", "fix.LegMaturityMonthYear",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegMaturityMonthYear (610)", HFILL }
+        }, 
+        { &fix_fields[608].hf_id, 
+            { "LegMaturityDate (611)", "fix.LegMaturityDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegMaturityDate (611)", HFILL }
+        }, 
+        { &fix_fields[609].hf_id, 
+            { "LegStrikePrice (612)", "fix.LegStrikePrice",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegStrikePrice (612)", HFILL }
+        }, 
+        { &fix_fields[610].hf_id, 
+            { "LegOptAttribute (613)", "fix.LegOptAttribute",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegOptAttribute (613)", HFILL }
+        }, 
+        { &fix_fields[611].hf_id, 
+            { "LegContractMultiplier (614)", "fix.LegContractMultiplier",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegContractMultiplier (614)", HFILL }
+        }, 
+        { &fix_fields[612].hf_id, 
+            { "LegCouponRate (615)", "fix.LegCouponRate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegCouponRate (615)", HFILL }
+        }, 
+        { &fix_fields[613].hf_id, 
+            { "LegSecurityExchange (616)", "fix.LegSecurityExchange",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegSecurityExchange (616)", HFILL }
+        }, 
+        { &fix_fields[614].hf_id, 
+            { "LegIssuer (617)", "fix.LegIssuer",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegIssuer (617)", HFILL }
+        }, 
+        { &fix_fields[615].hf_id, 
+            { "EncodedLegIssuerLen (618)", "fix.EncodedLegIssuerLen",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedLegIssuerLen (618)", HFILL }
+        }, 
+        { &fix_fields[616].hf_id, 
+            { "EncodedLegIssuer (619)", "fix.EncodedLegIssuer",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedLegIssuer (619)", HFILL }
+        }, 
+        { &fix_fields[617].hf_id, 
+            { "LegSecurityDesc (620)", "fix.LegSecurityDesc",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegSecurityDesc (620)", HFILL }
+        }, 
+        { &fix_fields[618].hf_id, 
+            { "EncodedLegSecurityDescLen (621)", "fix.EncodedLegSecurityDescLen",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedLegSecurityDescLen (621)", HFILL }
+        }, 
+        { &fix_fields[619].hf_id, 
+            { "EncodedLegSecurityDesc (622)", "fix.EncodedLegSecurityDesc",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EncodedLegSecurityDesc (622)", HFILL }
+        }, 
+        { &fix_fields[620].hf_id, 
+            { "LegRatioQty (623)", "fix.LegRatioQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegRatioQty (623)", HFILL }
+        }, 
+        { &fix_fields[621].hf_id, 
+            { "LegSide (624)", "fix.LegSide",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegSide (624)", HFILL }
+        }, 
+        { &fix_fields[622].hf_id, 
+            { "TradingSessionSubID (625)", "fix.TradingSessionSubID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradingSessionSubID (625)", HFILL }
+        }, 
+        { &fix_fields[623].hf_id, 
+            { "AllocType (626)", "fix.AllocType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocType (626)", HFILL }
+        }, 
+        { &fix_fields[624].hf_id, 
+            { "NoHops (627)", "fix.NoHops",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoHops (627)", HFILL }
+        }, 
+        { &fix_fields[625].hf_id, 
+            { "HopCompID (628)", "fix.HopCompID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "HopCompID (628)", HFILL }
+        }, 
+        { &fix_fields[626].hf_id, 
+            { "HopSendingTime (629)", "fix.HopSendingTime",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "HopSendingTime (629)", HFILL }
+        }, 
+        { &fix_fields[627].hf_id, 
+            { "HopRefID (630)", "fix.HopRefID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "HopRefID (630)", HFILL }
+        }, 
+        { &fix_fields[628].hf_id, 
+            { "MidPx (631)", "fix.MidPx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MidPx (631)", HFILL }
+        }, 
+        { &fix_fields[629].hf_id, 
+            { "BidYield (632)", "fix.BidYield",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BidYield (632)", HFILL }
+        }, 
+        { &fix_fields[630].hf_id, 
+            { "MidYield (633)", "fix.MidYield",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MidYield (633)", HFILL }
+        }, 
+        { &fix_fields[631].hf_id, 
+            { "OfferYield (634)", "fix.OfferYield",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OfferYield (634)", HFILL }
+        }, 
+        { &fix_fields[632].hf_id, 
+            { "ClearingFeeIndicator (635)", "fix.ClearingFeeIndicator",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ClearingFeeIndicator (635)", HFILL }
+        }, 
+        { &fix_fields[633].hf_id, 
+            { "WorkingIndicator (636)", "fix.WorkingIndicator",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "WorkingIndicator (636)", HFILL }
+        }, 
+        { &fix_fields[634].hf_id, 
+            { "LegLastPx (637)", "fix.LegLastPx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegLastPx (637)", HFILL }
+        }, 
+        { &fix_fields[635].hf_id, 
+            { "PriorityIndicator (638)", "fix.PriorityIndicator",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PriorityIndicator (638)", HFILL }
+        }, 
+        { &fix_fields[636].hf_id, 
+            { "PriceImprovement (639)", "fix.PriceImprovement",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PriceImprovement (639)", HFILL }
+        }, 
+        { &fix_fields[637].hf_id, 
+            { "Price2 (640)", "fix.Price2",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Price2 (640)", HFILL }
+        }, 
+        { &fix_fields[638].hf_id, 
+            { "LastForwardPoints2 (641)", "fix.LastForwardPoints2",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LastForwardPoints2 (641)", HFILL }
+        }, 
+        { &fix_fields[639].hf_id, 
+            { "BidForwardPoints2 (642)", "fix.BidForwardPoints2",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BidForwardPoints2 (642)", HFILL }
+        }, 
+        { &fix_fields[640].hf_id, 
+            { "OfferForwardPoints2 (643)", "fix.OfferForwardPoints2",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OfferForwardPoints2 (643)", HFILL }
+        }, 
+        { &fix_fields[641].hf_id, 
+            { "RFQReqID (644)", "fix.RFQReqID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RFQReqID (644)", HFILL }
+        }, 
+        { &fix_fields[642].hf_id, 
+            { "MktBidPx (645)", "fix.MktBidPx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MktBidPx (645)", HFILL }
+        }, 
+        { &fix_fields[643].hf_id, 
+            { "MktOfferPx (646)", "fix.MktOfferPx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MktOfferPx (646)", HFILL }
+        }, 
+        { &fix_fields[644].hf_id, 
+            { "MinBidSize (647)", "fix.MinBidSize",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MinBidSize (647)", HFILL }
+        }, 
+        { &fix_fields[645].hf_id, 
+            { "MinOfferSize (648)", "fix.MinOfferSize",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MinOfferSize (648)", HFILL }
+        }, 
+        { &fix_fields[646].hf_id, 
+            { "QuoteStatusReqID (649)", "fix.QuoteStatusReqID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "QuoteStatusReqID (649)", HFILL }
+        }, 
+        { &fix_fields[647].hf_id, 
+            { "LegalConfirm (650)", "fix.LegalConfirm",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegalConfirm (650)", HFILL }
+        }, 
+        { &fix_fields[648].hf_id, 
+            { "UnderlyingLastPx (651)", "fix.UnderlyingLastPx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingLastPx (651)", HFILL }
+        }, 
+        { &fix_fields[649].hf_id, 
+            { "UnderlyingLastQty (652)", "fix.UnderlyingLastQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingLastQty (652)", HFILL }
+        }, 
+        { &fix_fields[650].hf_id, 
+            { "SecDefStatus (653)", "fix.SecDefStatus",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecDefStatus (653)", HFILL }
+        }, 
+        { &fix_fields[651].hf_id, 
+            { "LegRefID (654)", "fix.LegRefID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegRefID (654)", HFILL }
+        }, 
+        { &fix_fields[652].hf_id, 
+            { "ContraLegRefID (655)", "fix.ContraLegRefID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ContraLegRefID (655)", HFILL }
+        }, 
+        { &fix_fields[653].hf_id, 
+            { "SettlCurrBidFxRate (656)", "fix.SettlCurrBidFxRate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlCurrBidFxRate (656)", HFILL }
+        }, 
+        { &fix_fields[654].hf_id, 
+            { "SettlCurrOfferFxRate (657)", "fix.SettlCurrOfferFxRate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlCurrOfferFxRate (657)", HFILL }
+        }, 
+        { &fix_fields[655].hf_id, 
+            { "QuoteRequestRejectReason (658)", "fix.QuoteRequestRejectReason",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "QuoteRequestRejectReason (658)", HFILL }
+        }, 
+        { &fix_fields[656].hf_id, 
+            { "SideComplianceID (659)", "fix.SideComplianceID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SideComplianceID (659)", HFILL }
+        }, 
+        { &fix_fields[657].hf_id, 
+            { "AcctIDSource (660)", "fix.AcctIDSource",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AcctIDSource (660)", HFILL }
+        }, 
+        { &fix_fields[658].hf_id, 
+            { "AllocAcctIDSource (661)", "fix.AllocAcctIDSource",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocAcctIDSource (661)", HFILL }
+        }, 
+        { &fix_fields[659].hf_id, 
+            { "BenchmarkPrice (662)", "fix.BenchmarkPrice",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BenchmarkPrice (662)", HFILL }
+        }, 
+        { &fix_fields[660].hf_id, 
+            { "BenchmarkPriceType (663)", "fix.BenchmarkPriceType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BenchmarkPriceType (663)", HFILL }
+        }, 
+        { &fix_fields[661].hf_id, 
+            { "ConfirmID (664)", "fix.ConfirmID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ConfirmID (664)", HFILL }
+        }, 
+        { &fix_fields[662].hf_id, 
+            { "ConfirmStatus (665)", "fix.ConfirmStatus",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ConfirmStatus (665)", HFILL }
+        }, 
+        { &fix_fields[663].hf_id, 
+            { "ConfirmTransType (666)", "fix.ConfirmTransType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ConfirmTransType (666)", HFILL }
+        }, 
+        { &fix_fields[664].hf_id, 
+            { "ContractSettlMonth (667)", "fix.ContractSettlMonth",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ContractSettlMonth (667)", HFILL }
+        }, 
+        { &fix_fields[665].hf_id, 
+            { "DeliveryForm (668)", "fix.DeliveryForm",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DeliveryForm (668)", HFILL }
+        }, 
+        { &fix_fields[666].hf_id, 
+            { "LastParPx (669)", "fix.LastParPx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LastParPx (669)", HFILL }
+        }, 
+        { &fix_fields[667].hf_id, 
+            { "NoLegAllocs (670)", "fix.NoLegAllocs",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoLegAllocs (670)", HFILL }
+        }, 
+        { &fix_fields[668].hf_id, 
+            { "LegAllocAccount (671)", "fix.LegAllocAccount",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegAllocAccount (671)", HFILL }
+        }, 
+        { &fix_fields[669].hf_id, 
+            { "LegIndividualAllocID (672)", "fix.LegIndividualAllocID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegIndividualAllocID (672)", HFILL }
+        }, 
+        { &fix_fields[670].hf_id, 
+            { "LegAllocQty (673)", "fix.LegAllocQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegAllocQty (673)", HFILL }
+        }, 
+        { &fix_fields[671].hf_id, 
+            { "LegAllocAcctIDSource (674)", "fix.LegAllocAcctIDSource",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegAllocAcctIDSource (674)", HFILL }
+        }, 
+        { &fix_fields[672].hf_id, 
+            { "LegSettlCurrency (675)", "fix.LegSettlCurrency",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegSettlCurrency (675)", HFILL }
+        }, 
+        { &fix_fields[673].hf_id, 
+            { "LegBenchmarkCurveCurrency (676)", "fix.LegBenchmarkCurveCurrency",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegBenchmarkCurveCurrency (676)", HFILL }
+        }, 
+        { &fix_fields[674].hf_id, 
+            { "LegBenchmarkCurveName (677)", "fix.LegBenchmarkCurveName",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegBenchmarkCurveName (677)", HFILL }
+        }, 
+        { &fix_fields[675].hf_id, 
+            { "LegBenchmarkCurvePoint (678)", "fix.LegBenchmarkCurvePoint",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegBenchmarkCurvePoint (678)", HFILL }
+        }, 
+        { &fix_fields[676].hf_id, 
+            { "LegBenchmarkPrice (679)", "fix.LegBenchmarkPrice",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegBenchmarkPrice (679)", HFILL }
+        }, 
+        { &fix_fields[677].hf_id, 
+            { "LegBenchmarkPriceType (680)", "fix.LegBenchmarkPriceType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegBenchmarkPriceType (680)", HFILL }
+        }, 
+        { &fix_fields[678].hf_id, 
+            { "LegBidPx (681)", "fix.LegBidPx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegBidPx (681)", HFILL }
+        }, 
+        { &fix_fields[679].hf_id, 
+            { "LegIOIQty (682)", "fix.LegIOIQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegIOIQty (682)", HFILL }
+        }, 
+        { &fix_fields[680].hf_id, 
+            { "NoLegStipulations (683)", "fix.NoLegStipulations",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoLegStipulations (683)", HFILL }
+        }, 
+        { &fix_fields[681].hf_id, 
+            { "LegOfferPx (684)", "fix.LegOfferPx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegOfferPx (684)", HFILL }
+        }, 
+        { &fix_fields[682].hf_id, 
+            { "LegOrderQty (685)", "fix.LegOrderQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegOrderQty (685)", HFILL }
+        }, 
+        { &fix_fields[683].hf_id, 
+            { "LegPriceType (686)", "fix.LegPriceType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegPriceType (686)", HFILL }
+        }, 
+        { &fix_fields[684].hf_id, 
+            { "LegQty (687)", "fix.LegQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegQty (687)", HFILL }
+        }, 
+        { &fix_fields[685].hf_id, 
+            { "LegStipulationType (688)", "fix.LegStipulationType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegStipulationType (688)", HFILL }
+        }, 
+        { &fix_fields[686].hf_id, 
+            { "LegStipulationValue (689)", "fix.LegStipulationValue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegStipulationValue (689)", HFILL }
+        }, 
+        { &fix_fields[687].hf_id, 
+            { "LegSwapType (690)", "fix.LegSwapType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegSwapType (690)", HFILL }
+        }, 
+        { &fix_fields[688].hf_id, 
+            { "Pool (691)", "fix.Pool",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Pool (691)", HFILL }
+        }, 
+        { &fix_fields[689].hf_id, 
+            { "QuotePriceType (692)", "fix.QuotePriceType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "QuotePriceType (692)", HFILL }
+        }, 
+        { &fix_fields[690].hf_id, 
+            { "QuoteRespID (693)", "fix.QuoteRespID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "QuoteRespID (693)", HFILL }
+        }, 
+        { &fix_fields[691].hf_id, 
+            { "QuoteRespType (694)", "fix.QuoteRespType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "QuoteRespType (694)", HFILL }
+        }, 
+        { &fix_fields[692].hf_id, 
+            { "QuoteQualifier (695)", "fix.QuoteQualifier",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "QuoteQualifier (695)", HFILL }
+        }, 
+        { &fix_fields[693].hf_id, 
+            { "YieldRedemptionDate (696)", "fix.YieldRedemptionDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "YieldRedemptionDate (696)", HFILL }
+        }, 
+        { &fix_fields[694].hf_id, 
+            { "YieldRedemptionPrice (697)", "fix.YieldRedemptionPrice",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "YieldRedemptionPrice (697)", HFILL }
+        }, 
+        { &fix_fields[695].hf_id, 
+            { "YieldRedemptionPriceType (698)", "fix.YieldRedemptionPriceType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "YieldRedemptionPriceType (698)", HFILL }
+        }, 
+        { &fix_fields[696].hf_id, 
+            { "BenchmarkSecurityID (699)", "fix.BenchmarkSecurityID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BenchmarkSecurityID (699)", HFILL }
+        }, 
+        { &fix_fields[697].hf_id, 
+            { "ReversalIndicator (700)", "fix.ReversalIndicator",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ReversalIndicator (700)", HFILL }
+        }, 
+        { &fix_fields[698].hf_id, 
+            { "YieldCalcDate (701)", "fix.YieldCalcDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "YieldCalcDate (701)", HFILL }
+        }, 
+        { &fix_fields[699].hf_id, 
+            { "NoPositions (702)", "fix.NoPositions",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoPositions (702)", HFILL }
+        }, 
+        { &fix_fields[700].hf_id, 
+            { "PosType (703)", "fix.PosType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PosType (703)", HFILL }
+        }, 
+        { &fix_fields[701].hf_id, 
+            { "LongQty (704)", "fix.LongQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LongQty (704)", HFILL }
+        }, 
+        { &fix_fields[702].hf_id, 
+            { "ShortQty (705)", "fix.ShortQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ShortQty (705)", HFILL }
+        }, 
+        { &fix_fields[703].hf_id, 
+            { "PosQtyStatus (706)", "fix.PosQtyStatus",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PosQtyStatus (706)", HFILL }
+        }, 
+        { &fix_fields[704].hf_id, 
+            { "PosAmtType (707)", "fix.PosAmtType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PosAmtType (707)", HFILL }
+        }, 
+        { &fix_fields[705].hf_id, 
+            { "PosAmt (708)", "fix.PosAmt",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PosAmt (708)", HFILL }
+        }, 
+        { &fix_fields[706].hf_id, 
+            { "PosTransType (709)", "fix.PosTransType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PosTransType (709)", HFILL }
+        }, 
+        { &fix_fields[707].hf_id, 
+            { "PosReqID (710)", "fix.PosReqID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PosReqID (710)", HFILL }
+        }, 
+        { &fix_fields[708].hf_id, 
+            { "NoUnderlyings (711)", "fix.NoUnderlyings",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoUnderlyings (711)", HFILL }
+        }, 
+        { &fix_fields[709].hf_id, 
+            { "PosMaintAction (712)", "fix.PosMaintAction",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PosMaintAction (712)", HFILL }
+        }, 
+        { &fix_fields[710].hf_id, 
+            { "OrigPosReqRefID (713)", "fix.OrigPosReqRefID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OrigPosReqRefID (713)", HFILL }
+        }, 
+        { &fix_fields[711].hf_id, 
+            { "PosMaintRptRefID (714)", "fix.PosMaintRptRefID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PosMaintRptRefID (714)", HFILL }
+        }, 
+        { &fix_fields[712].hf_id, 
+            { "ClearingBusinessDate (715)", "fix.ClearingBusinessDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ClearingBusinessDate (715)", HFILL }
+        }, 
+        { &fix_fields[713].hf_id, 
+            { "SettlSessID (716)", "fix.SettlSessID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlSessID (716)", HFILL }
+        }, 
+        { &fix_fields[714].hf_id, 
+            { "SettlSessSubID (717)", "fix.SettlSessSubID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlSessSubID (717)", HFILL }
+        }, 
+        { &fix_fields[715].hf_id, 
+            { "AdjustmentType (718)", "fix.AdjustmentType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AdjustmentType (718)", HFILL }
+        }, 
+        { &fix_fields[716].hf_id, 
+            { "ContraryInstructionIndicator (719)", "fix.ContraryInstructionIndicator",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ContraryInstructionIndicator (719)", HFILL }
+        }, 
+        { &fix_fields[717].hf_id, 
+            { "PriorSpreadIndicator (720)", "fix.PriorSpreadIndicator",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PriorSpreadIndicator (720)", HFILL }
+        }, 
+        { &fix_fields[718].hf_id, 
+            { "PosMaintRptID (721)", "fix.PosMaintRptID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PosMaintRptID (721)", HFILL }
+        }, 
+        { &fix_fields[719].hf_id, 
+            { "PosMaintStatus (722)", "fix.PosMaintStatus",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PosMaintStatus (722)", HFILL }
+        }, 
+        { &fix_fields[720].hf_id, 
+            { "PosMaintResult (723)", "fix.PosMaintResult",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PosMaintResult (723)", HFILL }
+        }, 
+        { &fix_fields[721].hf_id, 
+            { "PosReqType (724)", "fix.PosReqType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PosReqType (724)", HFILL }
+        }, 
+        { &fix_fields[722].hf_id, 
+            { "ResponseTransportType (725)", "fix.ResponseTransportType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ResponseTransportType (725)", HFILL }
+        }, 
+        { &fix_fields[723].hf_id, 
+            { "ResponseDestination (726)", "fix.ResponseDestination",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ResponseDestination (726)", HFILL }
+        }, 
+        { &fix_fields[724].hf_id, 
+            { "TotalNumPosReports (727)", "fix.TotalNumPosReports",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TotalNumPosReports (727)", HFILL }
+        }, 
+        { &fix_fields[725].hf_id, 
+            { "PosReqResult (728)", "fix.PosReqResult",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PosReqResult (728)", HFILL }
+        }, 
+        { &fix_fields[726].hf_id, 
+            { "PosReqStatus (729)", "fix.PosReqStatus",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PosReqStatus (729)", HFILL }
+        }, 
+        { &fix_fields[727].hf_id, 
+            { "SettlPrice (730)", "fix.SettlPrice",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlPrice (730)", HFILL }
+        }, 
+        { &fix_fields[728].hf_id, 
+            { "SettlPriceType (731)", "fix.SettlPriceType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlPriceType (731)", HFILL }
+        }, 
+        { &fix_fields[729].hf_id, 
+            { "UnderlyingSettlPrice (732)", "fix.UnderlyingSettlPrice",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingSettlPrice (732)", HFILL }
+        }, 
+        { &fix_fields[730].hf_id, 
+            { "UnderlyingSettlPriceType (733)", "fix.UnderlyingSettlPriceType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingSettlPriceType (733)", HFILL }
+        }, 
+        { &fix_fields[731].hf_id, 
+            { "PriorSettlPrice (734)", "fix.PriorSettlPrice",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PriorSettlPrice (734)", HFILL }
+        }, 
+        { &fix_fields[732].hf_id, 
+            { "NoQuoteQualifiers (735)", "fix.NoQuoteQualifiers",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoQuoteQualifiers (735)", HFILL }
+        }, 
+        { &fix_fields[733].hf_id, 
+            { "AllocSettlCurrency (736)", "fix.AllocSettlCurrency",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocSettlCurrency (736)", HFILL }
+        }, 
+        { &fix_fields[734].hf_id, 
+            { "AllocSettlCurrAmt (737)", "fix.AllocSettlCurrAmt",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocSettlCurrAmt (737)", HFILL }
+        }, 
+        { &fix_fields[735].hf_id, 
+            { "InterestAtMaturity (738)", "fix.InterestAtMaturity",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "InterestAtMaturity (738)", HFILL }
+        }, 
+        { &fix_fields[736].hf_id, 
+            { "LegDatedDate (739)", "fix.LegDatedDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegDatedDate (739)", HFILL }
+        }, 
+        { &fix_fields[737].hf_id, 
+            { "LegPool (740)", "fix.LegPool",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegPool (740)", HFILL }
+        }, 
+        { &fix_fields[738].hf_id, 
+            { "AllocInterestAtMaturity (741)", "fix.AllocInterestAtMaturity",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocInterestAtMaturity (741)", HFILL }
+        }, 
+        { &fix_fields[739].hf_id, 
+            { "AllocAccruedInterestAmt (742)", "fix.AllocAccruedInterestAmt",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocAccruedInterestAmt (742)", HFILL }
+        }, 
+        { &fix_fields[740].hf_id, 
+            { "DeliveryDate (743)", "fix.DeliveryDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DeliveryDate (743)", HFILL }
+        }, 
+        { &fix_fields[741].hf_id, 
+            { "AssignmentMethod (744)", "fix.AssignmentMethod",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AssignmentMethod (744)", HFILL }
+        }, 
+        { &fix_fields[742].hf_id, 
+            { "AssignmentUnit (745)", "fix.AssignmentUnit",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AssignmentUnit (745)", HFILL }
+        }, 
+        { &fix_fields[743].hf_id, 
+            { "OpenInterest (746)", "fix.OpenInterest",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OpenInterest (746)", HFILL }
+        }, 
+        { &fix_fields[744].hf_id, 
+            { "ExerciseMethod (747)", "fix.ExerciseMethod",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ExerciseMethod (747)", HFILL }
+        }, 
+        { &fix_fields[745].hf_id, 
+            { "TotNumTradeReports (748)", "fix.TotNumTradeReports",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TotNumTradeReports (748)", HFILL }
+        }, 
+        { &fix_fields[746].hf_id, 
+            { "TradeRequestResult (749)", "fix.TradeRequestResult",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradeRequestResult (749)", HFILL }
+        }, 
+        { &fix_fields[747].hf_id, 
+            { "TradeRequestStatus (750)", "fix.TradeRequestStatus",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradeRequestStatus (750)", HFILL }
+        }, 
+        { &fix_fields[748].hf_id, 
+            { "TradeReportRejectReason (751)", "fix.TradeReportRejectReason",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradeReportRejectReason (751)", HFILL }
+        }, 
+        { &fix_fields[749].hf_id, 
+            { "SideMultiLegReportingType (752)", "fix.SideMultiLegReportingType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SideMultiLegReportingType (752)", HFILL }
+        }, 
+        { &fix_fields[750].hf_id, 
+            { "NoPosAmt (753)", "fix.NoPosAmt",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoPosAmt (753)", HFILL }
+        }, 
+        { &fix_fields[751].hf_id, 
+            { "AutoAcceptIndicator (754)", "fix.AutoAcceptIndicator",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AutoAcceptIndicator (754)", HFILL }
+        }, 
+        { &fix_fields[752].hf_id, 
+            { "AllocReportID (755)", "fix.AllocReportID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocReportID (755)", HFILL }
+        }, 
+        { &fix_fields[753].hf_id, 
+            { "NoNested2PartyIDs (756)", "fix.NoNested2PartyIDs",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoNested2PartyIDs (756)", HFILL }
+        }, 
+        { &fix_fields[754].hf_id, 
+            { "Nested2PartyID (757)", "fix.Nested2PartyID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Nested2PartyID (757)", HFILL }
+        }, 
+        { &fix_fields[755].hf_id, 
+            { "Nested2PartyIDSource (758)", "fix.Nested2PartyIDSource",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Nested2PartyIDSource (758)", HFILL }
+        }, 
+        { &fix_fields[756].hf_id, 
+            { "Nested2PartyRole (759)", "fix.Nested2PartyRole",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Nested2PartyRole (759)", HFILL }
+        }, 
+        { &fix_fields[757].hf_id, 
+            { "Nested2PartySubID (760)", "fix.Nested2PartySubID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Nested2PartySubID (760)", HFILL }
+        }, 
+        { &fix_fields[758].hf_id, 
+            { "BenchmarkSecurityIDSource (761)", "fix.BenchmarkSecurityIDSource",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BenchmarkSecurityIDSource (761)", HFILL }
+        }, 
+        { &fix_fields[759].hf_id, 
+            { "SecuritySubType (762)", "fix.SecuritySubType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecuritySubType (762)", HFILL }
+        }, 
+        { &fix_fields[760].hf_id, 
+            { "UnderlyingSecuritySubType (763)", "fix.UnderlyingSecuritySubType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingSecuritySubType (763)", HFILL }
+        }, 
+        { &fix_fields[761].hf_id, 
+            { "LegSecuritySubType (764)", "fix.LegSecuritySubType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegSecuritySubType (764)", HFILL }
+        }, 
+        { &fix_fields[762].hf_id, 
+            { "AllowableOneSidednessPct (765)", "fix.AllowableOneSidednessPct",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllowableOneSidednessPct (765)", HFILL }
+        }, 
+        { &fix_fields[763].hf_id, 
+            { "AllowableOneSidednessValue (766)", "fix.AllowableOneSidednessValue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllowableOneSidednessValue (766)", HFILL }
+        }, 
+        { &fix_fields[764].hf_id, 
+            { "AllowableOneSidednessCurr (767)", "fix.AllowableOneSidednessCurr",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllowableOneSidednessCurr (767)", HFILL }
+        }, 
+        { &fix_fields[765].hf_id, 
+            { "NoTrdRegTimestamps (768)", "fix.NoTrdRegTimestamps",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoTrdRegTimestamps (768)", HFILL }
+        }, 
+        { &fix_fields[766].hf_id, 
+            { "TrdRegTimestamp (769)", "fix.TrdRegTimestamp",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TrdRegTimestamp (769)", HFILL }
+        }, 
+        { &fix_fields[767].hf_id, 
+            { "TrdRegTimestampType (770)", "fix.TrdRegTimestampType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TrdRegTimestampType (770)", HFILL }
+        }, 
+        { &fix_fields[768].hf_id, 
+            { "TrdRegTimestampOrigin (771)", "fix.TrdRegTimestampOrigin",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TrdRegTimestampOrigin (771)", HFILL }
+        }, 
+        { &fix_fields[769].hf_id, 
+            { "ConfirmRefID (772)", "fix.ConfirmRefID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ConfirmRefID (772)", HFILL }
+        }, 
+        { &fix_fields[770].hf_id, 
+            { "ConfirmType (773)", "fix.ConfirmType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ConfirmType (773)", HFILL }
+        }, 
+        { &fix_fields[771].hf_id, 
+            { "ConfirmRejReason (774)", "fix.ConfirmRejReason",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ConfirmRejReason (774)", HFILL }
+        }, 
+        { &fix_fields[772].hf_id, 
+            { "BookingType (775)", "fix.BookingType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "BookingType (775)", HFILL }
+        }, 
+        { &fix_fields[773].hf_id, 
+            { "IndividualAllocRejCode (776)", "fix.IndividualAllocRejCode",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "IndividualAllocRejCode (776)", HFILL }
+        }, 
+        { &fix_fields[774].hf_id, 
+            { "SettlInstMsgID (777)", "fix.SettlInstMsgID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlInstMsgID (777)", HFILL }
+        }, 
+        { &fix_fields[775].hf_id, 
+            { "NoSettlInst (778)", "fix.NoSettlInst",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoSettlInst (778)", HFILL }
+        }, 
+        { &fix_fields[776].hf_id, 
+            { "LastUpdateTime (779)", "fix.LastUpdateTime",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LastUpdateTime (779)", HFILL }
+        }, 
+        { &fix_fields[777].hf_id, 
+            { "AllocSettlInstType (780)", "fix.AllocSettlInstType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocSettlInstType (780)", HFILL }
+        }, 
+        { &fix_fields[778].hf_id, 
+            { "NoSettlPartyIDs (781)", "fix.NoSettlPartyIDs",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoSettlPartyIDs (781)", HFILL }
+        }, 
+        { &fix_fields[779].hf_id, 
+            { "SettlPartyID (782)", "fix.SettlPartyID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlPartyID (782)", HFILL }
+        }, 
+        { &fix_fields[780].hf_id, 
+            { "SettlPartyIDSource (783)", "fix.SettlPartyIDSource",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlPartyIDSource (783)", HFILL }
+        }, 
+        { &fix_fields[781].hf_id, 
+            { "SettlPartyRole (784)", "fix.SettlPartyRole",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlPartyRole (784)", HFILL }
+        }, 
+        { &fix_fields[782].hf_id, 
+            { "SettlPartySubID (785)", "fix.SettlPartySubID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlPartySubID (785)", HFILL }
+        }, 
+        { &fix_fields[783].hf_id, 
+            { "SettlPartySubIDType (786)", "fix.SettlPartySubIDType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlPartySubIDType (786)", HFILL }
+        }, 
+        { &fix_fields[784].hf_id, 
+            { "DlvyInstType (787)", "fix.DlvyInstType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DlvyInstType (787)", HFILL }
+        }, 
+        { &fix_fields[785].hf_id, 
+            { "TerminationType (788)", "fix.TerminationType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TerminationType (788)", HFILL }
+        }, 
+        { &fix_fields[786].hf_id, 
+            { "NextExpectedMsgSeqNum (789)", "fix.NextExpectedMsgSeqNum",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NextExpectedMsgSeqNum (789)", HFILL }
+        }, 
+        { &fix_fields[787].hf_id, 
+            { "OrdStatusReqID (790)", "fix.OrdStatusReqID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OrdStatusReqID (790)", HFILL }
+        }, 
+        { &fix_fields[788].hf_id, 
+            { "SettlInstReqID (791)", "fix.SettlInstReqID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlInstReqID (791)", HFILL }
+        }, 
+        { &fix_fields[789].hf_id, 
+            { "SettlInstReqRejCode (792)", "fix.SettlInstReqRejCode",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SettlInstReqRejCode (792)", HFILL }
+        }, 
+        { &fix_fields[790].hf_id, 
+            { "SecondaryAllocID (793)", "fix.SecondaryAllocID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecondaryAllocID (793)", HFILL }
+        }, 
+        { &fix_fields[791].hf_id, 
+            { "AllocReportType (794)", "fix.AllocReportType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocReportType (794)", HFILL }
+        }, 
+        { &fix_fields[792].hf_id, 
+            { "AllocReportRefID (795)", "fix.AllocReportRefID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocReportRefID (795)", HFILL }
+        }, 
+        { &fix_fields[793].hf_id, 
+            { "AllocCancReplaceReason (796)", "fix.AllocCancReplaceReason",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocCancReplaceReason (796)", HFILL }
+        }, 
+        { &fix_fields[794].hf_id, 
+            { "CopyMsgIndicator (797)", "fix.CopyMsgIndicator",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CopyMsgIndicator (797)", HFILL }
+        }, 
+        { &fix_fields[795].hf_id, 
+            { "AllocAccountType (798)", "fix.AllocAccountType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocAccountType (798)", HFILL }
+        }, 
+        { &fix_fields[796].hf_id, 
+            { "OrderAvgPx (799)", "fix.OrderAvgPx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OrderAvgPx (799)", HFILL }
+        }, 
+        { &fix_fields[797].hf_id, 
+            { "OrderBookingQty (800)", "fix.OrderBookingQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OrderBookingQty (800)", HFILL }
+        }, 
+        { &fix_fields[798].hf_id, 
+            { "NoSettlPartySubIDs (801)", "fix.NoSettlPartySubIDs",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoSettlPartySubIDs (801)", HFILL }
+        }, 
+        { &fix_fields[799].hf_id, 
+            { "NoPartySubIDs (802)", "fix.NoPartySubIDs",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoPartySubIDs (802)", HFILL }
+        }, 
+        { &fix_fields[800].hf_id, 
+            { "PartySubIDType (803)", "fix.PartySubIDType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PartySubIDType (803)", HFILL }
+        }, 
+        { &fix_fields[801].hf_id, 
+            { "NoNestedPartySubIDs (804)", "fix.NoNestedPartySubIDs",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoNestedPartySubIDs (804)", HFILL }
+        }, 
+        { &fix_fields[802].hf_id, 
+            { "NestedPartySubIDType (805)", "fix.NestedPartySubIDType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NestedPartySubIDType (805)", HFILL }
+        }, 
+        { &fix_fields[803].hf_id, 
+            { "NoNested2PartySubIDs (806)", "fix.NoNested2PartySubIDs",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoNested2PartySubIDs (806)", HFILL }
+        }, 
+        { &fix_fields[804].hf_id, 
+            { "Nested2PartySubIDType (807)", "fix.Nested2PartySubIDType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Nested2PartySubIDType (807)", HFILL }
+        }, 
+        { &fix_fields[805].hf_id, 
+            { "AllocIntermedReqType (808)", "fix.AllocIntermedReqType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocIntermedReqType (808)", HFILL }
+        }, 
+        { &fix_fields[806].hf_id, 
+            { "UnderlyingPx (810)", "fix.UnderlyingPx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingPx (810)", HFILL }
+        }, 
+        { &fix_fields[807].hf_id, 
+            { "PriceDelta (811)", "fix.PriceDelta",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PriceDelta (811)", HFILL }
+        }, 
+        { &fix_fields[808].hf_id, 
+            { "ApplQueueMax (812)", "fix.ApplQueueMax",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ApplQueueMax (812)", HFILL }
+        }, 
+        { &fix_fields[809].hf_id, 
+            { "ApplQueueDepth (813)", "fix.ApplQueueDepth",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ApplQueueDepth (813)", HFILL }
+        }, 
+        { &fix_fields[810].hf_id, 
+            { "ApplQueueResolution (814)", "fix.ApplQueueResolution",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ApplQueueResolution (814)", HFILL }
+        }, 
+        { &fix_fields[811].hf_id, 
+            { "ApplQueueAction (815)", "fix.ApplQueueAction",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ApplQueueAction (815)", HFILL }
+        }, 
+        { &fix_fields[812].hf_id, 
+            { "NoAltMDSource (816)", "fix.NoAltMDSource",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoAltMDSource (816)", HFILL }
+        }, 
+        { &fix_fields[813].hf_id, 
+            { "AltMDSourceID (817)", "fix.AltMDSourceID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AltMDSourceID (817)", HFILL }
+        }, 
+        { &fix_fields[814].hf_id, 
+            { "SecondaryTradeReportID (818)", "fix.SecondaryTradeReportID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecondaryTradeReportID (818)", HFILL }
+        }, 
+        { &fix_fields[815].hf_id, 
+            { "AvgPxIndicator (819)", "fix.AvgPxIndicator",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AvgPxIndicator (819)", HFILL }
+        }, 
+        { &fix_fields[816].hf_id, 
+            { "TradeLinkID (820)", "fix.TradeLinkID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradeLinkID (820)", HFILL }
+        }, 
+        { &fix_fields[817].hf_id, 
+            { "OrderInputDevice (821)", "fix.OrderInputDevice",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OrderInputDevice (821)", HFILL }
+        }, 
+        { &fix_fields[818].hf_id, 
+            { "UnderlyingTradingSessionID (822)", "fix.UnderlyingTradingSessionID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingTradingSessionID (822)", HFILL }
+        }, 
+        { &fix_fields[819].hf_id, 
+            { "UnderlyingTradingSessionSubID (823)", "fix.UnderlyingTradingSessionSubID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingTradingSessionSubID (823)", HFILL }
+        }, 
+        { &fix_fields[820].hf_id, 
+            { "TradeLegRefID (824)", "fix.TradeLegRefID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradeLegRefID (824)", HFILL }
+        }, 
+        { &fix_fields[821].hf_id, 
+            { "ExchangeRule (825)", "fix.ExchangeRule",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ExchangeRule (825)", HFILL }
+        }, 
+        { &fix_fields[822].hf_id, 
+            { "TradeAllocIndicator (826)", "fix.TradeAllocIndicator",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradeAllocIndicator (826)", HFILL }
+        }, 
+        { &fix_fields[823].hf_id, 
+            { "ExpirationCycle (827)", "fix.ExpirationCycle",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ExpirationCycle (827)", HFILL }
+        }, 
+        { &fix_fields[824].hf_id, 
+            { "TrdType (828)", "fix.TrdType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TrdType (828)", HFILL }
+        }, 
+        { &fix_fields[825].hf_id, 
+            { "TrdSubType (829)", "fix.TrdSubType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TrdSubType (829)", HFILL }
+        }, 
+        { &fix_fields[826].hf_id, 
+            { "TransferReason (830)", "fix.TransferReason",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TransferReason (830)", HFILL }
+        }, 
+        { &fix_fields[827].hf_id, 
+            { "AsgnReqID (831)", "fix.AsgnReqID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AsgnReqID (831)", HFILL }
+        }, 
+        { &fix_fields[828].hf_id, 
+            { "TotNumAssignmentReports (832)", "fix.TotNumAssignmentReports",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TotNumAssignmentReports (832)", HFILL }
+        }, 
+        { &fix_fields[829].hf_id, 
+            { "AsgnRptID (833)", "fix.AsgnRptID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AsgnRptID (833)", HFILL }
+        }, 
+        { &fix_fields[830].hf_id, 
+            { "ThresholdAmount (834)", "fix.ThresholdAmount",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ThresholdAmount (834)", HFILL }
+        }, 
+        { &fix_fields[831].hf_id, 
+            { "PegMoveType (835)", "fix.PegMoveType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PegMoveType (835)", HFILL }
+        }, 
+        { &fix_fields[832].hf_id, 
+            { "PegOffsetType (836)", "fix.PegOffsetType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PegOffsetType (836)", HFILL }
+        }, 
+        { &fix_fields[833].hf_id, 
+            { "PegLimitType (837)", "fix.PegLimitType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PegLimitType (837)", HFILL }
+        }, 
+        { &fix_fields[834].hf_id, 
+            { "PegRoundDirection (838)", "fix.PegRoundDirection",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PegRoundDirection (838)", HFILL }
+        }, 
+        { &fix_fields[835].hf_id, 
+            { "PeggedPrice (839)", "fix.PeggedPrice",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PeggedPrice (839)", HFILL }
+        }, 
+        { &fix_fields[836].hf_id, 
+            { "PegScope (840)", "fix.PegScope",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PegScope (840)", HFILL }
+        }, 
+        { &fix_fields[837].hf_id, 
+            { "DiscretionMoveType (841)", "fix.DiscretionMoveType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DiscretionMoveType (841)", HFILL }
+        }, 
+        { &fix_fields[838].hf_id, 
+            { "DiscretionOffsetType (842)", "fix.DiscretionOffsetType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DiscretionOffsetType (842)", HFILL }
+        }, 
+        { &fix_fields[839].hf_id, 
+            { "DiscretionLimitType (843)", "fix.DiscretionLimitType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DiscretionLimitType (843)", HFILL }
+        }, 
+        { &fix_fields[840].hf_id, 
+            { "DiscretionRoundDirection (844)", "fix.DiscretionRoundDirection",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DiscretionRoundDirection (844)", HFILL }
+        }, 
+        { &fix_fields[841].hf_id, 
+            { "DiscretionPrice (845)", "fix.DiscretionPrice",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DiscretionPrice (845)", HFILL }
+        }, 
+        { &fix_fields[842].hf_id, 
+            { "DiscretionScope (846)", "fix.DiscretionScope",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DiscretionScope (846)", HFILL }
+        }, 
+        { &fix_fields[843].hf_id, 
+            { "TargetStrategy (847)", "fix.TargetStrategy",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TargetStrategy (847)", HFILL }
+        }, 
+        { &fix_fields[844].hf_id, 
+            { "TargetStrategyParameters (848)", "fix.TargetStrategyParameters",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TargetStrategyParameters (848)", HFILL }
+        }, 
+        { &fix_fields[845].hf_id, 
+            { "ParticipationRate (849)", "fix.ParticipationRate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ParticipationRate (849)", HFILL }
+        }, 
+        { &fix_fields[846].hf_id, 
+            { "TargetStrategyPerformance (850)", "fix.TargetStrategyPerformance",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TargetStrategyPerformance (850)", HFILL }
+        }, 
+        { &fix_fields[847].hf_id, 
+            { "LastLiquidityInd (851)", "fix.LastLiquidityInd",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LastLiquidityInd (851)", HFILL }
+        }, 
+        { &fix_fields[848].hf_id, 
+            { "PublishTrdIndicator (852)", "fix.PublishTrdIndicator",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PublishTrdIndicator (852)", HFILL }
+        }, 
+        { &fix_fields[849].hf_id, 
+            { "ShortSaleReason (853)", "fix.ShortSaleReason",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ShortSaleReason (853)", HFILL }
+        }, 
+        { &fix_fields[850].hf_id, 
+            { "QtyType (854)", "fix.QtyType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "QtyType (854)", HFILL }
+        }, 
+        { &fix_fields[851].hf_id, 
+            { "SecondaryTrdType (855)", "fix.SecondaryTrdType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecondaryTrdType (855)", HFILL }
+        }, 
+        { &fix_fields[852].hf_id, 
+            { "TradeReportType (856)", "fix.TradeReportType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TradeReportType (856)", HFILL }
+        }, 
+        { &fix_fields[853].hf_id, 
+            { "AllocNoOrdersType (857)", "fix.AllocNoOrdersType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AllocNoOrdersType (857)", HFILL }
+        }, 
+        { &fix_fields[854].hf_id, 
+            { "SharedCommission (858)", "fix.SharedCommission",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SharedCommission (858)", HFILL }
+        }, 
+        { &fix_fields[855].hf_id, 
+            { "ConfirmReqID (859)", "fix.ConfirmReqID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ConfirmReqID (859)", HFILL }
+        }, 
+        { &fix_fields[856].hf_id, 
+            { "AvgParPx (860)", "fix.AvgParPx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AvgParPx (860)", HFILL }
+        }, 
+        { &fix_fields[857].hf_id, 
+            { "ReportedPx (861)", "fix.ReportedPx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "ReportedPx (861)", HFILL }
+        }, 
+        { &fix_fields[858].hf_id, 
+            { "NoCapacities (862)", "fix.NoCapacities",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoCapacities (862)", HFILL }
+        }, 
+        { &fix_fields[859].hf_id, 
+            { "OrderCapacityQty (863)", "fix.OrderCapacityQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "OrderCapacityQty (863)", HFILL }
+        }, 
+        { &fix_fields[860].hf_id, 
+            { "NoEvents (864)", "fix.NoEvents",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoEvents (864)", HFILL }
+        }, 
+        { &fix_fields[861].hf_id, 
+            { "EventType (865)", "fix.EventType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EventType (865)", HFILL }
+        }, 
+        { &fix_fields[862].hf_id, 
+            { "EventDate (866)", "fix.EventDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EventDate (866)", HFILL }
+        }, 
+        { &fix_fields[863].hf_id, 
+            { "EventPx (867)", "fix.EventPx",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EventPx (867)", HFILL }
+        }, 
+        { &fix_fields[864].hf_id, 
+            { "EventText (868)", "fix.EventText",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EventText (868)", HFILL }
+        }, 
+        { &fix_fields[865].hf_id, 
+            { "PctAtRisk (869)", "fix.PctAtRisk",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "PctAtRisk (869)", HFILL }
+        }, 
+        { &fix_fields[866].hf_id, 
+            { "NoInstrAttrib (870)", "fix.NoInstrAttrib",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoInstrAttrib (870)", HFILL }
+        }, 
+        { &fix_fields[867].hf_id, 
+            { "InstrAttribType (871)", "fix.InstrAttribType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "InstrAttribType (871)", HFILL }
+        }, 
+        { &fix_fields[868].hf_id, 
+            { "InstrAttribValue (872)", "fix.InstrAttribValue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "InstrAttribValue (872)", HFILL }
+        }, 
+        { &fix_fields[869].hf_id, 
+            { "DatedDate (873)", "fix.DatedDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DatedDate (873)", HFILL }
+        }, 
+        { &fix_fields[870].hf_id, 
+            { "InterestAccrualDate (874)", "fix.InterestAccrualDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "InterestAccrualDate (874)", HFILL }
+        }, 
+        { &fix_fields[871].hf_id, 
+            { "CPProgram (875)", "fix.CPProgram",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CPProgram (875)", HFILL }
+        }, 
+        { &fix_fields[872].hf_id, 
+            { "CPRegType (876)", "fix.CPRegType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CPRegType (876)", HFILL }
+        }, 
+        { &fix_fields[873].hf_id, 
+            { "UnderlyingCPProgram (877)", "fix.UnderlyingCPProgram",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingCPProgram (877)", HFILL }
+        }, 
+        { &fix_fields[874].hf_id, 
+            { "UnderlyingCPRegType (878)", "fix.UnderlyingCPRegType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingCPRegType (878)", HFILL }
+        }, 
+        { &fix_fields[875].hf_id, 
+            { "UnderlyingQty (879)", "fix.UnderlyingQty",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingQty (879)", HFILL }
+        }, 
+        { &fix_fields[876].hf_id, 
+            { "TrdMatchID (880)", "fix.TrdMatchID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TrdMatchID (880)", HFILL }
+        }, 
+        { &fix_fields[877].hf_id, 
+            { "SecondaryTradeReportRefID (881)", "fix.SecondaryTradeReportRefID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "SecondaryTradeReportRefID (881)", HFILL }
+        }, 
+        { &fix_fields[878].hf_id, 
+            { "UnderlyingDirtyPrice (882)", "fix.UnderlyingDirtyPrice",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingDirtyPrice (882)", HFILL }
+        }, 
+        { &fix_fields[879].hf_id, 
+            { "UnderlyingEndPrice (883)", "fix.UnderlyingEndPrice",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingEndPrice (883)", HFILL }
+        }, 
+        { &fix_fields[880].hf_id, 
+            { "UnderlyingStartValue (884)", "fix.UnderlyingStartValue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingStartValue (884)", HFILL }
+        }, 
+        { &fix_fields[881].hf_id, 
+            { "UnderlyingCurrentValue (885)", "fix.UnderlyingCurrentValue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingCurrentValue (885)", HFILL }
+        }, 
+        { &fix_fields[882].hf_id, 
+            { "UnderlyingEndValue (886)", "fix.UnderlyingEndValue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingEndValue (886)", HFILL }
+        }, 
+        { &fix_fields[883].hf_id, 
+            { "NoUnderlyingStips (887)", "fix.NoUnderlyingStips",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoUnderlyingStips (887)", HFILL }
+        }, 
+        { &fix_fields[884].hf_id, 
+            { "UnderlyingStipType (888)", "fix.UnderlyingStipType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingStipType (888)", HFILL }
+        }, 
+        { &fix_fields[885].hf_id, 
+            { "UnderlyingStipValue (889)", "fix.UnderlyingStipValue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingStipValue (889)", HFILL }
+        }, 
+        { &fix_fields[886].hf_id, 
+            { "MaturityNetMoney (890)", "fix.MaturityNetMoney",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MaturityNetMoney (890)", HFILL }
+        }, 
+        { &fix_fields[887].hf_id, 
+            { "MiscFeeBasis (891)", "fix.MiscFeeBasis",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MiscFeeBasis (891)", HFILL }
+        }, 
+        { &fix_fields[888].hf_id, 
+            { "TotNoAllocs (892)", "fix.TotNoAllocs",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TotNoAllocs (892)", HFILL }
+        }, 
+        { &fix_fields[889].hf_id, 
+            { "LastFragment (893)", "fix.LastFragment",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LastFragment (893)", HFILL }
+        }, 
+        { &fix_fields[890].hf_id, 
+            { "CollReqID (894)", "fix.CollReqID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CollReqID (894)", HFILL }
+        }, 
+        { &fix_fields[891].hf_id, 
+            { "CollAsgnReason (895)", "fix.CollAsgnReason",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CollAsgnReason (895)", HFILL }
+        }, 
+        { &fix_fields[892].hf_id, 
+            { "CollInquiryQualifier (896)", "fix.CollInquiryQualifier",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CollInquiryQualifier (896)", HFILL }
+        }, 
+        { &fix_fields[893].hf_id, 
+            { "NoTrades (897)", "fix.NoTrades",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoTrades (897)", HFILL }
+        }, 
+        { &fix_fields[894].hf_id, 
+            { "MarginRatio (898)", "fix.MarginRatio",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MarginRatio (898)", HFILL }
+        }, 
+        { &fix_fields[895].hf_id, 
+            { "MarginExcess (899)", "fix.MarginExcess",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "MarginExcess (899)", HFILL }
+        }, 
+        { &fix_fields[896].hf_id, 
+            { "TotalNetValue (900)", "fix.TotalNetValue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TotalNetValue (900)", HFILL }
+        }, 
+        { &fix_fields[897].hf_id, 
+            { "CashOutstanding (901)", "fix.CashOutstanding",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CashOutstanding (901)", HFILL }
+        }, 
+        { &fix_fields[898].hf_id, 
+            { "CollAsgnID (902)", "fix.CollAsgnID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CollAsgnID (902)", HFILL }
+        }, 
+        { &fix_fields[899].hf_id, 
+            { "CollAsgnTransType (903)", "fix.CollAsgnTransType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CollAsgnTransType (903)", HFILL }
+        }, 
+        { &fix_fields[900].hf_id, 
+            { "CollRespID (904)", "fix.CollRespID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CollRespID (904)", HFILL }
+        }, 
+        { &fix_fields[901].hf_id, 
+            { "CollAsgnRespType (905)", "fix.CollAsgnRespType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CollAsgnRespType (905)", HFILL }
+        }, 
+        { &fix_fields[902].hf_id, 
+            { "CollAsgnRejectReason (906)", "fix.CollAsgnRejectReason",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CollAsgnRejectReason (906)", HFILL }
+        }, 
+        { &fix_fields[903].hf_id, 
+            { "CollAsgnRefID (907)", "fix.CollAsgnRefID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CollAsgnRefID (907)", HFILL }
+        }, 
+        { &fix_fields[904].hf_id, 
+            { "CollRptID (908)", "fix.CollRptID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CollRptID (908)", HFILL }
+        }, 
+        { &fix_fields[905].hf_id, 
+            { "CollInquiryID (909)", "fix.CollInquiryID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CollInquiryID (909)", HFILL }
+        }, 
+        { &fix_fields[906].hf_id, 
+            { "CollStatus (910)", "fix.CollStatus",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CollStatus (910)", HFILL }
+        }, 
+        { &fix_fields[907].hf_id, 
+            { "TotNumReports (911)", "fix.TotNumReports",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TotNumReports (911)", HFILL }
+        }, 
+        { &fix_fields[908].hf_id, 
+            { "LastRptRequested (912)", "fix.LastRptRequested",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LastRptRequested (912)", HFILL }
+        }, 
+        { &fix_fields[909].hf_id, 
+            { "AgreementDesc (913)", "fix.AgreementDesc",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AgreementDesc (913)", HFILL }
+        }, 
+        { &fix_fields[910].hf_id, 
+            { "AgreementID (914)", "fix.AgreementID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AgreementID (914)", HFILL }
+        }, 
+        { &fix_fields[911].hf_id, 
+            { "AgreementDate (915)", "fix.AgreementDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AgreementDate (915)", HFILL }
+        }, 
+        { &fix_fields[912].hf_id, 
+            { "StartDate (916)", "fix.StartDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "StartDate (916)", HFILL }
+        }, 
+        { &fix_fields[913].hf_id, 
+            { "EndDate (917)", "fix.EndDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EndDate (917)", HFILL }
+        }, 
+        { &fix_fields[914].hf_id, 
+            { "AgreementCurrency (918)", "fix.AgreementCurrency",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AgreementCurrency (918)", HFILL }
+        }, 
+        { &fix_fields[915].hf_id, 
+            { "DeliveryType (919)", "fix.DeliveryType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "DeliveryType (919)", HFILL }
+        }, 
+        { &fix_fields[916].hf_id, 
+            { "EndAccruedInterestAmt (920)", "fix.EndAccruedInterestAmt",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EndAccruedInterestAmt (920)", HFILL }
+        }, 
+        { &fix_fields[917].hf_id, 
+            { "StartCash (921)", "fix.StartCash",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "StartCash (921)", HFILL }
+        }, 
+        { &fix_fields[918].hf_id, 
+            { "EndCash (922)", "fix.EndCash",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "EndCash (922)", HFILL }
+        }, 
+        { &fix_fields[919].hf_id, 
+            { "UserRequestID (923)", "fix.UserRequestID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UserRequestID (923)", HFILL }
+        }, 
+        { &fix_fields[920].hf_id, 
+            { "UserRequestType (924)", "fix.UserRequestType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UserRequestType (924)", HFILL }
+        }, 
+        { &fix_fields[921].hf_id, 
+            { "NewPassword (925)", "fix.NewPassword",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NewPassword (925)", HFILL }
+        }, 
+        { &fix_fields[922].hf_id, 
+            { "UserStatus (926)", "fix.UserStatus",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UserStatus (926)", HFILL }
+        }, 
+        { &fix_fields[923].hf_id, 
+            { "UserStatusText (927)", "fix.UserStatusText",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UserStatusText (927)", HFILL }
+        }, 
+        { &fix_fields[924].hf_id, 
+            { "StatusValue (928)", "fix.StatusValue",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "StatusValue (928)", HFILL }
+        }, 
+        { &fix_fields[925].hf_id, 
+            { "StatusText (929)", "fix.StatusText",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "StatusText (929)", HFILL }
+        }, 
+        { &fix_fields[926].hf_id, 
+            { "RefCompID (930)", "fix.RefCompID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RefCompID (930)", HFILL }
+        }, 
+        { &fix_fields[927].hf_id, 
+            { "RefSubID (931)", "fix.RefSubID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "RefSubID (931)", HFILL }
+        }, 
+        { &fix_fields[928].hf_id, 
+            { "NetworkResponseID (932)", "fix.NetworkResponseID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NetworkResponseID (932)", HFILL }
+        }, 
+        { &fix_fields[929].hf_id, 
+            { "NetworkRequestID (933)", "fix.NetworkRequestID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NetworkRequestID (933)", HFILL }
+        }, 
+        { &fix_fields[930].hf_id, 
+            { "LastNetworkResponseID (934)", "fix.LastNetworkResponseID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LastNetworkResponseID (934)", HFILL }
+        }, 
+        { &fix_fields[931].hf_id, 
+            { "NetworkRequestType (935)", "fix.NetworkRequestType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NetworkRequestType (935)", HFILL }
+        }, 
+        { &fix_fields[932].hf_id, 
+            { "NoCompIDs (936)", "fix.NoCompIDs",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoCompIDs (936)", HFILL }
+        }, 
+        { &fix_fields[933].hf_id, 
+            { "NetworkStatusResponseType (937)", "fix.NetworkStatusResponseType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NetworkStatusResponseType (937)", HFILL }
+        }, 
+        { &fix_fields[934].hf_id, 
+            { "NoCollInquiryQualifier (938)", "fix.NoCollInquiryQualifier",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoCollInquiryQualifier (938)", HFILL }
+        }, 
+        { &fix_fields[935].hf_id, 
+            { "TrdRptStatus (939)", "fix.TrdRptStatus",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TrdRptStatus (939)", HFILL }
+        }, 
+        { &fix_fields[936].hf_id, 
+            { "AffirmStatus (940)", "fix.AffirmStatus",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "AffirmStatus (940)", HFILL }
+        }, 
+        { &fix_fields[937].hf_id, 
+            { "UnderlyingStrikeCurrency (941)", "fix.UnderlyingStrikeCurrency",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "UnderlyingStrikeCurrency (941)", HFILL }
+        }, 
+        { &fix_fields[938].hf_id, 
+            { "LegStrikeCurrency (942)", "fix.LegStrikeCurrency",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegStrikeCurrency (942)", HFILL }
+        }, 
+        { &fix_fields[939].hf_id, 
+            { "TimeBracket (943)", "fix.TimeBracket",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "TimeBracket (943)", HFILL }
+        }, 
+        { &fix_fields[940].hf_id, 
+            { "CollAction (944)", "fix.CollAction",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CollAction (944)", HFILL }
+        }, 
+        { &fix_fields[941].hf_id, 
+            { "CollInquiryStatus (945)", "fix.CollInquiryStatus",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CollInquiryStatus (945)", HFILL }
+        }, 
+        { &fix_fields[942].hf_id, 
+            { "CollInquiryResult (946)", "fix.CollInquiryResult",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "CollInquiryResult (946)", HFILL }
+        }, 
+        { &fix_fields[943].hf_id, 
+            { "StrikeCurrency (947)", "fix.StrikeCurrency",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "StrikeCurrency (947)", HFILL }
+        }, 
+        { &fix_fields[944].hf_id, 
+            { "NoNested3PartyIDs (948)", "fix.NoNested3PartyIDs",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoNested3PartyIDs (948)", HFILL }
+        }, 
+        { &fix_fields[945].hf_id, 
+            { "Nested3PartyID (949)", "fix.Nested3PartyID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Nested3PartyID (949)", HFILL }
+        }, 
+        { &fix_fields[946].hf_id, 
+            { "Nested3PartyIDSource (950)", "fix.Nested3PartyIDSource",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Nested3PartyIDSource (950)", HFILL }
+        }, 
+        { &fix_fields[947].hf_id, 
+            { "Nested3PartyRole (951)", "fix.Nested3PartyRole",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Nested3PartyRole (951)", HFILL }
+        }, 
+        { &fix_fields[948].hf_id, 
+            { "NoNested3PartySubIDs (952)", "fix.NoNested3PartySubIDs",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "NoNested3PartySubIDs (952)", HFILL }
+        }, 
+        { &fix_fields[949].hf_id, 
+            { "Nested3PartySubID (953)", "fix.Nested3PartySubID",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Nested3PartySubID (953)", HFILL }
+        }, 
+        { &fix_fields[950].hf_id, 
+            { "Nested3PartySubIDType (954)", "fix.Nested3PartySubIDType",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "Nested3PartySubIDType (954)", HFILL }
+        }, 
+        { &fix_fields[951].hf_id, 
+            { "LegContractSettlMonth (955)", "fix.LegContractSettlMonth",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegContractSettlMonth (955)", HFILL }
+        }, 
+        { &fix_fields[952].hf_id, 
+            { "LegInterestAccrualDate (956)", "fix.LegInterestAccrualDate",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "LegInterestAccrualDate (956)", HFILL }
+        },
+  };
+
+#define FIX_40 140
+#define FIX_41 211
+#define FIX_42 446
+#define FIX_43 659
+#define FIX_44 956
index 0990d8ef9098f5a6d950d883fc22d30e179491dd..e74ea6ceeef68722af296419f62bce31799af4bd 100644 (file)
@@ -31,6 +31,7 @@
 #include "to_str.h"
 #include "emem.h"
 #include "value_string.h"
+#include <string.h>
 
 /* Tries to match val against each element in the value_string array vs.
    Returns the associated string ptr on a match.
@@ -77,6 +78,51 @@ match_strval(guint32 val, const value_string *vs) {
     return match_strval_idx(val, vs, &ignore_me);
 }
 
+/* Tries to match val against each element in the value_string array vs.
+   Returns the associated string ptr on a match.
+   Formats val with fmt, and returns the resulting string, on failure. */
+const gchar*
+str_to_str(const gchar *val, const string_string *vs, const char *fmt) {
+  const gchar *ret;
+
+  g_assert(fmt != NULL);
+
+  ret = match_strstr(val, vs);
+  if (ret != NULL)
+    return ret;
+
+  return ep_strdup_printf(fmt, val);
+}
+
+/* Tries to match val against each element in the value_string array vs.
+   Returns the associated string ptr, and sets "*idx" to the index in
+   that table, on a match, and returns NULL, and sets "*idx" to -1,
+   on failure. */
+const gchar*
+match_strstr_idx(const gchar *val, const string_string *vs, gint *idx) {
+  gint i = 0;
+
+  if(vs) {
+    while (vs[i].strptr) {
+      if (!strcmp(vs[i].value,val)) {
+        *idx = i;
+        return(vs[i].strptr);
+      }
+      i++;
+    }
+  }
+
+  *idx = -1;
+  return NULL;
+}
+
+/* Like match_strval_idx(), but doesn't return the index. */
+const gchar*
+match_strstr(const gchar *val, const string_string *vs) {
+    gint ignore_me;
+    return match_strstr_idx(val, vs, &ignore_me);
+}
+
 /* Generate a string describing an enumerated bitfield (an N-bit field
    with various specific values having particular names). */
 const char *
index 546e8a78004d2d283cbfdaf607d948dec95b06a1..3fc92c9bf369b24478ac56b36eb66e930bf2af8a 100644 (file)
@@ -34,6 +34,13 @@ typedef struct _value_string {
   const gchar   *strptr;
 } value_string;
 
+/* Struct for the str_to_str, match_strstr_idx, and match_strstr functions */
+
+typedef struct _string_string {
+  const gchar   *value;
+  const gchar   *strptr;
+} string_string;
+
 /* Struct for the rval_to_str, match_strrval_idx, and match_strrval functions */
 typedef struct _range_string {
   guint32        value_min;
@@ -58,6 +65,20 @@ extern const gchar* match_strval(guint32 val, const value_string *vs);
    Formats val with fmt, and returns the resulting string, on failure. */
 extern const gchar* val_to_str(guint32 val, const value_string *vs, const char *fmt);
 
+/* Tries to match val against each element in the value_string array vs.
+   Returns the associated string ptr, and sets "*idx" to the index in
+   that table, on a match, and returns NULL, and sets "*idx" to -1,
+   on failure. */
+extern const gchar* match_strstr_idx(const gchar *val, const string_string *vs, gint *idx);
+
+/* Like match_strval_idx(), but doesn't return the index. */
+extern const gchar* match_strstr(const gchar *val, const string_string *vs);
+
+/* Tries to match val against each element in the value_string array vs.
+   Returns the associated string ptr on a match.
+   Formats val with fmt, and returns the resulting string, on failure. */
+extern const gchar* str_to_str(const gchar *val, const string_string *vs, const char *fmt);
+
 /* Generate a string describing an enumerated bitfield (an N-bit field
    with various specific values having particular names). */
 extern const char *decode_enumerated_bitfield(guint32 val, guint32 mask,
diff --git a/fix/FIX.xml b/fix/FIX.xml
new file mode 100644 (file)
index 0000000..8d18df3
--- /dev/null
@@ -0,0 +1,6784 @@
+<fix major="4" minor="4">
+  <header>
+    <field name="BeginString" required="Y" />
+    <field name="BodyLength" required="Y" />
+    <field name="MsgType" required="Y" />
+    <field name="SenderCompID" required="Y" />
+    <field name="TargetCompID" required="Y" />
+    <field name="OnBehalfOfCompID" required="N" />
+    <field name="DeliverToCompID" required="N" />
+    <field name="SecureDataLen" required="N" />
+    <field name="SecureData" required="N" />
+    <field name="MsgSeqNum" required="Y" />
+    <field name="SenderSubID" required="N" />
+    <field name="SenderLocationID" required="N" />
+    <field name="TargetSubID" required="N" />
+    <field name="TargetLocationID" required="N" />
+    <field name="OnBehalfOfSubID" required="N" />
+    <field name="OnBehalfOfLocationID" required="N" />
+    <field name="DeliverToSubID" required="N" />
+    <field name="DeliverToLocationID" required="N" />
+    <field name="PossDupFlag" required="N" />
+    <field name="PossResend" required="N" />
+    <field name="SendingTime" required="Y" />
+    <field name="OrigSendingTime" required="N" />
+    <field name="XmlDataLen" required="N" />
+    <field name="XmlData" required="N" />
+    <field name="MessageEncoding" required="N" />
+    <field name="LastMsgSeqNumProcessed" required="N" />
+    <group name="NoHops" required="N">
+      <field name="HopCompID" required="N" />
+      <field name="HopSendingTime" required="N" />
+      <field name="HopRefID" required="N" />
+    </group>
+  </header>
+  <trailer>
+    <field name="SignatureLength" required="N" />
+    <field name="Signature" required="N" />
+    <field name="CheckSum" required="Y" />
+  </trailer>
+  <messages>
+    <message name="Heartbeat" msgtype="0" msgcat="admin">
+      <field name="TestReqID" required="N" />
+    </message>
+    <message name="Logon" msgtype="A" msgcat="admin">
+      <field name="EncryptMethod" required="Y" />
+      <field name="HeartBtInt" required="Y" />
+      <field name="RawDataLength" required="N" />
+      <field name="RawData" required="N" />
+      <field name="ResetSeqNumFlag" required="N" />
+      <field name="NextExpectedMsgSeqNum" required="N" />
+      <field name="MaxMessageSize" required="N" />
+      <group name="NoMsgTypes" required="N">
+        <field name="RefMsgType" required="N" />
+        <field name="MsgDirection" required="N" />
+      </group>
+      <field name="TestMessageIndicator" required="N" />
+      <field name="Username" required="N" />
+      <field name="Password" required="N" />
+    </message>
+    <message name="TestRequest" msgtype="1" msgcat="admin">
+      <field name="TestReqID" required="Y" />
+    </message>
+    <message name="ResendRequest" msgtype="2" msgcat="admin">
+      <field name="BeginSeqNo" required="Y" />
+      <field name="EndSeqNo" required="Y" />
+    </message>
+    <message name="Reject" msgtype="3" msgcat="admin">
+      <field name="RefSeqNum" required="Y" />
+      <field name="RefTagID" required="N" />
+      <field name="RefMsgType" required="N" />
+      <field name="SessionRejectReason" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="SequenceReset" msgtype="4" msgcat="admin">
+      <field name="GapFillFlag" required="N" />
+      <field name="NewSeqNo" required="Y" />
+    </message>
+    <message name="Logout" msgtype="5" msgcat="admin">
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="BusinessMessageReject" msgtype="j" msgcat="app">
+      <field name="RefSeqNum" required="N" />
+      <field name="RefMsgType" required="Y" />
+      <field name="BusinessRejectRefID" required="N" />
+      <field name="BusinessRejectReason" required="Y" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="UserRequest" msgtype="BE" msgcat="app">
+      <field name="UserRequestID" required="Y" />
+      <field name="UserRequestType" required="Y" />
+      <field name="Username" required="Y" />
+      <field name="Password" required="N" />
+      <field name="NewPassword" required="N" />
+      <field name="RawDataLength" required="N" />
+      <field name="RawData" required="N" />
+    </message>
+    <message name="UserResponse" msgtype="BF" msgcat="app">
+      <field name="UserRequestID" required="Y" />
+      <field name="Username" required="Y" />
+      <field name="UserStatus" required="N" />
+      <field name="UserStatusText" required="N" />
+    </message>
+    <message name="Advertisement" msgtype="7" msgcat="app">
+      <field name="AdvId" required="Y" />
+      <field name="AdvTransType" required="Y" />
+      <field name="AdvRefID" required="N" />
+      <component name="Instrument" required="Y" />
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+      </group>
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="Y" />
+      </group>
+      <field name="AdvSide" required="Y" />
+      <field name="Quantity" required="Y" />
+      <field name="QtyType" required="N" />
+      <field name="Price" required="N" />
+      <field name="Currency" required="N" />
+      <field name="TradeDate" required="N" />
+      <field name="TransactTime" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="URLLink" required="N" />
+      <field name="LastMkt" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </message>
+    <message name="IndicationOfInterest" msgtype="6" msgcat="app">
+      <field name="IOIid" required="Y" />
+      <field name="IOITransType" required="Y" />
+      <field name="IOIRefID" required="N" />
+      <component name="Instrument" required="Y" />
+      <component name="FinancingDetails" required="N" />
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="N" />
+      </group>
+      <field name="Side" required="Y" />
+      <field name="QtyType" required="N" />
+      <component name="OrderQtyData" required="N" />
+      <field name="IOIQty" required="Y" />
+      <field name="Currency" required="N" />
+      <component name="Stipulations" required="N" />
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+        <field name="LegIOIQty" required="N" />
+        <component name="LegStipulations" required="N" />
+      </group>
+      <field name="PriceType" required="N" />
+      <field name="Price" required="N" />
+      <field name="ValidUntilTime" required="N" />
+      <field name="IOIQltyInd" required="N" />
+      <field name="IOINaturalFlag" required="N" />
+      <group name="NoIOIQualifiers" required="N">
+        <field name="IOIQualifier" required="N" />
+      </group>
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="TransactTime" required="N" />
+      <field name="URLLink" required="N" />
+      <group name="NoRoutingIDs" required="N">
+        <field name="RoutingType" required="N" />
+        <field name="RoutingID" required="N" />
+      </group>
+      <component name="SpreadOrBenchmarkCurveData" required="N" />
+      <component name="YieldData" required="N" />
+    </message>
+    <message name="News" msgtype="B" msgcat="app">
+      <field name="OrigTime" required="N" />
+      <field name="Urgency" required="N" />
+      <field name="Headline" required="Y" />
+      <field name="EncodedHeadlineLen" required="N" />
+      <field name="EncodedHeadline" required="N" />
+      <group name="NoRoutingIDs" required="N">
+        <field name="RoutingType" required="N" />
+        <field name="RoutingID" required="N" />
+      </group>
+      <group name="NoRelatedSym" required="N">
+        <component name="Instrument" required="N" />
+      </group>
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+      </group>
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="N" />
+      </group>
+      <group name="LinesOfText" required="Y">
+        <field name="Text" required="Y" />
+        <field name="EncodedTextLen" required="N" />
+        <field name="EncodedText" required="N" />
+      </group>
+      <field name="URLLink" required="N" />
+      <field name="RawDataLength" required="N" />
+      <field name="RawData" required="N" />
+    </message>
+    <message name="Email" msgtype="C" msgcat="app">
+      <field name="EmailThreadID" required="Y" />
+      <field name="EmailType" required="Y" />
+      <field name="OrigTime" required="N" />
+      <field name="Subject" required="Y" />
+      <field name="EncodedSubjectLen" required="N" />
+      <field name="EncodedSubject" required="N" />
+      <group name="NoRoutingIDs" required="N">
+        <field name="RoutingType" required="N" />
+        <field name="RoutingID" required="N" />
+      </group>
+      <group name="NoRelatedSym" required="N">
+        <component name="Instrument" required="N" />
+      </group>
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="N" />
+      </group>
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+      </group>
+      <field name="OrderID" required="N" />
+      <field name="ClOrdID" required="N" />
+      <group name="LinesOfText" required="Y">
+        <field name="Text" required="Y" />
+        <field name="EncodedTextLen" required="N" />
+        <field name="EncodedText" required="N" />
+      </group>
+      <field name="RawDataLength" required="N" />
+      <field name="RawData" required="N" />
+    </message>
+    <message name="QuoteRequest" msgtype="R" msgcat="app">
+      <field name="QuoteReqID" required="Y" />
+      <field name="RFQReqID" required="N" />
+      <field name="ClOrdID" required="N" />
+      <field name="OrderCapacity" required="N" />
+      <group name="NoRelatedSym" required="Y">
+        <component name="Instrument" required="Y" />
+        <component name="FinancingDetails" required="N" />
+        <group name="NoUnderlyings" required="N">
+          <component name="UnderlyingInstrument" required="N" />
+        </group>
+        <field name="PrevClosePx" required="N" />
+        <field name="QuoteRequestType" required="N" />
+        <field name="QuoteType" required="N" />
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+        <field name="TradeOriginationDate" required="N" />
+        <field name="Side" required="N" />
+        <field name="QtyType" required="N" />
+        <component name="OrderQtyData" required="N" />
+        <field name="SettlType" required="N" />
+        <field name="SettlDate" required="N" />
+        <field name="SettlDate2" required="N" />
+        <field name="OrderQty2" required="N" />
+        <field name="Currency" required="N" />
+        <component name="Stipulations" required="N" />
+        <field name="Account" required="N" />
+        <field name="AcctIDSource" required="N" />
+        <field name="AccountType" required="N" />
+        <group name="NoLegs" required="N">
+          <component name="InstrumentLeg" required="N" />
+          <field name="LegQty" required="N" />
+          <field name="LegSwapType" required="N" />
+          <field name="LegSettlType" required="N" />
+          <field name="LegSettlDate" required="N" />
+          <component name="LegStipulations" required="N" />
+          <component name="NestedParties" required="N" />
+          <component name="LegBenchmarkCurveData" required="N" />
+        </group>
+        <group name="NoQuoteQualifiers" required="N">
+          <field name="QuoteQualifier" required="N" />
+        </group>
+        <field name="QuotePriceType" required="N" />
+        <field name="OrdType" required="N" />
+        <field name="ValidUntilTime" required="N" />
+        <field name="ExpireTime" required="N" />
+        <field name="TransactTime" required="N" />
+        <component name="SpreadOrBenchmarkCurveData" required="N" />
+        <field name="PriceType" required="N" />
+        <field name="Price" required="N" />
+        <field name="Price2" required="N" />
+        <component name="YieldData" required="N" />
+        <component name="Parties" required="N" />
+      </group>
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="QuoteResponse" msgtype="AJ" msgcat="app">
+      <field name="QuoteRespID" required="Y" />
+      <field name="QuoteID" required="N" />
+      <field name="QuoteRespType" required="Y" />
+      <field name="ClOrdID" required="N" />
+      <field name="OrderCapacity" required="N" />
+      <field name="IOIid" required="N" />
+      <field name="QuoteType" required="N" />
+      <group name="NoQuoteQualifiers" required="N">
+        <field name="QuoteQualifier" required="N" />
+      </group>
+      <component name="Parties" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <component name="Instrument" required="Y" />
+      <component name="FinancingDetails" required="N" />
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="N" />
+      </group>
+      <field name="Side" required="N" />
+      <component name="OrderQtyData" required="N" />
+      <field name="SettlType" required="N" />
+      <field name="SettlDate" required="N" />
+      <field name="SettlDate2" required="N" />
+      <field name="OrderQty2" required="N" />
+      <field name="Currency" required="N" />
+      <component name="Stipulations" required="N" />
+      <field name="Account" required="N" />
+      <field name="AcctIDSource" required="N" />
+      <field name="AccountType" required="N" />
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+        <field name="LegQty" required="N" />
+        <field name="LegSwapType" required="N" />
+        <field name="LegSettlType" required="N" />
+        <field name="LegSettlDate" required="N" />
+        <component name="LegStipulations" required="N" />
+        <component name="NestedParties" required="N" />
+        <field name="LegPriceType" required="N" />
+        <field name="LegBidPx" required="N" />
+        <field name="LegOfferPx" required="N" />
+        <component name="LegBenchmarkCurveData" required="N" />
+      </group>
+      <field name="BidPx" required="N" />
+      <field name="OfferPx" required="N" />
+      <field name="MktBidPx" required="N" />
+      <field name="MktOfferPx" required="N" />
+      <field name="MinBidSize" required="N" />
+      <field name="BidSize" required="N" />
+      <field name="MinOfferSize" required="N" />
+      <field name="OfferSize" required="N" />
+      <field name="ValidUntilTime" required="N" />
+      <field name="BidSpotRate" required="N" />
+      <field name="OfferSpotRate" required="N" />
+      <field name="BidForwardPoints" required="N" />
+      <field name="OfferForwardPoints" required="N" />
+      <field name="MidPx" required="N" />
+      <field name="BidYield" required="N" />
+      <field name="MidYield" required="N" />
+      <field name="OfferYield" required="N" />
+      <field name="TransactTime" required="N" />
+      <field name="OrdType" required="N" />
+      <field name="BidForwardPoints2" required="N" />
+      <field name="OfferForwardPoints2" required="N" />
+      <field name="SettlCurrBidFxRate" required="N" />
+      <field name="SettlCurrOfferFxRate" required="N" />
+      <field name="SettlCurrFxRateCalc" required="N" />
+      <field name="Commission" required="N" />
+      <field name="CommType" required="N" />
+      <field name="CustOrderCapacity" required="N" />
+      <field name="ExDestination" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="Price" required="N" />
+      <field name="PriceType" required="N" />
+      <component name="SpreadOrBenchmarkCurveData" required="N" />
+      <component name="YieldData" required="N" />
+    </message>
+    <message name="QuoteRequestReject" msgtype="AG" msgcat="app">
+      <field name="QuoteReqID" required="Y" />
+      <field name="RFQReqID" required="N" />
+      <field name="QuoteRequestRejectReason" required="Y" />
+      <group name="NoRelatedSym" required="Y">
+        <component name="Instrument" required="Y" />
+        <component name="FinancingDetails" required="N" />
+        <group name="NoUnderlyings" required="N">
+          <component name="UnderlyingInstrument" required="N" />
+        </group>
+        <field name="PrevClosePx" required="N" />
+        <field name="QuoteRequestType" required="N" />
+        <field name="QuoteType" required="N" />
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+        <field name="TradeOriginationDate" required="N" />
+        <field name="Side" required="N" />
+        <field name="QtyType" required="N" />
+        <component name="OrderQtyData" required="N" />
+        <field name="SettlType" required="N" />
+        <field name="SettlDate" required="N" />
+        <field name="SettlDate2" required="N" />
+        <field name="OrderQty2" required="N" />
+        <field name="Currency" required="N" />
+        <component name="Stipulations" required="N" />
+        <field name="Account" required="N" />
+        <field name="AcctIDSource" required="N" />
+        <field name="AccountType" required="N" />
+        <group name="NoLegs" required="N">
+          <component name="InstrumentLeg" required="N" />
+          <field name="LegQty" required="N" />
+          <field name="LegSwapType" required="N" />
+          <field name="LegSettlType" required="N" />
+          <field name="LegSettlDate" required="N" />
+          <component name="LegStipulations" required="N" />
+          <component name="NestedParties" required="N" />
+          <component name="LegBenchmarkCurveData" required="N" />
+          </group>
+        </group>
+        <group name="NoQuoteQualifiers" required="N">
+          <field name="QuoteQualifier" required="N" />
+        </group>
+        <field name="QuotePriceType" required="N" />
+        <field name="OrdType" required="N" />
+        <field name="ExpireTime" required="N" />
+        <field name="TransactTime" required="N" />
+        <component name="SpreadOrBenchmarkCurveData" required="N" />
+        <field name="PriceType" required="N" />
+        <field name="Price" required="N" />
+        <field name="Price2" required="N" />
+        <component name="YieldData" required="N" />
+        <component name="Parties" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="RFQRequest" msgtype="AH" msgcat="app">
+      <field name="RFQReqID" required="Y" />
+      <group name="NoRelatedSym" required="Y">
+        <component name="Instrument" required="Y" />
+        <group name="NoUnderlyings" required="N">
+          <component name="UnderlyingInstrument" required="N" />
+        </group>
+        <group name="NoLegs" required="N">
+          <component name="InstrumentLeg" required="N" />
+        </group>
+        <field name="PrevClosePx" required="N" />
+        <field name="QuoteRequestType" required="N" />
+        <field name="QuoteType" required="N" />
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+      </group>
+      <field name="SubscriptionRequestType" required="N" />
+    </message>
+    <message name="Quote" msgtype="S" msgcat="app">
+      <field name="QuoteReqID" required="N" />
+      <field name="QuoteID" required="Y" />
+      <field name="QuoteRespID" required="N" />
+      <field name="QuoteType" required="N" />
+      <group name="NoQuoteQualifiers" required="N">
+        <field name="QuoteQualifier" required="N" />
+      </group>
+      <field name="QuoteResponseLevel" required="N" />
+      <component name="Parties" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <component name="Instrument" required="Y" />
+      <component name="FinancingDetails" required="N" />
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="N" />
+      </group>
+      <field name="Side" required="N" />
+      <component name="OrderQtyData" required="N" />
+      <field name="SettlType" required="N" />
+      <field name="SettlDate" required="N" />
+      <field name="SettlDate2" required="N" />
+      <field name="OrderQty2" required="N" />
+      <field name="Currency" required="N" />
+      <component name="Stipulations" required="N" />
+      <field name="Account" required="N" />
+      <field name="AcctIDSource" required="N" />
+      <field name="AccountType" required="N" />
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+        <field name="LegQty" required="N" />
+        <field name="LegSwapType" required="N" />
+        <field name="LegSettlType" required="N" />
+        <field name="LegSettlDate" required="N" />
+        <component name="LegStipulations" required="N" />
+        <component name="NestedParties" required="N" />
+        <field name="LegPriceType" required="N" />
+        <field name="LegBidPx" required="N" />
+        <field name="LegOfferPx" required="N" />
+        <component name="LegBenchmarkCurveData" required="N" />
+      </group>
+      <field name="BidPx" required="N" />
+      <field name="OfferPx" required="N" />
+      <field name="MktBidPx" required="N" />
+      <field name="MktOfferPx" required="N" />
+      <field name="MinBidSize" required="N" />
+      <field name="BidSize" required="N" />
+      <field name="MinOfferSize" required="N" />
+      <field name="OfferSize" required="N" />
+      <field name="ValidUntilTime" required="N" />
+      <field name="BidSpotRate" required="N" />
+      <field name="OfferSpotRate" required="N" />
+      <field name="BidForwardPoints" required="N" />
+      <field name="OfferForwardPoints" required="N" />
+      <field name="MidPx" required="N" />
+      <field name="BidYield" required="N" />
+      <field name="MidYield" required="N" />
+      <field name="OfferYield" required="N" />
+      <field name="TransactTime" required="N" />
+      <field name="OrdType" required="N" />
+      <field name="BidForwardPoints2" required="N" />
+      <field name="OfferForwardPoints2" required="N" />
+      <field name="SettlCurrBidFxRate" required="N" />
+      <field name="SettlCurrOfferFxRate" required="N" />
+      <field name="SettlCurrFxRateCalc" required="N" />
+      <field name="CommType" required="N" />
+      <field name="Commission" required="N" />
+      <field name="CustOrderCapacity" required="N" />
+      <field name="ExDestination" required="N" />
+      <field name="OrderCapacity" required="N" />
+      <field name="PriceType" required="N" />
+      <component name="SpreadOrBenchmarkCurveData" required="N" />
+      <component name="YieldData" required="N" />          
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="QuoteCancel" msgtype="Z" msgcat="app">
+      <field name="QuoteReqID" required="N" />
+      <field name="QuoteID" required="Y" />
+      <field name="QuoteCancelType" required="Y" />
+      <field name="QuoteResponseLevel" required="N" />
+      <component name="Parties" required="N" />
+      <field name="Account" required="N" />
+      <field name="AcctIDSource" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <group name="NoQuoteEntries" required="N">
+        <component name="Instrument" required="N" />
+        <component name="FinancingDetails" required="N" />
+        <group name="NoUnderlyings" required="N">
+          <component name="UnderlyingInstrument" required="N" />
+        </group>
+        <group name="NoLegs" required="N">
+          <component name="InstrumentLeg" required="N" />
+        </group>
+      </group>
+    </message>
+    <message name="QuoteStatusRequest" msgtype="a" msgcat="app">
+      <field name="QuoteStatusReqID" required="N" />
+      <field name="QuoteID" required="N" />
+      <component name="Instrument" required="Y" />
+      <component name="FinancingDetails" required="N" />
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="N" />
+      </group>
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+      </group>
+      <component name="Parties" required="N" />
+      <field name="Account" required="N" />
+      <field name="AcctIDSource" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="SubscriptionRequestType" required="N" />
+    </message>
+    <message name="QuoteStatusReport" msgtype="AI" msgcat="app">
+      <field name="QuoteStatusReqID" required="N" />
+      <field name="QuoteReqID" required="N" />
+      <field name="QuoteID" required="Y" />
+      <field name="QuoteRespID" required="N" />
+      <field name="QuoteType" required="N" />
+      <component name="Parties" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <component name="Instrument" required="Y" />
+      <component name="FinancingDetails" required="N" />
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="N" />
+      </group>
+      <field name="Side" required="N" />
+      <component name="OrderQtyData" required="N" />
+      <field name="SettlType" required="N" />
+      <field name="SettlDate" required="N" />
+      <field name="SettlDate2" required="N" />
+      <field name="OrderQty2" required="N" />
+      <field name="Currency" required="N" />
+      <component name="Stipulations" required="N" />
+      <field name="Account" required="N" />
+      <field name="AcctIDSource" required="N" />
+      <field name="AccountType" required="N" />
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+        <field name="LegQty" required="N" />
+        <field name="LegSwapType" required="N" />
+        <field name="LegSettlType" required="N" />
+        <field name="LegSettlDate" required="N" />
+        <component name="LegStipulations" required="N" />
+        <component name="NestedParties" required="N" />
+      </group>
+      <group name="NoQuoteQualifiers" required="N">
+        <field name="QuoteQualifier" required="N" />
+      </group>
+      <field name="ExpireTime" required="N" />
+      <field name="Price" required="N" />
+      <field name="PriceType" required="N" />
+      <component name="SpreadOrBenchmarkCurveData" required="N" />
+      <component name="YieldData" required="N" />
+      <field name="BidPx" required="N" />
+      <field name="OfferPx" required="N" />
+      <field name="MktBidPx" required="N" />
+      <field name="MktOfferPx" required="N" />
+      <field name="MinBidSize" required="N" />
+      <field name="BidSize" required="N" />
+      <field name="MinOfferSize" required="N" />
+      <field name="OfferSize" required="N" />
+      <field name="ValidUntilTime" required="N" />
+      <field name="BidSpotRate" required="N" />
+      <field name="OfferSpotRate" required="N" />
+      <field name="BidForwardPoints" required="N" />
+      <field name="OfferForwardPoints" required="N" />
+      <field name="MidPx" required="N" />
+      <field name="BidYield" required="N" />
+      <field name="MidYield" required="N" />
+      <field name="OfferYield" required="N" />
+      <field name="TransactTime" required="N" />
+      <field name="OrdType" required="N" />
+      <field name="BidForwardPoints2" required="N" />
+      <field name="OfferForwardPoints2" required="N" />
+      <field name="SettlCurrBidFxRate" required="N" />
+      <field name="SettlCurrOfferFxRate" required="N" />
+      <field name="SettlCurrFxRateCalc" required="N" />
+      <field name="CommType" required="N" />
+      <field name="Commission" required="N" />
+      <field name="CustOrderCapacity" required="N" />
+      <field name="ExDestination" required="N" />
+      <field name="QuoteStatus" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="MassQuote" msgtype="i" msgcat="app">
+      <field name="QuoteReqID" required="N" />
+      <field name="QuoteID" required="Y" />
+      <field name="QuoteType" required="N" />
+      <field name="QuoteResponseLevel" required="N" />
+      <component name="Parties" required="N" />
+      <field name="Account" required="N" />
+      <field name="AcctIDSource" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="DefBidSize" required="N" />
+      <field name="DefOfferSize" required="N" />
+      <group name="NoQuoteSets" required="Y">
+        <field name="QuoteSetID" required="Y" />
+        <component name="UnderlyingInstrument" required="N" />
+        <field name="QuoteSetValidUntilTime" required="N" />
+        <field name="TotNoQuoteEntries" required="Y" />
+        <field name="LastFragment" required="N" />
+        <group name="NoQuoteEntries" required="Y">
+          <field name="QuoteEntryID" required="Y" />
+          <component name="Instrument" required="N" />
+          <group name="NoLegs" required="N">
+            <component name="InstrumentLeg" required="N" />
+          </group>
+          <field name="BidPx" required="N" />
+          <field name="OfferPx" required="N" />
+          <field name="BidSize" required="N" />
+          <field name="OfferSize" required="N" />
+          <field name="ValidUntilTime" required="N" />
+          <field name="BidSpotRate" required="N" />
+          <field name="OfferSpotRate" required="N" />
+          <field name="BidForwardPoints" required="N" />
+          <field name="OfferForwardPoints" required="N" />
+          <field name="MidPx" required="N" />
+          <field name="BidYield" required="N" />
+          <field name="MidYield" required="N" />
+          <field name="OfferYield" required="N" />
+          <field name="TransactTime" required="N" />
+          <field name="TradingSessionID" required="N" />
+          <field name="TradingSessionSubID" required="N" />
+          <field name="SettlDate" required="N" />
+          <field name="OrdType" required="N" />
+          <field name="SettlDate2" required="N" />
+          <field name="OrderQty2" required="N" />
+          <field name="BidForwardPoints2" required="N" />
+          <field name="OfferForwardPoints2" required="N" />
+          <field name="Currency" required="N" />
+        </group>
+      </group>
+    </message>
+  <message name="MassQuoteAcknowledgement" msgtype="b" msgcat="app">
+    <field name="QuoteReqID" required="N" />
+    <field name="QuoteID" required="N" />
+    <field name="QuoteStatus" required="Y" />
+    <field name="QuoteRejectReason" required="N" />
+    <field name="QuoteResponseLevel" required="N" />
+    <field name="QuoteType" required="N" />
+    <component name="Parties" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <group name="NoQuoteSets" required="N">
+      <field name="QuoteSetID" required="N" />
+      <component name="UnderlyingInstrument" required="N" />
+      <field name="TotNoQuoteEntries" required="N" />
+      <field name="LastFragment" required="N" />
+      <group name="NoQuoteEntries" required="N">
+        <field name="QuoteEntryID" required="N" />
+        <component name="Instrument" required="N" />
+        <group name="NoLegs" required="N">
+          <component name="InstrumentLeg" required="N" />
+         </group>
+        <field name="BidPx" required="N" />
+        <field name="OfferPx" required="N" />
+        <field name="BidSize" required="N" />
+        <field name="OfferSize" required="N" />
+        <field name="ValidUntilTime" required="N" />
+        <field name="BidSpotRate" required="N" />
+        <field name="OfferSpotRate" required="N" />
+        <field name="BidForwardPoints" required="N" />
+        <field name="OfferForwardPoints" required="N" />
+        <field name="MidPx" required="N" />
+        <field name="BidYield" required="N" />
+        <field name="MidYield" required="N" />
+        <field name="OfferYield" required="N" />
+        <field name="TransactTime" required="N" />
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+        <field name="SettlDate" required="N" />
+        <field name="OrdType" required="N" />
+        <field name="SettlDate2" required="N" />
+        <field name="OrderQty2" required="N" />
+        <field name="BidForwardPoints2" required="N" />
+        <field name="OfferForwardPoints2" required="N" />
+        <field name="Currency" required="N" />
+        <field name="QuoteEntryRejectReason" required="N" />
+      </group>
+    </group>
+  </message>
+  <message name="MarketDataRequest" msgtype="V" msgcat="app">
+    <field name="MDReqID" required="Y" />
+    <field name="SubscriptionRequestType" required="Y" />
+    <field name="MarketDepth" required="Y" />
+    <field name="MDUpdateType" required="N" />
+    <field name="AggregatedBook" required="N" />
+    <field name="OpenCloseSettlFlag" required="N" />
+    <field name="Scope" required="N" />
+    <field name="MDImplicitDelete" required="N" />
+    <group name="NoMDEntryTypes" required="Y">
+      <field name="MDEntryType" required="Y" />
+    </group>
+    <group name="NoRelatedSym" required="Y">
+      <component name="Instrument" required="Y" />
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="N" />
+      </group>
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+      </group>
+    </group>
+    <group name="NoTradingSessions" required="N">
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </group>
+    <field name="ApplQueueAction" required="N" />
+    <field name="ApplQueueMax" required="N" />
+  </message>
+  <message name="MarketDataSnapshotFullRefresh" msgtype="W" msgcat="app">
+    <field name="MDReqID" required="N" />
+    <component name="Instrument" required="Y" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="FinancialStatus" required="N" />
+    <field name="CorporateAction" required="N" />
+    <field name="NetChgPrevDay" required="N" />
+    <group name="NoMDEntries" required="Y">
+      <field name="MDEntryType" required="Y" />
+      <field name="MDEntryPx" required="N" />
+      <field name="Currency" required="N" />
+      <field name="MDEntrySize" required="N" />
+      <field name="MDEntryDate" required="N" />
+      <field name="MDEntryTime" required="N" />
+      <field name="TickDirection" required="N" />
+      <field name="MDMkt" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="QuoteCondition" required="N" />
+      <field name="TradeCondition" required="N" />
+      <field name="MDEntryOriginator" required="N" />
+      <field name="LocationID" required="N" />
+      <field name="DeskID" required="N" />
+      <field name="OpenCloseSettlFlag" required="N" />
+      <field name="TimeInForce" required="N" />
+      <field name="ExpireDate" required="N" />
+      <field name="ExpireTime" required="N" />
+      <field name="MinQty" required="N" />
+      <field name="ExecInst" required="N" />
+      <field name="SellerDays" required="N" />
+      <field name="OrderID" required="N" />
+      <field name="QuoteEntryID" required="N" />
+      <field name="MDEntryBuyer" required="N" />
+      <field name="MDEntrySeller" required="N" />
+      <field name="NumberOfOrders" required="N" />
+      <field name="MDEntryPositionNo" required="N" />
+      <field name="Scope" required="N" />                
+      <field name="PriceDelta" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </group>
+    <field name="ApplQueueDepth" required="N" />
+    <field name="ApplQueueResolution" required="N" />
+  </message>
+  <message name="MarketDataIncrementalRefresh" msgtype="X" msgcat="app">
+    <field name="MDReqID" required="N" />
+    <group name="NoMDEntries" required="Y">
+      <field name="MDUpdateAction" required="Y" />
+      <field name="DeleteReason" required="N" />
+      <field name="MDEntryType" required="N" />
+      <field name="MDEntryID" required="N" />
+      <field name="MDEntryRefID" required="N" />
+      <component name="Instrument" required="N" />
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="N" />
+      </group>
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+      </group>
+      <field name="FinancialStatus" required="N" />
+      <field name="CorporateAction" required="N" />
+      <field name="MDEntryPx" required="N" />
+      <field name="Currency" required="N" />
+      <field name="MDEntrySize" required="N" />
+      <field name="MDEntryDate" required="N" />
+      <field name="MDEntryTime" required="N" />
+      <field name="TickDirection" required="N" />
+      <field name="MDMkt" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="QuoteCondition" required="N" />
+      <field name="TradeCondition" required="N" />
+      <field name="MDEntryOriginator" required="N" />
+      <field name="LocationID" required="N" />
+      <field name="DeskID" required="N" />
+      <field name="OpenCloseSettlFlag" required="N" />
+      <field name="TimeInForce" required="N" />
+      <field name="ExpireDate" required="N" />
+      <field name="ExpireTime" required="N" />
+      <field name="MinQty" required="N" />
+      <field name="ExecInst" required="N" />
+      <field name="SellerDays" required="N" />
+      <field name="OrderID" required="N" />
+      <field name="QuoteEntryID" required="N" />
+      <field name="MDEntryBuyer" required="N" />
+      <field name="MDEntrySeller" required="N" />
+      <field name="NumberOfOrders" required="N" />
+      <field name="MDEntryPositionNo" required="N" />
+      <field name="Scope" required="N" />
+      <field name="PriceDelta" required="N" />
+      <field name="NetChgPrevDay" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </group>
+    <field name="ApplQueueDepth" required="N" />
+    <field name="ApplQueueResolution" required="N" />
+  </message>
+  <message name="MarketDataRequestReject" msgtype="Y" msgcat="app">
+    <field name="MDReqID" required="Y" />
+    <field name="MDReqRejReason" required="N" />
+    <group name="NoAltMDSource" required="N">
+      <field name="AltMDSourceID" required="N" />
+    </group>
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />  
+  </message>
+  <message name="SecurityDefinitionRequest" msgtype="c" msgcat="app">
+    <field name="SecurityReqID" required="Y" />
+    <field name="SecurityRequestType" required="Y" />
+    <component name="Instrument" required="N" />
+    <component name="InstrumentExtension" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="Currency" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="ExpirationCycle" required="N" />
+    <field name="SubscriptionRequestType" required="N" />
+  </message>
+  <message name="SecurityDefinition" msgtype="d" msgcat="app">
+    <field name="SecurityReqID" required="Y" />
+    <field name="SecurityResponseID" required="Y" />
+    <field name="SecurityResponseType" required="Y" />
+    <component name="Instrument" required="N" />
+    <component name="InstrumentExtension" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="Currency" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="ExpirationCycle" required="N" />
+    <field name="RoundLot" required="N" />
+    <field name="MinTradeVol" required="N" />
+  </message>
+  <message name="SecurityTypeRequest" msgtype="v" msgcat="app">
+    <field name="SecurityReqID" required="Y" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="Product" required="N" />
+    <field name="SecurityType" required="N" />
+    <field name="SecuritySubType" required="N" />
+  </message>
+  <message name="SecurityTypes" msgtype="w" msgcat="app">
+    <field name="SecurityReqID" required="Y" />
+    <field name="SecurityResponseID" required="Y" />
+    <field name="SecurityResponseType" required="Y" />
+    <field name="TotNoSecurityTypes" required="N" />
+    <field name="LastFragment" required="N" />
+    <group name="NoSecurityTypes" required="N">
+      <field name="SecurityType" required="N" />
+      <field name="SecuritySubType" required="N" />
+      <field name="Product" required="N" />
+      <field name="CFICode" required="N" />
+    </group>
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="SubscriptionRequestType" required="N" />
+  </message>
+  <message name="SecurityListRequest" msgtype="x" msgcat="app">
+    <field name="SecurityReqID" required="Y" />
+    <field name="SecurityListRequestType" required="Y" />
+    <component name="Instrument" required="N" />
+    <component name="InstrumentExtension" required="N" />
+    <component name="FinancingDetails" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="Currency" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="SubscriptionRequestType" required="N" />
+  </message>
+  <message name="SecurityList" msgtype="y" msgcat="app">
+    <field name="SecurityReqID" required="Y" />
+    <field name="SecurityResponseID" required="Y" />
+    <field name="SecurityRequestResult" required="Y" />
+    <field name="TotNoRelatedSym" required="N" />
+    <field name="LastFragment" required="N" />
+    <group name="NoRelatedSym" required="N">
+      <component name="Instrument" required="N" />
+      <component name="InstrumentExtension" required="N" />
+      <component name="FinancingDetails" required="N" />
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="N" />
+      </group>
+      <field name="Currency" required="N" />
+      <component name="Stipulations" required="N" />
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+        <field name="LegSwapType" required="N" />
+        <field name="LegSettlType" required="N" />
+        <component name="LegStipulations" required="N" />
+        <component name="LegBenchmarkCurveData" required="N" />
+      </group>
+      <component name="SpreadOrBenchmarkCurveData" required="N" />
+      <component name="YieldData" required="N" />
+      <field name="RoundLot" required="N" />
+      <field name="MinTradeVol" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="ExpirationCycle" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </group>
+  </message>
+  <message name="DerivativeSecurityListRequest" msgtype="z" msgcat="app">
+    <field name="SecurityReqID" required="Y" />
+    <field name="SecurityListRequestType" required="Y" />
+    <component name="UnderlyingInstrument" required="N" />
+    <field name="SecuritySubType" required="N" />
+    <field name="Currency" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="SubscriptionRequestType" required="N" />
+  </message>
+  <message name="DerivativeSecurityList" msgtype="AA" msgcat="app">
+    <field name="SecurityReqID" required="Y" />
+    <field name="SecurityResponseID" required="Y" />
+    <field name="SecurityRequestResult" required="Y" />
+    <component name="UnderlyingInstrument" required="N" />
+    <field name="TotNoRelatedSym" required="N" />
+    <field name="LastFragment" required="N" />
+    <group name="NoRelatedSym" required="N">
+      <component name="Instrument" required="N" />
+      <field name="Currency" required="N" />
+      <field name="ExpirationCycle" required="N" />
+      <component name="InstrumentExtension" required="N" />
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+      </group>
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </group>
+  </message>
+  <message name="SecurityStatusRequest" msgtype="e" msgcat="app">
+    <field name="SecurityStatusReqID" required="Y" />
+    <component name="Instrument" required="Y" />
+    <component name="InstrumentExtension" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="Currency" required="N" />
+    <field name="SubscriptionRequestType" required="Y" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+  </message>
+  <message name="SecurityStatus" msgtype="f" msgcat="app">
+    <field name="SecurityStatusReqID" required="N" />
+    <component name="Instrument" required="Y" />
+    <component name="InstrumentExtension" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="Currency" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="UnsolicitedIndicator" required="N" />
+    <field name="SecurityTradingStatus" required="N" />
+    <field name="FinancialStatus" required="N" />
+    <field name="CorporateAction" required="N" />
+    <field name="HaltReason" required="N" />
+    <field name="InViewOfCommon" required="N" />
+    <field name="DueToRelated" required="N" />
+    <field name="BuyVolume" required="N" />
+    <field name="SellVolume" required="N" />
+    <field name="HighPx" required="N" />
+    <field name="LowPx" required="N" />
+    <field name="LastPx" required="N" />
+    <field name="TransactTime" required="N" />
+    <field name="Adjustment" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="TradingSessionStatusRequest" msgtype="g" msgcat="app">
+    <field name="TradSesReqID" required="Y" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="TradSesMethod" required="N" />
+    <field name="TradSesMode" required="N" />
+    <field name="SubscriptionRequestType" required="Y" />
+  </message>
+  <message name="TradingSessionStatus" msgtype="h" msgcat="app">
+    <field name="TradSesReqID" required="N" />
+    <field name="TradingSessionID" required="Y" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="TradSesMethod" required="N" />
+    <field name="TradSesMode" required="N" />
+    <field name="UnsolicitedIndicator" required="N" />
+    <field name="TradSesStatus" required="Y" />
+    <field name="TradSesStatusRejReason" required="N" />
+    <field name="TradSesStartTime" required="N" />
+    <field name="TradSesOpenTime" required="N" />
+    <field name="TradSesPreCloseTime" required="N" />
+    <field name="TradSesCloseTime" required="N" />
+    <field name="TradSesEndTime" required="N" />
+    <field name="TotalVolumeTraded" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="NewOrderSingle" msgtype="D" msgcat="app">
+    <field name="ClOrdID" required="Y" />
+    <field name="SecondaryClOrdID" required="N" />
+    <field name="ClOrdLinkID" required="N" />
+    <component name="Parties" required="N" />
+    <field name="TradeOriginationDate" required="N" />
+    <field name="TradeDate" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="DayBookingInst" required="N" />
+    <field name="BookingUnit" required="N" />
+    <field name="PreallocMethod" required="N" />
+    <field name="AllocID" required="N" />
+    <group name="NoAllocs" required="N">
+      <field name="AllocAccount" required="N" />
+      <field name="AllocAcctIDSource" required="N" />
+      <field name="AllocSettlCurrency" required="N" />
+      <field name="IndividualAllocID" required="N" />
+      <component name="NestedParties" required="N" />
+      <field name="AllocQty" required="N" />
+    </group>
+    <field name="SettlType" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="CashMargin" required="N" />
+    <field name="ClearingFeeIndicator" required="N" />
+    <field name="HandlInst" required="N" />
+    <field name="ExecInst" required="N" />
+    <field name="MinQty" required="N" />
+    <field name="MaxFloor" required="N" />
+    <field name="ExDestination" required="N" />
+    <group name="NoTradingSessions" required="N">
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </group>
+    <field name="ProcessCode" required="N" />
+    <component name="Instrument" required="Y" />
+    <component name="FinancingDetails" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="PrevClosePx" required="N" />
+    <field name="Side" required="Y" />
+    <field name="LocateReqd" required="N" />
+    <field name="TransactTime" required="Y" />
+    <component name="Stipulations" required="N" />
+    <field name="QtyType" required="N" />
+    <component name="OrderQtyData" required="Y" />
+    <field name="OrdType" required="Y" />
+    <field name="PriceType" required="N" />
+    <field name="Price" required="N" />
+    <field name="StopPx" required="N" />
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <component name="YieldData" required="N" />
+    <field name="Currency" required="N" />
+    <field name="ComplianceID" required="N" />
+    <field name="SolicitedFlag" required="N" />
+    <field name="IOIid" required="N" />
+    <field name="QuoteID" required="N" />
+    <field name="TimeInForce" required="N" />
+    <field name="EffectiveTime" required="N" />
+    <field name="ExpireDate" required="N" />
+    <field name="ExpireTime" required="N" />
+    <field name="GTBookingInst" required="N" />
+    <component name="CommissionData" required="N" />
+    <field name="OrderCapacity" required="N" />
+    <field name="OrderRestrictions" required="N" />
+    <field name="CustOrderCapacity" required="N" />
+    <field name="ForexReq" required="N" />
+    <field name="SettlCurrency" required="N" />
+    <field name="BookingType" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="SettlDate2" required="N" />
+    <field name="OrderQty2" required="N" />
+    <field name="Price2" required="N" />
+    <field name="PositionEffect" required="N" />
+    <field name="CoveredOrUncovered" required="N" />
+    <field name="MaxShow" required="N" />
+    <component name="PegInstructions" required="N" />
+    <component name="DiscretionInstructions" required="N" />
+    <field name="TargetStrategy" required="N" />
+    <field name="TargetStrategyParameters" required="N" />
+    <field name="ParticipationRate" required="N" />
+    <field name="CancellationRights" required="N" />
+    <field name="MoneyLaunderingStatus" required="N" />
+    <field name="RegistID" required="N" />
+    <field name="Designation" required="N" />
+  </message>
+  <message name="ExecutionReport" msgtype="8" msgcat="app">
+    <field name="OrderID" required="Y" />
+    <field name="SecondaryOrderID" required="N" />
+    <field name="SecondaryClOrdID" required="N" />
+    <field name="SecondaryExecID" required="N" />
+    <field name="ClOrdID" required="N" />
+    <field name="OrigClOrdID" required="N" />
+    <field name="ClOrdLinkID" required="N" />
+    <field name="QuoteRespID" required="N" />
+    <field name="OrdStatusReqID" required="N" />
+    <field name="MassStatusReqID" required="N" />
+    <field name="TotNumReports" required="N" />
+    <field name="LastRptRequested" required="N" />
+    <component name="Parties" required="N" />
+    <field name="TradeOriginationDate" required="N" />
+    <group name="NoContraBrokers" required="N">
+      <field name="ContraBroker" required="N" />
+      <field name="ContraTrader" required="N" />
+      <field name="ContraTradeQty" required="N" />
+      <field name="ContraTradeTime" required="N" />
+      <field name="ContraLegRefID" required="N" />
+    </group>
+    <field name="ListID" required="N" />
+    <field name="CrossID" required="N" />
+    <field name="OrigCrossID" required="N" />
+    <field name="CrossType" required="N" />
+    <field name="ExecID" required="Y" />
+    <field name="ExecRefID" required="N" />
+    <field name="ExecType" required="Y" />
+    <field name="OrdStatus" required="Y" />
+    <field name="WorkingIndicator" required="N" />
+    <field name="OrdRejReason" required="N" />
+    <field name="ExecRestatementReason" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="DayBookingInst" required="N" />
+    <field name="BookingUnit" required="N" />
+    <field name="PreallocMethod" required="N" />
+    <field name="SettlType" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="CashMargin" required="N" />
+    <field name="ClearingFeeIndicator" required="N" />
+    <component name="Instrument" required="Y" />
+    <component name="FinancingDetails" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="Side" required="Y" />
+    <component name="Stipulations" required="N" />
+    <field name="QtyType" required="N" />
+    <component name="OrderQtyData" required="N" />
+    <field name="OrdType" required="N" />
+    <field name="PriceType" required="N" />
+    <field name="Price" required="N" />
+    <field name="StopPx" required="N" />
+    <component name="PegInstructions" required="N" />
+    <component name="DiscretionInstructions" required="N" />
+    <field name="PeggedPrice" required="N" />
+    <field name="DiscretionPrice" required="N" />
+    <field name="TargetStrategy" required="N" />
+    <field name="TargetStrategyParameters" required="N" />
+    <field name="ParticipationRate" required="N" />
+    <field name="TargetStrategyPerformance" required="N" />
+    <field name="Currency" required="N" />
+    <field name="ComplianceID" required="N" />
+    <field name="SolicitedFlag" required="N" />
+    <field name="TimeInForce" required="N" />
+    <field name="EffectiveTime" required="N" />
+    <field name="ExpireDate" required="N" />
+    <field name="ExpireTime" required="N" />
+    <field name="ExecInst" required="N" />
+    <field name="OrderCapacity" required="N" />
+    <field name="OrderRestrictions" required="N" />
+    <field name="CustOrderCapacity" required="N" />
+    <field name="LastQty" required="N" />
+    <field name="UnderlyingLastQty" required="N" />
+    <field name="LastPx" required="N" />
+    <field name="UnderlyingLastPx" required="N" />
+    <field name="LastParPx" required="N" />
+    <field name="LastSpotRate" required="N" />
+    <field name="LastForwardPoints" required="N" />
+    <field name="LastMkt" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="TimeBracket" required="N" />
+    <field name="LastCapacity" required="N" />
+    <field name="LeavesQty" required="Y" />
+    <field name="CumQty" required="Y" />
+    <field name="AvgPx" required="Y" />
+    <field name="DayOrderQty" required="N" />
+    <field name="DayCumQty" required="N" />
+    <field name="DayAvgPx" required="N" />
+    <field name="GTBookingInst" required="N" />
+    <field name="TradeDate" required="N" />
+    <field name="TransactTime" required="N" />
+    <field name="ReportToExch" required="N" />
+    <component name="CommissionData" required="N" />
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <component name="YieldData" required="N" />
+    <field name="GrossTradeAmt" required="N" />
+    <field name="NumDaysInterest" required="N" />
+    <field name="ExDate" required="N" />
+    <field name="AccruedInterestRate" required="N" />
+    <field name="AccruedInterestAmt" required="N" />
+    <field name="InterestAtMaturity" required="N" />
+    <field name="EndAccruedInterestAmt" required="N" />
+    <field name="StartCash" required="N" />
+    <field name="EndCash" required="N" />
+    <field name="TradedFlatSwitch" required="N" />
+    <field name="BasisFeatureDate" required="N" />
+    <field name="BasisFeaturePrice" required="N" />
+    <field name="Concession" required="N" />
+    <field name="TotalTakedown" required="N" />
+    <field name="NetMoney" required="N" />
+    <field name="SettlCurrAmt" required="N" />
+    <field name="SettlCurrency" required="N" />
+    <field name="SettlCurrFxRate" required="N" />
+    <field name="SettlCurrFxRateCalc" required="N" />
+    <field name="HandlInst" required="N" />
+    <field name="MinQty" required="N" />
+    <field name="MaxFloor" required="N" />
+    <field name="PositionEffect" required="N" />
+    <field name="MaxShow" required="N" />
+    <field name="BookingType" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="SettlDate2" required="N" />
+    <field name="OrderQty2" required="N" />
+    <field name="LastForwardPoints2" required="N" />
+    <field name="MultiLegReportingType" required="N" />
+    <field name="CancellationRights" required="N" />
+    <field name="MoneyLaunderingStatus" required="N" />
+    <field name="RegistID" required="N" />
+    <field name="Designation" required="N" />
+    <field name="TransBkdTime" required="N" />
+    <field name="ExecValuationPoint" required="N" />
+    <field name="ExecPriceType" required="N" />
+    <field name="ExecPriceAdjustment" required="N" />
+    <field name="PriorityIndicator" required="N" />
+    <field name="PriceImprovement" required="N" />
+    <field name="LastLiquidityInd" required="N" />
+    <group name="NoContAmts" required="N">
+      <field name="ContAmtType" required="N" />
+      <field name="ContAmtValue" required="N" />
+      <field name="ContAmtCurr" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+      <field name="LegQty" required="N" />
+      <field name="LegSwapType" required="N" />
+      <component name="LegStipulations" required="N" />
+      <field name="LegPositionEffect" required="N" />
+      <field name="LegCoveredOrUncovered" required="N" />
+      <component name="NestedParties" required="N" />
+      <field name="LegRefID" required="N" />
+      <field name="LegPrice" required="N" />
+      <field name="LegSettlType" required="N" />
+      <field name="LegSettlDate" required="N" />
+      <field name="LegLastPx" required="N" />
+    </group>
+    <field name="CopyMsgIndicator" required="N" />
+    <group name="NoMiscFees" required="N">
+      <field name="MiscFeeAmt" required="N" />
+      <field name="MiscFeeCurr" required="N" />
+      <field name="MiscFeeType" required="N" />
+      <field name="MiscFeeBasis" required="N" />
+    </group>
+  </message>
+  <message name="DontKnowTrade" msgtype="Q" msgcat="app">
+    <field name="OrderID" required="Y" />
+    <field name="SecondaryOrderID" required="N" />
+    <field name="ExecID" required="Y" />
+    <field name="DKReason" required="Y" />
+    <component name="Instrument" required="Y" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="Side" required="Y" />
+    <component name="OrderQtyData" required="Y" />
+    <field name="LastQty" required="N" />
+    <field name="LastPx" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="OrderCancelReplaceRequest" msgtype="G" msgcat="app">
+    <field name="OrderID" required="N" />
+    <component name="Parties" required="N" />
+    <field name="TradeOriginationDate" required="N" />
+    <field name="TradeDate" required="N" />
+    <field name="OrigClOrdID" required="Y" />
+    <field name="ClOrdID" required="Y" />
+    <field name="SecondaryClOrdID" required="N" />
+    <field name="ClOrdLinkID" required="N" />
+    <field name="ListID" required="N" />
+    <field name="OrigOrdModTime" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="DayBookingInst" required="N" />
+    <field name="BookingUnit" required="N" />
+    <field name="PreallocMethod" required="N" />
+    <field name="AllocID" required="N" />
+    <group name="NoAllocs" required="N">
+      <field name="AllocAccount" required="N" />
+      <field name="AllocAcctIDSource" required="N" />
+      <field name="AllocSettlCurrency" required="N" />
+      <field name="IndividualAllocID" required="N" />
+      <component name="NestedParties" required="N" />
+      <field name="AllocQty" required="N" />
+    </group>
+    <field name="SettlType" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="CashMargin" required="N" />
+    <field name="ClearingFeeIndicator" required="N" />
+    <field name="HandlInst" required="N" />
+    <field name="ExecInst" required="N" />
+    <field name="MinQty" required="N" />
+    <field name="MaxFloor" required="N" />
+    <field name="ExDestination" required="N" />
+    <group name="NoTradingSessions" required="N">
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </group>
+    <component name="Instrument" required="Y" />
+    <component name="FinancingDetails" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="Side" required="Y" />
+    <field name="TransactTime" required="Y" />
+    <field name="QtyType" required="N" />
+    <component name="OrderQtyData" required="Y" />
+    <field name="OrdType" required="Y" />
+    <field name="PriceType" required="N" />
+    <field name="Price" required="N" />
+    <field name="StopPx" required="N" />
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <component name="YieldData" required="N" />
+    <component name="PegInstructions" required="N" />
+    <component name="DiscretionInstructions" required="N" />
+    <field name="TargetStrategy" required="N" />
+    <field name="TargetStrategyParameters" required="N" />
+    <field name="ParticipationRate" required="N" />
+    <field name="ComplianceID" required="N" />
+    <field name="SolicitedFlag" required="N" />
+    <field name="Currency" required="N" />
+    <field name="TimeInForce" required="N" />
+    <field name="EffectiveTime" required="N" />
+    <field name="ExpireDate" required="N" />
+    <field name="ExpireTime" required="N" />
+    <field name="GTBookingInst" required="N" />
+    <component name="CommissionData" required="N" />
+    <field name="OrderCapacity" required="N" />
+    <field name="OrderRestrictions" required="N" />
+    <field name="CustOrderCapacity" required="N" />
+    <field name="ForexReq" required="N" />
+    <field name="SettlCurrency" required="N" />
+    <field name="BookingType" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="SettlDate2" required="N" />
+    <field name="OrderQty2" required="N" />
+    <field name="Price2" required="N" />
+    <field name="PositionEffect" required="N" />
+    <field name="CoveredOrUncovered" required="N" />
+    <field name="MaxShow" required="N" />
+    <field name="LocateReqd" required="N" />
+    <field name="CancellationRights" required="N" />
+    <field name="MoneyLaunderingStatus" required="N" />
+    <field name="RegistID" required="N" />
+    <field name="Designation" required="N" />
+  </message>
+  <message name="OrderCancelRequest" msgtype="F" msgcat="app">
+    <field name="OrigClOrdID" required="Y" />
+    <field name="OrderID" required="N" />
+    <field name="ClOrdID" required="Y" />
+    <field name="SecondaryClOrdID" required="N" />
+    <field name="ClOrdLinkID" required="N" />
+    <field name="ListID" required="N" />
+    <field name="OrigOrdModTime" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="N" />
+    <component name="Parties" required="N" />
+    <component name="Instrument" required="Y" />
+    <component name="FinancingDetails" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="Side" required="Y" />
+    <field name="TransactTime" required="Y" />
+    <component name="OrderQtyData" required="Y" />
+    <field name="ComplianceID" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="OrderCancelReject" msgtype="9" msgcat="app">
+    <field name="OrderID" required="Y" />
+    <field name="SecondaryOrderID" required="N" />
+    <field name="SecondaryClOrdID" required="N" />
+    <field name="ClOrdID" required="Y" />
+    <field name="ClOrdLinkID" required="N" />
+    <field name="OrigClOrdID" required="Y" />
+    <field name="OrdStatus" required="Y" />
+    <field name="WorkingIndicator" required="N" />
+    <field name="OrigOrdModTime" required="N" />
+    <field name="ListID" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="TradeOriginationDate" required="N" />
+    <field name="TradeDate" required="N" />
+    <field name="TransactTime" required="N" />
+    <field name="CxlRejResponseTo" required="Y" />
+    <field name="CxlRejReason" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="OrderStatusRequest" msgtype="H" msgcat="app">
+    <field name="OrderID" required="N" />
+    <field name="ClOrdID" required="Y" />
+    <field name="SecondaryClOrdID" required="N" />
+    <field name="ClOrdLinkID" required="N" />
+    <component name="Parties" required="N" />
+    <field name="OrdStatusReqID" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <component name="Instrument" required="Y" />
+    <component name="FinancingDetails" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="Side" required="Y" />
+  </message>
+  <message name="OrderMassCancelRequest" msgtype="q" msgcat="app">
+    <field name="ClOrdID" required="Y" />
+    <field name="SecondaryClOrdID" required="N" />
+    <field name="MassCancelRequestType" required="Y" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <component name="Instrument" required="N" />
+    <component name="UnderlyingInstrument" required="N" />
+    <field name="Side" required="N" />
+    <field name="TransactTime" required="Y" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="OrderMassCancelReport" msgtype="r" msgcat="app">
+    <field name="ClOrdID" required="N" />
+    <field name="SecondaryClOrdID" required="N" />
+    <field name="OrderID" required="Y" />
+    <field name="SecondaryOrderID" required="N" />
+    <field name="MassCancelRequestType" required="Y" />
+    <field name="MassCancelResponse" required="Y" />
+    <field name="MassCancelRejectReason" required="N" />
+    <field name="TotalAffectedOrders" required="N" />
+    <group name="NoAffectedOrders" required="N">
+      <field name="OrigClOrdID" required="N" />
+      <field name="AffectedOrderID" required="N" />
+      <field name="AffectedSecondaryOrderID" required="N" />
+    </group>
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <component name="Instrument" required="N" />
+    <component name="UnderlyingInstrument" required="N" />
+    <field name="Side" required="N" />
+    <field name="TransactTime" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="OrderMassStatusRequest" msgtype="AF" msgcat="app">
+    <field name="MassStatusReqID" required="Y" />
+    <field name="MassStatusReqType" required="Y" />
+    <component name="Parties" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <component name="Instrument" required="N" />
+    <component name="UnderlyingInstrument" required="N" />
+    <field name="Side" required="N" />
+  </message>
+  <message name="NewOrderCross" msgtype="s" msgcat="app">
+    <field name="CrossID" required="Y" />
+    <field name="CrossType" required="Y" />
+    <field name="CrossPrioritization" required="Y" />
+    <group name="NoSides" required="Y">
+      <field name="Side" required="Y" />
+      <field name="ClOrdID" required="Y" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ClOrdLinkID" required="N" />
+      <component name="Parties" required="N" />
+      <field name="TradeOriginationDate" required="N" />
+      <field name="TradeDate" required="N" />
+      <field name="Account" required="N" />
+      <field name="AcctIDSource" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="DayBookingInst" required="N" />
+      <field name="BookingUnit" required="N" />
+      <field name="PreallocMethod" required="N" />
+      <field name="AllocID" required="N" />
+      <group name="NoAllocs" required="N">
+        <field name="AllocAccount" required="N" />
+        <field name="AllocAcctIDSource" required="N" />
+        <field name="AllocSettlCurrency" required="N" />
+        <field name="IndividualAllocID" required="N" />
+        <component name="NestedParties" required="N" />
+        <field name="AllocQty" required="N" />
+      </group>
+      <field name="QtyType" required="N" />
+      <component name="OrderQtyData" required="Y" />
+      <component name="CommissionData" required="N" />
+      <field name="OrderCapacity" required="N" />
+      <field name="OrderRestrictions" required="N" />
+      <field name="CustOrderCapacity" required="N" />
+      <field name="ForexReq" required="N" />
+      <field name="SettlCurrency" required="N" />
+      <field name="BookingType" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="PositionEffect" required="N" />
+      <field name="CoveredOrUncovered" required="N" />
+      <field name="CashMargin" required="N" />
+      <field name="ClearingFeeIndicator" required="N" />
+      <field name="SolicitedFlag" required="N" />
+      <field name="SideComplianceID" required="N" />
+    </group>
+    <component name="Instrument" required="Y" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="SettlType" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="HandlInst" required="N" />
+    <field name="ExecInst" required="N" />
+    <field name="MinQty" required="N" />
+    <field name="MaxFloor" required="N" />
+    <field name="ExDestination" required="N" />
+    <group name="NoTradingSessions" required="N">
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </group>
+    <field name="ProcessCode" required="N" />
+    <field name="PrevClosePx" required="N" />
+    <field name="LocateReqd" required="N" />
+    <field name="TransactTime" required="Y" />
+    <component name="Stipulations" required="N" />
+    <field name="OrdType" required="Y" />
+    <field name="PriceType" required="N" />
+    <field name="Price" required="N" />
+    <field name="StopPx" required="N" />
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <component name="YieldData" required="N" />
+    <field name="Currency" required="N" />
+    <field name="ComplianceID" required="N" />
+    <field name="IOIid" required="N" />
+    <field name="QuoteID" required="N" />
+    <field name="TimeInForce" required="N" />
+    <field name="EffectiveTime" required="N" />
+    <field name="ExpireDate" required="N" />
+    <field name="ExpireTime" required="N" />
+    <field name="GTBookingInst" required="N" />
+    <field name="MaxShow" required="N" />
+    <component name="PegInstructions" required="N" />
+    <component name="DiscretionInstructions" required="N" />
+    <field name="TargetStrategy" required="N" />
+    <field name="TargetStrategyParameters" required="N" />
+    <field name="ParticipationRate" required="N" />
+    <field name="CancellationRights" required="N" />
+    <field name="MoneyLaunderingStatus" required="N" />
+    <field name="RegistID" required="N" />
+    <field name="Designation" required="N" />
+  </message>
+  <message name="CrossOrderCancelReplaceRequest" msgtype="t" msgcat="app">
+    <field name="OrderID" required="N" />
+    <field name="CrossID" required="Y" />
+    <field name="OrigCrossID" required="Y" />
+    <field name="CrossType" required="Y" />
+    <field name="CrossPrioritization" required="Y" />
+    <group name="NoSides" required="Y">
+      <field name="Side" required="Y" />
+      <field name="OrigClOrdID" required="Y" />
+      <field name="ClOrdID" required="Y" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ClOrdLinkID" required="N" />
+      <field name="OrigOrdModTime" required="N" />
+      <component name="Parties" required="N" />
+      <field name="TradeOriginationDate" required="N" />
+      <field name="TradeDate" required="N" />
+      <field name="Account" required="N" />
+      <field name="AcctIDSource" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="DayBookingInst" required="N" />
+      <field name="BookingUnit" required="N" />
+      <field name="PreallocMethod" required="N" />
+      <field name="AllocID" required="N" />
+      <group name="NoAllocs" required="N">
+        <field name="AllocAccount" required="N" />
+        <field name="AllocAcctIDSource" required="N" />
+        <field name="AllocSettlCurrency" required="N" />
+        <field name="IndividualAllocID" required="N" />
+        <component name="NestedParties" required="N" />
+        <field name="AllocQty" required="N" />
+      </group>
+      <field name="QtyType" required="N" />
+      <component name="OrderQtyData" required="Y" />
+      <component name="CommissionData" required="N" />
+      <field name="OrderCapacity" required="N" />
+      <field name="OrderRestrictions" required="N" />
+      <field name="CustOrderCapacity" required="N" />
+      <field name="ForexReq" required="N" />
+      <field name="SettlCurrency" required="N" />
+      <field name="BookingType" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="PositionEffect" required="N" />
+      <field name="CoveredOrUncovered" required="N" />
+      <field name="CashMargin" required="N" />
+      <field name="ClearingFeeIndicator" required="N" />
+      <field name="SolicitedFlag" required="N" />
+      <field name="SideComplianceID" required="N" />
+    </group>
+    <component name="Instrument" required="Y" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="SettlType" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="HandlInst" required="N" />
+    <field name="ExecInst" required="N" />
+    <field name="MinQty" required="N" />
+    <field name="MaxFloor" required="N" />
+    <field name="ExDestination" required="N" />
+    <group name="NoTradingSessions" required="N">
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </group>
+    <field name="ProcessCode" required="N" />
+    <field name="PrevClosePx" required="N" />
+    <field name="LocateReqd" required="N" />
+    <field name="TransactTime" required="Y" />
+    <component name="Stipulations" required="N" />
+    <field name="OrdType" required="Y" />
+    <field name="PriceType" required="N" />
+    <field name="Price" required="N" />
+    <field name="StopPx" required="N" />
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <component name="YieldData" required="N" />
+    <field name="Currency" required="N" />
+    <field name="ComplianceID" required="N" />
+    <field name="IOIid" required="N" />
+    <field name="QuoteID" required="N" />
+    <field name="TimeInForce" required="N" />
+    <field name="EffectiveTime" required="N" />
+    <field name="ExpireDate" required="N" />
+    <field name="ExpireTime" required="N" />
+    <field name="GTBookingInst" required="N" />
+    <field name="MaxShow" required="N" />
+    <component name="PegInstructions" required="N" />
+    <component name="DiscretionInstructions" required="N" />
+    <field name="TargetStrategy" required="N" />
+    <field name="TargetStrategyParameters" required="N" />
+    <field name="ParticipationRate" required="N" />
+    <field name="CancellationRights" required="N" />
+    <field name="MoneyLaunderingStatus" required="N" />
+    <field name="RegistID" required="N" />
+    <field name="Designation" required="N" />
+  </message>
+  <message name="CrossOrderCancelRequest" msgtype="u" msgcat="app">
+    <field name="OrderID" required="N" />
+    <field name="CrossID" required="Y" />
+    <field name="OrigCrossID" required="Y" />
+    <field name="CrossType" required="Y" />
+    <field name="CrossPrioritization" required="Y" />
+    <group name="NoSides" required="Y">
+      <field name="Side" required="Y" />
+      <field name="OrigClOrdID" required="Y" />
+      <field name="ClOrdID" required="Y" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ClOrdLinkID" required="N" />
+      <field name="OrigOrdModTime" required="N" />
+      <component name="Parties" required="N" />
+      <field name="TradeOriginationDate" required="N" />
+      <field name="TradeDate" required="N" />
+      <component name="OrderQtyData" required="Y" />
+      <field name="ComplianceID" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </group>
+    <component name="Instrument" required="Y" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="TransactTime" required="Y" />
+  </message>
+  <message name="NewOrderMultileg" msgtype="AB" msgcat="app">
+    <field name="ClOrdID" required="Y" />
+    <field name="SecondaryClOrdID" required="N" />
+    <field name="ClOrdLinkID" required="N" />
+    <component name="Parties" required="N" />
+    <field name="TradeOriginationDate" required="N" />
+    <field name="TradeDate" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="DayBookingInst" required="N" />
+    <field name="BookingUnit" required="N" />
+    <field name="PreallocMethod" required="N" />
+    <field name="AllocID" required="N" />
+    <group name="NoAllocs" required="N">
+      <field name="AllocAccount" required="N" />
+      <field name="AllocAcctIDSource" required="N" />
+      <field name="AllocSettlCurrency" required="N" />
+      <field name="IndividualAllocID" required="N" />
+      <component name="NestedParties3" required="N" />
+      <field name="AllocQty" required="N" />
+    </group>
+    <field name="SettlType" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="CashMargin" required="N" />
+    <field name="ClearingFeeIndicator" required="N" />
+    <field name="HandlInst" required="N" />
+    <field name="ExecInst" required="N" />
+    <field name="MinQty" required="N" />
+    <field name="MaxFloor" required="N" />
+    <field name="ExDestination" required="N" />
+    <group name="NoTradingSessions" required="N">
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </group>
+    <field name="ProcessCode" required="N" />
+    <field name="Side" required="Y" />
+    <component name="Instrument" required="Y" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="PrevClosePx" required="N" />
+    <group name="NoLegs" required="Y">
+      <component name="InstrumentLeg" required="N" />
+      <field name="LegQty" required="N" />
+      <field name="LegSwapType" required="N" />
+      <component name="LegStipulations" required="N" />
+      <group name="NoLegAllocs" required="N">
+        <field name="LegAllocAccount" required="N" />
+        <field name="LegIndividualAllocID" required="N" />
+        <component name="NestedParties2" required="N" />
+        <field name="LegAllocQty" required="N" />
+        <field name="LegAllocAcctIDSource" required="N" />
+        <field name="LegSettlCurrency" required="N" />
+      </group>
+      <field name="LegPositionEffect" required="N" />
+      <field name="LegCoveredOrUncovered" required="N" />
+      <component name="NestedParties" required="N" />
+      <field name="LegRefID" required="N" />
+      <field name="LegPrice" required="N" />
+      <field name="LegSettlType" required="N" />
+      <field name="LegSettlDate" required="N" />
+    </group>
+    <field name="LocateReqd" required="N" />
+    <field name="TransactTime" required="Y" />
+    <field name="QtyType" required="N" />
+    <component name="OrderQtyData" required="Y" />
+    <field name="OrdType" required="Y" />
+    <field name="PriceType" required="N" />
+    <field name="Price" required="N" />
+    <field name="StopPx" required="N" />
+    <field name="Currency" required="N" />
+    <field name="ComplianceID" required="N" />
+    <field name="SolicitedFlag" required="N" />
+    <field name="IOIid" required="N" />
+    <field name="QuoteID" required="N" />
+    <field name="TimeInForce" required="N" />
+    <field name="EffectiveTime" required="N" />
+    <field name="ExpireDate" required="N" />
+    <field name="ExpireTime" required="N" />
+    <field name="GTBookingInst" required="N" />
+    <component name="CommissionData" required="N" />
+    <field name="OrderCapacity" required="N" />
+    <field name="OrderRestrictions" required="N" />
+    <field name="CustOrderCapacity" required="N" />
+    <field name="ForexReq" required="N" />
+    <field name="SettlCurrency" required="N" />
+    <field name="BookingType" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="PositionEffect" required="N" />
+    <field name="CoveredOrUncovered" required="N" />
+    <field name="MaxShow" required="N" />
+    <component name="PegInstructions" required="N" />
+    <component name="DiscretionInstructions" required="N" />
+    <field name="TargetStrategy" required="N" />
+    <field name="TargetStrategyParameters" required="N" />
+    <field name="ParticipationRate" required="N" />
+    <field name="CancellationRights" required="N" />
+    <field name="MoneyLaunderingStatus" required="N" />
+    <field name="RegistID" required="N" />
+    <field name="Designation" required="N" />
+    <field name="MultiLegRptTypeReq" required="N" />
+  </message>
+  <message name="MultilegOrderCancelReplaceRequest" msgtype="AC" msgcat="app">
+    <field name="OrderID" required="N" />
+    <field name="OrigClOrdID" required="Y" />
+    <field name="ClOrdID" required="Y" />
+    <field name="SecondaryClOrdID" required="N" />
+    <field name="ClOrdLinkID" required="N" />
+    <field name="OrigOrdModTime" required="N" />
+    <component name="Parties" required="N" />
+    <field name="TradeOriginationDate" required="N" />
+    <field name="TradeDate" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="DayBookingInst" required="N" />
+    <field name="BookingUnit" required="N" />
+    <field name="PreallocMethod" required="N" />
+    <field name="AllocID" required="N" />
+    <group name="NoAllocs" required="N">
+      <field name="AllocAccount" required="N" />
+      <field name="AllocAcctIDSource" required="N" />
+      <field name="AllocSettlCurrency" required="N" />
+      <field name="IndividualAllocID" required="N" />
+      <component name="NestedParties3" required="N" />
+      <field name="AllocQty" required="N" />
+    </group>
+    <field name="SettlType" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="CashMargin" required="N" />
+    <field name="ClearingFeeIndicator" required="N" />
+    <field name="HandlInst" required="N" />
+    <field name="ExecInst" required="N" />
+    <field name="MinQty" required="N" />
+    <field name="MaxFloor" required="N" />
+    <field name="ExDestination" required="N" />
+    <group name="NoTradingSessions" required="N">
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </group>
+    <field name="ProcessCode" required="N" />
+    <field name="Side" required="Y" />
+    <component name="Instrument" required="Y" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="PrevClosePx" required="N" />
+    <group name="NoLegs" required="Y">
+      <component name="InstrumentLeg" required="N" />
+      <field name="LegQty" required="N" />
+      <field name="LegSwapType" required="N" />
+      <component name="LegStipulations" required="N" />
+      <group name="NoLegAllocs" required="N">
+        <field name="LegAllocAccount" required="N" />
+        <field name="LegIndividualAllocID" required="N" />
+        <component name="NestedParties2" required="N" />
+        <field name="LegAllocQty" required="N" />
+        <field name="LegAllocAcctIDSource" required="N" />
+        <field name="LegSettlCurrency" required="N" />
+      </group>
+      <field name="LegPositionEffect" required="N" />
+      <field name="LegCoveredOrUncovered" required="N" />
+      <component name="NestedParties" required="N" />
+      <field name="LegRefID" required="N" />
+      <field name="LegPrice" required="N" />
+      <field name="LegSettlType" required="N" />
+      <field name="LegSettlDate" required="N" />
+    </group>
+    <field name="LocateReqd" required="N" />
+    <field name="TransactTime" required="Y" />
+    <field name="QtyType" required="N" />
+    <component name="OrderQtyData" required="Y" />
+    <field name="OrdType" required="Y" />
+    <field name="PriceType" required="N" />
+    <field name="Price" required="N" />
+    <field name="StopPx" required="N" />
+    <field name="Currency" required="N" />
+    <field name="ComplianceID" required="N" />
+    <field name="SolicitedFlag" required="N" />
+    <field name="IOIid" required="N" />
+    <field name="QuoteID" required="N" />
+    <field name="TimeInForce" required="N" />
+    <field name="EffectiveTime" required="N" />
+    <field name="ExpireDate" required="N" />
+    <field name="ExpireTime" required="N" />
+    <field name="GTBookingInst" required="N" />
+    <component name="CommissionData" required="N" />
+    <field name="OrderCapacity" required="N" />
+    <field name="OrderRestrictions" required="N" />
+    <field name="CustOrderCapacity" required="N" />
+    <field name="ForexReq" required="N" />
+    <field name="SettlCurrency" required="N" />
+    <field name="BookingType" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="PositionEffect" required="N" />
+    <field name="CoveredOrUncovered" required="N" />
+    <field name="MaxShow" required="N" />
+    <component name="PegInstructions" required="N" />
+    <component name="DiscretionInstructions" required="N" />
+    <field name="TargetStrategy" required="N" />
+    <field name="TargetStrategyParameters" required="N" />
+    <field name="ParticipationRate" required="N" />
+    <field name="CancellationRights" required="N" />
+    <field name="MoneyLaunderingStatus" required="N" />
+    <field name="RegistID" required="N" />
+    <field name="Designation" required="N" />
+    <field name="MultiLegRptTypeReq" required="N" />
+  </message>
+  <message name="BidRequest" msgtype="k" msgcat="app">
+    <field name="BidID" required="N" />
+    <field name="ClientBidID" required="Y" />
+    <field name="BidRequestTransType" required="Y" />
+    <field name="ListName" required="N" />
+    <field name="TotNoRelatedSym" required="Y" />
+    <field name="BidType" required="Y" />
+    <field name="NumTickets" required="N" />
+    <field name="Currency" required="N" />
+    <field name="SideValue1" required="N" />
+    <field name="SideValue2" required="N" />
+    <group name="NoBidDescriptors" required="N">
+      <field name="BidDescriptorType" required="N" />
+      <field name="BidDescriptor" required="N" />
+      <field name="SideValueInd" required="N" />
+      <field name="LiquidityValue" required="N" />
+      <field name="LiquidityNumSecurities" required="N" />
+      <field name="LiquidityPctLow" required="N" />
+      <field name="LiquidityPctHigh" required="N" />
+      <field name="EFPTrackingError" required="N" />
+      <field name="FairValue" required="N" />
+      <field name="OutsideIndexPct" required="N" />
+      <field name="ValueOfFutures" required="N" />
+    </group>
+    <group name="NoBidComponents" required="N">
+      <field name="ListID" required="N" />
+      <field name="Side" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="NetGrossInd" required="N" />
+      <field name="SettlType" required="N" />
+      <field name="SettlDate" required="N" />
+      <field name="Account" required="N" />
+      <field name="AcctIDSource" required="N" />
+    </group>
+    <field name="LiquidityIndType" required="N" />
+    <field name="WtAverageLiquidity" required="N" />
+    <field name="ExchangeForPhysical" required="N" />
+    <field name="OutMainCntryUIndex" required="N" />
+    <field name="CrossPercent" required="N" />
+    <field name="ProgRptReqs" required="N" />
+    <field name="ProgPeriodInterval" required="N" />
+    <field name="IncTaxInd" required="N" />
+    <field name="ForexReq" required="N" />
+    <field name="NumBidders" required="N" />
+    <field name="TradeDate" required="N" />
+    <field name="BidTradeType" required="Y" />
+    <field name="BasisPxType" required="Y" />
+    <field name="StrikeTime" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="BidResponse" msgtype="l" msgcat="app">
+    <field name="BidID" required="N" />
+    <field name="ClientBidID" required="N" />
+    <group name="NoBidComponents" required="Y">
+      <component name="CommissionData" required="Y" />
+      <field name="ListID" required="N" />
+      <field name="Country" required="N" />
+      <field name="Side" required="N" />
+      <field name="Price" required="N" />
+      <field name="PriceType" required="N" />
+      <field name="FairValue" required="N" />
+      <field name="NetGrossInd" required="N" />
+      <field name="SettlType" required="N" />
+      <field name="SettlDate" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </group>
+  </message>
+  <message name="NewOrderList" msgtype="E" msgcat="app">
+    <field name="ListID" required="Y" />
+    <field name="BidID" required="N" />
+    <field name="ClientBidID" required="N" />
+    <field name="ProgRptReqs" required="N" />
+    <field name="BidType" required="Y" />
+    <field name="ProgPeriodInterval" required="N" />
+    <field name="CancellationRights" required="N" />
+    <field name="MoneyLaunderingStatus" required="N" />
+    <field name="RegistID" required="N" />
+    <field name="ListExecInstType" required="N" />
+    <field name="ListExecInst" required="N" />
+    <field name="EncodedListExecInstLen" required="N" />
+    <field name="EncodedListExecInst" required="N" />
+    <field name="AllowableOneSidednessPct" required="N" />
+    <field name="AllowableOneSidednessValue" required="N" />
+    <field name="AllowableOneSidednessCurr" required="N" />
+    <field name="TotNoOrders" required="Y" />
+    <field name="LastFragment" required="N" />
+    <group name="NoOrders" required="Y">
+      <field name="ClOrdID" required="Y" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ListSeqNo" required="Y" />
+      <field name="ClOrdLinkID" required="N" />
+      <field name="SettlInstMode" required="N" />
+      <component name="Parties" required="N" />
+      <field name="TradeOriginationDate" required="N" />
+      <field name="TradeDate" required="N" />
+      <field name="Account" required="N" />
+      <field name="AcctIDSource" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="DayBookingInst" required="N" />
+      <field name="BookingUnit" required="N" />
+      <field name="AllocID" required="N" />
+      <field name="PreallocMethod" required="N" />
+      <group name="NoAllocs" required="N">
+        <field name="AllocAccount" required="N" />
+        <field name="AllocAcctIDSource" required="N" />
+        <field name="AllocSettlCurrency" required="N" />
+        <field name="IndividualAllocID" required="N" />
+        <component name="NestedParties" required="N" />
+        <field name="AllocQty" required="N" />
+      </group>
+      <field name="SettlType" required="N" />
+      <field name="SettlDate" required="N" />
+      <field name="CashMargin" required="N" />
+      <field name="ClearingFeeIndicator" required="N" />
+      <field name="HandlInst" required="N" />
+      <field name="ExecInst" required="N" />
+      <field name="MinQty" required="N" />
+      <field name="MaxFloor" required="N" />
+      <field name="ExDestination" required="N" />
+      <group name="NoTradingSessions" required="N">
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+      </group>
+      <field name="ProcessCode" required="N" />
+      <component name="Instrument" required="Y" />
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="N" />
+      </group>
+      <field name="PrevClosePx" required="N" />
+      <field name="Side" required="Y" />
+      <field name="SideValueInd" required="N" />
+      <field name="LocateReqd" required="N" />
+      <field name="TransactTime" required="N" />
+      <component name="Stipulations" required="N" />
+      <field name="QtyType" required="N" />
+      <component name="OrderQtyData" required="Y" />
+      <field name="OrdType" required="N" />
+      <field name="PriceType" required="N" />
+      <field name="Price" required="N" />
+      <field name="StopPx" required="N" />
+      <component name="SpreadOrBenchmarkCurveData" required="N" />
+      <component name="YieldData" required="N" />
+      <field name="Currency" required="N" />
+      <field name="ComplianceID" required="N" />
+      <field name="SolicitedFlag" required="N" />
+      <field name="IOIid" required="N" />
+      <field name="QuoteID" required="N" />
+      <field name="TimeInForce" required="N" />
+      <field name="EffectiveTime" required="N" />
+      <field name="ExpireDate" required="N" />
+      <field name="ExpireTime" required="N" />
+      <field name="GTBookingInst" required="N" />
+      <component name="CommissionData" required="N" />
+      <field name="OrderCapacity" required="N" />
+      <field name="OrderRestrictions" required="N" />
+      <field name="CustOrderCapacity" required="N" />
+      <field name="ForexReq" required="N" />
+      <field name="SettlCurrency" required="N" />
+      <field name="BookingType" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="SettlDate2" required="N" />
+      <field name="OrderQty2" required="N" />
+      <field name="Price2" required="N" />
+      <field name="PositionEffect" required="N" />
+      <field name="CoveredOrUncovered" required="N" />
+      <field name="MaxShow" required="N" />
+      <component name="PegInstructions" required="N" />
+      <component name="DiscretionInstructions" required="N" />
+      <field name="TargetStrategy" required="N" />
+      <field name="TargetStrategyParameters" required="N" />
+      <field name="ParticipationRate" required="N" />
+      <field name="Designation" required="N" />
+    </group>
+  </message>
+  <message name="ListStrikePrice" msgtype="m" msgcat="app">
+    <field name="ListID" required="Y" />
+    <field name="TotNoStrikes" required="Y" />
+    <field name="LastFragment" required="N" />
+    <group name="NoStrikes" required="Y">
+      <component name="Instrument" required="Y" />
+    </group>
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+      <field name="PrevClosePx" required="N" />
+      <field name="ClOrdID" required="N" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="Side" required="N" />
+      <field name="Price" required="Y" />
+      <field name="Currency" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </group>
+  </message>
+  <message name="ListStatus" msgtype="N" msgcat="app">
+    <field name="ListID" required="Y" />
+    <field name="ListStatusType" required="Y" />
+    <field name="NoRpts" required="Y" />
+    <field name="ListOrderStatus" required="Y" />
+    <field name="RptSeq" required="Y" />
+    <field name="ListStatusText" required="N" />
+    <field name="EncodedListStatusTextLen" required="N" />
+    <field name="EncodedListStatusText" required="N" />
+    <field name="TransactTime" required="N" />
+    <field name="TotNoOrders" required="Y" />
+    <field name="LastFragment" required="N" />
+    <group name="NoOrders" required="Y">
+      <field name="ClOrdID" required="Y" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="CumQty" required="Y" />
+      <field name="OrdStatus" required="Y" />
+      <field name="WorkingIndicator" required="N" />
+      <field name="LeavesQty" required="Y" />
+      <field name="CxlQty" required="Y" />
+      <field name="AvgPx" required="Y" />
+      <field name="OrdRejReason" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </group>
+  </message>
+  <message name="ListExecute" msgtype="L" msgcat="app">
+    <field name="ListID" required="Y" />
+    <field name="ClientBidID" required="N" />
+    <field name="BidID" required="N" />
+    <field name="TransactTime" required="Y" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="ListCancelRequest" msgtype="K" msgcat="app">
+    <field name="ListID" required="Y" />
+    <field name="TransactTime" required="Y" />
+    <field name="TradeOriginationDate" required="N" />
+    <field name="TradeDate" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="ListStatusRequest" msgtype="M" msgcat="app">
+    <field name="ListID" required="Y" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="AllocationInstruction" msgtype="J" msgcat="app">
+    <field name="AllocID" required="Y" />
+    <field name="AllocTransType" required="Y" />
+    <field name="AllocType" required="Y" />
+    <field name="SecondaryAllocID" required="N" />
+    <field name="RefAllocID" required="N" />
+    <field name="AllocCancReplaceReason" required="N" />
+    <field name="AllocIntermedReqType" required="N" />
+    <field name="AllocLinkID" required="N" />
+    <field name="AllocLinkType" required="N" />
+    <field name="BookingRefID" required="N" />
+    <field name="AllocNoOrdersType" required="Y" />
+    <group name="NoOrders" required="N">
+      <field name="ClOrdID" required="N" />
+      <field name="OrderID" required="N" />
+      <field name="SecondaryOrderID" required="N" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ListID" required="N" />
+      <component name="NestedParties2" required="N" />
+      <field name="OrderQty" required="N" />
+      <field name="OrderAvgPx" required="N" />
+      <field name="OrderBookingQty" required="N" />
+    </group>
+    <group name="NoExecs" required="N">
+      <field name="LastQty" required="N" />
+      <field name="ExecID" required="N" />
+      <field name="SecondaryExecID" required="N" />
+      <field name="LastPx" required="N" />
+      <field name="LastParPx" required="N" />
+      <field name="LastCapacity" required="N" />
+    </group>
+    <field name="PreviouslyReported" required="N" />
+    <field name="ReversalIndicator" required="N" />
+    <field name="MatchType" required="N" />
+    <field name="Side" required="Y" />
+    <component name="Instrument" required="Y" />
+    <component name="InstrumentExtension" required="N" />
+    <component name="FinancingDetails" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="Quantity" required="Y" />
+    <field name="QtyType" required="N" />
+    <field name="LastMkt" required="N" />
+    <field name="TradeOriginationDate" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="PriceType" required="N" />
+    <field name="AvgPx" required="Y" />
+    <field name="AvgParPx" required="N" />
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <field name="Currency" required="N" />
+    <field name="AvgPxPrecision" required="N" />
+    <component name="Parties" required="N" />
+    <field name="TradeDate" required="Y" />
+    <field name="TransactTime" required="N" />
+    <field name="SettlType" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="BookingType" required="N" />
+    <field name="GrossTradeAmt" required="N" />
+    <field name="Concession" required="N" />
+    <field name="TotalTakedown" required="N" />
+    <field name="NetMoney" required="N" />
+    <field name="PositionEffect" required="N" />
+    <field name="AutoAcceptIndicator" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="NumDaysInterest" required="N" />
+    <field name="AccruedInterestRate" required="N" />
+    <field name="AccruedInterestAmt" required="N" />
+    <field name="TotalAccruedInterestAmt" required="N" />
+    <field name="InterestAtMaturity" required="N" />
+    <field name="EndAccruedInterestAmt" required="N" />
+    <field name="StartCash" required="N" />
+    <field name="EndCash" required="N" />
+    <field name="LegalConfirm" required="N" />
+    <component name="Stipulations" required="N" />
+    <component name="YieldData" required="N" />
+    <field name="TotNoAllocs" required="N" />
+    <field name="LastFragment" required="N" />
+    <group name="NoAllocs" required="Y">
+      <field name="AllocAccount" required="Y" />
+      <field name="AllocAcctIDSource" required="N" />
+      <field name="MatchStatus" required="N" />
+      <field name="AllocPrice" required="N" />
+      <field name="AllocQty" required="Y" />
+      <field name="IndividualAllocID" required="N" />
+      <field name="ProcessCode" required="N" />
+      <component name="NestedParties" required="N" />
+      <field name="NotifyBrokerOfCredit" required="N" />
+      <field name="AllocHandlInst" required="N" />
+      <field name="AllocText" required="N" />
+      <field name="EncodedAllocTextLen" required="N" />
+      <field name="EncodedAllocText" required="N" />
+      <component name="CommissionData" required="N" />
+      <field name="AllocAvgPx" required="N" />
+      <field name="AllocNetMoney" required="N" />
+      <field name="SettlCurrAmt" required="N" />
+      <field name="AllocSettlCurrAmt" required="N" />
+      <field name="SettlCurrency" required="N" />
+      <field name="AllocSettlCurrency" required="N" />
+      <field name="SettlCurrFxRate" required="N" />
+      <field name="SettlCurrFxRateCalc" required="N" />
+      <field name="AccruedInterestAmt" required="N" />
+      <field name="AllocAccruedInterestAmt" required="N" />
+      <field name="AllocInterestAtMaturity" required="N" />
+      <field name="SettlInstMode" required="N" />
+      <group name="NoMiscFees" required="N">
+        <field name="MiscFeeAmt" required="N" />
+        <field name="MiscFeeCurr" required="N" />
+        <field name="MiscFeeType" required="N" />
+        <field name="MiscFeeBasis" required="N" />
+      </group>
+      <field name="NoClearingInstructions" required="N" />
+      <field name="ClearingInstruction" required="N" />
+      <field name="ClearingFeeIndicator" required="N" />
+      <field name="AllocSettlInstType" required="N" />
+      <component name="SettlInstructionsData" required="N" />
+    </group>
+  </message>
+  <message name="AllocationInstructionAck" msgtype="P" msgcat="app">
+    <field name="AllocID" required="Y" />
+    <component name="Parties" required="N" />
+    <field name="SecondaryAllocID" required="N" />
+    <field name="TradeDate" required="N" />
+    <field name="TransactTime" required="Y" />
+    <field name="AllocStatus" required="Y" />
+    <field name="AllocRejCode" required="N" />
+    <field name="AllocType" required="N" />
+    <field name="AllocIntermedReqType" required="N" />
+    <field name="MatchStatus" required="N" />
+    <field name="Product" required="N" />
+    <field name="SecurityType" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <group name="NoAllocs" required="N">
+      <field name="AllocAccount" required="N" />
+      <field name="AllocAcctIDSource" required="N" />
+      <field name="AllocPrice" required="N" />
+      <field name="IndividualAllocID" required="N" />
+      <field name="IndividualAllocRejCode" required="N" />
+      <field name="AllocText" required="N" />
+      <field name="EncodedAllocTextLen" required="N" />
+      <field name="EncodedAllocText" required="N" />
+    </group>
+  </message>
+  <message name="AllocationReport" msgtype="AS" msgcat="app">
+    <field name="AllocReportID" required="Y" />
+    <field name="AllocID" required="N" />
+    <field name="AllocTransType" required="Y" />
+    <field name="AllocReportRefID" required="N" />
+    <field name="AllocCancReplaceReason" required="N" />
+    <field name="SecondaryAllocID" required="N" />
+    <field name="AllocReportType" required="Y" />
+    <field name="AllocStatus" required="Y" />
+    <field name="AllocRejCode" required="N" />
+    <field name="RefAllocID" required="N" />
+    <field name="AllocIntermedReqType" required="N" />
+    <field name="AllocLinkID" required="N" />
+    <field name="AllocLinkType" required="N" />
+    <field name="BookingRefID" required="N" />
+    <field name="AllocNoOrdersType" required="Y" />
+    <group name="NoOrders" required="N">
+      <field name="ClOrdID" required="N" />
+      <field name="OrderID" required="N" />
+      <field name="SecondaryOrderID" required="N" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ListID" required="N" />
+      <component name="NestedParties2" required="N" />
+      <field name="OrderQty" required="N" />
+      <field name="OrderAvgPx" required="N" />
+      <field name="OrderBookingQty" required="N" />
+    </group>
+    <group name="NoExecs" required="N">
+      <field name="LastQty" required="N" />
+      <field name="ExecID" required="N" />
+      <field name="SecondaryExecID" required="N" />
+      <field name="LastPx" required="N" />
+      <field name="LastParPx" required="N" />
+      <field name="LastCapacity" required="N" />
+    </group>
+    <field name="PreviouslyReported" required="N" />
+    <field name="ReversalIndicator" required="N" />
+    <field name="MatchType" required="N" />
+    <field name="Side" required="Y" />
+      <component name="Instrument" required="Y" />
+      <component name="InstrumentExtension" required="N" />
+      <component name="FinancingDetails" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="Quantity" required="Y" />
+    <field name="QtyType" required="N" />
+    <field name="LastMkt" required="N" />
+    <field name="TradeOriginationDate" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="PriceType" required="N" />
+    <field name="AvgPx" required="Y" />
+    <field name="AvgParPx" required="N" />
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <field name="Currency" required="N" />
+    <field name="AvgPxPrecision" required="N" />
+    <component name="Parties" required="N" />
+    <field name="TradeDate" required="Y" />
+    <field name="TransactTime" required="N" />
+    <field name="SettlType" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="BookingType" required="N" />
+    <field name="GrossTradeAmt" required="N" />
+    <field name="Concession" required="N" />
+    <field name="TotalTakedown" required="N" />
+    <field name="NetMoney" required="N" />
+    <field name="PositionEffect" required="N" />
+    <field name="AutoAcceptIndicator" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="NumDaysInterest" required="N" />
+    <field name="AccruedInterestRate" required="N" />
+    <field name="AccruedInterestAmt" required="N" />
+    <field name="TotalAccruedInterestAmt" required="N" />
+    <field name="InterestAtMaturity" required="N" />
+    <field name="EndAccruedInterestAmt" required="N" />
+    <field name="StartCash" required="N" />
+    <field name="EndCash" required="N" />
+    <field name="LegalConfirm" required="N" />
+    <component name="Stipulations" required="N" />
+    <component name="YieldData" required="N" />
+    <field name="TotNoAllocs" required="N" />
+    <field name="LastFragment" required="N" />
+    <group name="NoAllocs" required="Y">
+      <field name="AllocAccount" required="Y" />
+      <field name="AllocAcctIDSource" required="N" />
+      <field name="MatchStatus" required="N" />
+      <field name="AllocPrice" required="N" />
+      <field name="AllocQty" required="Y" />
+      <field name="IndividualAllocID" required="N" />
+      <field name="ProcessCode" required="N" />
+      <component name="NestedParties" required="N" />
+      <field name="NotifyBrokerOfCredit" required="N" />
+      <field name="AllocHandlInst" required="N" />
+      <field name="AllocText" required="N" />
+      <field name="EncodedAllocTextLen" required="N" />
+      <field name="EncodedAllocText" required="N" />
+      <component name="CommissionData" required="N" />
+      <field name="AllocAvgPx" required="N" />
+      <field name="AllocNetMoney" required="N" />
+      <field name="SettlCurrAmt" required="N" />
+      <field name="AllocSettlCurrAmt" required="N" />
+      <field name="SettlCurrency" required="N" />
+      <field name="AllocSettlCurrency" required="N" />
+      <field name="SettlCurrFxRate" required="N" />
+      <field name="SettlCurrFxRateCalc" required="N" />
+      <field name="AllocAccruedInterestAmt" required="N" />
+      <field name="AllocInterestAtMaturity" required="N" />
+      <group name="NoMiscFees" required="N">
+        <field name="MiscFeeAmt" required="N" />
+        <field name="MiscFeeCurr" required="N" />
+        <field name="MiscFeeType" required="N" />
+        <field name="MiscFeeBasis" required="N" />
+      </group>
+      <group name="NoClearingInstructions" required="N">
+        <field name="ClearingInstruction" required="N" />
+      </group>
+      <field name="ClearingFeeIndicator" required="N" />
+      <field name="AllocSettlInstType" required="N" />
+      <component name="SettlInstructionsData" required="N" />
+    </group>
+  </message>
+  <message name="AllocationReportAck" msgtype="AT" msgcat="app">
+    <field name="AllocReportID" required="Y" />
+    <field name="AllocID" required="Y" />
+    <component name="Parties" required="N" />
+    <field name="SecondaryAllocID" required="N" />
+    <field name="TradeDate" required="N" />
+    <field name="TransactTime" required="Y" />
+    <field name="AllocStatus" required="Y" />
+    <field name="AllocRejCode" required="N" />
+    <field name="AllocReportType" required="N" />
+    <field name="AllocIntermedReqType" required="N" />
+    <field name="MatchStatus" required="N" />
+    <field name="Product" required="N" />
+    <field name="SecurityType" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <group name="NoAllocs" required="N">
+      <field name="AllocAccount" required="N" />
+      <field name="AllocAcctIDSource" required="N" />
+      <field name="AllocPrice" required="N" />
+      <field name="IndividualAllocID" required="N" />
+      <field name="IndividualAllocRejCode" required="N" />
+      <field name="AllocText" required="N" />
+      <field name="EncodedAllocTextLen" required="N" />
+      <field name="EncodedAllocText" required="N" />
+    </group>
+  </message>
+  <message name="Confirmation" msgtype="AK" msgcat="app">
+    <field name="ConfirmID" required="Y" />
+    <field name="ConfirmRefID" required="N" />
+    <field name="ConfirmReqID" required="N" />
+    <field name="ConfirmTransType" required="Y" />
+    <field name="ConfirmType" required="Y" />
+    <field name="CopyMsgIndicator" required="N" />
+    <field name="LegalConfirm" required="N" />
+    <field name="ConfirmStatus" required="Y" />
+    <component name="Parties" required="N" />
+    <group name="NoOrders" required="N">
+      <field name="ClOrdID" required="N" />
+      <field name="OrderID" required="N" />
+      <field name="SecondaryOrderID" required="N" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ListID" required="N" />
+      <component name="NestedParties2" required="N" />
+      <field name="OrderQty" required="N" />
+      <field name="OrderAvgPx" required="N" />
+      <field name="OrderBookingQty" required="N" />
+    </group>
+    <field name="AllocID" required="N" />
+    <field name="SecondaryAllocID" required="N" />
+    <field name="IndividualAllocID" required="N" />
+    <field name="TransactTime" required="Y" />
+    <field name="TradeDate" required="Y" />
+    <component name="TrdRegTimestamps" required="N" />
+    <component name="Instrument" required="Y" />
+    <component name="InstrumentExtension" required="N" />
+    <component name="FinancingDetails" required="N" />
+    <group name="NoUnderlyings" required="Y">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="Y">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <component name="YieldData" required="N" />
+    <field name="AllocQty" required="Y" />
+    <field name="QtyType" required="N" />
+    <field name="Side" required="Y" />
+    <field name="Currency" required="N" />
+    <field name="LastMkt" required="N" />
+    <group name="NoCapacities" required="Y">
+      <field name="OrderCapacity" required="Y" />
+      <field name="OrderRestrictions" required="N" />
+      <field name="OrderCapacityQty" required="Y" />
+    </group>
+    <field name="AllocAccount" required="Y" />
+    <field name="AllocAcctIDSource" required="N" />
+    <field name="AllocAccountType" required="N" />
+    <field name="AvgPx" required="Y" />
+    <field name="AvgPxPrecision" required="N" />
+    <field name="PriceType" required="N" />
+    <field name="AvgParPx" required="N" />
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <field name="ReportedPx" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="ProcessCode" required="N" />
+    <field name="GrossTradeAmt" required="Y" />
+    <field name="NumDaysInterest" required="N" />
+    <field name="ExDate" required="N" />
+    <field name="AccruedInterestRate" required="N" />
+    <field name="AccruedInterestAmt" required="N" />
+    <field name="InterestAtMaturity" required="N" />
+    <field name="EndAccruedInterestAmt" required="N" />
+    <field name="StartCash" required="N" />
+    <field name="EndCash" required="N" />
+    <field name="Concession" required="N" />
+    <field name="TotalTakedown" required="N" />
+    <field name="NetMoney" required="Y" />
+    <field name="MaturityNetMoney" required="N" />
+    <field name="SettlCurrAmt" required="N" />
+    <field name="SettlCurrency" required="N" />
+    <field name="SettlCurrFxRate" required="N" />
+    <field name="SettlCurrFxRateCalc" required="N" />
+    <field name="SettlType" required="N" />
+    <field name="SettlDate" required="N" />
+    <component name="SettlInstructionsData" required="N" />
+    <component name="CommissionData" required="N" />
+    <field name="SharedCommission" required="N" />
+    <component name="Stipulations" required="N" />
+    <group name="NoMiscFees" required="N">
+      <field name="MiscFeeAmt" required="N" />
+      <field name="MiscFeeCurr" required="N" />
+      <field name="MiscFeeType" required="N" />
+      <field name="MiscFeeBasis" required="N" />
+    </group>
+  </message>
+  <message name="ConfirmationAck" msgtype="AU" msgcat="app">
+    <field name="ConfirmID" required="Y" />
+    <field name="TradeDate" required="Y" />
+    <field name="TransactTime" required="Y" />
+    <field name="AffirmStatus" required="Y" />
+    <field name="ConfirmRejReason" required="N" />
+    <field name="MatchStatus" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="ConfirmationRequest" msgtype="BH" msgcat="app">
+    <field name="ConfirmReqID" required="Y" />
+    <field name="ConfirmType" required="Y" />
+    <group name="NoOrders" required="N">
+      <field name="ClOrdID" required="N" />
+      <field name="OrderID" required="N" />
+      <field name="SecondaryOrderID" required="N" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ListID" required="N" />
+      <component name="NestedParties2" required="N" />
+      <field name="OrderQty" required="N" />
+      <field name="OrderAvgPx" required="N" />
+      <field name="OrderBookingQty" required="N" />
+    </group>
+    <field name="AllocID" required="N" />
+    <field name="SecondaryAllocID" required="N" />
+    <field name="IndividualAllocID" required="N" />
+    <field name="TransactTime" required="Y" />
+    <field name="AllocAccount" required="N" />
+    <field name="AllocAcctIDSource" required="N" />
+    <field name="AllocAccountType" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="SettlementInstructions" msgtype="T" msgcat="app">
+    <field name="SettlInstMsgID" required="Y" />
+    <field name="SettlInstReqID" required="N" />
+    <field name="SettlInstMode" required="Y" />
+    <field name="SettlInstReqRejCode" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="SettlInstSource" required="N" />
+    <field name="ClOrdID" required="N" />
+    <field name="TransactTime" required="Y" />
+    <group name="NoSettlInst" required="N">
+      <field name="SettlInstID" required="N" />
+      <field name="SettlInstTransType" required="N" />
+      <field name="SettlInstRefID" required="N" />
+      <component name="Parties" required="N" />
+      <field name="Side" required="N" />
+      <field name="Product" required="N" />
+      <field name="SecurityType" required="N" />
+      <field name="CFICode" required="N" />
+      <field name="EffectiveTime" required="N" />
+      <field name="ExpireTime" required="N" />
+      <field name="LastUpdateTime" required="N" />
+      <component name="SettlInstructionsData" required="N" />
+      <field name="PaymentMethod" required="N" />
+      <field name="PaymentRef" required="N" />
+      <field name="CardHolderName" required="N" />
+      <field name="CardNumber" required="N" />
+      <field name="CardStartDate" required="N" />
+      <field name="CardExpDate" required="N" />
+      <field name="CardIssNum" required="N" />
+      <field name="PaymentDate" required="N" />
+      <field name="PaymentRemitterID" required="N" />
+    </group>
+  </message>
+  <message name="SettlementInstructionRequest" msgtype="AV" msgcat="app">
+    <field name="SettlInstReqID" required="Y" />
+    <field name="TransactTime" required="Y" />
+    <component name="Parties" required="N" />
+    <field name="AllocAccount" required="N" />
+    <field name="AllocAcctIDSource" required="N" />
+    <field name="Side" required="N" />
+    <field name="Product" required="N" />
+    <field name="SecurityType" required="N" />
+    <field name="CFICode" required="N" />
+    <field name="EffectiveTime" required="N" />
+    <field name="ExpireTime" required="N" />
+    <field name="LastUpdateTime" required="N" />
+    <field name="StandInstDbType" required="N" />
+    <field name="StandInstDbName" required="N" />
+    <field name="StandInstDbID" required="N" />
+  </message>
+  <message name="TradeCaptureReportRequest" msgtype="AD" msgcat="app">
+    <field name="TradeRequestID" required="Y" />
+    <field name="TradeRequestType" required="Y" />
+    <field name="SubscriptionRequestType" required="N" />
+    <field name="TradeReportID" required="N" />
+    <field name="SecondaryTradeReportID" required="N" />
+    <field name="ExecID" required="N" />
+    <field name="ExecType" required="N" />
+    <field name="OrderID" required="N" />
+    <field name="ClOrdID" required="N" />
+    <field name="MatchStatus" required="N" />
+    <field name="TrdType" required="N" />
+    <field name="TrdSubType" required="N" />
+    <field name="TransferReason" required="N" />
+    <field name="SecondaryTrdType" required="N" />
+    <field name="TradeLinkID" required="N" />
+    <field name="TrdMatchID" required="N" />
+    <component name="Parties" required="N" />
+    <component name="Instrument" required="N" />
+    <component name="InstrumentExtension" required="N" />
+    <component name="FinancingDetails" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <group name="NoDates" required="N">
+      <field name="TradeDate" required="N" />
+      <field name="TransactTime" required="N" />
+    </group>
+    <field name="ClearingBusinessDate" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="TimeBracket" required="N" />
+    <field name="Side" required="N" />
+    <field name="MultiLegReportingType" required="N" />
+    <field name="TradeInputSource" required="N" />
+    <field name="TradeInputDevice" required="N" />
+    <field name="ResponseTransportType" required="N" />
+    <field name="ResponseDestination" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="TradeCaptureReportRequestAck" msgtype="AQ" msgcat="app">
+    <field name="TradeRequestID" required="Y" />
+    <field name="TradeRequestType" required="Y" />
+    <field name="SubscriptionRequestType" required="N" />
+    <field name="TotNumTradeReports" required="N" />
+    <field name="TradeRequestResult" required="Y" />
+    <field name="TradeRequestStatus" required="Y" />
+    <component name="Instrument" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="MultiLegReportingType" required="N" />
+    <field name="ResponseTransportType" required="N" />
+    <field name="ResponseDestination" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="TradeCaptureReport" msgtype="AE" msgcat="app">
+    <field name="TradeReportID" required="Y" />
+    <field name="TradeReportTransType" required="N" />
+    <field name="TradeReportType" required="N" />
+    <field name="TradeRequestID" required="N" />
+    <field name="TrdType" required="N" />
+    <field name="TrdSubType" required="N" />
+    <field name="SecondaryTrdType" required="N" />
+    <field name="TransferReason" required="N" />
+    <field name="ExecType" required="N" />
+    <field name="TotNumTradeReports" required="N" />
+    <field name="LastRptRequested" required="N" />
+    <field name="UnsolicitedIndicator" required="N" />
+    <field name="SubscriptionRequestType" required="N" />
+    <field name="TradeReportRefID" required="N" />
+    <field name="SecondaryTradeReportRefID" required="N" />
+    <field name="SecondaryTradeReportID" required="N" />
+    <field name="TradeLinkID" required="N" />
+    <field name="TrdMatchID" required="N" />
+    <field name="ExecID" required="N" />
+    <field name="OrdStatus" required="N" />
+    <field name="SecondaryExecID" required="N" />
+    <field name="ExecRestatementReason" required="N" />
+    <field name="PreviouslyReported" required="Y" />
+    <field name="PriceType" required="N" />
+    <component name="Instrument" required="Y" />
+    <component name="FinancingDetails" required="N" />
+    <component name="OrderQtyData" required="N" />
+    <field name="QtyType" required="N" />
+    <component name="YieldData" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="UnderlyingTradingSessionID" required="N" />
+    <field name="UnderlyingTradingSessionSubID" required="N" />
+    <field name="LastQty" required="Y" />
+    <field name="LastPx" required="Y" />
+    <field name="LastParPx" required="N" />
+    <field name="LastSpotRate" required="N" />
+    <field name="LastForwardPoints" required="N" />
+    <field name="LastMkt" required="N" />
+    <field name="TradeDate" required="Y" />
+    <field name="ClearingBusinessDate" required="N" />
+    <field name="AvgPx" required="N" />
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <field name="AvgPxIndicator" required="N" />
+    <component name="PositionAmountData" required="N" />
+    <field name="MultiLegReportingType" required="N" />
+    <field name="TradeLegRefID" required="N" />
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+      <field name="LegQty" required="N" />
+      <field name="LegSwapType" required="N" />
+      <component name="LegStipulations" required="N" />
+      <field name="LegPositionEffect" required="N" />
+      <field name="LegCoveredOrUncovered" required="N" />
+      <component name="NestedParties" required="N" />
+      <field name="LegRefID" required="N" />
+      <field name="LegPrice" required="N" />
+      <field name="LegSettlType" required="N" />
+      <field name="LegSettlDate" required="N" />
+      <field name="LegLastPx" required="N" />
+    </group>
+    <field name="TransactTime" required="Y" />
+    <component name="TrdRegTimestamps" required="N" />
+    <field name="SettlType" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="MatchStatus" required="N" />
+    <field name="MatchType" required="N" />
+    <group name="NoSides" required="Y">
+      <field name="Side" required="Y" />
+      <field name="OrderID" required="Y" />
+      <field name="SecondaryOrderID" required="N" />
+      <field name="ClOrdID" required="N" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ListID" required="N" />
+      <component name="Parties" required="N" />
+      <field name="Account" required="N" />
+      <field name="AcctIDSource" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="ProcessCode" required="N" />
+      <field name="OddLot" required="N" />
+      <group name="NoClearingInstructions" required="N">
+        <field name="ClearingInstruction" required="N" />
+      </group>
+      <field name="ClearingFeeIndicator" required="N" />
+      <field name="TradeInputSource" required="N" />
+      <field name="TradeInputDevice" required="N" />
+      <field name="OrderInputDevice" required="N" />
+      <field name="Currency" required="N" />
+      <field name="ComplianceID" required="N" />
+      <field name="SolicitedFlag" required="N" />
+      <field name="OrderCapacity" required="N" />
+      <field name="OrderRestrictions" required="N" />
+      <field name="CustOrderCapacity" required="N" />
+      <field name="OrdType" required="N" />
+      <field name="ExecInst" required="N" />
+      <field name="TransBkdTime" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="TimeBracket" required="N" />
+      <component name="CommissionData" required="N" />
+      <field name="GrossTradeAmt" required="N" />
+      <field name="NumDaysInterest" required="N" />
+      <field name="ExDate" required="N" />
+      <field name="AccruedInterestRate" required="N" />
+      <field name="AccruedInterestAmt" required="N" />
+      <field name="InterestAtMaturity" required="N" />
+      <field name="EndAccruedInterestAmt" required="N" />
+      <field name="StartCash" required="N" />
+      <field name="EndCash" required="N" />
+      <field name="Concession" required="N" />
+      <field name="TotalTakedown" required="N" />
+      <field name="NetMoney" required="N" />
+      <field name="SettlCurrAmt" required="N" />
+      <field name="SettlCurrency" required="N" />
+      <field name="SettlCurrFxRate" required="N" />
+      <field name="SettlCurrFxRateCalc" required="N" />
+      <field name="PositionEffect" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="SideMultiLegReportingType" required="N" />
+      <group name="NoContAmts" required="N">
+        <field name="ContAmtType" required="N" />
+        <field name="ContAmtValue" required="N" />
+        <field name="ContAmtCurr" required="N" />
+      </group>
+      <component name="Stipulations" required="N" />
+      <group name="NoMiscFees" required="N">
+        <field name="MiscFeeAmt" required="N" />
+        <field name="MiscFeeCurr" required="N" />
+        <field name="MiscFeeType" required="N" />
+        <field name="MiscFeeBasis" required="N" />
+      </group>
+      <field name="ExchangeRule" required="N" />
+      <field name="TradeAllocIndicator" required="N" />
+      <field name="PreallocMethod" required="N" />
+      <field name="AllocID" required="N" />
+      <group name="NoAllocs" required="N">
+        <field name="AllocAccount" required="N" />
+        <field name="AllocAcctIDSource" required="N" />
+        <field name="AllocSettlCurrency" required="N" />
+        <field name="IndividualAllocID" required="N" />
+        <component name="NestedParties2" required="N" />
+        <field name="AllocQty" required="N" />
+      </group>
+    </group>
+    <field name="CopyMsgIndicator" required="N" />
+    <field name="PublishTrdIndicator" required="N" />
+    <field name="ShortSaleReason" required="N" />
+  </message>
+  <message name="TradeCaptureReportAck" msgtype="AR" msgcat="app">
+    <field name="TradeReportID" required="Y" />
+    <field name="TradeReportTransType" required="N" />
+    <field name="TradeReportType" required="N" />
+    <field name="TrdType" required="N" />
+    <field name="TrdSubType" required="N" />
+    <field name="SecondaryTrdType" required="N" />
+    <field name="TransferReason" required="N" />
+    <field name="ExecType" required="Y" />
+    <field name="TradeReportRefID" required="N" />
+    <field name="SecondaryTradeReportRefID" required="N" />
+    <field name="TrdRptStatus" required="N" />
+    <field name="TradeReportRejectReason" required="N" />
+    <field name="SecondaryTradeReportID" required="N" />
+    <field name="SubscriptionRequestType" required="N" />
+    <field name="TradeLinkID" required="N" />
+    <field name="TrdMatchID" required="N" />
+    <field name="ExecID" required="N" />
+    <field name="SecondaryExecID" required="N" />
+  <component name="Instrument" required="Y" />
+    <field name="TransactTime" required="N" />
+    <component name="TrdRegTimestamps" required="N" />
+    <field name="ResponseTransportType" required="N" />
+    <field name="ResponseDestination" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+      <field name="LegQty" required="N" />
+      <field name="LegSwapType" required="N" />
+      <component name="LegStipulations" required="N" />
+      <field name="LegPositionEffect" required="N" />
+      <field name="LegCoveredOrUncovered" required="N" />
+      <component name="NestedParties" required="N" />
+      <field name="LegRefID" required="N" />
+      <field name="LegPrice" required="N" />
+      <field name="LegSettlType" required="N" />
+      <field name="LegSettlDate" required="N" />
+      <field name="LegLastPx" required="N" />
+    </group>
+    <field name="ClearingFeeIndicator" required="N" />
+    <field name="OrderCapacity" required="N" />
+    <field name="OrderRestrictions" required="N" />
+    <field name="CustOrderCapacity" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="PositionEffect" required="N" />
+    <field name="PreallocMethod" required="N" />
+    <group name="NoAllocs" required="N">
+      <field name="AllocAccount" required="N" />
+      <field name="AllocAcctIDSource" required="N" />
+      <field name="AllocSettlCurrency" required="N" />
+      <field name="IndividualAllocID" required="N" />
+      <component name="NestedParties2" required="N" />
+      <field name="AllocQty" required="N" />
+    </group>
+  </message>
+  <message name="RegistrationInstructions" msgtype="o" msgcat="app">
+    <field name="RegistID" required="Y" />
+    <field name="RegistTransType" required="Y" />
+    <field name="RegistRefID" required="Y" />
+    <field name="ClOrdID" required="N" />
+    <component name="Parties" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="RegistAcctType" required="N" />
+    <field name="TaxAdvantageType" required="N" />
+    <field name="OwnershipType" required="N" />
+    <group name="NoRegistDtls" required="N">
+      <field name="RegistDtls" required="N" />
+      <field name="RegistEmail" required="N" />
+      <field name="MailingDtls" required="N" />
+      <field name="MailingInst" required="N" />
+      <component name="NestedParties" required="N" />
+      <field name="OwnerType" required="N" />
+      <field name="DateOfBirth" required="N" />
+      <field name="InvestorCountryOfResidence" required="N" />
+    </group>
+    <group name="NoDistribInsts" required="N">
+      <field name="DistribPaymentMethod" required="N" />
+      <field name="DistribPercentage" required="N" />
+      <field name="CashDistribCurr" required="N" />
+      <field name="CashDistribAgentName" required="N" />
+      <field name="CashDistribAgentCode" required="N" />
+      <field name="CashDistribAgentAcctNumber" required="N" />
+      <field name="CashDistribPayRef" required="N" />
+      <field name="CashDistribAgentAcctName" required="N" />
+    </group>
+  </message>
+  <message name="RegistrationInstructionsResponse" msgtype="p" msgcat="app">
+    <field name="RegistID" required="Y" />
+    <field name="RegistTransType" required="Y" />
+    <field name="RegistRefID" required="Y" />
+    <field name="ClOrdID" required="N" />
+    <component name="Parties" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="RegistStatus" required="Y" />
+    <field name="RegistRejReasonCode" required="N" />
+    <field name="RegistRejReasonText" required="N" />
+  </message>
+  <message name="PositionMaintenanceRequest" msgtype="AL" msgcat="app">
+    <field name="PosReqID" required="Y" />
+    <field name="PosTransType" required="Y" />
+    <field name="PosMaintAction" required="Y" />
+    <field name="OrigPosReqRefID" required="N" />
+    <field name="PosMaintRptRefID" required="N" />
+    <field name="ClearingBusinessDate" required="Y" />
+    <field name="SettlSessID" required="N" />
+    <field name="SettlSessSubID" required="N" />
+    <component name="Parties" required="Y" />
+    <field name="Account" required="Y" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="Y" />
+    <component name="Instrument" required="Y" />
+    <field name="Currency" required="N" />
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoTradingSessions" required="N">
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </group>
+    <field name="TransactTime" required="Y" />
+    <component name="PositionQty" required="Y" />
+    <field name="AdjustmentType" required="N" />
+    <field name="ContraryInstructionIndicator" required="N" />
+    <field name="PriorSpreadIndicator" required="N" />
+    <field name="ThresholdAmount" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="PositionMaintenanceReport" msgtype="AM" msgcat="app">
+    <field name="PosMaintRptID" required="Y" />
+    <field name="PosTransType" required="Y" />
+    <field name="PosReqID" required="N" />
+    <field name="PosMaintAction" required="Y" />
+    <field name="OrigPosReqRefID" required="Y" />            
+    <field name="PosMaintStatus" required="Y" />
+    <field name="PosMaintResult" required="N" />
+    <field name="ClearingBusinessDate" required="Y" />
+    <field name="SettlSessID" required="N" />
+    <field name="SettlSessSubID" required="N" />
+    <component name="Parties" required="N" />
+    <field name="Account" required="Y" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="Y" />
+    <component name="Instrument" required="Y" />
+    <field name="Currency" required="N" />
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoTradingSessions" required="N">
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </group>
+    <field name="TransactTime" required="Y" />
+    <component name="PositionQty" required="Y" />
+    <component name="PositionAmountData" required="Y" />
+    <field name="AdjustmentType" required="N" />
+    <field name="ThresholdAmount" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="RequestForPositions" msgtype="AN" msgcat="app">
+    <field name="PosReqID" required="Y" />
+    <field name="PosReqType" required="Y" />
+    <field name="MatchStatus" required="N" />
+    <field name="SubscriptionRequestType" required="N" />
+    <component name="Parties" required="Y" />
+    <field name="Account" required="Y" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="Y" />
+    <component name="Instrument" required="N" />
+    <field name="Currency" required="N" />
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="ClearingBusinessDate" required="Y" />
+    <field name="SettlSessID" required="N" />
+    <field name="SettlSessSubID" required="N" />
+    <group name="NoTradingSessions" required="N">
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </group>
+    <field name="TransactTime" required="Y" />
+    <field name="ResponseTransportType" required="N" />
+    <field name="ResponseDestination" required="N" />
+    <field name="Text" required="N" />   
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="RequestForPositionsAck" msgtype="AO" msgcat="app">
+    <field name="PosMaintRptID" required="Y" />
+    <field name="PosReqID" required="N" />
+    <field name="TotalNumPosReports" required="N" />
+    <field name="UnsolicitedIndicator" required="N" />
+    <field name="PosReqResult" required="Y" />
+    <field name="PosReqStatus" required="Y" />
+    <component name="Parties" required="Y" />
+    <field name="Account" required="Y" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="Y" />
+    <component name="Instrument" required="N" />
+    <field name="Currency" required="N" />
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="ResponseTransportType" required="N" />
+    <field name="ResponseDestination" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="PositionReport" msgtype="AP" msgcat="app">
+    <field name="PosMaintRptID" required="Y" />
+    <field name="PosReqID" required="N" />
+    <field name="PosReqType" required="N" />
+    <field name="SubscriptionRequestType" required="N" />
+    <field name="TotalNumPosReports" required="N" />
+    <field name="UnsolicitedIndicator" required="N" />
+    <field name="PosReqResult" required="Y" />
+    <field name="ClearingBusinessDate" required="Y" />
+    <field name="SettlSessID" required="N" />
+    <field name="SettlSessSubID" required="N" />
+    <component name="Parties" required="Y" />
+    <field name="Account" required="Y" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="Y" />
+    <component name="Instrument" required="N" />
+    <field name="Currency" required="N" />
+    <field name="SettlPrice" required="Y" />   
+    <field name="SettlPriceType" required="Y" />
+    <field name="PriorSettlPrice" required="Y" />   
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+      <field name="UnderlyingSettlPrice" required="Y" />
+      <field name="UnderlyingSettlPriceType" required="Y" />
+    </group>
+    <component name="PositionQty" required="Y" />
+    <component name="PositionAmountData" required="Y" />
+    <field name="RegistStatus" required="N" />   RegNonRegInd
+    <field name="DeliveryDate" required="N" />   
+    <field name="Text" required="N" />   
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="AssignmentReport" msgtype="AW" msgcat="app">
+    <field name="AsgnRptID" required="Y" />
+    <field name="TotNumAssignmentReports" required="N" />
+    <field name="LastRptRequested" required="N" />
+    <component name="Parties" required="Y" />
+    <field name="Account" required="N" />
+    <field name="AccountType" required="Y" />
+    <component name="Instrument" required="N" />
+    <field name="Currency" required="N" />
+    <field name="NoLegs" required="N" />
+    <component name="InstrumentLeg" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <component name="PositionQty" required="Y" />
+    <component name="PositionAmountData" required="Y" />
+    <field name="ThresholdAmount" required="N" />
+    <field name="SettlPrice" required="Y" />
+    <field name="SettlPriceType" required="Y" />
+    <field name="UnderlyingSettlPrice" required="Y" />
+    <field name="ExpireDate" required="N" />
+    <field name="AssignmentMethod" required="Y" />
+    <field name="AssignmentUnit" required="N" />
+    <field name="OpenInterest" required="Y" />
+    <field name="ExerciseMethod" required="Y" />
+    <field name="SettlSessID" required="Y" />
+    <field name="SettlSessSubID" required="Y" />
+    <field name="ClearingBusinessDate" required="Y" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="CollateralRequest" msgtype="AX" msgcat="app">
+    <field name="CollReqID" required="Y" />
+    <field name="CollAsgnReason" required="Y" />
+    <field name="TransactTime" required="Y" />
+    <field name="ExpireTime" required="N" />
+    <component name="Parties" required="N" />
+    <field name="Account" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="ClOrdID" required="N" />
+    <field name="OrderID" required="N" />
+    <field name="SecondaryOrderID" required="N" />
+    <field name="SecondaryClOrdID" required="N" />
+    <group name="NoExecs" required="N">
+      <field name="ExecID" required="N" />
+    </group>
+    <group name="NoTrades" required="N">
+      <field name="TradeReportID" required="N" />
+      <field name="SecondaryTradeReportID" required="N" /> 
+    </group>
+    <component name="Instrument" required="N" />
+    <component name="FinancingDetails" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="Quantity" required="N" />
+    <field name="QtyType" required="N" />
+    <field name="Currency" required="N" />
+    <field name="NoLegs" required="N" />
+    <component name="InstrumentLeg" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+      <field name="CollAction" required="N" />
+    </group>
+    <field name="MarginExcess" required="N" />   
+    <field name="TotalNetValue" required="N" />   
+    <field name="CashOutstanding" required="N" />   
+    <component name="TrdRegTimestamps" required="N" />
+    <field name="Side" required="N" />   
+    <group name="NoMiscFees" required="N">
+      <field name="MiscFeeAmt" required="N" />
+      <field name="MiscFeeCurr" required="N" /> 
+      <field name="MiscFeeType" required="N" />
+      <field name="MiscFeeBasis" required="N" /> 
+    </group>
+    <field name="Price" required="N" />   
+    <field name="PriceType" required="N" />   
+    <field name="AccruedInterestAmt" required="N" />   
+    <field name="EndAccruedInterestAmt" required="N" />   
+    <field name="StartCash" required="N" />   
+    <field name="EndCash" required="N" />   
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <component name="Stipulations" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="SettlSessID" required="N" />   
+    <field name="SettlSessSubID" required="N" />   
+    <field name="ClearingBusinessDate" required="N" />   
+    <field name="Text" required="N" />   
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="CollateralAssignment" msgtype="AY" msgcat="app">
+    <field name="CollAsgnID" required="Y" />
+    <field name="CollReqID" required="N" />
+    <field name="CollAsgnReason" required="Y" />
+    <field name="CollAsgnTransType" required="Y" />
+    <field name="CollAsgnRefID" required="N" />
+    <field name="TransactTime" required="Y" />
+    <field name="ExpireTime" required="N" />
+    <component name="Parties" required="N" />
+    <field name="Account" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="ClOrdID" required="N" />
+    <field name="OrderID" required="N" />
+    <field name="SecondaryOrderID" required="N" />
+    <field name="SecondaryClOrdID" required="N" />
+    <group name="NoExecs" required="N">
+      <field name="ExecID" required="N" />
+    </group>
+    <group name="NoTrades" required="N">
+      <field name="TradeReportID" required="N" />
+      <field name="SecondaryTradeReportID" required="N" /> 
+    </group>
+    <component name="Instrument" required="N" />
+    <component name="FinancingDetails" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="Quantity" required="N" />
+    <field name="QtyType" required="N" />
+    <field name="Currency" required="N" />
+    <field name="NoLegs" required="N" />
+    <component name="InstrumentLeg" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+      <field name="CollAction" required="N" />
+    </group>
+    <field name="MarginExcess" required="N" />   
+    <field name="TotalNetValue" required="N" />   
+    <field name="CashOutstanding" required="N" />   
+    <component name="TrdRegTimestamps" required="N" />
+    <field name="Side" required="N" />               
+    <group name="NoMiscFees" required="N">
+      <field name="MiscFeeAmt" required="N" />
+      <field name="MiscFeeCurr" required="N" /> 
+      <field name="MiscFeeType" required="N" />
+      <field name="MiscFeeBasis" required="N" /> 
+    </group>
+    <field name="Price" required="N" />   
+    <field name="PriceType" required="N" />   
+    <field name="AccruedInterestAmt" required="N" />   
+    <field name="EndAccruedInterestAmt" required="N" />   
+    <field name="StartCash" required="N" />   
+    <field name="EndCash" required="N" />   
+  <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <component name="Stipulations" required="N" />
+    <component name="SettlInstructionsData" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="SettlSessID" required="N" />   
+    <field name="SettlSessSubID" required="N" />   
+    <field name="ClearingBusinessDate" required="N" />   
+    <field name="Text" required="N" />   
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="CollateralResponse" msgtype="AZ" msgcat="app">
+    <field name="CollRespID" required="Y" />
+    <field name="CollAsgnID" required="Y" />
+    <field name="CollReqID" required="N" />
+    <field name="CollAsgnReason" required="Y" />
+    <field name="CollAsgnTransType" required="N" />
+    <field name="CollAsgnRespType" required="Y" />
+    <field name="CollAsgnRejectReason" required="N" />
+    <field name="TransactTime" required="Y" />
+    <component name="Parties" required="N" />
+    <field name="Account" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="ClOrdID" required="N" />
+    <field name="OrderID" required="N" />
+    <field name="SecondaryOrderID" required="N" />
+    <field name="SecondaryClOrdID" required="N" />
+    <group name="NoExecs" required="N">
+      <field name="ExecID" required="N" />
+    </group>
+    <group name="NoTrades" required="N">
+      <field name="TradeReportID" required="N" />
+      <field name="SecondaryTradeReportID" required="N" /> 
+    </group>
+    <component name="Instrument" required="N" />
+    <component name="FinancingDetails" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="Quantity" required="N" />
+    <field name="QtyType" required="N" />
+    <field name="Currency" required="N" />
+    <field name="NoLegs" required="N" />
+    <component name="InstrumentLeg" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+      <field name="CollAction" required="N" />
+    </group>
+    <field name="MarginExcess" required="N" />   
+    <field name="TotalNetValue" required="N" />   
+    <field name="CashOutstanding" required="N" />   
+    <component name="TrdRegTimestamps" required="N" />            
+    <field name="Side" required="N" />               
+    <group name="NoMiscFees" required="N">
+      <field name="MiscFeeAmt" required="N" />
+      <field name="MiscFeeCurr" required="N" /> 
+      <field name="MiscFeeType" required="N" />
+      <field name="MiscFeeBasis" required="N" /> 
+    </group>
+    <field name="Price" required="N" />   
+    <field name="PriceType" required="N" />   
+    <field name="AccruedInterestAmt" required="N" />   
+    <field name="EndAccruedInterestAmt" required="N" />   
+    <field name="StartCash" required="N" />   
+    <field name="EndCash" required="N" />   
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <component name="Stipulations" required="N" />
+    <field name="Text" required="N" />   
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="CollateralReport" msgtype="BA" msgcat="app">
+    <field name="CollRptID" required="Y" />
+    <field name="CollInquiryID" required="N" />
+    <field name="CollStatus" required="Y" />
+    <field name="TotNumReports" required="N" />
+    <field name="LastRptRequested" required="N" />
+    <component name="Parties" required="N" />
+    <field name="Account" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="ClOrdID" required="N" />
+    <field name="OrderID" required="N" />
+    <field name="SecondaryOrderID" required="N" />
+    <field name="SecondaryClOrdID" required="N" />
+    <group name="NoExecs" required="N">
+      <field name="ExecID" required="N" />
+    </group>
+    <group name="NoTrades" required="N">
+      <field name="TradeReportID" required="N" />
+      <field name="SecondaryTradeReportID" required="N" /> 
+    </group>
+    <component name="Instrument" required="N" />
+    <component name="FinancingDetails" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="Quantity" required="N" />
+    <field name="QtyType" required="N" />
+    <field name="Currency" required="N" />
+    <field name="NoLegs" required="N" />
+    <component name="InstrumentLeg" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="MarginExcess" required="N" />   
+    <field name="TotalNetValue" required="N" />   
+    <field name="CashOutstanding" required="N" />   
+    <component name="TrdRegTimestamps" required="N" />
+    <field name="Side" required="N" />   
+    <group name="NoMiscFees" required="N">
+      <field name="MiscFeeAmt" required="N" />
+      <field name="MiscFeeCurr" required="N" /> 
+      <field name="MiscFeeType" required="N" />
+      <field name="MiscFeeBasis" required="N" /> 
+    </group>
+    <field name="Price" required="N" />   
+    <field name="PriceType" required="N" />   
+    <field name="AccruedInterestAmt" required="N" />   
+    <field name="EndAccruedInterestAmt" required="N" />   
+    <field name="StartCash" required="N" />   
+    <field name="EndCash" required="N" />   
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <component name="Stipulations" required="N" />
+    <component name="SettlInstructionsData" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="SettlSessID" required="N" />   
+    <field name="SettlSessSubID" required="N" />   
+    <field name="ClearingBusinessDate" required="N" />   
+    <field name="Text" required="N" />   
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="CollateralInquiry" msgtype="BB" msgcat="app">
+    <field name="CollInquiryID" required="N" />
+    <group name="NoCollInquiryQualifier" required="N">
+      <field name="CollInquiryQualifier" required="N" />
+    </group>
+    <field name="SubscriptionRequestType" required="N" />
+    <field name="ResponseTransportType" required="N" />
+    <field name="ResponseDestination" required="N" />
+    <component name="Parties" required="N" />
+    <field name="Account" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="ClOrdID" required="N" />
+    <field name="OrderID" required="N" />
+    <field name="SecondaryOrderID" required="N" />
+    <field name="SecondaryClOrdID" required="N" />
+    <group name="NoExecs" required="N">
+      <field name="ExecID" required="N" />
+    </group>
+    <group name="NoTrades" required="N">
+      <field name="TradeReportID" required="N" />
+      <field name="SecondaryTradeReportID" required="N" /> 
+    </group>
+    <component name="Instrument" required="N" />
+    <component name="FinancingDetails" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="Quantity" required="N" />
+    <field name="QtyType" required="N" />
+    <field name="Currency" required="N" />
+    <field name="NoLegs" required="N" />
+    <component name="InstrumentLeg" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="MarginExcess" required="N" />   
+    <field name="TotalNetValue" required="N" />   
+    <field name="CashOutstanding" required="N" />   
+    <component name="TrdRegTimestamps" required="N" />
+    <field name="Side" required="N" />               
+    <field name="Price" required="N" />   
+    <field name="PriceType" required="N" />   
+    <field name="AccruedInterestAmt" required="N" />   
+    <field name="EndAccruedInterestAmt" required="N" />   
+    <field name="StartCash" required="N" />   
+    <field name="EndCash" required="N" />   
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <component name="Stipulations" required="N" />
+    <component name="SettlInstructionsData" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="SettlSessID" required="N" />   
+    <field name="SettlSessSubID" required="N" />   
+    <field name="ClearingBusinessDate" required="N" />   
+    <field name="Text" required="N" />   
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="NetworkStatusRequest" msgtype="BC" msgcat="app">
+    <field name="NetworkRequestType" required="Y" />
+    <field name="NetworkRequestID" required="Y" />
+    <group name="NoCompIDs" required="N">
+      <field name="RefCompID" required="N" />
+      <field name="RefSubID" required="N" />
+      <field name="LocationID" required="N" />
+      <field name="DeskID" required="N" />
+    </group>
+  </message>
+  <message name="NetworkStatusRequest" msgtype="BD" msgcat="app">
+    <field name="NetworkStatusResponseType" required="Y" />
+    <field name="NetworkRequestID" required="N" />
+    <field name="NetworkResponseID" required="N" />
+    <field name="LastNetworkResponseID" required="N" />
+    <group name="NoCompIDs" required="Y">
+      <field name="RefCompID" required="N" />
+      <field name="RefSubID" required="N" />
+      <field name="LocationID" required="N" />
+      <field name="DeskID" required="N" />
+      <field name="StatusValue" required="N" />
+      <field name="StatusText" required="N" />
+    </group>
+  </message>
+  <message name="CollateralInquiryAck" msgtype="BG" msgcat="app">
+    <field name="CollInquiryID" required="Y" />
+    <field name="CollInquiryStatus" required="Y" />
+    <field name="CollInquiryResult" required="N" />
+    <group name="NoCollInquiryQualifier" required="N">
+      <field name="CollInquiryQualifier" required="N" />
+    </group>
+    <field name="TotNumReports" required="N" />
+    <component name="Parties" required="N" />
+    <field name="Account" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="ClOrdID" required="N" />
+    <field name="OrderID" required="N" />
+    <field name="SecondaryOrderID" required="N" />
+    <field name="SecondaryClOrdID" required="N" />
+    <group name="NoExecs" required="N">
+      <field name="ExecID" required="N" />
+    </group>
+    <group name="NoTrades" required="N">
+      <field name="TradeReportID" required="N" />
+      <field name="SecondaryTradeReportID" required="N" /> 
+    </group>
+    <component name="Instrument" required="N" />
+    <component name="FinancingDetails" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="Quantity" required="N" />
+    <field name="QtyType" required="N" />
+    <field name="Currency" required="N" />
+    <field name="NoLegs" required="N" />
+    <component name="InstrumentLeg" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="SettlSessID" required="N" />   
+    <field name="SettlSessSubID" required="N" />   
+    <field name="ClearingBusinessDate" required="N" />   
+    <field name="ResponseTransportType" required="N" />
+    <field name="ResponseDestination" required="N" />
+    <field name="Text" required="N" />   
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  </messages>
+  <components>
+    <component name="Instrument">
+      <field name="Symbol" required="Y" />
+      <field name="SymbolSfx" required="N" />
+      <field name="SecurityID" required="N" />
+      <field name="SecurityIDSource" required="N" />
+      <group name="NoSecurityAltID" required="N">
+        <field name="SecurityAltID" required="N" />
+        <field name="SecurityAltIDSource" required="N" />
+      </group>
+      <field name="Product" required="N" />
+      <field name="CFICode" required="N" />
+      <field name="SecurityType" required="N" />
+      <field name="SecuritySubType" required="N" />
+      <field name="MaturityMonthYear" required="N" />
+      <field name="MaturityDate" required="N" />
+      <field name="CouponPaymentDate" required="N" />
+      <field name="IssueDate" required="N" />
+      <field name="RepoCollateralSecurityType" required="N" />
+      <field name="RepurchaseTerm" required="N" />
+      <field name="RepurchaseRate" required="N" />
+      <field name="Factor" required="N" />
+      <field name="CreditRating" required="N" />
+      <field name="InstrRegistry" required="N" />
+      <field name="CountryOfIssue" required="N" />
+      <field name="StateOrProvinceOfIssue" required="N" />
+      <field name="LocaleOfIssue" required="N" />
+      <field name="RedemptionDate" required="N" />
+      <field name="StrikePrice" required="N" />
+      <field name="StrikeCurrency" required="N" />
+      <field name="OptAttribute" required="N" />
+      <field name="ContractMultiplier" required="N" />
+      <field name="CouponRate" required="N" />
+      <field name="SecurityExchange" required="N" />
+      <field name="Issuer" required="N" />
+      <field name="EncodedIssuerLen" required="N" />
+      <field name="EncodedIssuer" required="N" />
+      <field name="SecurityDesc" required="N" />
+      <field name="EncodedSecurityDescLen" required="N" />
+      <field name="EncodedSecurityDesc" required="N" />
+      <field name="Pool" required="N" />
+      <field name="ContractSettlMonth" required="N" />
+      <field name="CPProgram" required="N" />
+      <field name="CPRegType" required="N" />
+      <group name="NoEvents" required="N">
+        <field name="EventType" required="N" />
+        <field name="EventDate" required="N" />
+        <field name="EventPx" required="N" />
+        <field name="EventText" required="N" />
+      </group>
+      <field name="DatedDate" required="N" />
+      <field name="InterestAccrualDate" required="N" />
+    </component>
+    <component name="UnderlyingInstrument">
+      <field name="UnderlyingSymbol" required="Y" />
+      <field name="UnderlyingSymbolSfx" required="N" />
+      <field name="UnderlyingSecurityID" required="N" />
+      <field name="UnderlyingSecurityIDSource" required="N" />
+      <group name="NoUnderlyingSecurityAltID" required="N">
+        <field name="UnderlyingSecurityAltID" required="N" />
+        <field name="UnderlyingSecurityAltIDSource" required="N" />
+      </group>
+      <field name="UnderlyingProduct" required="N" />
+      <field name="UnderlyingCFICode" required="N" />
+      <field name="UnderlyingSecurityType" required="N" />
+      <field name="UnderlyingSecuritySubType" required="N" />
+      <field name="UnderlyingMaturityMonthYear" required="N" />
+      <field name="UnderlyingMaturityDate" required="N" />
+      <field name="UnderlyingCouponPaymentDate" required="N" />
+      <field name="UnderlyingIssueDate" required="N" />
+      <field name="UnderlyingRepoCollateralSecurityType" required="N" />
+      <field name="UnderlyingRepurchaseTerm" required="N" />
+      <field name="UnderlyingRepurchaseRate" required="N" />
+      <field name="UnderlyingFactor" required="N" />
+      <field name="UnderlyingCreditRating" required="N" />
+      <field name="UnderlyingInstrRegistry" required="N" />
+      <field name="UnderlyingCountryOfIssue" required="N" />
+      <field name="UnderlyingStateOrProvinceOfIssue" required="N" />
+      <field name="UnderlyingLocaleOfIssue" required="N" />
+      <field name="UnderlyingRedemptionDate" required="N" />
+      <field name="UnderlyingStrikePrice" required="N" />
+      <field name="UnderlyingStrikeCurrency" required="N" />
+      <field name="UnderlyingOptAttribute" required="N" />
+      <field name="UnderlyingContractMultiplier" required="N" />
+      <field name="UnderlyingCouponRate" required="N" />
+      <field name="UnderlyingSecurityExchange" required="N" />
+      <field name="UnderlyingIssuer" required="N" />
+      <field name="EncodedUnderlyingIssuerLen" required="N" />
+      <field name="EncodedUnderlyingIssuer" required="N" />
+      <field name="UnderlyingSecurityDesc" required="N" />
+      <field name="EncodedUnderlyingSecurityDescLen" required="N" />
+      <field name="EncodedUnderlyingSecurityDesc" required="N" />
+      <field name="UnderlyingCPProgram" required="N" />
+      <field name="UnderlyingCPRegType" required="N" />
+      <field name="UnderlyingCurrency" required="N" />
+      <field name="UnderlyingQty" required="N" />
+      <field name="UnderlyingPx" required="N" />
+      <field name="UnderlyingDirtyPrice" required="N" />
+      <field name="UnderlyingEndPrice" required="N" />
+      <field name="UnderlyingStartValue" required="N" />
+      <field name="UnderlyingCurrentValue" required="N" />
+      <field name="UnderlyingEndValue" required="N" />
+      <component name="UnderlyingStipulations" required="N" />
+    </component>
+    <component name="InstrumentLeg">
+      <field name="LegSymbol" required="N" />
+      <field name="LegSymbolSfx" required="N" />
+      <field name="LegSecurityID" required="N" />
+      <field name="LegSecurityIDSource" required="N" />
+      <group name="NoLegSecurityAltID" required="N">
+        <field name="LegSecurityAltID" required="N" />
+        <field name="LegSecurityAltIDSource" required="N" />
+      </group>
+      <field name="LegProduct" required="N" />
+      <field name="LegCFICode" required="N" />
+      <field name="LegSecurityType" required="N" />
+      <field name="LegSecuritySubType" required="N" />
+      <field name="LegMaturityMonthYear" required="N" />
+      <field name="LegMaturityDate" required="N" />
+      <field name="LegCouponPaymentDate" required="N" />
+      <field name="LegIssueDate" required="N" />
+      <field name="LegRepoCollateralSecurityType" required="N" />
+      <field name="LegRepurchaseTerm" required="N" />
+      <field name="LegRepurchaseRate" required="N" />
+      <field name="LegFactor" required="N" />
+      <field name="LegCreditRating" required="N" />
+      <field name="LegInstrRegistry" required="N" />
+      <field name="LegCountryOfIssue" required="N" />
+      <field name="LegStateOrProvinceOfIssue" required="N" />
+      <field name="LegLocaleOfIssue" required="N" />
+      <field name="LegRedemptionDate" required="N" />
+      <field name="LegStrikePrice" required="N" />
+      <field name="LegStrikeCurrency" required="N" />
+      <field name="LegOptAttribute" required="N" />
+      <field name="LegContractMultiplier" required="N" />
+      <field name="LegCouponRate" required="N" />
+      <field name="LegSecurityExchange" required="N" />
+      <field name="LegIssuer" required="N" />
+      <field name="EncodedLegIssuerLen" required="N" />
+      <field name="EncodedLegIssuer" required="N" />
+      <field name="LegSecurityDesc" required="N" />
+      <field name="EncodedLegSecurityDescLen" required="N" />
+      <field name="EncodedLegSecurityDesc" required="N" />
+      <field name="LegRatioQty" required="N" />
+      <field name="LegSide" required="N" />
+      <field name="LegCurrency" required="N" />
+      <field name="LegPool" required="N" />
+      <field name="LegDatedDate" required="N" />
+      <field name="LegContractSettlMonth" required="N" />
+      <field name="LegInterestAccrualDate" required="N" />
+    </component>
+    <component name="InstrumentExtension">
+      <field name="DeliveryForm" required="N" />
+      <field name="PctAtRisk" required="N" />
+      <group name="NoInstrAttrib" required="N">
+        <field name="InstrAttribType" required="N" />
+        <field name="InstrAttribValue" required="N" />
+      </group>
+    </component>
+    <component name="OrderQtyData">
+      <field name="OrderQty" required="N" />
+      <field name="CashOrderQty" required="N" />
+      <field name="OrderPercent" required="N" />
+      <field name="RoundingDirection" required="N" />
+      <field name="RoundingModulus" required="N" />
+    </component>
+    <component name="CommissionData">
+      <field name="Commission" required="N" />
+      <field name="CommType" required="N" />
+      <field name="CommCurrency" required="N" />
+      <field name="FundRenewWaiv" required="N" />
+    </component>
+    <component name="Parties">
+      <group name="NoPartyIDs" required="N">
+        <field name="PartyID" required="N" />
+        <field name="PartyIDSource" required="N" />
+        <field name="PartyRole" required="N" />
+        <group name="NoPartySubIDs" required="N">
+          <field name="PartySubID" required="N" />
+          <field name="PartySubIDType" required="N" />
+        </group>
+      </group>
+    </component>
+    <component name="NestedParties">
+      <group name="NoNestedPartyIDs" required="N">
+        <field name="NestedPartyID" required="N" />
+        <field name="NestedPartyIDSource" required="N" />
+        <field name="NestedPartyRole" required="N" />
+        <group name="NoNestedPartySubIDs" required="N">
+          <field name="NestedPartySubID" required="N" />
+          <field name="NestedPartySubIDType" required="N" />
+        </group>
+      </group>
+    </component>
+    <component name="NestedParties2">
+      <group name="NoNested2PartyIDs" required="N">
+        <field name="Nested2PartyID" required="N" />
+        <field name="Nested2PartyIDSource" required="N" />
+        <field name="Nested2PartyRole" required="N" />
+        <group name="NoNested2PartySubIDs" required="N">
+          <field name="Nested2PartySubID" required="N" />
+          <field name="Nested2PartySubIDType" required="N" />
+        </group>
+      </group>
+    </component>
+    <component name="NestedParties3">
+      <group name="NoNested3PartyIDs" required="N">
+        <field name="Nested3PartyID" required="N" />
+        <field name="Nested3PartyIDSource" required="N" />
+        <field name="Nested3PartyRole" required="N" />
+        <group name="NoNested3PartySubIDs" required="N">
+          <field name="Nested3PartySubID" required="N" />
+          <field name="Nested3PartySubIDType" required="N" />
+          </group>
+      </group>
+    </component>
+    <component name="SettlParties">
+      <group name="NoSettlPartyIDs" required="N">
+        <field name="SettlPartyID" required="N" />
+        <field name="SettlPartyIDSource" required="N" />
+        <field name="SettlPartyRole" required="N" />
+        <group name="NoSettlPartySubIDs" required="N">
+          <field name="SettlPartySubID" required="N" />
+          <field name="SettlPartySubIDType" required="N" />
+        </group>
+      </group>
+    </component>
+    <component name="SpreadOrBenchmarkCurveData">
+      <field name="Spread" required="N" />
+      <field name="BenchmarkCurveCurrency" required="N" />
+      <field name="BenchmarkCurveName" required="N" />
+      <field name="BenchmarkCurvePoint" required="N" />
+      <field name="BenchmarkPrice" required="N" />
+      <field name="BenchmarkPriceType" required="N" />
+      <field name="BenchmarkSecurityID" required="N" />
+      <field name="BenchmarkSecurityIDSource" required="N" />
+    </component>
+    <component name="LegBenchmarkCurveData">
+      <field name="LegBenchmarkCurveCurrency" required="N" />
+      <field name="LegBenchmarkCurveName" required="N" />
+      <field name="LegBenchmarkCurvePoint" required="N" />
+      <field name="LegBenchmarkPrice" required="N" />
+      <field name="LegBenchmarkPriceType" required="N" />
+    </component>
+    <component name="Stipulations">
+      <group name="NoStipulations" required="N">
+        <field name="StipulationType" required="N" />
+        <field name="StipulationValue" required="N" />
+      </group>
+    </component>
+    <component name="UnderlyingStipulations">
+      <group name="NoUnderlyingStips" required="N">
+        <field name="UnderlyingStipType" required="N" />
+        <field name="UnderlyingStipValue" required="N" />
+      </group>
+    </component>
+    <component name="LegStipulations">
+      <group name="NoLegStipulations" required="N">
+        <field name="LegStipulationType" required="N" />
+        <field name="LegStipulationValue" required="N" />
+      </group>
+    </component>
+    <component name="YieldData">
+      <field name="YieldType" required="N" />
+      <field name="Yield" required="N" />
+      <field name="YieldCalcDate" required="N" />
+      <field name="YieldRedemptionDate" required="N" />
+      <field name="YieldRedemptionPrice" required="N" />
+      <field name="YieldRedemptionPriceType" required="N" />
+    </component>
+    <component name="PositionQty">
+      <group name="NoPositions" required="Y">
+        <field name="PosType" required="N" />
+        <field name="LongQty" required="N" />   
+        <field name="ShortQty" required="N" />   
+        <field name="PosQtyStatus" required="N" />   
+        <component name="NestedParties" required="N" />
+      </group>
+    </component>
+    <component name="PositionAmountData">
+      <group name="NoPosAmt" required="Y">
+        <field name="PosAmtType" required="Y" />
+        <field name="PosAmt" required="Y" />
+      </group>
+    </component>
+    <component name="TrdRegTimestamps">
+      <group name="NoTrdRegTimestamps" required="Y">
+        <field name="TrdRegTimestamp" required="N" />
+        <field name="TrdRegTimestampType" required="N" />
+        <field name="TrdRegTimestampOrigin" required="N" />
+      </group>
+    </component>
+    <component name="SettlInstructionsData">
+      <field name="SettlDeliveryType" required="N" />
+      <field name="StandInstDbType" required="N" />
+      <field name="StandInstDbName" required="N" />
+      <field name="StandInstDbID" required="N" />
+      <group name="NoDlvyInst" required="N">
+        <field name="SettlInstSource" required="N" />
+        <field name="DlvyInstType" required="N" />
+        <component name="SettlParties" required="N" />
+      </group>
+    </component>
+    <component name="PegInstructions">
+      <field name="PegOffsetValue" required="N" />
+      <field name="PegMoveType" required="N" />
+      <field name="PegOffsetType" required="N" />
+      <field name="PegLimitType" required="N" />
+      <field name="PegRoundDirection" required="N" />
+      <field name="PegScope" required="N" />
+    </component>
+    <component name="DiscretionInstructions">
+      <field name="DiscretionInst" required="N" />
+      <field name="DiscretionOffsetValue" required="N" />
+      <field name="DiscretionMoveType" required="N" />
+      <field name="DiscretionOffsetType" required="N" />
+      <field name="DiscretionLimitType" required="N" />
+      <field name="DiscretionRoundDirection" required="N" />
+      <field name="DiscretionScope" required="N" />
+    </component>
+    <component name="FinancingDetails">
+      <field name="AgreementDesc" required="N" />
+      <field name="AgreementID" required="N" />
+      <field name="AgreementDate" required="N" />
+      <field name="AgreementCurrency" required="N" />
+      <field name="TerminationType" required="N" />
+      <field name="StartDate" required="N" />
+      <field name="EndDate" required="N" />
+      <field name="DeliveryType" required="N" />
+      <field name="MarginRatio" required="N" />
+    </component>
+  </components>
+  <fields>
+    <field number="1" name="Account" type="STRING" />
+    <field number="2" name="AdvId" type="STRING" />
+    <field number="3" name="AdvRefID" type="STRING" />
+    <field number="4" name="AdvSide" type="CHAR">
+      <value enum="B" description="BUY" />
+      <value enum="S" description="SELL" />
+      <value enum="X" description="CROSS" />
+      <value enum="T" description="TRADE" />
+    </field>
+    <field number="5" name="AdvTransType" type="STRING">
+      <value enum="N" description="NEW" />
+      <value enum="C" description="CANCEL" />
+      <value enum="R" description="REPLACE" />
+    </field>
+    <field number="6" name="AvgPx" type="PRICE" />
+    <field number="7" name="BeginSeqNo" type="SEQNUM" />
+    <field number="8" name="BeginString" type="STRING" />
+    <field number="9" name="BodyLength" type="LENGTH" />
+    <field number="10" name="CheckSum" type="STRING" />
+    <field number="11" name="ClOrdID" type="STRING" />
+    <field number="12" name="Commission" type="AMT" />
+    <field number="13" name="CommType" type="CHAR">
+      <value enum="1" description="PER_UNIT" />
+      <value enum="2" description="PERCENTAGE" />
+      <value enum="3" description="ABSOLUTE" />
+      <value enum="4" description="PERCENTAGE_WAIVED_CASH_DISCOUNT" />
+      <value enum="5" description="PERCENTAGE_WAIVED_ENHANCED_UNITS" />
+      <value enum="6" description="POINTS_PER_BOND_OR_OR_CONTRACT" />
+    </field>
+    <field number="14" name="CumQty" type="QTY" />
+    <field number="15" name="Currency" type="CURRENCY" />
+    <field number="16" name="EndSeqNo" type="SEQNUM" />
+    <field number="17" name="ExecID" type="STRING" />
+    <field number="18" name="ExecInst" type="MULTIPLEVALUESTRING">
+      <value enum="1" description="NOT_HELD" />
+      <value enum="2" description="WORK" />
+      <value enum="3" description="GO_ALONG" />
+      <value enum="4" description="OVER_THE_DAY" />
+      <value enum="5" description="HELD" />
+      <value enum="6" description="PARTICIPATE_DONT_INITIATE" />
+      <value enum="7" description="STRICT_SCALE" />
+      <value enum="8" description="TRY_TO_SCALE" />
+      <value enum="9" description="STAY_ON_BIDSIDE" />
+      <value enum="0" description="STAY_ON_OFFERSIDE" />
+      <value enum="A" description="NO_CROSS" />
+      <value enum="B" description="OK_TO_CROSS" />
+      <value enum="C" description="CALL_FIRST" />
+      <value enum="D" description="PERCENT_OF_VOLUME" />
+      <value enum="E" description="DO_NOT_INCREASE" />
+      <value enum="F" description="DO_NOT_REDUCE" />
+      <value enum="G" description="ALL_OR_NONE" />
+      <value enum="H" description="REINSTATE_ON_SYSTEM_FAILURE" />
+      <value enum="I" description="INSTITUTIONS_ONLY" />
+      <value enum="J" description="REINSTATE_ON_TRADING_HALT" />
+      <value enum="K" description="CANCEL_ON_TRADING_HALT" />
+      <value enum="L" description="LAST_PEG" />
+      <value enum="M" description="MID_PRICE" />
+      <value enum="N" description="NON_NEGOTIABLE" />
+      <value enum="O" description="OPENING_PEG" />
+      <value enum="P" description="MARKET_PEG" />
+      <value enum="Q" description="CANCEL_ON_SYSTEM_FAILURE" />
+      <value enum="R" description="PRIMARY_PEG" />
+      <value enum="S" description="SUSPEND" />
+      <value enum="T" description="FIXED_PEG_TO_LOCAL_BEST_BID_OR_OFFER_AT_TIME_OF_ORDER" />
+      <value enum="U" description="CUSTOMER_DISPLAY_INSTRUCTION" />
+      <value enum="V" description="NETTING" />
+      <value enum="W" description="PEG_TO_VWAP" />
+      <value enum="X" description="TRADE_ALONG" />
+      <value enum="Y" description="TRY_TO_STOP" />
+      <value enum="Z" description="CANCEL_IF_NOT_BEST" />
+      <value enum="a" description="TRAILING_STOP_PEG" />
+      <value enum="b" description="STRICT_LIMIT" />
+      <value enum="c" description="IGNORE_PRICE_VALIDITY_CHECKS" />
+      <value enum="d" description="PEG_TO_LIMIT_PRICE" />
+      <value enum="e" description="WORK_TO_TARGET_STRATEGY" />
+    </field>
+    <field number="19" name="ExecRefID" type="STRING" />
+    <field number="20" name="ExecTransType" type="CHAR" until="43">
+      <value enum="0" description="NEW" />
+      <value enum="1" description="CANCEL" />
+      <value enum="2" description="CORRECT" />
+      <value enum="3" description="STATUS" />
+    </field>
+    <field number="21" name="HandlInst" type="CHAR">
+      <value enum="1" description="AUTOMATED_EXECUTION_ORDER_PRIVATE" />
+      <value enum="2" description="AUTOMATED_EXECUTION_ORDER_PUBLIC" />
+      <value enum="3" description="MANUAL_ORDER" />
+    </field>
+    <field number="22" name="SecurityIDSource" type="STRING">
+      <value enum="1" description="CUSIP" />
+      <value enum="2" description="SEDOL" />
+      <value enum="3" description="QUIK" />
+      <value enum="4" description="ISIN_NUMBER" />
+      <value enum="5" description="RIC_CODE" />
+      <value enum="6" description="ISO_CURRENCY_CODE" />
+      <value enum="7" description="ISO_COUNTRY_CODE" />
+      <value enum="8" description="EXCHANGE_SYMBOL" />
+      <value enum="9" description="CONSOLIDATED_TAPE_ASSOCIATION" />
+      <value enum="A" description="BLOOMBERG_SYMBOL" />
+      <value enum="B" description="WERTPAPIER" />
+      <value enum="C" description="DUTCH" />
+      <value enum="D" description="VALOREN" />
+      <value enum="E" description="SICOVAM" />
+      <value enum="F" description="BELGIAN" />
+      <value enum="G" description="COMMON" />
+      <value enum="H" description="CLEARING_HOUSE_CLEARING_ORGANIZATION" />
+      <value enum="I" description="ISDA_FPML_PRODUCT_SPECIFICATION" />
+      <value enum="J" description="OPTIONS_PRICE_REPORTING_AUTHORITY" />
+    </field>
+    <field number="24" name="IOIOthSvc" type="CHAR" until="42" />
+    <field number="23" name="IOIid" type="STRING" />
+    <field number="25" name="IOIQltyInd" type="CHAR">
+      <value enum="L" description="LOW" />
+      <value enum="M" description="MEDIUM" />
+      <value enum="H" description="HIGH" />
+    </field>
+    <field number="26" name="IOIRefID" type="STRING" />
+    <field number="27" name="IOIQty" type="STRING" />
+    <field number="28" name="IOITransType" type="CHAR">
+      <value enum="N" description="NEW" />
+      <value enum="C" description="CANCEL" />
+      <value enum="R" description="REPLACE" />
+    </field>
+    <field number="29" name="LastCapacity" type="CHAR">
+      <value enum="1" description="AGENT" />
+      <value enum="2" description="CROSS_AS_AGENT" />
+      <value enum="3" description="CROSS_AS_PRINCIPAL" />
+      <value enum="4" description="PRINCIPAL" />
+    </field>
+    <field number="30" name="LastMkt" type="EXCHANGE" />
+    <field number="31" name="LastPx" type="PRICE" />
+    <field number="32" name="LastQty" type="QTY" />
+    <field number="33" name="LinesOfText" type="NUMINGROUP" />
+    <field number="34" name="MsgSeqNum" type="SEQNUM" />
+    <field number="35" name="MsgType" type="STRING">
+      <value enum="0" description="HEARTBEAT" />
+      <value enum="1" description="TEST_REQUEST" />
+      <value enum="2" description="RESEND_REQUEST" />
+      <value enum="3" description="REJECT" />
+      <value enum="4" description="SEQUENCE_RESET" />
+      <value enum="5" description="LOGOUT" />
+      <value enum="6" description="INDICATION_OF_INTEREST" />
+      <value enum="7" description="ADVERTISEMENT" />
+      <value enum="8" description="EXECUTION_REPORT" />
+      <value enum="9" description="ORDER_CANCEL_REJECT" />
+      <value enum="A" description="LOGON" />
+      <value enum="B" description="NEWS" />
+      <value enum="C" description="EMAIL" />
+      <value enum="D" description="ORDER_SINGLE" />
+      <value enum="E" description="ORDER_LIST" />
+      <value enum="F" description="ORDER_CANCEL_REQUEST" />
+      <value enum="G" description="ORDER_CANCEL_REPLACE_REQUEST" />
+      <value enum="H" description="ORDER_STATUS_REQUEST" />
+      <value enum="J" description="ALLOCATION_INSTRUCTION" />
+      <value enum="K" description="LIST_CANCEL_REQUEST" />
+      <value enum="L" description="LIST_EXECUTE" />
+      <value enum="M" description="LIST_STATUS_REQUEST" />
+      <value enum="N" description="LIST_STATUS" />
+      <value enum="P" description="ALLOCATION_INSTRUCTION_ACK" />
+      <value enum="Q" description="DONT_KNOW_TRADE" />
+      <value enum="R" description="QUOTE_REQUEST" />
+      <value enum="S" description="QUOTE" />
+      <value enum="T" description="SETTLEMENT_INSTRUCTIONS" />
+      <value enum="V" description="MARKET_DATA_REQUEST" />
+      <value enum="W" description="MARKET_DATA_SNAPSHOT_FULL_REFRESH" />
+      <value enum="X" description="MARKET_DATA_INCREMENTAL_REFRESH" />
+      <value enum="Y" description="MARKET_DATA_REQUEST_REJECT" />
+      <value enum="Z" description="QUOTE_CANCEL" />
+      <value enum="a" description="QUOTE_STATUS_REQUEST" />
+      <value enum="b" description="MASS_QUOTE_ACKNOWLEDGEMENT" />
+      <value enum="c" description="SECURITY_DEFINITION_REQUEST" />
+      <value enum="d" description="SECURITY_DEFINITION" />
+      <value enum="e" description="SECURITY_STATUS_REQUEST" />
+      <value enum="f" description="SECURITY_STATUS" />
+      <value enum="g" description="TRADING_SESSION_STATUS_REQUEST" />
+      <value enum="h" description="TRADING_SESSION_STATUS" />
+      <value enum="i" description="MASS_QUOTE" />
+      <value enum="j" description="BUSINESS_MESSAGE_REJECT" />
+      <value enum="k" description="BID_REQUEST" />
+      <value enum="l" description="BID_RESPONSE" />
+      <value enum="m" description="LIST_STRIKE_PRICE" />
+      <value enum="n" description="XML_MESSAGE" />
+      <value enum="o" description="REGISTRATION_INSTRUCTIONS" />
+      <value enum="p" description="REGISTRATION_INSTRUCTIONS_RESPONSE" />
+      <value enum="q" description="ORDER_MASS_CANCEL_REQUEST" />
+      <value enum="r" description="ORDER_MASS_CANCEL_REPORT" />
+      <value enum="s" description="NEW_ORDER_CROSS" />
+      <value enum="t" description="CROSS_ORDER_CANCEL_REPLACE_REQUEST" />
+      <value enum="u" description="CROSS_ORDER_CANCEL_REQUEST" />
+      <value enum="v" description="SECURITY_TYPE_REQUEST" />
+      <value enum="w" description="SECURITY_TYPES" />
+      <value enum="x" description="SECURITY_LIST_REQUEST" />
+      <value enum="y" description="SECURITY_LIST" />
+      <value enum="z" description="DERIVATIVE_SECURITY_LIST_REQUEST" />
+      <value enum="AA" description="DERIVATIVE_SECURITY_LIST" />
+      <value enum="AB" description="NEW_ORDER_MULTILEG" />
+      <value enum="AC" description="MULTILEG_ORDER_CANCEL_REPLACE" />
+      <value enum="AD" description="TRADE_CAPTURE_REPORT_REQUEST" />
+      <value enum="AE" description="TRADE_CAPTURE_REPORT" />
+      <value enum="AF" description="ORDER_MASS_STATUS_REQUEST" />
+      <value enum="AG" description="QUOTE_REQUEST_REJECT" />
+      <value enum="AH" description="RFQ_REQUEST" />
+      <value enum="AI" description="QUOTE_STATUS_REPORT" />
+      <value enum="AJ" description="QUOTE_RESPONSE" />
+      <value enum="AK" description="CONFIRMATION" />
+      <value enum="AL" description="POSITION_MAINTENANCE_REQUEST" />
+      <value enum="AM" description="POSITION_MAINTENANCE_REPORT" />
+      <value enum="AN" description="REQUEST_FOR_POSITIONS" />
+      <value enum="AO" description="REQUEST_FOR_POSITIONS_ACK" />
+      <value enum="AP" description="POSITION_REPORT" />
+      <value enum="AQ" description="TRADE_CAPTURE_REPORT_REQUEST_ACK" />
+      <value enum="AR" description="TRADE_CAPTURE_REPORT_ACK" />
+      <value enum="AS" description="ALLOCATION_REPORT" />
+      <value enum="AT" description="ALLOCATION_REPORT_ACK" />
+      <value enum="AU" description="CONFIRMATION_ACK" />
+      <value enum="AV" description="SETTLEMENT_INSTRUCTION_REQUEST" />
+      <value enum="AW" description="ASSIGNMENT_REPORT" />
+      <value enum="AX" description="COLLATERAL_REQUEST" />
+      <value enum="AY" description="COLLATERAL_ASSIGNMENT" />
+      <value enum="AZ" description="COLLATERAL_RESPONSE" />
+      <value enum="BA" description="COLLATERAL_REPORT" />
+      <value enum="BB" description="COLLATERAL_INQUIRY" />
+      <value enum="BC" description="NETWORK_STATUS_REQUEST" />
+      <value enum="BD" description="NETWORK_STATUS_RESPONSE" />
+      <value enum="BE" description="USER_REQUEST" />
+      <value enum="BF" description="USER_RESPONSE" />
+      <value enum="BG" description="COLLATERAL_INQUIRY_ACK" />
+      <value enum="BH" description="CONFIRMATION_REQUEST" />
+    </field>
+    <field number="36" name="NewSeqNo" type="SEQNUM" />
+    <field number="37" name="OrderID" type="STRING" />
+    <field number="38" name="OrderQty" type="QTY" />
+    <field number="39" name="OrdStatus" type="CHAR">  
+      <value enum="0" description="NEW" />
+      <value enum="1" description="PARTIALLY_FILLED" />
+      <value enum="2" description="FILLED" />
+      <value enum="3" description="DONE_FOR_DAY" />
+      <value enum="4" description="CANCELED" />
+      <value enum="5" description="REPLACED" />
+      <value enum="6" description="PENDING_CANCEL" />
+      <value enum="7" description="STOPPED" />
+      <value enum="8" description="REJECTED" />
+      <value enum="9" description="SUSPENDED" />
+      <value enum="A" description="PENDING_NEW" />
+      <value enum="B" description="CALCULATED" />
+      <value enum="C" description="EXPIRED" />
+      <value enum="D" description="ACCEPTED_FOR_BIDDING" />
+      <value enum="E" description="PENDING_REPLACE" />
+    </field>
+    <field number="40" name="OrdType" type="CHAR">  
+      <value enum="1" description="MARKET" />
+      <value enum="2" description="LIMIT" />
+      <value enum="3" description="STOP" />
+      <value enum="4" description="STOP_LIMIT" />
+      <value enum="5" description="MARKET_ON_CLOSE" />
+      <value enum="6" description="WITH_OR_WITHOUT" />
+      <value enum="7" description="LIMIT_OR_BETTER" />
+      <value enum="8" description="LIMIT_WITH_OR_WITHOUT" />
+      <value enum="9" description="ON_BASIS" />
+      <value enum="A" description="ON_CLOSE" />
+      <value enum="B" description="LIMIT_ON_CLOSE" />
+      <value enum="C" description="FOREX_MARKET" />
+      <value enum="D" description="PREVIOUSLY_QUOTED" />
+      <value enum="E" description="PREVIOUSLY_INDICATED" />
+      <value enum="F" description="FOREX_LIMIT" />
+      <value enum="G" description="FOREX_SWAP" />
+      <value enum="H" description="FOREX_PREVIOUSLY_QUOTED" />
+      <value enum="I" description="FUNARI" />
+      <value enum="J" description="MARKET_IF_TOUCHED" />
+      <value enum="K" description="MARKET_WITH_LEFTOVER_AS_LIMIT" />
+      <value enum="L" description="PREVIOUS_FUND_VALUATION_POINT" />
+      <value enum="M" description="NEXT_FUND_VALUATION_POINT" />
+      <value enum="P" description="PEGGED" />
+    </field>
+    <field number="41" name="OrigClOrdID" type="STRING" />
+    <field number="42" name="OrigTime" type="UTCTIMESTAMP" />
+    <field number="43" name="PossDupFlag" type="BOOLEAN" />
+    <field number="44" name="Price" type="PRICE" />
+    <field number="45" name="RefSeqNum" type="SEQNUM" />
+    <field number="46" name="RelatdSym" type="STRING"  until="43" />
+    <field number="47" name="Rule80A" type="CHAR" until="43" >
+      <value enum="A" description="AGENCY_SINGLE_ORDER" />
+      <value enum="B" description="SHORT_EXEMPT_TRANSACTION_REFER_TO_A_TYPE" />
+      <value enum="C" description="PROGRAM_ORDER_NON_INDEX_ARB_FOR_MEMBER_FIRM" />
+      <value enum="D" description="PROGRAM_ORDER_INDEX_ARB_FOR_MEMBER_FIRM" />
+      <value enum="E" description="SHORT_EXEMPT_TRANSACTION_FOR_PRINCIPAL" />
+      <value enum="F" description="SHORT_EXEMPT_TRANSACTION_REFER_TO_W_TYPE" />
+      <value enum="H" description="SHORT_EXEMPT_TRANSACTION_REFER_TO_I_TYPE" />
+      <value enum="I" description="INDIVIDUAL_INVESTOR" />
+      <value enum="J" description="PROGRAM_ORDER_INDEX_ARB_FOR_INDIVIDUAL_CUSTOMER" />
+      <value enum="K" description="PROGRAM_ORDER_NON_INDEX_ARB_FOR_INDIVIDUAL_CUSTOMER" />
+      <value enum="L" description="SHORT_EXEMPT_AFFILIATED" />
+      <value enum="M" description="PROGRAM_ORDER_INDEX_ARB_FOR_OTHER_MEMBER" />
+      <value enum="N" description="PROGRAM_ORDER_NON_INDEX_ARB_FOR_OTHER_MEMBER" />
+      <value enum="O" description="PROPRIETARY_AFFILIATED" />
+      <value enum="P" description="PRINCIPAL" />
+      <value enum="R" description="TRANSACTIONS_NON_MEMBER" />
+      <value enum="S" description="SPECIALIST_TRADES" />
+      <value enum="T" description="TRANSACTIONS_UNAFFILIATED_MEMBER" />
+      <value enum="U" description="PROGRAM_ORDER_INDEX_ARB_FOR_OTHER_AGENCY" />
+      <value enum="W" description="ALL_OTHER_ORDERS_AS_AGENT_FOR_OTHER_MEMBER" />
+      <value enum="X" description="SHORT_EXEMPT_NOT_AFFILIATED" />
+      <value enum="Y" description="PROGRAM_ORDER_NON_INDEX_ARB_FOR_OTHER_AGENCY" />
+      <value enum="Z" description="SHORT_EXEMPT_NONMEMBER" />
+    </field>
+    <field number="48" name="SecurityID" type="STRING" />
+    <field number="49" name="SenderCompID" type="STRING" />
+    <field number="50" name="SenderSubID" type="STRING" />
+    <field number="51" name="SendingDate" type="LOCALMKTDATE" since="43" until="43" />
+    <field number="52" name="SendingTime" type="UTCTIMESTAMP" />
+    <field number="53" name="Quantity" type="QTY" />
+    <field number="54" name="Side" type="CHAR">  
+      <value enum="1" description="BUY" />
+      <value enum="2" description="SELL" />
+      <value enum="3" description="BUY_MINUS" />
+      <value enum="4" description="SELL_PLUS" />
+      <value enum="5" description="SELL_SHORT" />
+      <value enum="6" description="SELL_SHORT_EXEMPT" />
+      <value enum="7" description="UNDISCLOSED" />
+      <value enum="8" description="CROSS" />
+      <value enum="9" description="CROSS_SHORT" />
+      <value enum="A" description="CROSS_SHORT_EXEMPT" />
+      <value enum="B" description="AS_DEFINED" />
+      <value enum="C" description="OPPOSITE" />
+      <value enum="D" description="SUBSCRIBE" />
+      <value enum="E" description="REDEEM" />
+      <value enum="F" description="LEND" />
+      <value enum="G" description="BORROW" />
+    </field>
+    <field number="55" name="Symbol" type="STRING" />
+    <field number="56" name="TargetCompID" type="STRING" />
+    <field number="57" name="TargetSubID" type="STRING" />
+    <field number="58" name="Text" type="STRING" />
+    <field number="59" name="TimeInForce" type="CHAR">  
+      <value enum="0" description="DAY" />
+      <value enum="1" description="GOOD_TILL_CANCEL" />
+      <value enum="2" description="AT_THE_OPENING" />
+      <value enum="3" description="IMMEDIATE_OR_CANCEL" />
+      <value enum="4" description="FILL_OR_KILL" />
+      <value enum="5" description="GOOD_TILL_CROSSING" />
+      <value enum="6" description="GOOD_TILL_DATE" />
+      <value enum="7" description="AT_THE_CLOSE" />
+    </field>
+    <field number="60" name="TransactTime" type="UTCTIMESTAMP" />
+    <field number="61" name="Urgency" type="CHAR">
+      <value enum="0" description="NORMAL" />
+      <value enum="1" description="FLASH" />
+      <value enum="2" description="BACKGROUND" />
+    </field>
+    <field number="62" name="ValidUntilTime" type="UTCTIMESTAMP" />
+    <field number="63" name="SettlType" type="CHAR">
+      <value enum="0" description="REGULAR" />
+      <value enum="1" description="CASH" />
+      <value enum="2" description="NEXT_DAY" />
+      <value enum="3" description="T_PLUS_2" />
+      <value enum="4" description="T_PLUS_3" />
+      <value enum="5" description="T_PLUS_4" />
+      <value enum="6" description="FUTURE" />
+      <value enum="7" description="WHEN_AND_IF_ISSUED" />
+      <value enum="8" description="SELLERS_OPTION" />
+      <value enum="9" description="T_PLUS_5" />
+    </field>
+    <field number="64" name="SettlDate" type="LOCALMKTDATE" />
+    <field number="65" name="SymbolSfx" type="STRING">
+      <value enum="WI" description="WHEN_ISSUED" />
+      <value enum="CD" description="A_EUCP_WITH_LUMP_SUM_INTEREST" />
+    </field>
+    <field number="66" name="ListID" type="STRING" />
+    <field number="67" name="ListSeqNo" type="INT" />
+    <field number="68" name="TotNoOrders" type="INT" />
+    <field number="69" name="ListExecInst" type="STRING" />
+    <field number="70" name="AllocID" type="STRING" />
+    <field number="71" name="AllocTransType" type="CHAR">
+      <value enum="0" description="NEW" />
+      <value enum="1" description="REPLACE" />
+      <value enum="2" description="CANCEL" />
+    </field>
+    <field number="72" name="RefAllocID" type="STRING" />
+    <field number="73" name="NoOrders" type="NUMINGROUP" />
+    <field number="74" name="AvgPxPrecision" type="INT" />
+    <field number="75" name="TradeDate" type="LOCALMKTDATE" />
+    <field number="76" name="ExecBroker" type="STRING" until="43" />
+    <field number="77" name="PositionEffect" type="CHAR">
+      <value enum="O" description="OPEN" />
+      <value enum="C" description="CLOSE" />
+      <value enum="R" description="ROLLED" />
+      <value enum="F" description="FIFO" />
+    </field>
+    <field number="78" name="NoAllocs" type="NUMINGROUP" />
+    <field number="79" name="AllocAccount" type="STRING" />
+    <field number="80" name="AllocQty" type="QTY" />
+    <field number="81" name="ProcessCode" type="CHAR">
+      <value enum="0" description="REGULAR" />
+      <value enum="1" description="SOFT_DOLLAR" />
+      <value enum="2" description="STEP_IN" />
+      <value enum="3" description="STEP_OUT" />
+      <value enum="4" description="SOFT_DOLLAR_STEP_IN" />
+      <value enum="5" description="SOFT_DOLLAR_STEP_OUT" />
+      <value enum="6" description="PLAN_SPONSOR" />
+    </field>
+    <field number="82" name="NoRpts" type="NUMINGROUP" />
+    <field number="83" name="RptSeq" type="INT" />
+    <field number="84" name="CxlQty" type="QTY" />
+    <field number="85" name="NoDlvyInst" type="NUMINGROUP" />
+    <field number="86" name="DlvyInst" type="STRING" until="43" />
+    <field number="87" name="AllocStatus" type="INT">
+      <value enum="0" description="ACCEPTED" />
+      <value enum="1" description="BLOCK_LEVEL_REJECT" />
+      <value enum="2" description="ACCOUNT_LEVEL_REJECT" />
+      <value enum="3" description="RECEIVED" />
+      <value enum="4" description="INCOMPLETE" />
+      <value enum="5" description="REJECTED_BY_INTERMEDIARY" />
+    </field>
+    <field number="88" name="AllocRejCode" type="INT">
+      <value enum="0" description="UNKNOWN_ACCOUNT" />
+      <value enum="1" description="INCORRECT_QUANTITY" />
+      <value enum="2" description="INCORRECT_AVERAGE_PRICE" />
+      <value enum="3" description="UNKNOWN_EXECUTING_BROKER_MNEMONIC" />
+      <value enum="4" description="COMMISSION_DIFFERENCE" />
+      <value enum="5" description="UNKNOWN_ORDERID" />
+      <value enum="6" description="UNKNOWN_LISTID" />
+      <value enum="7" description="OTHER" />
+      <value enum="8" description="INCORRECT_ALLOCATED_QUANTITY" />
+      <value enum="9" description="CALCULATION_DIFFERENCE" />
+    </field>
+    <field number="89" name="Signature" type="DATA" />
+    <field number="90" name="SecureDataLen" type="LENGTH" />
+    <field number="91" name="SecureData" type="DATA" />
+    <field number="92" name="BrokerOfCredit" type="STRING" until="43" />
+    <field number="93" name="SignatureLength" type="LENGTH" />
+    <field number="94" name="EmailType" type="CHAR">
+      <value enum="0" description="NEW" />
+      <value enum="1" description="REPLY" />
+      <value enum="2" description="ADMIN_REPLY" />
+    </field>
+    <field number="95" name="RawDataLength" type="LENGTH" />
+    <field number="96" name="RawData" type="DATA" />
+    <field number="97" name="PossResend" type="BOOLEAN" />
+    <field number="98" name="EncryptMethod" type="INT">
+      <value enum="0" description="NONE_OTHER" />
+      <value enum="1" description="PKCS" />
+      <value enum="2" description="DES" />
+      <value enum="3" description="PKCS_DES" />
+      <value enum="4" description="PGP_DES" />
+      <value enum="5" description="PGP_DES_MD5" />
+      <value enum="6" description="PEM_DES_MD5" />
+    </field>
+    <field number="99" name="StopPx" type="PRICE" />
+    <field number="100" name="ExDestination" type="EXCHANGE" />
+    <field number="102" name="CxlRejReason" type="INT">
+      <value enum="0" description="TOO_LATE_TO_CANCEL" />
+      <value enum="1" description="UNKNOWN_ORDER" />
+      <value enum="2" description="BROKER_EXCHANGE_OPTION" />
+      <value enum="3" description="ORDER_ALREADY_IN_PENDING_CANCEL_OR_PENDING_REPLACE_STATUS" />
+      <value enum="4" description="UNABLE_TO_PROCESS_ORDER_MASS_CANCEL_REQUEST" />
+      <value enum="5" description="ORIGORDMODTIME_DID_NOT_MATCH_LAST_TRANSACTTIME_OF_ORDER" />
+      <value enum="6" description="DUPLICATE_CLORDID_RECEIVED" />
+      <value enum="99" description="OTHER" />
+    </field>
+    <field number="103" name="OrdRejReason" type="INT">
+      <value enum="0" description="BROKER_EXCHANGE_OPTION" />
+      <value enum="1" description="UNKNOWN_SYMBOL" />
+      <value enum="2" description="EXCHANGE_CLOSED" />
+      <value enum="3" description="ORDER_EXCEEDS_LIMIT" />
+      <value enum="4" description="TOO_LATE_TO_ENTER" />
+      <value enum="5" description="UNKNOWN_ORDER" />
+      <value enum="6" description="DUPLICATE_ORDER" />
+      <value enum="7" description="DUPLICATE_OF_A_VERBALLY_COMMUNICATED_ORDER" />
+      <value enum="8" description="STALE_ORDER" />
+      <value enum="9" description="TRADE_ALONG_REQUIRED" />
+      <value enum="10" description="INVALID_INVESTOR_ID" />
+      <value enum="11" description="UNSUPPORTED_ORDER_CHARACTERISTIC" />
+      <value enum="12" description="SURVEILLENCE_OPTION" />
+      <value enum="13" description="INCORRECT_QUANTITY" />
+      <value enum="14" description="INCORRECT_ALLOCATED_QUANTITY" />
+      <value enum="15" description="UNKNOWN_ACCOUNT" />
+      <value enum="99" description="OTHER" />
+    </field>
+    <field number="104" name="IOIQualifier" type="CHAR">
+      <value enum="A" description="ALL_OR_NONE" />
+      <value enum="B" description="MARKET_ON_CLOSE" />
+      <value enum="C" description="AT_THE_CLOSE" />
+      <value enum="D" description="VWAP" />
+      <value enum="I" description="IN_TOUCH_WITH" />
+      <value enum="L" description="LIMIT" />
+      <value enum="M" description="MORE_BEHIND" />
+      <value enum="O" description="AT_THE_OPEN" />
+      <value enum="P" description="TAKING_A_POSITION" />
+      <value enum="Q" description="AT_THE_MARKET" />
+      <value enum="R" description="READY_TO_TRADE" />
+      <value enum="S" description="PORTFOLIO_SHOWN" />
+      <value enum="T" description="THROUGH_THE_DAY" />
+      <value enum="V" description="VERSUS" />
+      <value enum="W" description="INDICATION_WORKING_AWAY" />
+      <value enum="X" description="CROSSING_OPPORTUNITY" />
+      <value enum="Y" description="AT_THE_MIDPOINT" />
+      <value enum="Z" description="PRE_OPEN" />
+    </field>
+    <field number="105" name="WaveNo" type="STRING" />
+    <field number="106" name="Issuer" type="STRING" />
+    <field number="107" name="SecurityDesc" type="STRING" />
+    <field number="108" name="HeartBtInt" type="INT" />
+    <field number="109" name="ClientID" type="STRING" until="43" />
+    <field number="110" name="MinQty" type="QTY" />
+    <field number="111" name="MaxFloor" type="QTY" />
+    <field number="112" name="TestReqID" type="STRING" />
+    <field number="113" name="ReportToExch" type="BOOLEAN" />
+    <field number="114" name="LocateReqd" type="BOOLEAN" />
+    <field number="115" name="OnBehalfOfCompID" type="STRING" />
+    <field number="116" name="OnBehalfOfSubID" type="STRING" />
+    <field number="117" name="QuoteID" type="STRING" />
+    <field number="118" name="NetMoney" type="AMT" />
+    <field number="119" name="SettlCurrAmt" type="AMT" />
+    <field number="120" name="SettlCurrency" type="CURRENCY" />
+    <field number="121" name="ForexReq" type="BOOLEAN" />
+    <field number="122" name="OrigSendingTime" type="UTCTIMESTAMP" />
+    <field number="123" name="GapFillFlag" type="BOOLEAN" />
+    <field number="124" name="NoExecs" type="NUMINGROUP" />
+    <field number="125" name="CxlType" type="CHAR" until="43" />
+    <field number="126" name="ExpireTime" type="UTCTIMESTAMP" />
+    <field number="127" name="DKReason" type="CHAR">
+      <value enum="A" description="UNKNOWN_SYMBOL" />
+      <value enum="B" description="WRONG_SIDE" />
+      <value enum="C" description="QUANTITY_EXCEEDS_ORDER" />
+      <value enum="D" description="NO_MATCHING_ORDER" />
+      <value enum="E" description="PRICE_EXCEEDS_LIMIT" />
+      <value enum="F" description="CALCULATION_DIFFERENCE" />
+      <value enum="Z" description="OTHER" />
+    </field>
+    <field number="128" name="DeliverToCompID" type="STRING" />
+    <field number="129" name="DeliverToSubID" type="STRING" />
+    <field number="130" name="IOINaturalFlag" type="BOOLEAN" />
+    <field number="131" name="QuoteReqID" type="STRING" />
+    <field number="132" name="BidPx" type="PRICE" />
+    <field number="133" name="OfferPx" type="PRICE" />
+    <field number="134" name="BidSize" type="QTY" />
+    <field number="135" name="OfferSize" type="QTY" />
+    <field number="136" name="NoMiscFees" type="NUMINGROUP" />
+    <field number="137" name="MiscFeeAmt" type="AMT" />
+    <field number="138" name="MiscFeeCurr" type="CURRENCY" />
+    <field number="139" name="MiscFeeType" type="CHAR">
+      <value enum="1" description="REGULATORY" />
+      <value enum="2" description="TAX" />
+      <value enum="3" description="LOCAL_COMMISSION" />
+      <value enum="4" description="EXCHANGE_FEES" />
+      <value enum="5" description="STAMP" />
+      <value enum="6" description="LEVY" />
+      <value enum="7" description="OTHER" />
+      <value enum="8" description="MARKUP" />
+      <value enum="9" description="CONSUMPTION_TAX" />
+    </field>
+    <field number="140" name="PrevClosePx" type="PRICE" />
+    <field number="141" name="ResetSeqNumFlag" type="BOOLEAN" since="41" />
+    <field number="142" name="SenderLocationID" type="STRING" since="41" />
+    <field number="143" name="TargetLocationID" type="STRING" since="41" />
+    <field number="144" name="OnBehalfOfLocationID" type="STRING" since="41" />
+    <field number="145" name="DeliverToLocationID" type="STRING" since="41" />
+    <field number="146" name="NoRelatedSym" type="NUMINGROUP" since="41" />
+    <field number="147" name="Subject" type="STRING" since="41" />
+    <field number="148" name="Headline" type="STRING" since="41" />
+    <field number="149" name="URLLink" type="STRING" since="41" />
+    <field number="150" name="ExecType" type="CHAR" since="41" >
+      <value enum="0" description="NEW" />
+      <value enum="1" description="PARTIAL_FILL" />
+      <value enum="2" description="FILL" />
+      <value enum="3" description="DONE_FOR_DAY" />
+      <value enum="4" description="CANCELED" />
+      <value enum="5" description="REPLACE" />
+      <value enum="6" description="PENDING_CANCEL" />
+      <value enum="7" description="STOPPED" />
+      <value enum="8" description="REJECTED" />
+      <value enum="9" description="SUSPENDED" />
+      <value enum="A" description="PENDING_NEW" />
+      <value enum="B" description="CALCULATED" />
+      <value enum="C" description="EXPIRED" />
+      <value enum="D" description="RESTATED" />
+      <value enum="E" description="PENDING_REPLACE" />
+      <value enum="F" description="TRADE" />
+      <value enum="G" description="TRADE_CORRECT" />
+      <value enum="H" description="TRADE_CANCEL" />
+      <value enum="I" description="ORDER_STATUS" />
+    </field>
+    <field number="151" name="LeavesQty" type="QTY"  since="41" />
+    <field number="152" name="CashOrderQty" type="QTY"  since="41" />
+    <field number="153" name="AllocAvgPx" type="PRICE"  since="41" />
+    <field number="154" name="AllocNetMoney" type="AMT"  since="41" />
+    <field number="155" name="SettlCurrFxRate" type="FLOAT"  since="41" />
+    <field number="156" name="SettlCurrFxRateCalc" type="CHAR" since="41" >
+      <value enum="M" description="MULTIPLY" />
+      <value enum="D" description="DIVIDE" />
+    </field>
+    <field number="157" name="NumDaysInterest" type="INT"  since="41" />
+    <field number="158" name="AccruedInterestRate" type="PERCENTAGE"  since="41" />
+    <field number="159" name="AccruedInterestAmt" type="AMT"  since="41" />
+    <field number="160" name="SettlInstMode" type="CHAR"  since="41" >
+      <value enum="0" description="DEFAULT" />
+      <value enum="1" description="STANDING_INSTRUCTIONS_PROVIDED" />
+      <value enum="4" description="SPECIFIC_ORDER_FOR_A_SINGLE_ACCOUNT" />
+      <value enum="5" description="REQUEST_REJECT" />
+    </field>
+    <field number="161" name="AllocText" type="STRING"  since="41" />
+    <field number="162" name="SettlInstID" type="STRING"  since="41" />
+    <field number="163" name="SettlInstTransType" type="CHAR" since="41" >
+      <value enum="N" description="NEW" />
+      <value enum="C" description="CANCEL" />
+      <value enum="R" description="REPLACE" />
+      <value enum="T" description="RESTATE" />
+    </field>
+    <field number="164" name="EmailThreadID" type="STRING"  since="41" />
+    <field number="165" name="SettlInstSource" type="CHAR" since="41" >
+      <value enum="1" description="BROKERS_INSTRUCTIONS" />
+      <value enum="2" description="INSTITUTIONS_INSTRUCTIONS" />
+      <value enum="3" description="INVESTOR" />
+    </field>
+    <field number="166" name="SettlLocation" type="STRING" until="43" >
+      <value enum="CED" description="CEDEL" />
+      <value enum="DTC" description="DEPOSITORY_TRUST_COMPANY" />
+      <value enum="EUR" description="EUROCLEAR" />
+      <value enum="FED" description="FEDERAL_BOOK_ENTRY" />
+      <value enum="PED" description="PHYSICAL" />
+      <value enum="PTC" description="PARTICIPANT_TRUST_COMPANY_ISO_COUNTRY" />
+    </field>
+    <field number="167" name="SecurityType" type="STRING" since="41" >
+      <value enum="EUSUPRA" description="EURO_SUPRANATIONAL_COUPONS" />
+      <value enum="FAC" description="FEDERAL_AGENCY_COUPON" />
+      <value enum="FADN" description="FEDERAL_AGENCY_DISCOUNT_NOTE" />
+      <value enum="PEF" description="PRIVATE_EXPORT_FUNDING" />
+      <value enum="SUPRA" description="USD_SUPRANATIONAL_COUPONS" />
+      <value enum="FUT" description="FUTURE" />
+      <value enum="OPT" description="OPTION" />
+      <value enum="CORP" description="CORPORATE_BOND" />
+      <value enum="CPP" description="CORPORATE_PRIVATE_PLACEMENT" />
+      <value enum="CB" description="CONVERTIBLE_BOND" />
+      <value enum="DUAL" description="DUAL_CURRENCY" />
+      <value enum="EUCORP" description="EURO_CORPORATE_BOND" />
+      <value enum="XLINKD" description="INDEXED_LINKED" />
+      <value enum="STRUCT" description="STRUCTURED_NOTES" />
+      <value enum="YANK" description="YANKEE_CORPORATE_BOND" />
+      <value enum="FOR" description="FOREIGN_EXCHANGE_CONTRACT" />
+      <value enum="CS" description="COMMON_STOCK" />
+      <value enum="PS" description="PREFERRED_STOCK" />
+      <value enum="BRADY" description="BRADY_BOND" />
+      <value enum="EUSOV" description="EURO_SOVEREIGNS" />
+      <value enum="TBOND" description="US_TREASURY_BOND" />
+      <value enum="TINT" description="INTEREST_STRIP_FROM_ANY_BOND_OR_NOTE" />
+      <value enum="TIPS" description="TREASURY_INFLATION_PROTECTED_SECURITIES" />
+      <value enum="TCAL" description="PRINCIPAL_STRIP_OF_A_CALLABLE_BOND_OR_NOTE" />
+      <value enum="TPRN" description="PRINCIPAL_STRIP_FROM_A_NON_CALLABLE_BOND_OR_NOTE" />
+      <value enum="TNOTE" description="US_TREASURY_NOTE" />
+      <value enum="TBILL" description="US_TREASURY_BILL" />
+      <value enum="REPO" description="REPURCHASE" />
+      <value enum="FORWARD" description="FORWARD" />
+      <value enum="BUYSELL" description="BUY_SELLBACK" />
+      <value enum="SECLOAN" description="SECURITIES_LOAN" />
+      <value enum="SECPLEDGE" description="SECURITIES_PLEDGE" />
+      <value enum="TERM" description="TERM_LOAN" />
+      <value enum="RVLV" description="REVOLVER_LOAN" />
+      <value enum="RVLVTRM" description="REVOLVER_TERM_LOAN" />
+      <value enum="BRIDGE" description="BRIDGE_LOAN" />
+      <value enum="LOFC" description="LETTER_OF_CREDIT" />
+      <value enum="SWING" description="SWING_LINE_FACILITY" />
+      <value enum="DINP" description="DEBTOR_IN_POSSESSION" />
+      <value enum="DEFLTED" description="DEFAULTED" />
+      <value enum="WITHDRN" description="WITHDRAWN" />
+      <value enum="REPLACD" description="REPLACED" />
+      <value enum="MATURED" description="MATURED" />
+      <value enum="AMENDED" description="AMENDED_AND_RESTATED" />
+      <value enum="RETIRED" description="RETIRED" />
+      <value enum="BA" description="BANKERS_ACCEPTANCE" />
+      <value enum="BN" description="BANK_NOTES" />
+      <value enum="BOX" description="BILL_OF_EXCHANGES" />
+      <value enum="CD" description="CERTIFICATE_OF_DEPOSIT" />
+      <value enum="CL" description="CALL_LOANS" />
+      <value enum="CP" description="COMMERCIAL_PAPER" />
+      <value enum="DN" description="DEPOSIT_NOTES" />
+      <value enum="EUCD" description="EURO_CERTIFICATE_OF_DEPOSIT" />
+      <value enum="EUCP" description="EURO_COMMERCIAL_PAPER" />
+      <value enum="LQN" description="LIQUIDITY_NOTE" />
+      <value enum="MTN" description="MEDIUM_TERM_NOTES" />
+      <value enum="ONITE" description="OVERNIGHT" />
+      <value enum="PN" description="PROMISSORY_NOTE" />
+      <value enum="PZFJ" description="PLAZOS_FIJOS" />
+      <value enum="STN" description="SHORT_TERM_LOAN_NOTE" />
+      <value enum="TD" description="TIME_DEPOSIT" />
+      <value enum="XCN" description="EXTENDED_COMM_NOTE" />
+      <value enum="YCD" description="YANKEE_CERTIFICATE_OF_DEPOSIT" />
+      <value enum="ABS" description="ASSET_BACKED_SECURITIES" />
+      <value enum="CMBS" description="CORP_MORTGAGE_BACKED_SECURITIES" />
+      <value enum="CMO" description="COLLATERALIZED_MORTGAGE_OBLIGATION" />
+      <value enum="IET" description="IOETTE_MORTGAGE" />
+      <value enum="MBS" description="MORTGAGE_BACKED_SECURITIES" />
+      <value enum="MIO" description="MORTGAGE_INTEREST_ONLY" />
+      <value enum="MPO" description="MORTGAGE_PRINCIPAL_ONLY" />
+      <value enum="MPP" description="MORTGAGE_PRIVATE_PLACEMENT" />
+      <value enum="MPT" description="MISCELLANEOUS_PASS_THROUGH" />
+      <value enum="PFAND" description="PFANDBRIEFE" />
+      <value enum="TBA" description="TO_BE_ANNOUNCED" />
+      <value enum="AN" description="OTHER_ANTICIPATION_NOTES" />
+      <value enum="COFO" description="CERTIFICATE_OF_OBLIGATION" />
+      <value enum="COFP" description="CERTIFICATE_OF_PARTICIPATION" />
+      <value enum="GO" description="GENERAL_OBLIGATION_BONDS" />
+      <value enum="MT" description="MANDATORY_TENDER" />
+      <value enum="RAN" description="REVENUE_ANTICIPATION_NOTE" />
+      <value enum="REV" description="REVENUE_BONDS" />
+      <value enum="SPCLA" description="SPECIAL_ASSESSMENT" />
+      <value enum="SPCLO" description="SPECIAL_OBLIGATION" />
+      <value enum="SPCLT" description="SPECIAL_TAX" />
+      <value enum="TAN" description="TAX_ANTICIPATION_NOTE" />
+      <value enum="TAXA" description="TAX_ALLOCATION" />
+      <value enum="TECP" description="TAX_EXEMPT_COMMERCIAL_PAPER" />
+      <value enum="TRAN" description="TAX_AND_REVENUE_ANTICIPATION_NOTE" />
+      <value enum="VRDN" description="VARIABLE_RATE_DEMAND_NOTE" />
+      <value enum="WAR" description="WARRANT" />
+      <value enum="MF" description="MUTUAL_FUND" />
+      <value enum="MLEG" description="MULTI_LEG_INSTRUMENT" />
+      <value enum="NONE" description="NO_SECURITY_TYPE" />
+      <value enum="?" description="WILDCARD" />
+    </field>
+    <field number="168" name="EffectiveTime" type="UTCTIMESTAMP" since="41" />
+    <field number="169" name="StandInstDbType" type="INT" since="41" >
+      <value enum="0" description="OTHER" />
+      <value enum="1" description="DTC_SID" />
+      <value enum="2" description="THOMSON_ALERT" />
+      <value enum="3" description="A_GLOBAL_CUSTODIAN" />
+      <value enum="4" description="ACCOUNTNET" />
+    </field>
+    <field number="170" name="StandInstDbName" type="STRING"  since="41" />
+    <field number="171" name="StandInstDbID" type="STRING"  since="41" />
+    <field number="172" name="SettlDeliveryType" type="INT"  since="41" >
+      <value enum="0" description="VERSUS_PAYMENT" />
+      <value enum="1" description="FREE" />
+      <value enum="2" description="TRI_PARTY" />
+      <value enum="3" description="HOLD_IN_CUSTODY" />
+    </field>
+    <field number="173" name="SettlDepositoryCode" type="STRING" until="43" />
+    <field number="174" name="SettlBrkrCode" type="STRING" until="43" />
+    <field number="175" name="SettlInstCode" type="STRING" until="43" />
+    <field number="176" name="SecuritySettlAgentName" type="STRING" until="43" />
+    <field number="177" name="SecuritySettlAgentCode" type="STRING" until="43" />
+    <field number="178" name="SecuritySettlAgentAcctNum" type="STRING" until="43" />
+    <field number="179" name="SecuritySettlAgentAcctName" type="STRING" until="43" />
+    <field number="180" name="SecuritySettlAgentContactName" type="STRING" until="43" />
+    <field number="181" name="SecuritySettlAgentContactPhone" type="STRING" until="43" />
+    <field number="182" name="CashSettlAgentName" type="STRING" until="43" />
+    <field number="183" name="CashSettlAgentCode" type="STRING" until="43" />
+    <field number="184" name="CashSettlAgentAcctNum" type="STRING" until="43" />
+    <field number="185" name="CashSettlAgentAcctName" type="STRING" until="43" />
+    <field number="186" name="CashSettlAgentContactName" type="STRING" until="43" />
+    <field number="187" name="CashSettlAgentContactPhone" type="STRING" until="43" />
+    <field number="188" name="BidSpotRate" type="PRICE"  since="41" />
+    <field number="189" name="BidForwardPoints" type="PRICEOFFSET"  since="41" />
+    <field number="190" name="OfferSpotRate" type="PRICE"  since="41" />
+    <field number="191" name="OfferForwardPoints" type="PRICEOFFSET"  since="41" />
+    <field number="192" name="OrderQty2" type="QTY"  since="41" />
+    <field number="193" name="SettlDate2" type="LOCALMKTDATE"  since="41" />
+    <field number="194" name="LastSpotRate" type="PRICE"  since="41" />
+    <field number="195" name="LastForwardPoints" type="PRICEOFFSET"  since="41" />
+    <field number="196" name="AllocLinkID" type="STRING"  since="41" />
+    <field number="197" name="AllocLinkType" type="INT" since="41" >
+      <value enum="0" description="F_X_NETTING" />
+      <value enum="1" description="F_X_SWAP" />
+    </field>
+    <field number="198" name="SecondaryOrderID" type="STRING"  since="41" />
+    <field number="199" name="NoIOIQualifiers" type="NUMINGROUP"  since="41" />
+    <field number="200" name="MaturityMonthYear" type="MONTHYEAR"  since="41" />
+    <field number="201" name="PutOrCall" type="INT" until="43" >
+      <value enum="0" description="PUT" />
+      <value enum="1" description="CALL" />
+    </field>
+    <field number="202" name="StrikePrice" type="PRICE"  since="41" />
+    <field number="203" name="CoveredOrUncovered" type="INT" since="41" >
+      <value enum="0" description="COVERED" />
+      <value enum="1" description="UNCOVERED" />
+    </field>
+    <field number="204" name="CustomerOrFirm" type="INT" until="43" >
+      <value enum="0" description="CUSTOMER" />
+      <value enum="1" description="FIRM" />
+    </field>
+    <field number="205" name="MaturityDay" type="DAYOFMONTH" until="43" />
+    <field number="206" name="OptAttribute" type="CHAR"  since="41" />
+    <field number="207" name="SecurityExchange" type="EXCHANGE"  since="41" />
+    <field number="208" name="NotifyBrokerOfCredit" type="BOOLEAN"  since="41" />
+    <field number="209" name="AllocHandlInst" type="INT" since="41" >
+      <value enum="1" description="MATCH" />
+      <value enum="2" description="FORWARD" />
+      <value enum="3" description="FORWARD_AND_MATCH" />
+    </field>
+    <field number="210" name="MaxShow" type="QTY"  since="41" />
+    <field number="211" name="PegOffsetValue" type="FLOAT"  since="41" />
+    <field number="212" name="XmlDataLen" type="LENGTH"  since="42" />
+    <field number="213" name="XmlData" type="DATA"  since="42" />
+    <field number="214" name="SettlInstRefID" type="STRING"  since="42" />
+    <field number="215" name="NoRoutingIDs" type="NUMINGROUP"  since="42" />
+    <field number="216" name="RoutingType" type="INT" since="42" >
+      <value enum="1" description="TARGET_FIRM" />
+      <value enum="2" description="TARGET_LIST" />
+      <value enum="3" description="BLOCK_FIRM" />
+      <value enum="4" description="BLOCK_LIST" />
+    </field>
+    <field number="217" name="RoutingID" type="STRING"  since="42" />
+    <field number="218" name="Spread" type="PRICEOFFSET"  since="42" />
+    <field number="219" name="Benchmark" type="CHAR" until="43" >
+      <value enum="1" description="CURVE" />
+      <value enum="2" description="FIVEYR" />
+      <value enum="3" description="OLD5" />
+      <value enum="4" description="TENYR" />
+      <value enum="5" description="OLD10" />
+      <value enum="6" description="THIRTYYR" />
+      <value enum="7" description="OLD30" />
+      <value enum="8" description="THREEMOLIBOR" />
+      <value enum="9" description="SIXMOLIBOR" />
+    </field>
+    <field number="220" name="BenchmarkCurveCurrency" type="CURRENCY"  since="43" />
+    <field number="221" name="BenchmarkCurveName" type="STRING" since="43" >
+      <value enum="MuniAAA" description="MUNIAAA" />
+      <value enum="FutureSWAP" description="FUTURESWAP" />
+      <value enum="LIBID" description="LIBID" />
+      <value enum="LIBOR" description="LIBOR" />
+      <value enum="OTHER" description="OTHER" />
+      <value enum="SWAP" description="SWAP" />
+      <value enum="Treasury" description="TREASURY" />
+      <value enum="Euribor" description="EURIBOR" />
+      <value enum="Pfandbriefe" description="PFANDBRIEFE" />
+      <value enum="EONIA" description="EONIA" />
+      <value enum="SONIA" description="SONIA" />
+      <value enum="EUREPO" description="EUREPO" />
+    </field>
+    <field number="222" name="BenchmarkCurvePoint" type="STRING"  since="42" />
+    <field number="223" name="CouponRate" type="PERCENTAGE"  since="42" />
+    <field number="224" name="CouponPaymentDate" type="LOCALMKTDATE"  since="43" />
+    <field number="225" name="IssueDate" type="LOCALMKTDATE"  since="43" />
+    <field number="226" name="RepurchaseTerm" type="INT"  since="42" />
+    <field number="227" name="RepurchaseRate" type="PERCENTAGE"  since="42" />
+    <field number="228" name="Factor" type="FLOAT"  since="42" />
+    <field number="229" name="TradeOriginationDate" type="LOCALMKTDATE"  since="42" />
+    <field number="230" name="ExDate" type="LOCALMKTDATE"  since="42" />
+    <field number="231" name="ContractMultiplier" type="FLOAT"  since="42" />
+    <field number="232" name="NoStipulations" type="NUMINGROUP"  since="42" />
+    <field number="233" name="StipulationType" type="STRING" since="42" >
+      <value enum="AMT" description="AMT" />
+      <value enum="AUTOREINV" description="AUTO_REINVESTMENT_AT_OR_BETTER" />
+      <value enum="BANKQUAL" description="BANK_QUALIFIED" />
+      <value enum="BGNCON" description="BARGAIN_CONDITIONS" />
+      <value enum="COUPON" description="COUPON_RANGE" />
+      <value enum="CURRENCY" description="ISO_CURRENCY_CODE" />
+      <value enum="CUSTOMDATE" description="CUSTOM_START_END_DATE" />
+      <value enum="GEOG" description="GEOGRAPHICS_AND_PERCENT_RANGE" />
+      <value enum="HAIRCUT" description="VALUATION_DISCOUNT" />
+      <value enum="INSURED" description="INSURED" />
+      <value enum="ISSUE" description="YEAR_OR_YEAR_MONTH_OF_ISSUE" />
+      <value enum="ISSUER" description="ISSUERS_TICKER" />
+      <value enum="ISSUESIZE" description="ISSUE_SIZE_RANGE" />
+      <value enum="LOOKBACK" description="LOOKBACK_DAYS" />
+      <value enum="LOT" description="EXPLICIT_LOT_IDENTIFIER" />
+      <value enum="LOTVAR" description="LOT_VARIANCE" />
+      <value enum="MAT" description="MATURITY_YEAR_AND_MONTH" />
+      <value enum="MATURITY" description="MATURITY_RANGE" />
+      <value enum="MAXSUBS" description="MAXIMUM_SUBSTITUTIONS" />
+      <value enum="MINQTY" description="MINIMUM_QUANTITY" />
+      <value enum="MININCR" description="MINIMUM_INCREMENT" />
+      <value enum="MINDNOM" description="MINIMUM_DENOMINATION" />
+      <value enum="PAYFREQ" description="PAYMENT_FREQUENCY_CALENDAR" />
+      <value enum="PIECES" description="NUMBER_OF_PIECES" />
+      <value enum="PMAX" description="POOLS_MAXIMUM" />
+      <value enum="PPM" description="POOLS_PER_MILLION" />
+      <value enum="PPL" description="POOLS_PER_LOT" />
+      <value enum="PPT" description="POOLS_PER_TRADE" />
+      <value enum="PRICE" description="PRICE_RANGE" />
+      <value enum="PRICEFREQ" description="PRICING_FREQUENCY" />
+      <value enum="PROD" description="PRODUCTION_YEAR" />
+      <value enum="PROTECT" description="CALL_PROTECTION" />
+      <value enum="PURPOSE" description="PURPOSE" />
+      <value enum="PXSOURCE" description="BENCHMARK_PRICE_SOURCE" />
+      <value enum="RATING" description="RATING_SOURCE_AND_RANGE" />
+      <value enum="RESTRICTED" description="RESTRICTED" />
+      <value enum="SECTOR" description="MARKET_SECTOR" />
+      <value enum="SECTYPE" description="SECURITYTYPE_INCLUDED_OR_EXCLUDED" />
+      <value enum="STRUCT" description="STRUCTURE" />
+      <value enum="SUBSFREQ" description="SUBSTITUTIONS_FREQUENCY" />
+      <value enum="SUBSLEFT" description="SUBSTITUTIONS_LEFT" />
+      <value enum="TEXT" description="FREEFORM_TEXT" />
+      <value enum="TRDVAR" description="TRADE_VARIANCE" />
+      <value enum="WAC" description="WEIGHTED_AVERAGE_COUPON" />
+      <value enum="WAL" description="WEIGHTED_AVERAGE_LIFE_COUPON" />
+      <value enum="WALA" description="WEIGHTED_AVERAGE_LOAN_AGE" />
+      <value enum="WAM" description="WEIGHTED_AVERAGE_MATURITY" />
+      <value enum="WHOLE" description="WHOLE_POOL" />
+      <value enum="YIELD" description="YIELD_RANGE" />
+      <value enum="SMM" description="SINGLE_MONTHLY_MORTALITY" />
+      <value enum="CPR" description="CONSTANT_PREPAYMENT_RATE" />
+      <value enum="CPY" description="CONSTANT_PREPAYMENT_YIELD" />
+      <value enum="CPP" description="CONSTANT_PREPAYMENT_PENALTY" />
+      <value enum="ABS" description="ABSOLUTE_PREPAYMENT_SPEED" />
+      <value enum="MPR" description="MONTHLY_PREPAYMENT_RATE" />
+      <value enum="PSA" description="PERCENT_OF_BMA_PREPAYMENT_CURVE" />
+      <value enum="PPC" description="PERCENT_OF_PROSPECTUS_PREPAYMENT_CURVE" />
+      <value enum="MHP" description="PERCENT_OF_MANUFACTURED_HOUSING_PREPAYMENT_CURVE" />
+      <value enum="HEP" description="FINAL_CPR_OF_HOME_EQUITY_PREPAYMENT_CURVE" />
+    </field>
+    <field number="234" name="StipulationValue" type="STRING" since="42" >
+      <value enum="CD" description="SPECIAL_CUM_DIVIDEND" />
+      <value enum="XD" description="SPECIAL_EX_DIVIDEND" />
+      <value enum="CC" description="SPECIAL_CUM_COUPON" />
+      <value enum="XC" description="SPECIAL_EX_COUPON" />
+      <value enum="CB" description="SPECIAL_CUM_BONUS" />
+      <value enum="XB" description="SPECIAL_EX_BONUS" />
+      <value enum="CR" description="SPECIAL_CUM_RIGHTS" />
+      <value enum="XR" description="SPECIAL_EX_RIGHTS" />
+      <value enum="CP" description="SPECIAL_CUM_CAPITAL_REPAYMENTS" />
+      <value enum="XP" description="SPECIAL_EX_CAPITAL_REPAYMENTS" />
+      <value enum="CS" description="CASH_SETTLEMENT" />
+      <value enum="SP" description="SPECIAL_PRICE" />
+      <value enum="TR" description="REPORT_FOR_EUROPEAN_EQUITY_MARKET_SECURITIES" />
+      <value enum="GD" description="GUARANTEED_DELIVERY" />
+    </field>
+    <field number="235" name="YieldType" type="STRING" since="42" >
+      <value enum="AFTERTAX" description="AFTER_TAX_YIELD" />
+      <value enum="ANNUAL" description="ANNUAL_YIELD" />
+      <value enum="ATISSUE" description="YIELD_AT_ISSUE" />
+      <value enum="AVGMATURITY" description="YIELD_TO_AVERAGE_MATURITY" />
+      <value enum="BOOK" description="BOOK_YIELD" />
+      <value enum="CALL" description="YIELD_TO_NEXT_CALL" />
+      <value enum="CHANGE" description="YIELD_CHANGE_SINCE_CLOSE" />
+      <value enum="CLOSE" description="CLOSING_YIELD" />
+      <value enum="COMPOUND" description="COMPOUND_YIELD" />
+      <value enum="CURRENT" description="CURRENT_YIELD" />
+      <value enum="GROSS" description="TRUE_GROSS_YIELD" />
+      <value enum="GOVTEQUIV" description="GOVERNMENT_EQUIVALENT_YIELD" />
+      <value enum="INFLATION" description="YIELD_WITH_INFLATION_ASSUMPTION" />
+      <value enum="INVERSEFLOATER" description="INVERSE_FLOATER_BOND_YIELD" />
+      <value enum="LASTCLOSE" description="MOST_RECENT_CLOSING_YIELD" />
+      <value enum="LASTMONTH" description="CLOSING_YIELD_MOST_RECENT_MONTH" />
+      <value enum="LASTQUARTER" description="CLOSING_YIELD_MOST_RECENT_QUARTER" />
+      <value enum="LASTYEAR" description="CLOSING_YIELD_MOST_RECENT_YEAR" />
+      <value enum="LONGAVGLIFE" description="YIELD_TO_LONGEST_AVERAGE_LIFE" />
+      <value enum="MARK" description="MARK_TO_MARKET_YIELD" />
+      <value enum="MATURITY" description="YIELD_TO_MATURITY" />
+      <value enum="NEXTREFUND" description="YIELD_TO_NEXT_REFUND" />
+      <value enum="OPENAVG" description="OPEN_AVERAGE_YIELD" />
+      <value enum="PUT" description="YIELD_TO_NEXT_PUT" />
+      <value enum="PREVCLOSE" description="PREVIOUS_CLOSE_YIELD" />
+      <value enum="PROCEEDS" description="PROCEEDS_YIELD" />
+      <value enum="SEMIANNUAL" description="SEMI_ANNUAL_YIELD" />
+      <value enum="SHORTAVGLIFE" description="YIELD_TO_SHORTEST_AVERAGE_LIFE" />
+      <value enum="SIMPLE" description="SIMPLE_YIELD" />
+      <value enum="TAXEQUIV" description="TAX_EQUIVALENT_YIELD" />
+      <value enum="TENDER" description="YIELD_TO_TENDER_DATE" />
+      <value enum="TRUE" description="TRUE_YIELD" />
+      <value enum="VALUE1_32" description="YIELD_VALUE_OF_1_32" />
+      <value enum="WORST" description="YIELD_TO_WORST" />
+    </field>
+    <field number="236" name="Yield" type="PERCENTAGE"  since="42" />
+    <field number="237" name="TotalTakedown" type="AMT"  since="42" />
+    <field number="238" name="Concession" type="AMT"  since="42" />
+    <field number="239" name="RepoCollateralSecurityType" type="INT"  since="42" />
+    <field number="240" name="RedemptionDate" type="LOCALMKTDATE"  since="42" />
+    <field number="241" name="UnderlyingCouponPaymentDate" type="LOCALMKTDATE"  since="42" />
+    <field number="242" name="UnderlyingIssueDate" type="LOCALMKTDATE"  since="42" />
+    <field number="243" name="UnderlyingRepoCollateralSecurityType" type="INT"  since="42" />
+    <field number="244" name="UnderlyingRepurchaseTerm" type="INT"  since="42" />
+    <field number="245" name="UnderlyingRepurchaseRate" type="PERCENTAGE"  since="42" />
+    <field number="246" name="UnderlyingFactor" type="FLOAT"  since="42" />
+    <field number="247" name="UnderlyingRedemptionDate" type="LOCALMKTDATE"  since="42" />
+    <field number="248" name="LegCouponPaymentDate" type="LOCALMKTDATE"  since="42" />
+    <field number="249" name="LegIssueDate" type="LOCALMKTDATE"  since="42" />
+    <field number="250" name="LegRepoCollateralSecurityType" type="INT"  since="42" />
+    <field number="251" name="LegRepurchaseTerm" type="INT"  since="42" />
+    <field number="252" name="LegRepurchaseRate" type="PERCENTAGE"  since="42" />
+    <field number="253" name="LegFactor" type="FLOAT"  since="42" />
+    <field number="254" name="LegRedemptionDate" type="LOCALMKTDATE"  since="42" />
+    <field number="255" name="CreditRating" type="STRING"  since="42" />
+    <field number="256" name="UnderlyingCreditRating" type="STRING"  since="42" />
+    <field number="257" name="LegCreditRating" type="STRING"  since="42" />
+    <field number="258" name="TradedFlatSwitch" type="BOOLEAN"  since="42" />
+    <field number="259" name="BasisFeatureDate" type="LOCALMKTDATE"  since="42" />
+    <field number="260" name="BasisFeaturePrice" type="PRICE"  since="42" />
+    <field number="262" name="MDReqID" type="STRING"  since="42" />
+    <field number="263" name="SubscriptionRequestType" type="CHAR" since="42" >
+      <value enum="0" description="SNAPSHOT" />
+      <value enum="1" description="SNAPSHOT_PLUS_UPDATES" />
+      <value enum="2" description="DISABLE_PREVIOUS_SNAPSHOT_PLUS_UPDATE_REQUEST" />
+    </field>
+    <field number="264" name="MarketDepth" type="INT" since="42" >
+<!--
+      Temporarily commented out until we can handle
+      N>1 scenario
+
+      <value enum="0" description="FULL_BOOK"/>
+      <value enum="1" description="TOP_OF_BOOK"/>
+-->
+    </field>
+    <field number="265" name="MDUpdateType" type="INT" since="42" >
+      <value enum="0" description="FULL_REFRESH" />
+      <value enum="1" description="INCREMENTAL_REFRESH" />
+    </field>
+    <field number="266" name="AggregatedBook" type="BOOLEAN"  since="42" />
+    <field number="267" name="NoMDEntryTypes" type="NUMINGROUP"  since="42" />
+    <field number="268" name="NoMDEntries" type="NUMINGROUP"  since="42" />
+    <field number="269" name="MDEntryType" type="CHAR" since="42" >
+      <value enum="0" description="BID" />
+      <value enum="1" description="OFFER" />
+      <value enum="2" description="TRADE" />
+      <value enum="3" description="INDEX_VALUE" />
+      <value enum="4" description="OPENING_PRICE" />
+      <value enum="5" description="CLOSING_PRICE" />
+      <value enum="6" description="SETTLEMENT_PRICE" />
+      <value enum="7" description="TRADING_SESSION_HIGH_PRICE" />
+      <value enum="8" description="TRADING_SESSION_LOW_PRICE" />
+      <value enum="9" description="TRADING_SESSION_VWAP_PRICE" />
+      <value enum="A" description="IMBALANCE" />
+      <value enum="B" description="TRADE_VOLUME" />
+      <value enum="C" description="OPEN_INTEREST" />
+    </field>
+    <field number="270" name="MDEntryPx" type="PRICE"  since="42" />
+    <field number="271" name="MDEntrySize" type="QTY"  since="42" />
+    <field number="272" name="MDEntryDate" type="UTCDATEONLY"  since="42" />
+    <field number="273" name="MDEntryTime" type="UTCTIMEONLY"  since="42" />
+    <field number="274" name="TickDirection" type="CHAR" since="42" >
+      <value enum="0" description="PLUS_TICK" />
+      <value enum="1" description="ZERO_PLUS_TICK" />
+      <value enum="2" description="MINUS_TICK" />
+      <value enum="3" description="ZERO_MINUS_TICK" />
+    </field>
+    <field number="275" name="MDMkt" type="EXCHANGE"  since="42" />
+    <field number="276" name="QuoteCondition" type="MULTIPLEVALUESTRING" since="42" >
+      <value enum="A" description="OPEN_ACTIVE" />
+      <value enum="B" description="CLOSED_INACTIVE" />
+      <value enum="C" description="EXCHANGE_BEST" />
+      <value enum="D" description="CONSOLIDATED_BEST" />
+      <value enum="E" description="LOCKED" />
+      <value enum="F" description="CROSSED" />
+      <value enum="G" description="DEPTH" />
+      <value enum="H" description="FAST_TRADING" />
+      <value enum="I" description="NON_FIRM" />
+    </field>
+    <field number="277" name="TradeCondition" type="MULTIPLEVALUESTRING" since="42" >
+      <value enum="A" description="CASH_MARKET" />
+      <value enum="B" description="AVERAGE_PRICE_TRADE" />
+      <value enum="C" description="CASH_TRADE" />
+      <value enum="D" description="NEXT_DAY_MARKET" />
+      <value enum="E" description="OPENING_REOPENING_TRADE_DETAIL" />
+      <value enum="F" description="INTRADAY_TRADE_DETAIL" />
+      <value enum="G" description="RULE127" />
+      <value enum="H" description="RULE155" />
+      <value enum="I" description="SOLD_LAST" />
+      <value enum="J" description="NEXT_DAY_TRADE" />
+      <value enum="K" description="OPENED" />
+      <value enum="L" description="SELLER" />
+      <value enum="M" description="SOLD" />
+      <value enum="N" description="STOPPED_STOCK" />
+      <value enum="P" description="IMBALANCE_MORE_BUYERS" />
+      <value enum="Q" description="IMBALANCE_MORE_SELLERS" />
+      <value enum="R" description="OPENING_PRICE" />
+    </field>
+    <field number="278" name="MDEntryID" type="STRING"  since="42" />
+    <field number="279" name="MDUpdateAction" type="CHAR" since="42" >
+      <value enum="0" description="NEW" />
+      <value enum="1" description="CHANGE" />
+      <value enum="2" description="DELETE" />
+    </field>
+    <field number="280" name="MDEntryRefID" type="STRING"  since="42" />
+    <field number="281" name="MDReqRejReason" type="CHAR" since="42" >
+      <value enum="0" description="UNKNOWN_SYMBOL" />
+      <value enum="1" description="DUPLICATE_MDREQID" />
+      <value enum="2" description="INSUFFICIENT_BANDWIDTH" />
+      <value enum="3" description="INSUFFICIENT_PERMISSIONS" />
+      <value enum="4" description="UNSUPPORTED_SUBSCRIPTIONREQUESTTYPE" />
+      <value enum="5" description="UNSUPPORTED_MARKETDEPTH" />
+      <value enum="6" description="UNSUPPORTED_MDUPDATETYPE" />
+      <value enum="7" description="UNSUPPORTED_AGGREGATEDBOOK" />
+      <value enum="8" description="UNSUPPORTED_MDENTRYTYPE" />
+      <value enum="9" description="UNSUPPORTED_TRADINGSESSIONID" />
+      <value enum="A" description="UNSUPPORTED_SCOPE" />
+      <value enum="B" description="UNSUPPORTED_OPENCLOSESETTLEFLAG" />
+      <value enum="C" description="UNSUPPORTED_MDIMPLICITDELETE" />
+    </field>
+    <field number="282" name="MDEntryOriginator" type="STRING"  since="42" />
+    <field number="283" name="LocationID" type="STRING"  since="42" />
+    <field number="284" name="DeskID" type="STRING"  since="42" />
+    <field number="285" name="DeleteReason" type="CHAR" since="42" >
+      <value enum="0" description="CANCELATION_TRADE_BUST" />
+      <value enum="1" description="ERROR" />
+    </field>
+    <field number="286" name="OpenCloseSettlFlag" type="MULTIPLEVALUESTRING" since="42" >
+      <value enum="0" description="DAILY_OPEN_CLOSE_SETTLEMENT_ENTRY" />
+      <value enum="1" description="SESSION_OPEN_CLOSE_SETTLEMENT_ENTRY" />
+      <value enum="2" description="DELIVERY_SETTLEMENT_ENTRY" />
+      <value enum="3" description="EXPECTED_ENTRY" />
+      <value enum="4" description="ENTRY_FROM_PREVIOUS_BUSINESS_DAY" />
+      <value enum="5" description="THEORETICAL_PRICE_VALUE" />
+    </field>
+    <field number="287" name="SellerDays" type="INT"  since="42" />
+    <field number="288" name="MDEntryBuyer" type="STRING"  since="42" />
+    <field number="289" name="MDEntrySeller" type="STRING"  since="42" />
+    <field number="290" name="MDEntryPositionNo" type="INT"  since="42" />
+    <field number="291" name="FinancialStatus" type="MULTIPLEVALUESTRING" since="42" >
+      <value enum="1" description="BANKRUPT" />
+      <value enum="2" description="PENDING_DELISTING" />
+    </field>
+    <field number="292" name="CorporateAction" type="MULTIPLEVALUESTRING" since="42" >
+      <value enum="A" description="EX_DIVIDEND" />
+      <value enum="B" description="EX_DISTRIBUTION" />
+      <value enum="C" description="EX_RIGHTS" />
+      <value enum="D" description="NEW" />
+      <value enum="E" description="EX_INTEREST" />
+    </field>
+    <field number="293" name="DefBidSize" type="QTY"  since="42" />
+    <field number="294" name="DefOfferSize" type="QTY"  since="42" />
+    <field number="295" name="NoQuoteEntries" type="NUMINGROUP"  since="42" />
+    <field number="296" name="NoQuoteSets" type="NUMINGROUP"  since="42" />
+    <field number="297" name="QuoteStatus" type="INT" since="42" >
+      <value enum="0" description="ACCEPTED" />
+      <value enum="1" description="CANCELED_FOR_SYMBOL" />
+      <value enum="2" description="CANCELED_FOR_SECURITY_TYPE" />
+      <value enum="3" description="CANCELED_FOR_UNDERLYING" />
+      <value enum="4" description="CANCELED_ALL" />
+      <value enum="5" description="REJECTED" />
+      <value enum="6" description="REMOVED_FROM_MARKET" />
+      <value enum="7" description="EXPIRED" />
+      <value enum="8" description="QUERY" />
+      <value enum="9" description="QUOTE_NOT_FOUND" />
+      <value enum="10" description="PENDING" />
+      <value enum="11" description="PASS" />
+      <value enum="12" description="LOCKED_MARKET_WARNING" />
+      <value enum="13" description="CROSS_MARKET_WARNING" />
+      <value enum="14" description="CANCELED_DUE_TO_LOCK_MARKET" />
+      <value enum="15" description="CANCELED_DUE_TO_CROSS_MARKET" />
+    </field>
+    <field number="298" name="QuoteCancelType" type="INT" since="42" >
+      <value enum="1" description="CANCEL_FOR_SYMBOL" />
+      <value enum="2" description="CANCEL_FOR_SECURITY_TYPE" />
+      <value enum="3" description="CANCEL_FOR_UNDERLYING_SYMBOL" />
+      <value enum="4" description="CANCEL_ALL_QUOTES" />
+    </field>
+    <field number="299" name="QuoteEntryID" type="STRING"  since="42" />
+    <field number="300" name="QuoteRejectReason" type="INT" since="42" >
+      <value enum="1" description="UNKNOWN_SYMBOL" />
+      <value enum="2" description="EXCHANGE_CLOSED" />
+      <value enum="3" description="QUOTE_REQUEST_EXCEEDS_LIMIT" />
+      <value enum="4" description="TOO_LATE_TO_ENTER" />
+      <value enum="5" description="UNKNOWN_QUOTE" />
+      <value enum="6" description="DUPLICATE_QUOTE" />
+      <value enum="7" description="INVALID_BID_ASK_SPREAD" />
+      <value enum="8" description="INVALID_PRICE" />
+      <value enum="9" description="NOT_AUTHORIZED_TO_QUOTE_SECURITY" />
+    </field>
+    <field number="301" name="QuoteResponseLevel" type="INT">
+      <value enum="0" description="NO_ACKNOWLEDGEMENT" />
+      <value enum="1" description="ACKNOWLEDGE_ONLY_NEGATIVE_OR_ERRONEOUS_QUOTES" />
+      <value enum="2" description="ACKNOWLEDGE_EACH_QUOTE_MESSAGES" />
+    </field>
+    <field number="302" name="QuoteSetID" type="STRING" />
+    <field number="303" name="QuoteRequestType" type="INT">
+      <value enum="1" description="MANUAL" />
+      <value enum="2" description="AUTOMATIC" />
+    </field>
+    <field number="304" name="TotNoQuoteEntries" type="INT" />
+    <field number="305" name="UnderlyingSecurityIDSource" type="STRING" />
+    <field number="306" name="UnderlyingIssuer" type="STRING" />
+    <field number="307" name="UnderlyingSecurityDesc" type="STRING" />
+    <field number="308" name="UnderlyingSecurityExchange" type="EXCHANGE" />
+    <field number="309" name="UnderlyingSecurityID" type="STRING" />
+    <field number="310" name="UnderlyingSecurityType" type="STRING" />
+    <field number="311" name="UnderlyingSymbol" type="STRING" />
+    <field number="312" name="UnderlyingSymbolSfx" type="STRING" />
+    <field number="313" name="UnderlyingMaturityMonthYear" type="MONTHYEAR" />
+    <field number="314" name="UnderlyingMaturityDay" type="DAYOFMONTH" until="43" />
+    <field number="315" name="UnderlyingPutOrCall" type="INT" until="43"/>
+    <field number="316" name="UnderlyingStrikePrice" type="PRICE" />
+    <field number="317" name="UnderlyingOptAttribute" type="CHAR" />
+    <field number="318" name="UnderlyingCurrency" type="CURRENCY" />
+    <field number="319" name="RatioQty" type="QTY" until="43" />
+    <field number="320" name="SecurityReqID" type="STRING" />
+    <field number="321" name="SecurityRequestType" type="INT">
+      <value enum="0" description="REQUEST_SECURITY_IDENTITY_AND_SPECIFICATIONS" />
+      <value enum="1" description="REQUEST_SECURITY_IDENTITY_FOR_THE_SPECIFICATIONS_PROVIDED" />
+      <value enum="2" description="REQUEST_LIST_SECURITY_TYPES" />
+      <value enum="3" description="REQUEST_LIST_SECURITIES" />
+    </field>
+    <field number="322" name="SecurityResponseID" type="STRING" />
+    <field number="323" name="SecurityResponseType" type="INT">
+      <value enum="1" description="ACCEPT_SECURITY_PROPOSAL_AS_IS" />
+      <value enum="2" description="ACCEPT_SECURITY_PROPOSAL_WITH_REVISIONS_AS_INDICATED_IN_THE_MESSAGE" />
+      <value enum="3" description="LIST_OF_SECURITY_TYPES_RETURNED_PER_REQUEST" />
+      <value enum="4" description="LIST_OF_SECURITIES_RETURNED_PER_REQUEST" />
+      <value enum="5" description="REJECT_SECURITY_PROPOSAL" />
+      <value enum="6" description="CAN_NOT_MATCH_SELECTION_CRITERIA" />
+    </field>
+    <field number="324" name="SecurityStatusReqID" type="STRING" />
+    <field number="325" name="UnsolicitedIndicator" type="BOOLEAN" />
+    <field number="326" name="SecurityTradingStatus" type="INT">
+      <value enum="1" description="OPENING_DELAY" />
+      <value enum="2" description="TRADING_HALT" />
+      <value enum="3" description="RESUME" />
+      <value enum="4" description="NO_OPEN_NO_RESUME" />
+      <value enum="5" description="PRICE_INDICATION" />
+      <value enum="6" description="TRADING_RANGE_INDICATION" />
+      <value enum="7" description="MARKET_IMBALANCE_BUY" />
+      <value enum="8" description="MARKET_IMBALANCE_SELL" />
+      <value enum="9" description="MARKET_ON_CLOSE_IMBALANCE_BUY" />
+      <value enum="10" description="MARKET_ON_CLOSE_IMBALANCE_SELL" />
+      <value enum="11" description="NOT_ASSIGNED" />
+      <value enum="12" description="NO_MARKET_IMBALANCE" />
+      <value enum="13" description="NO_MARKET_ON_CLOSE_IMBALANCE" />
+      <value enum="14" description="ITS_PRE_OPENING" />
+      <value enum="15" description="NEW_PRICE_INDICATION" />
+      <value enum="16" description="TRADE_DISSEMINATION_TIME" />
+      <value enum="17" description="READY_TO_TRADE_START_OF_SESSION" />
+      <value enum="18" description="NOT_AVAILABLE_FOR_TRADING_END_OF_SESSION" />
+      <value enum="19" description="NOT_TRADED_ON_THIS_MARKET" />
+      <value enum="20" description="UNKNOWN_OR_INVALID" />
+      <value enum="21" description="PRE_OPEN" />
+      <value enum="22" description="OPENING_ROTATION" />
+      <value enum="23" description="FAST_MARKET" />
+    </field>
+    <field number="327" name="HaltReason" type="CHAR">
+      <value enum="I" description="ORDER_IMBALANCE" />
+      <value enum="X" description="EQUIPMENT_CHANGEOVER" />
+      <value enum="P" description="NEWS_PENDING" />
+      <value enum="D" description="NEWS_DISSEMINATION" />
+      <value enum="E" description="ORDER_INFLUX" />
+      <value enum="M" description="ADDITIONAL_INFORMATION" />
+    </field>
+    <field number="328" name="InViewOfCommon" type="BOOLEAN" />
+    <field number="329" name="DueToRelated" type="BOOLEAN" />
+    <field number="330" name="BuyVolume" type="QTY" />
+    <field number="331" name="SellVolume" type="QTY" />
+    <field number="332" name="HighPx" type="PRICE" />
+    <field number="333" name="LowPx" type="PRICE" />
+    <field number="334" name="Adjustment" type="INT">
+      <value enum="1" description="CANCEL" />
+      <value enum="2" description="ERROR" />
+      <value enum="3" description="CORRECTION" />
+    </field>
+    <field number="335" name="TradSesReqID" type="STRING" />
+    <field number="336" name="TradingSessionID" type="STRING" />
+    <field number="337" name="ContraTrader" type="STRING" />
+    <field number="338" name="TradSesMethod" type="INT">
+      <value enum="1" description="ELECTRONIC" />
+      <value enum="2" description="OPEN_OUTCRY" />
+      <value enum="3" description="TWO_PARTY" />
+    </field>
+    <field number="339" name="TradSesMode" type="INT">
+      <value enum="1" description="TESTING" />
+      <value enum="2" description="SIMULATED" />
+      <value enum="3" description="PRODUCTION" />
+    </field>
+    <field number="340" name="TradSesStatus" type="INT">
+      <value enum="0" description="UNKNOWN" />
+      <value enum="1" description="HALTED" />
+      <value enum="2" description="OPEN" />
+      <value enum="3" description="CLOSED" />
+      <value enum="4" description="PRE_OPEN" />
+      <value enum="5" description="PRE_CLOSE" />
+      <value enum="6" description="REQUEST_REJECTED" />
+    </field>
+    <field number="341" name="TradSesStartTime" type="UTCTIMESTAMP" />
+    <field number="342" name="TradSesOpenTime" type="UTCTIMESTAMP" />
+    <field number="343" name="TradSesPreCloseTime" type="UTCTIMESTAMP" />
+    <field number="344" name="TradSesCloseTime" type="UTCTIMESTAMP" />
+    <field number="345" name="TradSesEndTime" type="UTCTIMESTAMP" />
+    <field number="346" name="NumberOfOrders" type="INT" />
+    <field number="347" name="MessageEncoding" type="STRING">
+      <value enum="ISO-2022-JP" description="ISO_2022_JP" />
+      <value enum="EUC-JP" description="EUC_JP" />
+      <value enum="SHIFT_JIS" description="SHIFT_JIS" />
+      <value enum="UTF-8" description="UTF_8" />
+    </field>
+    <field number="348" name="EncodedIssuerLen" type="LENGTH" />
+    <field number="349" name="EncodedIssuer" type="DATA" />
+    <field number="350" name="EncodedSecurityDescLen" type="LENGTH" />
+    <field number="351" name="EncodedSecurityDesc" type="DATA" />
+    <field number="352" name="EncodedListExecInstLen" type="LENGTH" />
+    <field number="353" name="EncodedListExecInst" type="DATA" />
+    <field number="354" name="EncodedTextLen" type="LENGTH" />
+    <field number="355" name="EncodedText" type="DATA" />
+    <field number="356" name="EncodedSubjectLen" type="LENGTH" />
+    <field number="357" name="EncodedSubject" type="DATA" />
+    <field number="358" name="EncodedHeadlineLen" type="LENGTH" />
+    <field number="359" name="EncodedHeadline" type="DATA" />
+    <field number="360" name="EncodedAllocTextLen" type="LENGTH" />
+    <field number="361" name="EncodedAllocText" type="DATA" />
+    <field number="362" name="EncodedUnderlyingIssuerLen" type="LENGTH" />
+    <field number="363" name="EncodedUnderlyingIssuer" type="DATA" />
+    <field number="364" name="EncodedUnderlyingSecurityDescLen" type="LENGTH" />
+    <field number="365" name="EncodedUnderlyingSecurityDesc" type="DATA" />
+    <field number="366" name="AllocPrice" type="PRICE" />
+    <field number="367" name="QuoteSetValidUntilTime" type="UTCTIMESTAMP" />
+    <field number="368" name="QuoteEntryRejectReason" type="INT">
+      <value enum="1" description="UNKNOWN_SYMBOL" />
+      <value enum="2" description="EXCHANGE_CLOSED" />
+      <value enum="3" description="QUOTE_EXCEEDS_LIMIT" />
+      <value enum="4" description="TOO_LATE_TO_ENTER" />
+      <value enum="5" description="UNKNOWN_QUOTE" />
+      <value enum="6" description="DUPLICATE_QUOTE" />
+      <value enum="7" description="INVALID_BID_ASK_SPREAD" />
+      <value enum="8" description="INVALID_PRICE" />
+      <value enum="9" description="NOT_AUTHORIZED_TO_QUOTE_SECURITY" />
+    </field>
+    <field number="369" name="LastMsgSeqNumProcessed" type="SEQNUM" />
+    <field number="370" name="OnBehalfOfSendingTime" type="UTCTIMESTAMP" until="43" />
+    <field number="371" name="RefTagID" type="INT" />
+    <field number="372" name="RefMsgType" type="STRING" />
+    <field number="373" name="SessionRejectReason" type="INT">
+      <value enum="0" description="INVALID_TAG_NUMBER" />
+      <value enum="1" description="REQUIRED_TAG_MISSING" />
+      <value enum="2" description="TAG_NOT_DEFINED_FOR_THIS_MESSAGE_TYPE" />
+      <value enum="3" description="UNDEFINED_TAG" />
+      <value enum="4" description="TAG_SPECIFIED_WITHOUT_A_VALUE" />
+      <value enum="5" description="VALUE_IS_INCORRECT" />
+      <value enum="6" description="INCORRECT_DATA_FORMAT_FOR_VALUE" />
+      <value enum="7" description="DECRYPTION_PROBLEM" />
+      <value enum="8" description="SIGNATURE_PROBLEM" />
+      <value enum="9" description="COMPID_PROBLEM" />
+      <value enum="10" description="SENDINGTIME_ACCURACY_PROBLEM" />
+      <value enum="11" description="INVALID_MSGTYPE" />
+      <value enum="12" description="XML_VALIDATION_ERROR" />
+      <value enum="13" description="TAG_APPEARS_MORE_THAN_ONCE" />
+      <value enum="14" description="TAG_SPECIFIED_OUT_OF_REQUIRED_ORDER" />
+      <value enum="15" description="REPEATING_GROUP_FIELDS_OUT_OF_ORDER" />
+      <value enum="16" description="INCORRECT_NUMINGROUP_COUNT_FOR_REPEATING_GROUP" />
+      <value enum="17" description="NON_DATA_VALUE_INCLUDES_FIELD_DELIMITER" />
+      <value enum="99" description="OTHER" />
+    </field>
+    <field number="374" name="BidRequestTransType" type="CHAR">
+      <value enum="N" description="NEW" />
+      <value enum="C" description="CANCEL" />
+    </field>
+    <field number="375" name="ContraBroker" type="STRING" />
+    <field number="376" name="ComplianceID" type="STRING" />
+    <field number="377" name="SolicitedFlag" type="BOOLEAN" />
+    <field number="378" name="ExecRestatementReason" type="INT">
+      <value enum="0" description="GT_CORPORATE_ACTION" />
+      <value enum="1" description="GT_RENEWAL_RESTATEMENT" />
+      <value enum="2" description="VERBAL_CHANGE" />
+      <value enum="3" description="REPRICING_OF_ORDER" />
+      <value enum="4" description="BROKER_OPTION" />
+      <value enum="5" description="PARTIAL_DECLINE_OF_ORDERQTY" />
+      <value enum="6" description="CANCEL_ON_TRADING_HALT" />
+      <value enum="7" description="CANCEL_ON_SYSTEM_FAILURE" />
+      <value enum="8" description="MARKET_OPTION" />
+      <value enum="9" description="CANCELED_NOT_BEST" />
+    </field>
+    <field number="379" name="BusinessRejectRefID" type="STRING" />
+    <field number="380" name="BusinessRejectReason" type="INT">
+      <value enum="0" description="OTHER" />
+      <value enum="1" description="UNKOWN_ID" />
+      <value enum="2" description="UNKNOWN_SECURITY" />
+      <value enum="3" description="UNSUPPORTED_MESSAGE_TYPE" />
+      <value enum="4" description="APPLICATION_NOT_AVAILABLE" />
+      <value enum="5" description="CONDITIONALLY_REQUIRED_FIELD_MISSING" />
+      <value enum="6" description="NOT_AUTHORIZED" />
+      <value enum="7" description="DELIVERTO_FIRM_NOT_AVAILABLE_AT_THIS_TIME" />
+    </field>
+    <field number="381" name="GrossTradeAmt" type="AMT" />
+    <field number="382" name="NoContraBrokers" type="NUMINGROUP" />
+    <field number="383" name="MaxMessageSize" type="LENGTH" />
+    <field number="384" name="NoMsgTypes" type="NUMINGROUP" />
+    <field number="385" name="MsgDirection" type="CHAR">
+      <value enum="S" description="SEND" />
+      <value enum="R" description="RECEIVE" />
+    </field>
+    <field number="386" name="NoTradingSessions" type="NUMINGROUP" />
+    <field number="387" name="TotalVolumeTraded" type="QTY" />
+    <field number="388" name="DiscretionInst" type="CHAR">
+      <value enum="0" description="RELATED_TO_DISPLAYED_PRICE" />
+      <value enum="1" description="RELATED_TO_MARKET_PRICE" />
+      <value enum="2" description="RELATED_TO_PRIMARY_PRICE" />
+      <value enum="3" description="RELATED_TO_LOCAL_PRIMARY_PRICE" />
+      <value enum="4" description="RELATED_TO_MIDPOINT_PRICE" />
+      <value enum="5" description="RELATED_TO_LAST_TRADE_PRICE" />
+      <value enum="6" description="RELATED_TO_VWAP" />
+    </field>
+    <field number="389" name="DiscretionOffsetValue" type="FLOAT" />
+    <field number="390" name="BidID" type="STRING" />
+    <field number="391" name="ClientBidID" type="STRING" />
+    <field number="392" name="ListName" type="STRING" />
+    <field number="393" name="TotNoRelatedSym" type="INT" />
+    <field number="394" name="BidType" type="INT">
+      <value enum="1" description="NON_DISCLOSED" />
+      <value enum="2" description="DISCLOSED_STYLE" />
+      <value enum="3" description="NO_BIDDING_PROCESS" />
+    </field>
+    <field number="395" name="NumTickets" type="INT" />
+    <field number="396" name="SideValue1" type="AMT" />
+    <field number="397" name="SideValue2" type="AMT" />
+    <field number="398" name="NoBidDescriptors" type="NUMINGROUP" />
+    <field number="399" name="BidDescriptorType" type="INT">
+      <value enum="1" description="SECTOR" />
+      <value enum="2" description="COUNTRY" />
+      <value enum="3" description="INDEX" />
+    </field>
+    <field number="400" name="BidDescriptor" type="STRING" />
+    <field number="401" name="SideValueInd" type="INT">
+      <value enum="1" description="SIDEVALUE1" />
+      <value enum="2" description="SIDEVALUE2" />
+    </field>
+    <field number="402" name="LiquidityPctLow" type="PERCENTAGE" />
+    <field number="403" name="LiquidityPctHigh" type="PERCENTAGE" />
+    <field number="404" name="LiquidityValue" type="AMT" />
+    <field number="405" name="EFPTrackingError" type="PERCENTAGE" />
+    <field number="406" name="FairValue" type="AMT" />
+    <field number="407" name="OutsideIndexPct" type="PERCENTAGE" />
+    <field number="408" name="ValueOfFutures" type="AMT" />
+    <field number="409" name="LiquidityIndType" type="INT">
+      <value enum="1" description="FIVEDAY_MOVING_AVERAGE" />
+      <value enum="2" description="TWENTYDAY_MOVING_AVERAGE" />
+      <value enum="3" description="NORMAL_MARKET_SIZE" />
+      <value enum="4" description="OTHER" />
+    </field>
+    <field number="410" name="WtAverageLiquidity" type="PERCENTAGE" />
+    <field number="411" name="ExchangeForPhysical" type="BOOLEAN" />
+    <field number="412" name="OutMainCntryUIndex" type="AMT" />
+    <field number="413" name="CrossPercent" type="PERCENTAGE" />
+    <field number="414" name="ProgRptReqs" type="INT">
+      <value enum="1" description="BUYSIDE_EXPLICITLY_REQUESTS_STATUS_USING_STATUSREQUEST" />
+      <value enum="2" description="SELLSIDE_PERIODICALLY_SENDS_STATUS_USING_LISTSTATUS" />
+      <value enum="3" description="REAL_TIME_EXECUTION_REPORTS" />
+    </field>
+    <field number="415" name="ProgPeriodInterval" type="INT" />
+    <field number="416" name="IncTaxInd" type="INT">
+      <value enum="1" description="NET" />
+      <value enum="2" description="GROSS" />
+    </field>
+    <field number="417" name="NumBidders" type="INT" />
+    <field number="418" name="BidTradeType" type="CHAR">
+      <value enum="R" description="RISK_TRADE" />
+      <value enum="G" description="VWAP_GUARANTEE" />
+      <value enum="A" description="AGENCY" />
+      <value enum="J" description="GUARANTEED_CLOSE" />
+    </field>
+    <field number="419" name="BasisPxType" type="CHAR">
+      <value enum="2" description="CLOSING_PRICE_AT_MORNING_SESSION" />
+      <value enum="3" description="CLOSING_PRICE" />
+      <value enum="4" description="CURRENT_PRICE" />
+      <value enum="5" description="SQ" />
+      <value enum="6" description="VWAP_THROUGH_A_DAY" />
+      <value enum="7" description="VWAP_THROUGH_A_MORNING_SESSION" />
+      <value enum="8" description="VWAP_THROUGH_AN_AFTERNOON_SESSION" />
+      <value enum="9" description="VWAP_THROUGH_A_DAY_EXCEPT_YORI" />
+      <value enum="A" description="VWAP_THROUGH_A_MORNING_SESSION_EXCEPT_YORI" />
+      <value enum="B" description="VWAP_THROUGH_AN_AFTERNOON_SESSION_EXCEPT_YORI" />
+      <value enum="C" description="STRIKE" />
+      <value enum="D" description="OPEN" />
+      <value enum="Z" description="OTHERS" />
+    </field>
+    <field number="420" name="NoBidComponents" type="NUMINGROUP" />
+    <field number="421" name="Country" type="COUNTRY" />
+    <field number="422" name="TotNoStrikes" type="INT" />
+    <field number="423" name="PriceType" type="INT">
+      <value enum="1" description="PERCENTAGE" />
+      <value enum="2" description="PER_UNIT" />
+      <value enum="3" description="FIXED_AMOUNT" />
+      <value enum="4" description="DISCOUNT" />
+      <value enum="5" description="PREMIUM" />
+      <value enum="6" description="SPREAD" />
+      <value enum="7" description="TED_PRICE" />
+      <value enum="8" description="TED_YIELD" />
+      <value enum="9" description="YIELD" />
+    </field>
+    <field number="424" name="DayOrderQty" type="QTY" />
+    <field number="425" name="DayCumQty" type="QTY" />
+    <field number="426" name="DayAvgPx" type="PRICE" />
+    <field number="427" name="GTBookingInst" type="INT">
+      <value enum="0" description="BOOK_OUT_ALL_TRADES_ON_DAY_OF_EXECUTION" />
+      <value enum="1" description="ACCUMULATE_EXECUTIONS_UNTIL_ORDER_IS_FILLED_OR_EXPIRES" />
+      <value enum="2" description="ACCUMULATE_UNTIL_VERBALLY_NOTIFIED_OTHERWISE" />
+    </field>
+    <field number="428" name="NoStrikes" type="NUMINGROUP" />
+    <field number="429" name="ListStatusType" type="INT">
+      <value enum="1" description="ACK" />
+      <value enum="2" description="RESPONSE" />
+      <value enum="3" description="TIMED" />
+      <value enum="4" description="EXECSTARTED" />
+      <value enum="5" description="ALLDONE" />
+      <value enum="6" description="ALERT" />
+    </field>
+    <field number="430" name="NetGrossInd" type="INT">
+      <value enum="1" description="NET" />
+      <value enum="2" description="GROSS" />
+    </field>
+    <field number="431" name="ListOrderStatus" type="INT">
+      <value enum="1" description="INBIDDINGPROCESS" />
+      <value enum="2" description="RECEIVEDFOREXECUTION" />
+      <value enum="3" description="EXECUTING" />
+      <value enum="4" description="CANCELING" />
+      <value enum="5" description="ALERT" />
+      <value enum="6" description="ALL_DONE" />
+      <value enum="7" description="REJECT" />
+    </field>
+    <field number="432" name="ExpireDate" type="LOCALMKTDATE" />
+    <field number="433" name="ListExecInstType" type="CHAR">
+      <value enum="1" description="IMMEDIATE" />
+      <value enum="2" description="WAIT_FOR_EXECUTE_INSTRUCTION" />
+      <value enum="3" description="EXCHANGE_SWITCH_CIV_ORDER_SELL_DRIVEN" />
+      <value enum="4" description="EXCHANGE_SWITCH_CIV_ORDER_BUY_DRIVEN_CASH_TOP_UP" />
+      <value enum="5" description="EXCHANGE_SWITCH_CIV_ORDER_BUY_DRIVEN_CASH_WITHDRAW" />
+    </field>
+    <field number="434" name="CxlRejResponseTo" type="CHAR">
+      <value enum="1" description="ORDER_CANCEL_REQUEST" />
+      <value enum="2" description="ORDER_CANCEL_REPLACE_REQUEST" />
+    </field>
+    <field number="435" name="UnderlyingCouponRate" type="PERCENTAGE" />
+    <field number="436" name="UnderlyingContractMultiplier" type="FLOAT" />
+    <field number="437" name="ContraTradeQty" type="QTY" />
+    <field number="438" name="ContraTradeTime" type="UTCTIMESTAMP" />
+    <field number="439" name="ClearingFirm" type="STRING" until="43" />
+    <field number="440" name="ClearingAccount" type="STRING" until="43" />
+    <field number="441" name="LiquidityNumSecurities" type="INT" />
+    <field number="442" name="MultiLegReportingType" type="CHAR">
+      <value enum="1" description="SINGLE_SECURITY" />
+      <value enum="2" description="INDIVIDUAL_LEG_OF_A_MULTI_LEG_SECURITY" />
+      <value enum="3" description="MULTI_LEG_SECURITY" />
+    </field>
+    <field number="443" name="StrikeTime" type="UTCTIMESTAMP" />
+    <field number="444" name="ListStatusText" type="STRING" />
+    <field number="445" name="EncodedListStatusTextLen" type="LENGTH" />
+    <field number="446" name="EncodedListStatusText" type="DATA" />
+    <field number="447" name="PartyIDSource" type="CHAR">
+      <value enum="B" description="BIC" />
+      <value enum="C" description="GENERALLY_ACCEPTED_MARKET_PARTICIPANT_IDENTIFIER" />
+      <value enum="D" description="PROPRIETARY_CUSTOM_CODE" />
+      <value enum="E" description="ISO_COUNTRY_CODE" />
+      <value enum="F" description="SETTLEMENT_ENTITY_LOCATION" />
+      <value enum="G" description="MIC" />
+      <value enum="H" description="CSD_PARTICIPANT_MEMBER_CODE" />
+      <value enum="1" description="KOREAN_INVESTOR_ID" />
+      <value enum="2" description="TAIWANESE_QUALIFIED_FOREIGN_INVESTOR_ID_QFII_FID" />
+      <value enum="3" description="TAIWANESE_TRADING_ACCOUNT" />
+      <value enum="4" description="MALAYSIAN_CENTRAL_DEPOSITORY_NUMBER" />
+      <value enum="5" description="CHINESE_B_SHARE" />
+      <value enum="6" description="UK_NATIONAL_INSURANCE_OR_PENSION_NUMBER" />
+      <value enum="7" description="US_SOCIAL_SECURITY_NUMBER" />
+      <value enum="8" description="US_EMPLOYER_IDENTIFICATION_NUMBER" />
+      <value enum="9" description="AUSTRALIAN_BUSINESS_NUMBER" />
+      <value enum="A" description="AUSTRALIAN_TAX_FILE_NUMBER" />
+      <value enum="I" description="DIRECTED_BROKER" />
+    </field>
+    <field number="448" name="PartyID" type="STRING" />
+    <field number="449" name="TotalVolumeTradedDate" type="UTCDATE" until="43" />
+    <field number="450" name="TotalVolumeTradedTime" type="UTCTIMEONLY" until="43" />
+    <field number="451" name="NetChgPrevDay" type="PRICEOFFSET" />
+    <field number="452" name="PartyRole" type="INT">
+      <value enum="1" description="EXECUTING_FIRM" />
+      <value enum="2" description="BROKER_OF_CREDIT" />
+      <value enum="3" description="CLIENT_ID" />
+      <value enum="4" description="CLEARING_FIRM" />
+      <value enum="5" description="INVESTOR_ID" />
+      <value enum="6" description="INTRODUCING_FIRM" />
+      <value enum="7" description="ENTERING_FIRM" />
+      <value enum="8" description="LOCATE_LENDING_FIRM" />
+      <value enum="9" description="FUND_MANAGER_CLIENT_ID" />
+    </field>
+    <field number="453" name="NoPartyIDs" type="NUMINGROUP" />
+    <field number="454" name="NoSecurityAltID" type="NUMINGROUP" />
+    <field number="455" name="SecurityAltID" type="STRING" />
+    <field number="456" name="SecurityAltIDSource" type="STRING" />
+    <field number="457" name="NoUnderlyingSecurityAltID" type="NUMINGROUP" />
+    <field number="458" name="UnderlyingSecurityAltID" type="STRING" />
+    <field number="459" name="UnderlyingSecurityAltIDSource" type="STRING" />
+    <field number="460" name="Product" type="INT">
+      <value enum="1" description="AGENCY" />
+      <value enum="2" description="COMMODITY" />
+      <value enum="3" description="CORPORATE" />
+      <value enum="4" description="CURRENCY" />
+      <value enum="5" description="EQUITY" />
+      <value enum="6" description="GOVERNMENT" />
+      <value enum="7" description="INDEX" />
+      <value enum="8" description="LOAN" />
+      <value enum="9" description="MONEYMARKET" />
+      <value enum="10" description="MORTGAGE" />
+      <value enum="11" description="MUNICIPAL" />
+      <value enum="12" description="OTHER" />
+      <value enum="13" description="FINANCING" />
+    </field>
+    <field number="461" name="CFICode" type="STRING" />
+    <field number="462" name="UnderlyingProduct" type="INT" />
+    <field number="463" name="UnderlyingCFICode" type="STRING" />
+    <field number="464" name="TestMessageIndicator" type="BOOLEAN" />
+    <field number="465" name="QuantityType" type="INT">
+      <value enum="1" description="SHARES" />
+      <value enum="2" description="BONDS" />
+      <value enum="3" description="CURRENTFACE" />
+      <value enum="4" description="ORIGINALFACE" />
+      <value enum="5" description="CURRENCY" />
+      <value enum="6" description="CONTRACTS" />
+      <value enum="7" description="OTHER" />
+      <value enum="8" description="PAR" />
+    </field>
+    <field number="466" name="BookingRefID" type="STRING" />
+    <field number="467" name="IndividualAllocID" type="STRING" />
+    <field number="468" name="RoundingDirection" type="CHAR">
+      <value enum="0" description="ROUND_TO_NEAREST" />
+      <value enum="1" description="ROUND_DOWN" />
+      <value enum="2" description="ROUND_UP" />
+    </field>
+    <field number="469" name="RoundingModulus" type="FLOAT" />
+    <field number="470" name="CountryOfIssue" type="COUNTRY" />
+    <field number="471" name="StateOrProvinceOfIssue" type="STRING" />
+    <field number="472" name="LocaleOfIssue" type="STRING" />
+    <field number="473" name="NoRegistDtls" type="NUMINGROUP" />
+    <field number="474" name="MailingDtls" type="STRING" />
+    <field number="475" name="InvestorCountryOfResidence" type="COUNTRY" />
+    <field number="476" name="PaymentRef" type="STRING" />
+    <field number="477" name="DistribPaymentMethod" type="INT">
+      <value enum="1" description="CREST" />
+      <value enum="2" description="NSCC" />
+      <value enum="3" description="EUROCLEAR" />
+      <value enum="4" description="CLEARSTREAM" />
+      <value enum="5" description="CHEQUE" />
+      <value enum="6" description="TELEGRAPHIC_TRANSFER" />
+      <value enum="7" description="FEDWIRE" />
+      <value enum="8" description="DIRECT_CREDIT" />
+      <value enum="9" description="ACH_CREDIT" />
+    </field>
+    <field number="478" name="CashDistribCurr" type="CURRENCY" />
+    <field number="479" name="CommCurrency" type="CURRENCY" />
+    <field number="480" name="CancellationRights" type="CHAR">
+      <value enum="N" description="NO_EXECUTION_ONLY" />
+      <value enum="M" description="NO_WAIVER_AGREEMENT" />
+      <value enum="O" description="NO_INSTITUTIONAL" />
+    </field>
+    <field number="481" name="MoneyLaunderingStatus" type="CHAR">
+      <value enum="Y" description="PASSED" />
+      <value enum="N" description="NOT_CHECKED" />
+      <value enum="1" description="EXEMPT_BELOW_THE_LIMIT" />
+      <value enum="2" description="EXEMPT_CLIENT_MONEY_TYPE_EXEMPTION" />
+      <value enum="3" description="EXEMPT_AUTHORISED_CREDIT_OR_FINANCIAL_INSTITUTION" />
+    </field>
+    <field number="482" name="MailingInst" type="STRING" />
+    <field number="483" name="TransBkdTime" type="UTCTIMESTAMP" />
+    <field number="484" name="ExecPriceType" type="CHAR">
+      <value enum="B" description="BID_PRICE" />
+      <value enum="C" description="CREATION_PRICE" />
+      <value enum="D" description="CREATION_PRICE_PLUS_ADJUSTMENT_PERCENT" />
+      <value enum="E" description="CREATION_PRICE_PLUS_ADJUSTMENT_AMOUNT" />
+      <value enum="O" description="OFFER_PRICE" />
+      <value enum="P" description="OFFER_PRICE_MINUS_ADJUSTMENT_PERCENT" />
+      <value enum="Q" description="OFFER_PRICE_MINUS_ADJUSTMENT_AMOUNT" />
+      <value enum="S" description="SINGLE_PRICE" />
+    </field>
+    <field number="485" name="ExecPriceAdjustment" type="FLOAT" />
+    <field number="486" name="DateOfBirth" type="LOCALMKTDATE" />
+    <field number="487" name="TradeReportTransType" type="INT">
+      <value enum="0" description="NEW" />
+      <value enum="1" description="CANCEL" />
+      <value enum="2" description="REPLACE" />
+      <value enum="3" description="RELEASE" />
+      <value enum="4" description="REVERSE" />
+    </field>
+    <field number="488" name="CardHolderName" type="STRING" />
+    <field number="489" name="CardNumber" type="STRING" />
+    <field number="490" name="CardExpDate" type="LOCALMKTDATE" />
+    <field number="491" name="CardIssNum" type="STRING" />
+    <field number="492" name="PaymentMethod" type="INT">
+      <value enum="1" description="CREST" />
+      <value enum="2" description="NSCC" />
+      <value enum="3" description="EUROCLEAR" />
+      <value enum="4" description="CLEARSTREAM" />
+      <value enum="5" description="CHEQUE" />
+      <value enum="6" description="TELEGRAPHIC_TRANSFER" />
+      <value enum="7" description="FEDWIRE" />
+      <value enum="8" description="DEBIT_CARD" />
+      <value enum="9" description="DIRECT_DEBIT" />
+    </field>
+    <field number="493" name="RegistAcctType" type="STRING" />
+    <field number="494" name="Designation" type="STRING" />
+    <field number="495" name="TaxAdvantageType" type="INT">
+      <value enum="0" description="NONE" />
+      <value enum="1" description="MAXI_ISA" />
+      <value enum="2" description="TESSA" />
+      <value enum="3" description="MINI_CASH_ISA" />
+      <value enum="4" description="MINI_STOCKS_AND_SHARES_ISA" />
+      <value enum="5" description="MINI_INSURANCE_ISA" />
+      <value enum="6" description="CURRENT_YEAR_PAYMENT" />
+      <value enum="7" description="PRIOR_YEAR_PAYMENT" />
+      <value enum="8" description="ASSET_TRANSFER" />
+      <value enum="9" description="EMPLOYEE_PRIOR_YEAR" />
+      <value enum="999" description="OTHER" />
+    </field>
+    <field number="496" name="RegistRejReasonText" type="STRING" />
+    <field number="497" name="FundRenewWaiv" type="CHAR">
+      <value enum="Y" description="YES" />
+      <value enum="N" description="NO" />
+    </field>
+    <field number="498" name="CashDistribAgentName" type="STRING" />
+    <field number="499" name="CashDistribAgentCode" type="STRING" />
+    <field number="500" name="CashDistribAgentAcctNumber" type="STRING" />
+    <field number="501" name="CashDistribPayRef" type="STRING" />
+    <field number="502" name="CashDistribAgentAcctName" type="STRING" />
+    <field number="503" name="CardStartDate" type="LOCALMKTDATE" />
+    <field number="504" name="PaymentDate" type="LOCALMKTDATE" />
+    <field number="505" name="PaymentRemitterID" type="STRING" />
+    <field number="506" name="RegistStatus" type="CHAR">
+      <value enum="A" description="ACCEPTED" />
+      <value enum="R" description="REJECTED" />
+      <value enum="H" description="HELD" />
+      <value enum="N" description="REMINDER" />
+    </field>
+    <field number="507" name="RegistRejReasonCode" type="INT">
+      <value enum="1" description="INVALID_UNACCEPTABLE_ACCOUNT_TYPE" />
+      <value enum="2" description="INVALID_UNACCEPTABLE_TAX_EXEMPT_TYPE" />
+      <value enum="3" description="INVALID_UNACCEPTABLE_OWNERSHIP_TYPE" />
+      <value enum="4" description="INVALID_UNACCEPTABLE_NO_REG_DETLS" />
+      <value enum="5" description="INVALID_UNACCEPTABLE_REG_SEQ_NO" />
+      <value enum="6" description="INVALID_UNACCEPTABLE_REG_DTLS" />
+      <value enum="7" description="INVALID_UNACCEPTABLE_MAILING_DTLS" />
+      <value enum="8" description="INVALID_UNACCEPTABLE_MAILING_INST" />
+      <value enum="9" description="INVALID_UNACCEPTABLE_INVESTOR_ID" />
+      <value enum="10" description="INVALID_UNACCEPTABLE_INVESTOR_ID_SOURCE" />
+      <value enum="11" description="INVALID_UNACCEPTABLE_DATE_OF_BIRTH" />
+      <value enum="12" description="INVALID_UNACCEPTABLE_INVESTOR_COUNTRY_OF_RESIDENCE" />
+      <value enum="13" description="INVALID_UNACCEPTABLE_NODISTRIBINSTNS" />
+      <value enum="14" description="INVALID_UNACCEPTABLE_DISTRIB_PERCENTAGE" />
+      <value enum="15" description="INVALID_UNACCEPTABLE_DISTRIB_PAYMENT_METHOD" />
+      <value enum="16" description="INVALID_UNACCEPTABLE_CASH_DISTRIB_AGENT_ACCT_NAME" />
+      <value enum="17" description="INVALID_UNACCEPTABLE_CASH_DISTRIB_AGENT_CODE" />
+      <value enum="18" description="INVALID_UNACCEPTABLE_CASH_DISTRIB_AGENT_ACCT_NUM" />
+      <value enum="99" description="OTHER" />
+    </field>
+    <field number="508" name="RegistRefID" type="STRING" />
+    <field number="509" name="RegistDtls" type="STRING" />
+    <field number="510" name="NoDistribInsts" type="NUMINGROUP" />
+    <field number="511" name="RegistEmail" type="STRING" />
+    <field number="512" name="DistribPercentage" type="PERCENTAGE" />
+    <field number="513" name="RegistID" type="STRING" />
+    <field number="514" name="RegistTransType" type="CHAR">
+      <value enum="0" description="NEW" />
+      <value enum="1" description="REPLACE" />
+      <value enum="2" description="CANCEL" />
+    </field>
+    <field number="515" name="ExecValuationPoint" type="UTCTIMESTAMP" />
+    <field number="516" name="OrderPercent" type="PERCENTAGE" />
+    <field number="517" name="OwnershipType" type="CHAR">
+      <value enum="J" description="JOINT_INVESTORS" />
+      <value enum="T" description="TENANTS_IN_COMMON" />
+      <value enum="2" description="JOINT_TRUSTEES" />
+    </field>
+    <field number="518" name="NoContAmts" type="NUMINGROUP" />
+    <field number="519" name="ContAmtType" type="INT">
+      <value enum="1" description="COMMISSION_AMOUNT" />
+      <value enum="2" description="COMMISSION_PERCENT" />
+      <value enum="3" description="INITIAL_CHARGE_AMOUNT" />
+      <value enum="4" description="INITIAL_CHARGE_PERCENT" />
+      <value enum="5" description="DISCOUNT_AMOUNT" />
+      <value enum="6" description="DISCOUNT_PERCENT" />
+      <value enum="7" description="DILUTION_LEVY_AMOUNT" />
+      <value enum="8" description="DILUTION_LEVY_PERCENT" />
+      <value enum="9" description="EXIT_CHARGE_AMOUNT" />
+    </field>
+    <field number="520" name="ContAmtValue" type="FLOAT" />
+    <field number="521" name="ContAmtCurr" type="CURRENCY" />
+    <field number="522" name="OwnerType" type="INT">
+      <value enum="1" description="INDIVIDUAL_INVESTOR" />
+      <value enum="2" description="PUBLIC_COMPANY" />
+      <value enum="3" description="PRIVATE_COMPANY" />
+      <value enum="4" description="INDIVIDUAL_TRUSTEE" />
+      <value enum="5" description="COMPANY_TRUSTEE" />
+      <value enum="6" description="PENSION_PLAN" />
+      <value enum="7" description="CUSTODIAN_UNDER_GIFTS_TO_MINORS_ACT" />
+      <value enum="8" description="TRUSTS" />
+      <value enum="9" description="FIDUCIARIES" />
+    </field>
+    <field number="523" name="PartySubID" type="STRING" />
+    <field number="524" name="NestedPartyID" type="STRING" />
+    <field number="525" name="NestedPartyIDSource" type="CHAR" />
+    <field number="526" name="SecondaryClOrdID" type="STRING" />
+    <field number="527" name="SecondaryExecID" type="STRING" />
+    <field number="528" name="OrderCapacity" type="CHAR">
+      <value enum="A" description="AGENCY" />
+      <value enum="G" description="PROPRIETARY" />
+      <value enum="I" description="INDIVIDUAL" />
+      <value enum="P" description="PRINCIPAL" />
+      <value enum="R" description="RISKLESS_PRINCIPAL" />
+      <value enum="W" description="AGENT_FOR_OTHER_MEMBER" />
+    </field>
+    <field number="529" name="OrderRestrictions" type="MULTIPLEVALUESTRING">
+      <value enum="1" description="PROGRAM_TRADE" />
+      <value enum="2" description="INDEX_ARBITRAGE" />
+      <value enum="3" description="NON_INDEX_ARBITRAGE" />
+      <value enum="4" description="COMPETING_MARKET_MAKER" />
+      <value enum="5" description="ACTING_AS_MARKET_MAKER_OR_SPECIALIST_IN_THE_SECURITY" />
+      <value enum="6" description="ACTING_AS_MARKET_MAKER_OR_SPECIALIST_IN_THE_UNDERLYING_SECURITY_OF_A_DERIVATIVE_SECURITY" />
+      <value enum="7" description="FOREIGN_ENTITY" />
+      <value enum="8" description="EXTERNAL_MARKET_PARTICIPANT" />
+      <value enum="9" description="EXTERNAL_INTER_CONNECTED_MARKET_LINKAGE" />
+      <value enum="A" description="RISKLESS_ARBITRAGE" />
+    </field>
+    <field number="530" name="MassCancelRequestType" type="CHAR">
+      <value enum="1" description="CANCEL_ORDERS_FOR_A_SECURITY" />
+      <value enum="2" description="CANCEL_ORDERS_FOR_AN_UNDERLYING_SECURITY" />
+      <value enum="3" description="CANCEL_ORDERS_FOR_A_PRODUCT" />
+      <value enum="4" description="CANCEL_ORDERS_FOR_A_CFICODE" />
+      <value enum="5" description="CANCEL_ORDERS_FOR_A_SECURITYTYPE" />
+      <value enum="6" description="CANCEL_ORDERS_FOR_A_TRADING_SESSION" />
+      <value enum="7" description="CANCEL_ALL_ORDERS" />
+    </field>
+    <field number="531" name="MassCancelResponse" type="CHAR">
+      <value enum="0" description="CANCEL_REQUEST_REJECTED" />
+      <value enum="1" description="CANCEL_ORDERS_FOR_A_SECURITY" />
+      <value enum="2" description="CANCEL_ORDERS_FOR_AN_UNDERLYING_SECURITY" />
+      <value enum="3" description="CANCEL_ORDERS_FOR_A_PRODUCT" />
+      <value enum="4" description="CANCEL_ORDERS_FOR_A_CFICODE" />
+      <value enum="5" description="CANCEL_ORDERS_FOR_A_SECURITYTYPE" />
+      <value enum="6" description="CANCEL_ORDERS_FOR_A_TRADING_SESSION" />
+      <value enum="7" description="CANCEL_ALL_ORDERS" />
+    </field>
+    <field number="532" name="MassCancelRejectReason" type="CHAR">
+      <value enum="0" description="MASS_CANCEL_NOT_SUPPORTED" />
+      <value enum="1" description="INVALID_OR_UNKNOWN_SECURITY" />
+      <value enum="2" description="INVALID_OR_UNKNOWN_UNDERLYING" />
+      <value enum="3" description="INVALID_OR_UNKNOWN_PRODUCT" />
+      <value enum="4" description="INVALID_OR_UNKNOWN_CFICODE" />
+      <value enum="5" description="INVALID_OR_UNKNOWN_SECURITY_TYPE" />
+      <value enum="6" description="INVALID_OR_UNKNOWN_TRADING_SESSION" />
+    </field>
+    <field number="533" name="TotalAffectedOrders" type="INT" />
+    <field number="534" name="NoAffectedOrders" type="INT" />
+    <field number="535" name="AffectedOrderID" type="STRING" />
+    <field number="536" name="AffectedSecondaryOrderID" type="STRING" />
+    <field number="537" name="QuoteType" type="INT">
+      <value enum="0" description="INDICATIVE" />
+      <value enum="1" description="TRADEABLE" />
+      <value enum="2" description="RESTRICTED_TRADEABLE" />
+      <value enum="3" description="COUNTER" />
+    </field>
+    <field number="538" name="NestedPartyRole" type="INT" />
+    <field number="539" name="NoNestedPartyIDs" type="NUMINGROUP" />
+    <field number="540" name="TotalAccruedInterestAmt" type="AMT" />
+    <field number="541" name="MaturityDate" type="LOCALMKTDATE" />
+    <field number="542" name="UnderlyingMaturityDate" type="LOCALMKTDATE" />
+    <field number="543" name="InstrRegistry" type="STRING" />
+    <field number="544" name="CashMargin" type="CHAR">
+      <value enum="1" description="CASH" />
+      <value enum="2" description="MARGIN_OPEN" />
+      <value enum="3" description="MARGIN_CLOSE" />
+    </field>
+    <field number="545" name="NestedPartySubID" type="STRING" />
+    <field number="546" name="Scope" type="MULTIPLEVALUESTRING">
+      <value enum="1" description="LOCAL" />
+      <value enum="2" description="NATIONAL" />
+      <value enum="3" description="GLOBAL" />
+    </field>
+    <field number="547" name="MDImplicitDelete" type="BOOLEAN" />
+    <field number="548" name="CrossID" type="STRING" />
+    <field number="549" name="CrossType" type="INT">
+      <value enum="1" description="CROSS_TRADE_WHICH_IS_EXECUTED_COMPLETELY_OR_NOT" />
+      <value enum="2" description="CROSS_TRADE_WHICH_IS_EXECUTED_PARTIALLY_AND_THE_REST_IS_CANCELLED" />
+      <value enum="3" description="CROSS_TRADE_WHICH_IS_PARTIALLY_EXECUTED_WITH_THE_UNFILLED_PORTIONS_REMAINING_ACTIVE" />
+      <value enum="4" description="CROSS_TRADE_IS_EXECUTED_WITH_EXISTING_ORDERS_WITH_THE_SAME_PRICE" />
+    </field>
+    <field number="550" name="CrossPrioritization" type="INT">
+      <value enum="0" description="NONE" />
+      <value enum="1" description="BUY_SIDE_IS_PRIORITIZED" />
+      <value enum="2" description="SELL_SIDE_IS_PRIORITIZED" />
+    </field>
+    <field number="551" name="OrigCrossID" type="STRING" />
+    <field number="552" name="NoSides" type="NUMINGROUP">
+      <value enum="1" description="ONE_SIDE" />
+      <value enum="2" description="BOTH_SIDES" />
+    </field>
+    <field number="553" name="Username" type="STRING" />
+    <field number="554" name="Password" type="STRING" />
+    <field number="555" name="NoLegs" type="NUMINGROUP" />
+    <field number="556" name="LegCurrency" type="CURRENCY" />
+    <field number="557" name="TotNoSecurityTypes" type="INT" />
+    <field number="558" name="NoSecurityTypes" type="NUMINGROUP" />
+    <field number="559" name="SecurityListRequestType" type="INT">
+      <value enum="0" description="SYMBOL" />
+      <value enum="1" description="SECURITYTYPE_AND_OR_CFICODE" />
+      <value enum="2" description="PRODUCT" />
+      <value enum="3" description="TRADINGSESSIONID" />
+      <value enum="4" description="ALL_SECURITIES" />
+    </field>
+    <field number="560" name="SecurityRequestResult" type="INT">
+      <value enum="0" description="VALID_REQUEST" />
+      <value enum="1" description="INVALID_OR_UNSUPPORTED_REQUEST" />
+      <value enum="2" description="NO_INSTRUMENTS_FOUND_THAT_MATCH_SELECTION_CRITERIA" />
+      <value enum="3" description="NOT_AUTHORIZED_TO_RETRIEVE_INSTRUMENT_DATA" />
+      <value enum="4" description="INSTRUMENT_DATA_TEMPORARILY_UNAVAILABLE" />
+      <value enum="5" description="REQUEST_FOR_INSTRUMENT_DATA_NOT_SUPPORTED" />
+    </field>
+    <field number="561" name="RoundLot" type="QTY" />
+    <field number="562" name="MinTradeVol" type="QTY" />
+    <field number="563" name="MultiLegRptTypeReq" type="INT">
+      <value enum="0" description="REPORT_BY_MULITLEG_SECURITY_ONLY" />
+      <value enum="1" description="REPORT_BY_MULTILEG_SECURITY_AND_BY_INSTRUMENT_LEGS_BELONGING_TO_THE_MULTILEG_SECURITY" />
+      <value enum="2" description="REPORT_BY_INSTRUMENT_LEGS_BELONGING_TO_THE_MULTILEG_SECURITY_ONLY" />
+    </field>
+    <field number="564" name="LegPositionEffect" type="CHAR" />
+    <field number="565" name="LegCoveredOrUncovered" type="INT" />
+    <field number="566" name="LegPrice" type="PRICE" />
+    <field number="567" name="TradSesStatusRejReason" type="INT">
+      <value enum="1" description="UNKNOWN_OR_INVALID_TRADINGSESSIONID" />
+    </field>
+    <field number="568" name="TradeRequestID" type="STRING" />
+    <field number="569" name="TradeRequestType" type="INT">
+      <value enum="0" description="ALL_TRADES" />
+      <value enum="1" description="MATCHED_TRADES_MATCHING_CRITERIA_PROVIDED_ON_REQUEST" />
+      <value enum="2" description="UNMATCHED_TRADES_THAT_MATCH_CRITERIA" />
+      <value enum="3" description="UNREPORTED_TRADES_THAT_MATCH_CRITERIA" />
+      <value enum="4" description="ADVISORIES_THAT_MATCH_CRITERIA" />
+    </field>
+    <field number="570" name="PreviouslyReported" type="BOOLEAN" />
+    <field number="571" name="TradeReportID" type="STRING" />
+    <field number="572" name="TradeReportRefID" type="STRING" />
+    <field number="573" name="MatchStatus" type="CHAR">
+      <value enum="0" description="COMPARED_MATCHED_OR_AFFIRMED" />
+      <value enum="1" description="UNCOMPARED_UNMATCHED_OR_UNAFFIRMED" />
+      <value enum="2" description="ADVISORY_OR_ALERT" />
+    </field>
+    <field number="574" name="MatchType" type="STRING" />
+    <field number="575" name="OddLot" type="BOOLEAN" />
+    <field number="576" name="NoClearingInstructions" type="INT" />
+    <field number="577" name="ClearingInstruction" type="INT">
+      <value enum="0" description="PROCESS_NORMALLY" />
+      <value enum="1" description="EXCLUDE_FROM_ALL_NETTING" />
+      <value enum="2" description="BILATERAL_NETTING_ONLY" />
+      <value enum="3" description="EX_CLEARING" />
+      <value enum="4" description="SPECIAL_TRADE" />
+      <value enum="5" description="MULTILATERAL_NETTING" />
+      <value enum="6" description="CLEAR_AGAINST_CENTRAL_COUNTERPARTY" />
+      <value enum="7" description="EXCLUDE_FROM_CENTRAL_COUNTERPARTY" />
+      <value enum="8" description="MANUAL_MODE" />
+      <value enum="9" description="AUTOMATIC_POSTING_MODE" />
+    </field>
+    <field number="578" name="TradeInputSource" type="STRING" />
+    <field number="579" name="TradeInputDevice" type="STRING" />
+    <field number="580" name="NoDates" type="INT" />
+    <field number="581" name="AccountType" type="INT">
+      <value enum="1" description="ACCOUNT_IS_CARRIED_ON_CUSTOMER_SIDE_OF_BOOKS" />
+      <value enum="2" description="ACCOUNT_IS_CARRIED_ON_NON_CUSTOMER_SIDE_OF_BOOKS" />
+      <value enum="3" description="HOUSE_TRADER" />
+      <value enum="4" description="FLOOR_TRADER" />
+      <value enum="6" description="ACCOUNT_IS_CARRIED_ON_NON_CUSTOMER_SIDE_OF_BOOKS_AND_IS_CROSS_MARGINED" />
+      <value enum="7" description="ACCOUNT_IS_HOUSE_TRADER_AND_IS_CROSS_MARGINED" />
+      <value enum="8" description="JOINT_BACKOFFICE_ACCOUNT" />
+    </field>
+    <field number="582" name="CustOrderCapacity" type="INT">
+      <value enum="1" description="MEMBER_TRADING_FOR_THEIR_OWN_ACCOUNT" />
+      <value enum="2" description="CLEARING_FIRM_TRADING_FOR_ITS_PROPRIETARY_ACCOUNT" />
+      <value enum="3" description="MEMBER_TRADING_FOR_ANOTHER_MEMBER" />
+      <value enum="4" description="ALL_OTHER" />
+    </field>
+    <field number="583" name="ClOrdLinkID" type="STRING" />
+    <field number="584" name="MassStatusReqID" type="STRING" />
+    <field number="585" name="MassStatusReqType" type="INT">
+      <value enum="1" description="STATUS_FOR_ORDERS_FOR_A_SECURITY" />
+      <value enum="2" description="STATUS_FOR_ORDERS_FOR_AN_UNDERLYING_SECURITY" />
+      <value enum="3" description="STATUS_FOR_ORDERS_FOR_A_PRODUCT" />
+      <value enum="4" description="STATUS_FOR_ORDERS_FOR_A_CFICODE" />
+      <value enum="5" description="STATUS_FOR_ORDERS_FOR_A_SECURITYTYPE" />
+      <value enum="6" description="STATUS_FOR_ORDERS_FOR_A_TRADING_SESSION" />
+      <value enum="7" description="STATUS_FOR_ALL_ORDERS" />
+      <value enum="8" description="STATUS_FOR_ORDERS_FOR_A_PARTYID" />
+    </field>
+    <field number="586" name="OrigOrdModTime" type="UTCTIMESTAMP" />
+    <field number="587" name="LegSettlType" type="CHAR" />
+    <field number="588" name="LegSettlDate" type="LOCALMKTDATE" />
+    <field number="589" name="DayBookingInst" type="CHAR">
+      <value enum="0" description="CAN_TRIGGER_BOOKING_WITHOUT_REFERENCE_TO_THE_ORDER_INITIATOR" />
+      <value enum="1" description="SPEAK_WITH_ORDER_INITIATOR_BEFORE_BOOKING" />
+      <value enum="2" description="ACCUMULATE" />
+    </field>
+    <field number="590" name="BookingUnit" type="CHAR">
+      <value enum="0" description="EACH_PARTIAL_EXECUTION_IS_A_BOOKABLE_UNIT" />
+      <value enum="1" description="AGGREGATE_PARTIAL_EXECUTIONS_ON_THIS_ORDER_AND_BOOK_ONE_TRADE_PER_ORDER" />
+      <value enum="2" description="AGGREGATE_EXECUTIONS_FOR_THIS_SYMBOL_SIDE_AND_SETTLEMENT_DATE" />
+    </field>
+    <field number="591" name="PreallocMethod" type="CHAR">
+      <value enum="0" description="PRO_RATA" />
+      <value enum="1" description="DO_NOT_PRO_RATA" />
+    </field>
+    <field number="592" name="UnderlyingCountryOfIssue" type="COUNTRY" />
+    <field number="593" name="UnderlyingStateOrProvinceOfIssue" type="STRING" />
+    <field number="594" name="UnderlyingLocaleOfIssue" type="STRING" />
+    <field number="595" name="UnderlyingInstrRegistry" type="STRING" />
+    <field number="596" name="LegCountryOfIssue" type="COUNTRY" />
+    <field number="597" name="LegStateOrProvinceOfIssue" type="STRING" />
+    <field number="598" name="LegLocaleOfIssue" type="STRING" />
+    <field number="599" name="LegInstrRegistry" type="STRING" />
+    <field number="600" name="LegSymbol" type="STRING" />
+    <field number="601" name="LegSymbolSfx" type="STRING" />
+    <field number="602" name="LegSecurityID" type="STRING" />
+    <field number="603" name="LegSecurityIDSource" type="STRING" />
+    <field number="604" name="NoLegSecurityAltID" type="STRING" />
+    <field number="605" name="LegSecurityAltID" type="STRING" />
+    <field number="606" name="LegSecurityAltIDSource" type="STRING" />
+    <field number="607" name="LegProduct" type="INT" />
+    <field number="608" name="LegCFICode" type="STRING" />
+    <field number="609" name="LegSecurityType" type="STRING" />
+    <field number="610" name="LegMaturityMonthYear" type="MONTHYEAR" />
+    <field number="611" name="LegMaturityDate" type="LOCALMKTDATE" />
+    <field number="612" name="LegStrikePrice" type="PRICE" />
+    <field number="613" name="LegOptAttribute" type="CHAR" />
+    <field number="614" name="LegContractMultiplier" type="FLOAT" />
+    <field number="615" name="LegCouponRate" type="PERCENTAGE" />
+    <field number="616" name="LegSecurityExchange" type="EXCHANGE" />
+    <field number="617" name="LegIssuer" type="STRING" />
+    <field number="618" name="EncodedLegIssuerLen" type="LENGTH" />
+    <field number="619" name="EncodedLegIssuer" type="DATA" />
+    <field number="620" name="LegSecurityDesc" type="STRING" />
+    <field number="621" name="EncodedLegSecurityDescLen" type="LENGTH" />
+    <field number="622" name="EncodedLegSecurityDesc" type="DATA" />
+    <field number="623" name="LegRatioQty" type="FLOAT" />
+    <field number="624" name="LegSide" type="CHAR" />
+    <field number="625" name="TradingSessionSubID" type="STRING" />
+    <field number="626" name="AllocType" type="INT">
+      <value enum="1" description="CALCULATED" />
+      <value enum="2" description="PRELIMINARY" />
+      <value enum="5" description="READY_TO_BOOK_SINGLE_ORDER" />
+      <value enum="7" description="WAREHOUSE_INSTRUCTION" />
+      <value enum="8" description="REQUEST_TO_INTERMEDIARY" />
+    </field>
+    <field number="627" name="NoHops" type="NUMINGROUP" />
+    <field number="628" name="HopCompID" type="STRING" />
+    <field number="629" name="HopSendingTime" type="UTCTIMESTAMP" />
+    <field number="630" name="HopRefID" type="SEQNUM" />
+    <field number="631" name="MidPx" type="PRICE" />
+    <field number="632" name="BidYield" type="PERCENTAGE" />
+    <field number="633" name="MidYield" type="PERCENTAGE" />
+    <field number="634" name="OfferYield" type="PERCENTAGE" />
+    <field number="635" name="ClearingFeeIndicator" type="STRING">
+      <value enum="B" description="CBOE_MEMBER" />
+      <value enum="C" description="NON_MEMBER_AND_CUSTOMER" />
+      <value enum="E" description="EQUITY_MEMBER_AND_CLEARING_MEMBER" />
+      <value enum="F" description="FULL_AND_ASSOCIATE_MEMBER_TRADING_FOR_OWN_ACCOUNT_AND_AS_FLOOR_BROKERS" />
+      <value enum="H" description="FIRMS_106H_AND_106J" />
+      <value enum="I" description="GIM_IDEM_AND_COM_MEMBERSHIP_INTEREST_HOLDERS" />
+      <value enum="L" description="LESSEE_AND_106F_EMPLOYEES" />
+      <value enum="M" description="ALL_OTHER_OWNERSHIP_TYPES" />
+    </field>
+    <field number="636" name="WorkingIndicator" type="BOOLEAN" />
+    <field number="637" name="LegLastPx" type="PRICE" />
+    <field number="638" name="PriorityIndicator" type="INT">
+      <value enum="0" description="PRIORITY_UNCHANGED" />
+      <value enum="1" description="LOST_PRIORITY_AS_RESULT_OF_ORDER_CHANGE" />
+    </field>
+    <field number="639" name="PriceImprovement" type="PRICEOFFSET" />
+    <field number="640" name="Price2" type="PRICE" />
+    <field number="641" name="LastForwardPoints2" type="PRICEOFFSET" />
+    <field number="642" name="BidForwardPoints2" type="PRICEOFFSET" />
+    <field number="643" name="OfferForwardPoints2" type="PRICEOFFSET" />
+    <field number="644" name="RFQReqID" type="STRING" />
+    <field number="645" name="MktBidPx" type="PRICE" />
+    <field number="646" name="MktOfferPx" type="PRICE" />
+    <field number="647" name="MinBidSize" type="QTY" />
+    <field number="648" name="MinOfferSize" type="QTY" />
+    <field number="649" name="QuoteStatusReqID" type="STRING" />
+    <field number="650" name="LegalConfirm" type="BOOLEAN" />
+    <field number="651" name="UnderlyingLastPx" type="PRICE" />
+    <field number="652" name="UnderlyingLastQty" type="QTY" />
+    <field number="653" name="SecDefStatus" type="INT" until="43" >
+      <value enum="0" description="PENDING_APPROVAL" />
+      <value enum="1" description="APPROVED" />
+      <value enum="2" description="REJECTED" />
+      <value enum="3" description="UNAUTHORIZED_REQUEST" />
+      <value enum="4" description="INVALID_DEFINITION_REQUEST" />
+    </field>
+    <field number="654" name="LegRefID" type="STRING" />
+    <field number="655" name="ContraLegRefID" type="STRING" />
+    <field number="656" name="SettlCurrBidFxRate" type="FLOAT" />
+    <field number="657" name="SettlCurrOfferFxRate" type="FLOAT" />
+    <field number="658" name="QuoteRequestRejectReason" type="INT">
+      <value enum="1" description="UNKNOWN_SYMBOL" />
+      <value enum="2" description="EXCHANGE_CLOSED" />
+      <value enum="3" description="QUOTE_REQUEST_EXCEEDS_LIMIT" />
+      <value enum="4" description="TOO_LATE_TO_ENTER" />
+      <value enum="5" description="INVALID_PRICE" />
+      <value enum="6" description="NOT_AUTHORIZED_TO_REQUEST_QUOTE" />
+      <value enum="7" description="NO_MATCH_FOR_INQUIRY" />
+      <value enum="8" description="NO_MARKET_FOR_INSTRUMENT" />
+      <value enum="9" description="NO_INVENTORY" />
+    </field>
+    <field number="659" name="SideComplianceID" type="STRING" />
+    <field number="660" name="AcctIDSource" type="INT">
+      <value enum="1" description="BIC" />
+      <value enum="2" description="SID_CODE" />
+      <value enum="3" description="TFM" />
+      <value enum="4" description="OMGEO" />
+      <value enum="5" description="DTCC_CODE" />
+    </field>
+    <field number="661" name="AllocAcctIDSource" type="INT" />
+    <field number="662" name="BenchmarkPrice" type="PRICE" />
+    <field number="663" name="BenchmarkPriceType" type="INT" />
+    <field number="664" name="ConfirmID" type="STRING" />
+    <field number="665" name="ConfirmStatus" type="INT">
+      <value enum="1" description="RECEIVED" />
+      <value enum="2" description="MISMATCHED_ACCOUNT" />
+      <value enum="3" description="MISSING_SETTLEMENT_INSTRUCTIONS" />
+      <value enum="4" description="CONFIRMED" />
+      <value enum="5" description="REQUEST_REJECTED" />
+    </field>
+    <field number="666" name="ConfirmTransType" type="INT">
+      <value enum="0" description="NEW" />
+      <value enum="1" description="REPLACE" />
+      <value enum="2" description="CANCEL" />
+    </field>
+    <field number="667" name="ContractSettlMonth" type="MONTHYEAR" />
+    <field number="668" name="DeliveryForm" type="INT">
+      <value enum="1" description="BOOKENTRY" />
+      <value enum="2" description="BEARER" />
+    </field>
+    <field number="669" name="LastParPx" type="PRICE" />
+    <field number="670" name="NoLegAllocs" type="NUMINGROUP" />
+    <field number="671" name="LegAllocAccount" type="STRING" />
+    <field number="672" name="LegIndividualAllocID" type="STRING" />
+    <field number="673" name="LegAllocQty" type="QTY" />
+    <field number="674" name="LegAllocAcctIDSource" type="STRING" />
+    <field number="675" name="LegSettlCurrency" type="CURRENCY" />
+    <field number="676" name="LegBenchmarkCurveCurrency" type="CURRENCY" />
+    <field number="677" name="LegBenchmarkCurveName" type="STRING" />
+    <field number="678" name="LegBenchmarkCurvePoint" type="STRING" />
+    <field number="679" name="LegBenchmarkPrice" type="PRICE" />
+    <field number="680" name="LegBenchmarkPriceType" type="INT" />
+    <field number="681" name="LegBidPx" type="PRICE" />
+    <field number="682" name="LegIOIQty" type="STRING" />
+    <field number="683" name="NoLegStipulations" type="NUMINGROUP" />
+    <field number="684" name="LegOfferPx" type="PRICE" />
+    <field number="685" name="LegOrderQty" type="QTY" />
+    <field number="686" name="LegPriceType" type="INT" />
+    <field number="687" name="LegQty" type="QTY" />
+    <field number="688" name="LegStipulationType" type="STRING" />
+    <field number="689" name="LegStipulationValue" type="STRING" />
+    <field number="690" name="LegSwapType" type="INT">
+      <value enum="1" description="PAR_FOR_PAR" />
+      <value enum="2" description="MODIFIED_DURATION" />
+      <value enum="4" description="RISK" />
+      <value enum="5" description="PROCEEDS" />
+    </field>
+    <field number="691" name="Pool" type="STRING" />
+    <field number="692" name="QuotePriceType" type="INT">
+      <value enum="1" description="PERCENT" />
+      <value enum="2" description="PER_SHARE" />
+      <value enum="3" description="FIXED_AMOUNT" />
+      <value enum="4" description="DISCOUNT" />
+      <value enum="5" description="PREMIUM" />
+      <value enum="6" description="BASIS_POINTS_RELATIVE_TO_BENCHMARK" />
+      <value enum="7" description="TED_PRICE" />
+      <value enum="8" description="TED_YIELD" />
+      <value enum="9" description="YIELD_SPREAD" />
+    </field>
+    <field number="693" name="QuoteRespID" type="STRING" />
+    <field number="694" name="QuoteRespType" type="INT">
+      <value enum="1" description="HIT_LIFT" />
+      <value enum="2" description="COUNTER" />
+      <value enum="3" description="EXPIRED" />
+      <value enum="4" description="COVER" />
+      <value enum="5" description="DONE_AWAY" />
+      <value enum="6" description="PASS" />
+    </field>
+    <field number="695" name="QuoteQualifier" type="CHAR" />
+    <field number="696" name="YieldRedemptionDate" type="LOCALMKTDATE" />
+    <field number="697" name="YieldRedemptionPrice" type="PRICE" />
+    <field number="698" name="YieldRedemptionPriceType" type="INT" />
+    <field number="699" name="BenchmarkSecurityID" type="STRING" />
+    <field number="700" name="ReversalIndicator" type="BOOLEAN" />
+    <field number="701" name="YieldCalcDate" type="LOCALMKTDATE" />
+    <field number="702" name="NoPositions" type="NUMINGROUP" />
+    <field number="703" name="PosType" type="STRING">
+      <value enum="TQ" description="TRANSACTION_QUANTITY" />
+      <value enum="IAS" description="INTRA_SPREAD_QTY" />
+      <value enum="IES" description="INTER_SPREAD_QTY" />
+      <value enum="FIN" description="END_OF_DAY_QTY" />
+      <value enum="SOD" description="START_OF_DAY_QTY" />
+      <value enum="EX" description="OPTION_EXERCISE_QTY" />
+      <value enum="AS" description="OPTION_ASSIGNMENT" />
+      <value enum="TX" description="TRANSACTION_FROM_EXERCISE" />
+      <value enum="TA" description="TRANSACTION_FROM_ASSIGNMENT" />
+      <value enum="PIT" description="PIT_TRADE_QTY" />
+      <value enum="TRF" description="TRANSFER_TRADE_QTY" />
+      <value enum="ETR" description="ELECTRONIC_TRADE_QTY" />
+      <value enum="ALC" description="ALLOCATION_TRADE_QTY" />
+      <value enum="PA" description="ADJUSTMENT_QTY" />
+      <value enum="ASF" description="AS_OF_TRADE_QTY" />
+      <value enum="DLV" description="DELIVERY_QTY" />
+      <value enum="TOT" description="TOTAL_TRANSACTION_QTY" />
+      <value enum="XM" description="CROSS_MARGIN_QTY" />
+      <value enum="SPL" description="INTEGRAL_SPLIT" />
+    </field>
+    <field number="704" name="LongQty" type="QTY" />
+    <field number="705" name="ShortQty" type="QTY" />
+    <field number="706" name="PosQtyStatus" type="INT">
+      <value enum="0" description="SUBMITTED" />
+      <value enum="1" description="ACCEPTED" />
+      <value enum="2" description="REJECTED" />
+    </field>
+    <field number="707" name="PosAmtType" type="STRING">
+      <value enum="FMTM" description="FINAL_MARK_TO_MARKET_AMOUNT" />
+      <value enum="IMTM" description="INCREMENTAL_MARK_TO_MARKET_AMOUNT" />
+      <value enum="TVAR" description="TRADE_VARIATION_AMOUNT" />
+      <value enum="SMTM" description="START_OF_DAY_MARK_TO_MARKET_AMOUNT" />
+      <value enum="PREM" description="PREMIUM_AMOUNT" />
+      <value enum="CRES" description="CASH_RESIDUAL_AMOUNT" />
+      <value enum="CASH" description="CASH_AMOUNT" />
+      <value enum="VADJ" description="VALUE_ADJUSTED_AMOUNT" />
+    </field>
+    <field number="708" name="PosAmt" type="AMT" />
+    <field number="709" name="PosTransType" type="INT">
+      <value enum="1" description="EXERCISE" />
+      <value enum="2" description="DO_NOT_EXERCISE" />
+      <value enum="3" description="POSITION_ADJUSTMENT" />
+      <value enum="4" description="POSITION_CHANGE_SUBMISSION_MARGIN_DISPOSITION" />
+      <value enum="5" description="PLEDGE" />
+    </field>
+    <field number="710" name="PosReqID" type="STRING" />
+    <field number="711" name="NoUnderlyings" type="NUMINGROUP" />
+    <field number="712" name="PosMaintAction" type="INT">
+      <value enum="1" description="NEW" />
+      <value enum="2" description="REPLACE" />
+      <value enum="3" description="CANCEL" />
+    </field>
+    <field number="713" name="OrigPosReqRefID" type="STRING" />
+    <field number="714" name="PosMaintRptRefID" type="STRING" />
+    <field number="715" name="ClearingBusinessDate" type="LOCALMKTDATE" />
+    <field number="716" name="SettlSessID" type="STRING" />
+    <field number="717" name="SettlSessSubID" type="STRING" />
+    <field number="718" name="AdjustmentType" type="INT">
+      <value enum="0" description="PROCESS_REQUEST_AS_MARGIN_DISPOSITION" />
+      <value enum="1" description="DELTA_PLUS" />
+      <value enum="2" description="DELTA_MINUS" />
+      <value enum="3" description="FINAL" />
+    </field>
+    <field number="719" name="ContraryInstructionIndicator" type="BOOLEAN" />
+    <field number="720" name="PriorSpreadIndicator" type="BOOLEAN" />
+    <field number="721" name="PosMaintRptID" type="STRING" />
+    <field number="722" name="PosMaintStatus" type="INT">
+      <value enum="0" description="ACCEPTED" />
+      <value enum="1" description="ACCEPTED_WITH_WARNINGS" />
+      <value enum="2" description="REJECTED" />
+      <value enum="3" description="COMPLETED" />
+      <value enum="4" description="COMPLETED_WITH_WARNINGS" />
+    </field>
+    <field number="723" name="PosMaintResult" type="INT">
+      <value enum="0" description="SUCCESSFUL_COMPLETION_NO_WARNINGS_OR_ERRORS" />
+      <value enum="1" description="REJECTED" />
+    </field>
+    <field number="724" name="PosReqType" type="INT">
+      <value enum="0" description="POSITIONS" />
+      <value enum="1" description="TRADES" />
+      <value enum="2" description="EXERCISES" />
+      <value enum="3" description="ASSIGNMENTS" />
+    </field>
+    <field number="725" name="ResponseTransportType" type="INT">
+      <value enum="0" description="INBAND" />
+      <value enum="1" description="OUT_OF_BAND" />
+    </field>
+    <field number="726" name="ResponseDestination" type="STRING" />
+    <field number="727" name="TotalNumPosReports" type="INT" />
+    <field number="728" name="PosReqResult" type="INT">
+      <value enum="0" description="VALID_REQUEST" />
+      <value enum="1" description="INVALID_OR_UNSUPPORTED_REQUEST" />
+      <value enum="2" description="NO_POSITIONS_FOUND_THAT_MATCH_CRITERIA" />
+      <value enum="3" description="NOT_AUTHORIZED_TO_REQUEST_POSITIONS" />
+      <value enum="4" description="REQUEST_FOR_POSITION_NOT_SUPPORTED" />
+      <value enum="99" description="OTHER" />
+    </field>
+    <field number="729" name="PosReqStatus" type="INT">
+      <value enum="0" description="COMPLETED" />
+      <value enum="1" description="COMPLETED_WITH_WARNINGS" />
+      <value enum="2" description="REJECTED" />
+    </field>
+    <field number="730" name="SettlPrice" type="PRICE" />
+    <field number="731" name="SettlPriceType" type="INT">
+      <value enum="1" description="FINAL" />
+      <value enum="2" description="THEORETICAL" />
+    </field>
+    <field number="732" name="UnderlyingSettlPrice" type="PRICE" />
+    <field number="733" name="UnderlyingSettlPriceType" type="INT" />
+    <field number="734" name="PriorSettlPrice" type="PRICE" />
+    <field number="735" name="NoQuoteQualifiers" type="NUMINGROUP" />
+    <field number="736" name="AllocSettlCurrency" type="CURRENCY" />
+    <field number="737" name="AllocSettlCurrAmt" type="AMT" />
+    <field number="738" name="InterestAtMaturity" type="AMT" />
+    <field number="739" name="LegDatedDate" type="LOCALMKTDATE" />
+    <field number="740" name="LegPool" type="STRING" />
+    <field number="741" name="AllocInterestAtMaturity" type="AMT" />
+    <field number="742" name="AllocAccruedInterestAmt" type="AMT" />
+    <field number="743" name="DeliveryDate" type="LOCALMKTDATE" />
+    <field number="744" name="AssignmentMethod" type="CHAR">
+      <value enum="R" description="RANDOM" />
+      <value enum="P" description="PRORATA" />
+    </field>
+    <field number="745" name="AssignmentUnit" type="QTY" />
+    <field number="746" name="OpenInterest" type="AMT" />
+    <field number="747" name="ExerciseMethod" type="CHAR">
+      <value enum="A" description="AUTOMATIC" />
+      <value enum="M" description="MANUAL" />
+    </field>
+    <field number="748" name="TotNumTradeReports" type="INT" />
+    <field number="749" name="TradeRequestResult" type="INT">
+      <value enum="0" description="SUCCESSFUL" />
+      <value enum="1" description="INVALID_OR_UNKNOWN_INSTRUMENT" />
+      <value enum="2" description="INVALID_TYPE_OF_TRADE_REQUESTED" />
+      <value enum="3" description="INVALID_PARTIES" />
+      <value enum="4" description="INVALID_TRANSPORT_TYPE_REQUESTED" />
+      <value enum="5" description="INVALID_DESTINATION_REQUESTED" />
+      <value enum="8" description="TRADEREQUESTTYPE_NOT_SUPPORTED" />
+      <value enum="9" description="UNAUTHORIZED_FOR_TRADE_CAPTURE_REPORT_REQUEST" />
+    </field>
+    <field number="750" name="TradeRequestStatus" type="INT">
+      <value enum="0" description="ACCEPTED" />
+      <value enum="1" description="COMPLETED" />
+      <value enum="2" description="REJECTED" />
+    </field>
+    <field number="751" name="TradeReportRejectReason" type="INT">
+      <value enum="0" description="SUCCESSFUL" />
+      <value enum="1" description="INVALID_PARTY_INFORMATION" />
+      <value enum="2" description="UNKNOWN_INSTRUMENT" />
+      <value enum="3" description="UNAUTHORIZED_TO_REPORT_TRADES" />
+      <value enum="4" description="INVALID_TRADE_TYPE" />
+    </field>
+    <field number="752" name="SideMultiLegReportingType" type="INT">
+      <value enum="1" description="SINGLE_SECURITY" />
+      <value enum="2" description="INDIVIDUAL_LEG_OF_A_MULTI_LEG_SECURITY" />
+      <value enum="3" description="MULTI_LEG_SECURITY" />
+    </field>
+    <field number="753" name="NoPosAmt" type="NUMINGROUP" />
+    <field number="754" name="AutoAcceptIndicator" type="BOOLEAN" />
+    <field number="755" name="AllocReportID" type="STRING" />
+    <field number="756" name="NoNested2PartyIDs" type="NUMINGROUP" />
+    <field number="757" name="Nested2PartyID" type="STRING" />
+    <field number="758" name="Nested2PartyIDSource" type="CHAR" />
+    <field number="759" name="Nested2PartyRole" type="INT" />
+    <field number="760" name="Nested2PartySubID" type="STRING" />
+    <field number="761" name="BenchmarkSecurityIDSource" type="STRING" />
+    <field number="762" name="SecuritySubType" type="STRING" />
+    <field number="763" name="UnderlyingSecuritySubType" type="STRING" />
+    <field number="764" name="LegSecuritySubType" type="STRING" />
+    <field number="765" name="AllowableOneSidednessPct" type="PERCENTAGE" />
+    <field number="766" name="AllowableOneSidednessValue" type="AMT" />
+    <field number="767" name="AllowableOneSidednessCurr" type="CURRENCY" />
+    <field number="768" name="NoTrdRegTimestamps" type="NUMINGROUP" />
+    <field number="769" name="TrdRegTimestamp" type="UTCTIMESTAMP" />
+    <field number="770" name="TrdRegTimestampType" type="INT">
+      <value enum="1" description="EXECUTION_TIME" />
+      <value enum="2" description="TIME_IN" />
+      <value enum="3" description="TIME_OUT" />
+      <value enum="4" description="BROKER_RECEIPT" />
+      <value enum="5" description="BROKER_EXECUTION" />
+    </field>
+    <field number="771" name="TrdRegTimestampOrigin" type="STRING" />
+    <field number="772" name="ConfirmRefID" type="STRING" />
+    <field number="773" name="ConfirmType" type="INT">
+      <value enum="1" description="STATUS" />
+      <value enum="2" description="CONFIRMATION" />
+      <value enum="3" description="CONFIRMATION_REQUEST_REJECTED" />
+    </field>
+    <field number="774" name="ConfirmRejReason" type="INT">
+      <value enum="1" description="MISMATCHED_ACCOUNT" />
+      <value enum="2" description="MISSING_SETTLEMENT_INSTRUCTIONS" />
+    </field>
+    <field number="775" name="BookingType" type="INT">
+      <value enum="0" description="REGULAR_BOOKING" />
+      <value enum="1" description="CFD" />
+      <value enum="2" description="TOTAL_RETURN_SWAP" />
+    </field>
+    <field number="776" name="IndividualAllocRejCode" type="INT" />
+    <field number="777" name="SettlInstMsgID" type="STRING" />
+    <field number="778" name="NoSettlInst" type="NUMINGROUP" />
+    <field number="779" name="LastUpdateTime" type="UTCTIMESTAMP" />
+    <field number="780" name="AllocSettlInstType" type="INT">
+      <value enum="0" description="USE_DEFAULT_INSTRUCTIONS" />
+      <value enum="1" description="DERIVE_FROM_PARAMETERS_PROVIDED" />
+      <value enum="2" description="FULL_DETAILS_PROVIDED" />
+      <value enum="3" description="SSI_DB_IDS_PROVIDED" />
+      <value enum="4" description="PHONE_FOR_INSTRUCTIONS" />
+    </field>
+    <field number="781" name="NoSettlPartyIDs" type="NUMINGROUP" />
+    <field number="782" name="SettlPartyID" type="STRING" />
+    <field number="783" name="SettlPartyIDSource" type="CHAR" />
+    <field number="784" name="SettlPartyRole" type="INT" />
+    <field number="785" name="SettlPartySubID" type="STRING" />
+    <field number="786" name="SettlPartySubIDType" type="INT" />
+    <field number="787" name="DlvyInstType" type="CHAR">
+      <value enum="S" description="SECURITIES" />
+      <value enum="C" description="CASH" />
+    </field>
+    <field number="788" name="TerminationType" type="INT">
+      <value enum="1" description="OVERNIGHT" />
+      <value enum="2" description="TERM" />
+      <value enum="3" description="FLEXIBLE" />
+      <value enum="4" description="OPEN" />
+    </field>
+    <field number="789" name="NextExpectedMsgSeqNum" type="SEQNUM" />
+    <field number="790" name="OrdStatusReqID" type="STRING" />
+    <field number="791" name="SettlInstReqID" type="STRING" />
+    <field number="792" name="SettlInstReqRejCode" type="INT">
+      <value enum="0" description="UNABLE_TO_PROCESS_REQUEST" />
+      <value enum="1" description="UNKNOWN_ACCOUNT" />
+      <value enum="2" description="NO_MATCHING_SETTLEMENT_INSTRUCTIONS_FOUND" />
+    </field>
+    <field number="793" name="SecondaryAllocID" type="STRING" />
+    <field number="794" name="AllocReportType" type="INT">
+      <value enum="3" description="SELLSIDE_CALCULATED_USING_PRELIMINARY" />
+      <value enum="4" description="SELLSIDE_CALCULATED_WITHOUT_PRELIMINARY" />
+      <value enum="5" description="WAREHOUSE_RECAP" />
+      <value enum="8" description="REQUEST_TO_INTERMEDIARY" />
+    </field>
+    <field number="795" name="AllocReportRefID" type="STRING" />
+    <field number="796" name="AllocCancReplaceReason" type="INT">
+      <value enum="1" description="ORIGINAL_DETAILS_INCOMPLETE_INCORRECT" />
+      <value enum="2" description="CHANGE_IN_UNDERLYING_ORDER_DETAILS" />
+    </field>
+    <field number="797" name="CopyMsgIndicator" type="BOOLEAN" />
+    <field number="798" name="AllocAccountType" type="INT">
+      <value enum="1" description="ACCOUNT_IS_CARRIED_ON_CUSTOMER_SIDE_OF_BOOKS" />
+      <value enum="2" description="ACCOUNT_IS_CARRIED_ON_NON_CUSTOMER_SIDE_OF_BOOKS" />
+      <value enum="3" description="HOUSE_TRADER" />
+      <value enum="4" description="FLOOR_TRADER" />
+      <value enum="6" description="ACCOUNT_IS_CARRIED_ON_NON_CUSTOMER_SIDE_OF_BOOKS_AND_IS_CROSS_MARGINED" />
+      <value enum="7" description="ACCOUNT_IS_HOUSE_TRADER_AND_IS_CROSS_MARGINED" />
+      <value enum="8" description="JOINT_BACKOFFICE_ACCOUNT" />
+    </field>
+    <field number="799" name="OrderAvgPx" type="PRICE" />
+    <field number="800" name="OrderBookingQty" type="QTY" />
+    <field number="801" name="NoSettlPartySubIDs" type="NUMINGROUP" />
+    <field number="802" name="NoPartySubIDs" type="NUMINGROUP" />
+    <field number="803" name="PartySubIDType" type="INT" />
+    <field number="804" name="NoNestedPartySubIDs" type="NUMINGROUP" />
+    <field number="805" name="NestedPartySubIDType" type="INT" />
+    <field number="806" name="NoNested2PartySubIDs" type="NUMINGROUP" />
+    <field number="807" name="Nested2PartySubIDType" type="INT" />
+    <field number="808" name="AllocIntermedReqType" type="INT">
+      <value enum="1" description="PENDING_ACCEPT" />
+      <value enum="2" description="PENDING_RELEASE" />
+      <value enum="3" description="PENDING_REVERSAL" />
+      <value enum="4" description="ACCEPT" />
+      <value enum="5" description="BLOCK_LEVEL_REJECT" />
+      <value enum="6" description="ACCOUNT_LEVEL_REJECT" />
+    </field>
+    <field number="810" name="UnderlyingPx" type="PRICE" />
+    <field number="811" name="PriceDelta" type="FLOAT" />
+    <field number="812" name="ApplQueueMax" type="INT" />
+    <field number="813" name="ApplQueueDepth" type="INT" />
+    <field number="814" name="ApplQueueResolution" type="INT">
+      <value enum="0" description="NO_ACTION_TAKEN" />
+      <value enum="1" description="QUEUE_FLUSHED" />
+      <value enum="2" description="OVERLAY_LAST" />
+      <value enum="3" description="END_SESSION" />
+    </field>
+    <field number="815" name="ApplQueueAction" type="INT">
+      <value enum="0" description="NO_ACTION_TAKEN" />
+      <value enum="1" description="QUEUE_FLUSHED" />
+      <value enum="2" description="OVERLAY_LAST" />
+      <value enum="3" description="END_SESSION" />
+    </field>
+    <field number="816" name="NoAltMDSource" type="NUMINGROUP" />
+    <field number="817" name="AltMDSourceID" type="STRING" />
+    <field number="818" name="SecondaryTradeReportID" type="STRING" />
+    <field number="819" name="AvgPxIndicator" type="INT">
+      <value enum="0" description="NO_AVERAGE_PRICING" />
+      <value enum="1" description="TRADE_IS_PART_OF_AN_AVERAGE_PRICE_GROUP_IDENTIFIED_BY_THE_TRADELINKID" />
+      <value enum="2" description="LAST_TRADE_IN_THE_AVERAGE_PRICE_GROUP_IDENTIFIED_BY_THE_TRADELINKID" />
+    </field>
+    <field number="820" name="TradeLinkID" type="STRING" />
+    <field number="821" name="OrderInputDevice" type="STRING" />
+    <field number="822" name="UnderlyingTradingSessionID" type="STRING" />
+    <field number="823" name="UnderlyingTradingSessionSubID" type="STRING" />
+    <field number="824" name="TradeLegRefID" type="STRING" />
+    <field number="825" name="ExchangeRule" type="STRING" />
+    <field number="826" name="TradeAllocIndicator" type="INT">
+      <value enum="0" description="ALLOCATION_NOT_REQUIRED" />
+      <value enum="1" description="ALLOCATION_REQUIRED" />
+      <value enum="2" description="USE_ALLOCATION_PROVIDED_WITH_THE_TRADE" />
+    </field>
+    <field number="827" name="ExpirationCycle" type="INT">
+      <value enum="0" description="EXPIRE_ON_TRADING_SESSION_CLOSE" />
+      <value enum="1" description="EXPIRE_ON_TRADING_SESSION_OPEN" />
+    </field>
+    <field number="828" name="TrdType" type="INT">
+      <value enum="0" description="REGULAR_TRADE" />
+      <value enum="1" description="BLOCK_TRADE" />
+      <value enum="2" description="EFP" />
+      <value enum="3" description="TRANSFER" />
+      <value enum="4" description="LATE_TRADE" />
+      <value enum="5" description="T_TRADE" />
+      <value enum="6" description="WEIGHTED_AVERAGE_PRICE_TRADE" />
+      <value enum="7" description="BUNCHED_TRADE" />
+      <value enum="8" description="LATE_BUNCHED_TRADE" />
+      <value enum="9" description="PRIOR_REFERENCE_PRICE_TRADE" />
+    </field>
+    <field number="829" name="TrdSubType" type="INT" />
+    <field number="830" name="TransferReason" type="STRING" />
+    <field number="831" name="AsgnReqID" type="STRING" />
+    <field number="832" name="TotNumAssignmentReports" type="INT" />
+    <field number="833" name="AsgnRptID" type="STRING" />
+    <field number="834" name="ThresholdAmount" type="PRICEOFFSET" />
+    <field number="835" name="PegMoveType" type="INT">
+      <value enum="0" description="FLOATING" />
+      <value enum="1" description="FIXED" />
+    </field>
+    <field number="836" name="PegOffsetType" type="INT">
+      <value enum="0" description="PRICE" />
+      <value enum="1" description="BASIS_POINTS" />
+      <value enum="2" description="TICKS" />
+      <value enum="3" description="PRICE_TIER_LEVEL" />
+    </field>
+    <field number="837" name="PegLimitType" type="INT">
+      <value enum="0" description="OR_BETTER" />
+      <value enum="1" description="STRICT" />
+      <value enum="2" description="OR_WORSE" />
+    </field>
+    <field number="838" name="PegRoundDirection" type="INT">
+      <value enum="1" description="MORE_AGGRESSIVE" />
+      <value enum="2" description="MORE_PASSIVE" />
+    </field>
+    <field number="839" name="PeggedPrice" type="PRICE" />
+    <field number="840" name="PegScope" type="INT">
+      <value enum="1" description="LOCAL" />
+      <value enum="2" description="NATIONAL" />
+      <value enum="3" description="GLOBAL" />
+      <value enum="4" description="NATIONAL_EXCLUDING_LOCAL" />
+    </field>
+    <field number="841" name="DiscretionMoveType" type="INT">
+      <value enum="0" description="FLOATING" />
+      <value enum="1" description="FIXED" />
+    </field>
+    <field number="842" name="DiscretionOffsetType" type="INT">
+      <value enum="0" description="PRICE" />
+      <value enum="1" description="BASIS_POINTS" />
+      <value enum="2" description="TICKS" />
+      <value enum="3" description="PRICE_TIER_LEVEL" />
+    </field>
+    <field number="843" name="DiscretionLimitType" type="INT">
+      <value enum="0" description="OR_BETTER" />
+      <value enum="1" description="STRICT" />
+      <value enum="2" description="OR_WORSE" />
+    </field>
+    <field number="844" name="DiscretionRoundDirection" type="INT">
+      <value enum="1" description="MORE_AGGRESSIVE" />
+      <value enum="2" description="MORE_PASSIVE" />
+    </field>
+    <field number="845" name="DiscretionPrice" type="PRICE" />
+    <field number="846" name="DiscretionScope" type="INT">
+      <value enum="1" description="LOCAL" />
+      <value enum="2" description="NATIONAL" />
+      <value enum="3" description="GLOBAL" />
+      <value enum="4" description="NATIONAL_EXCLUDING_LOCAL" />
+    </field>
+    <field number="847" name="TargetStrategy" type="INT" />
+    <field number="848" name="TargetStrategyParameters" type="STRING" />
+    <field number="849" name="ParticipationRate" type="PERCENTAGE" />
+    <field number="850" name="TargetStrategyPerformance" type="FLOAT" />
+    <field number="851" name="LastLiquidityInd" type="INT">
+      <value enum="1" description="ADDED_LIQUIDITY" />
+      <value enum="2" description="REMOVED_LIQUIDITY" />
+      <value enum="3" description="LIQUIDITY_ROUTED_OUT" />
+    </field>
+    <field number="852" name="PublishTrdIndicator" type="BOOLEAN" />
+    <field number="853" name="ShortSaleReason" type="INT">
+      <value enum="0" description="DEALER_SOLD_SHORT" />
+      <value enum="1" description="DEALER_SOLD_SHORT_EXEMPT" />
+      <value enum="2" description="SELLING_CUSTOMER_SOLD_SHORT" />
+      <value enum="3" description="SELLING_CUSTOMER_SOLD_SHORT_EXEMPT" />
+      <value enum="4" description="QUALIFED_SERVICE_REPRESENTATIVE_OR_AUTOMATIC_GIVEUP_CONTRA_SIDE_SOLD_SHORT" />
+      <value enum="5" description="QSR_OR_AGU_CONTRA_SIDE_SOLD_SHORT_EXEMPT" />
+    </field>
+    <field number="854" name="QtyType" type="INT">
+      <value enum="0" description="UNITS" />
+      <value enum="1" description="CONTRACTS" />
+    </field>
+    <field number="855" name="SecondaryTrdType" type="INT" />
+    <field number="856" name="TradeReportType" type="INT">
+      <value enum="0" description="SUBMIT" />
+      <value enum="1" description="ALLEGED" />
+      <value enum="2" description="ACCEPT" />
+      <value enum="3" description="DECLINE" />
+      <value enum="4" description="ADDENDUM" />
+      <value enum="5" description="NO_WAS" />
+      <value enum="6" description="TRADE_REPORT_CANCEL" />
+      <value enum="7" description="LOCKED_IN_TRADE_BREAK" />
+    </field>
+    <field number="857" name="AllocNoOrdersType" type="INT">
+      <value enum="0" description="NOT_SPECIFIED" />
+      <value enum="1" description="EXPLICIT_LIST_PROVIDED" />
+    </field>
+    <field number="858" name="SharedCommission" type="AMT" />
+    <field number="859" name="ConfirmReqID" type="STRING" />
+    <field number="860" name="AvgParPx" type="PRICE" />
+    <field number="861" name="ReportedPx" type="PRICE" />
+    <field number="862" name="NoCapacities" type="NUMINGROUP" />
+    <field number="863" name="OrderCapacityQty" type="QTY" />
+    <field number="864" name="NoEvents" type="NUMINGROUP" />
+    <field number="865" name="EventType" type="INT">
+      <value enum="1" description="PUT" />
+      <value enum="2" description="CALL" />
+      <value enum="3" description="TENDER" />
+      <value enum="4" description="SINKING_FUND_CALL" />
+    </field>
+    <field number="866" name="EventDate" type="LOCALMKTDATE" />
+    <field number="867" name="EventPx" type="PRICE" />
+    <field number="868" name="EventText" type="STRING" />
+    <field number="869" name="PctAtRisk" type="PERCENTAGE" />
+    <field number="870" name="NoInstrAttrib" type="NUMINGROUP" />
+    <field number="871" name="InstrAttribType" type="INT">
+      <value enum="1" description="FLAT" />
+      <value enum="2" description="ZERO_COUPON" />
+      <value enum="3" description="INTEREST_BEARING" />
+      <value enum="4" description="NO_PERIODIC_PAYMENTS" />
+      <value enum="5" description="VARIABLE_RATE" />
+      <value enum="6" description="LESS_FEE_FOR_PUT" />
+      <value enum="7" description="STEPPED_COUPON" />
+      <value enum="8" description="COUPON_PERIOD" />
+      <value enum="9" description="WHEN_AND_IF_ISSUED" />
+    </field>
+    <field number="872" name="InstrAttribValue" type="STRING" />
+    <field number="873" name="DatedDate" type="LOCALMKTDATE" />
+    <field number="874" name="InterestAccrualDate" type="LOCALMKTDATE" />
+    <field number="875" name="CPProgram" type="INT" />
+    <field number="876" name="CPRegType" type="STRING" />
+    <field number="877" name="UnderlyingCPProgram" type="STRING" />
+    <field number="878" name="UnderlyingCPRegType" type="STRING" />
+    <field number="879" name="UnderlyingQty" type="QTY" />
+    <field number="880" name="TrdMatchID" type="STRING" />
+    <field number="881" name="SecondaryTradeReportRefID" type="STRING" />
+    <field number="882" name="UnderlyingDirtyPrice" type="PRICE" />
+    <field number="883" name="UnderlyingEndPrice" type="PRICE" />
+    <field number="884" name="UnderlyingStartValue" type="AMT" />
+    <field number="885" name="UnderlyingCurrentValue" type="AMT" />
+    <field number="886" name="UnderlyingEndValue" type="AMT" />
+    <field number="887" name="NoUnderlyingStips" type="NUMINGROUP" />
+    <field number="888" name="UnderlyingStipType" type="STRING" />
+    <field number="889" name="UnderlyingStipValue" type="STRING" />
+    <field number="890" name="MaturityNetMoney" type="AMT" />
+    <field number="891" name="MiscFeeBasis" type="INT">
+      <value enum="0" description="ABSOLUTE" />
+      <value enum="1" description="PER_UNIT" />
+      <value enum="2" description="PERCENTAGE" />
+    </field>
+    <field number="892" name="TotNoAllocs" type="INT" />
+    <field number="893" name="LastFragment" type="BOOLEAN" />
+    <field number="894" name="CollReqID" type="STRING" />
+    <field number="895" name="CollAsgnReason" type="INT">
+      <value enum="0" description="INITIAL" />
+      <value enum="1" description="SCHEDULED" />
+      <value enum="2" description="TIME_WARNING" />
+      <value enum="3" description="MARGIN_DEFICIENCY" />
+      <value enum="4" description="MARGIN_EXCESS" />
+      <value enum="5" description="FORWARD_COLLATERAL_DEMAND" />
+      <value enum="6" description="EVENT_OF_DEFAULT" />
+      <value enum="7" description="ADVERSE_TAX_EVENT" />
+    </field>
+    <field number="896" name="CollInquiryQualifier" type="INT">
+      <value enum="0" description="TRADEDATE" />
+      <value enum="1" description="GC_INSTRUMENT" />
+      <value enum="2" description="COLLATERALINSTRUMENT" />
+      <value enum="3" description="SUBSTITUTION_ELIGIBLE" />
+      <value enum="4" description="NOT_ASSIGNED" />
+      <value enum="5" description="PARTIALLY_ASSIGNED" />
+      <value enum="6" description="FULLY_ASSIGNED" />
+      <value enum="7" description="OUTSTANDING_TRADES" />
+    </field>
+    <field number="897" name="NoTrades" type="NUMINGROUP" />
+    <field number="898" name="MarginRatio" type="PERCENTAGE" />
+    <field number="899" name="MarginExcess" type="AMT" />
+    <field number="900" name="TotalNetValue" type="AMT" />
+    <field number="901" name="CashOutstanding" type="AMT" />
+    <field number="902" name="CollAsgnID" type="STRING" />
+    <field number="903" name="CollAsgnTransType" type="INT">
+      <value enum="0" description="NEW" />
+      <value enum="1" description="REPLACE" />
+      <value enum="2" description="CANCEL" />
+      <value enum="3" description="RELEASE" />
+      <value enum="4" description="REVERSE" />
+    </field>
+    <field number="904" name="CollRespID" type="STRING" />
+    <field number="905" name="CollAsgnRespType" type="INT">
+      <value enum="0" description="RECEIVED" />
+      <value enum="1" description="ACCEPTED" />
+      <value enum="2" description="DECLINED" />
+      <value enum="3" description="REJECTED" />
+    </field>
+    <field number="906" name="CollAsgnRejectReason" type="INT">
+      <value enum="0" description="UNKNOWN_DEAL" />
+      <value enum="1" description="UNKNOWN_OR_INVALID_INSTRUMENT" />
+      <value enum="2" description="UNAUTHORIZED_TRANSACTION" />
+      <value enum="3" description="INSUFFICIENT_COLLATERAL" />
+      <value enum="4" description="INVALID_TYPE_OF_COLLATERAL" />
+      <value enum="5" description="EXCESSIVE_SUBSTITUTION" />
+    </field>
+    <field number="907" name="CollAsgnRefID" type="STRING" />
+    <field number="908" name="CollRptID" type="STRING" />
+    <field number="909" name="CollInquiryID" type="STRING" />
+    <field number="910" name="CollStatus" type="INT">
+      <value enum="0" description="UNASSIGNED" />
+      <value enum="1" description="PARTIALLY_ASSIGNED" />
+      <value enum="2" description="ASSIGNMENT_PROPOSED" />
+      <value enum="3" description="ASSIGNED" />
+      <value enum="4" description="CHALLENGED" />
+    </field>
+    <field number="911" name="TotNumReports" type="INT" />
+    <field number="912" name="LastRptRequested" type="BOOLEAN" />
+    <field number="913" name="AgreementDesc" type="STRING" />
+    <field number="914" name="AgreementID" type="STRING" />
+    <field number="915" name="AgreementDate" type="LOCALMKTDATE" />
+    <field number="916" name="StartDate" type="LOCALMKTDATE" />
+    <field number="917" name="EndDate" type="LOCALMKTDATE" />
+    <field number="918" name="AgreementCurrency" type="CURRENCY" />
+    <field number="919" name="DeliveryType" type="INT">
+      <value enum="0" description="VERSUS_PAYMENT" />
+      <value enum="1" description="FREE" />
+      <value enum="2" description="TRI_PARTY" />
+      <value enum="3" description="HOLD_IN_CUSTODY" />
+    </field>
+    <field number="920" name="EndAccruedInterestAmt" type="AMT" />
+    <field number="921" name="StartCash" type="AMT" />
+    <field number="922" name="EndCash" type="AMT" />
+    <field number="923" name="UserRequestID" type="STRING" />
+    <field number="924" name="UserRequestType" type="INT">
+      <value enum="1" description="LOGONUSER" />
+      <value enum="2" description="LOGOFFUSER" />
+      <value enum="3" description="CHANGEPASSWORDFORUSER" />
+      <value enum="4" description="REQUEST_INDIVIDUAL_USER_STATUS" />
+    </field>
+    <field number="925" name="NewPassword" type="STRING" />
+    <field number="926" name="UserStatus" type="INT">
+      <value enum="1" description="LOGGED_IN" />
+      <value enum="2" description="NOT_LOGGED_IN" />
+      <value enum="3" description="USER_NOT_RECOGNISED" />
+      <value enum="4" description="PASSWORD_INCORRECT" />
+      <value enum="5" description="PASSWORD_CHANGED" />
+      <value enum="6" description="OTHER" />
+    </field>
+    <field number="927" name="UserStatusText" type="STRING" />
+    <field number="928" name="StatusValue" type="INT">
+      <value enum="1" description="CONNECTED" />
+      <value enum="2" description="NOT_CONNECTED_DOWN_EXPECTED_UP" />
+      <value enum="3" description="NOT_CONNECTED_DOWN_EXPECTED_DOWN" />
+      <value enum="4" description="IN_PROCESS" />
+    </field>
+    <field number="929" name="StatusText" type="STRING" />
+    <field number="930" name="RefCompID" type="STRING" />
+    <field number="931" name="RefSubID" type="STRING" />
+    <field number="932" name="NetworkResponseID" type="STRING" />
+    <field number="933" name="NetworkRequestID" type="STRING" />
+    <field number="934" name="LastNetworkResponseID" type="STRING" />
+    <field number="935" name="NetworkRequestType" type="INT">
+      <value enum="1" description="SNAPSHOT" />
+      <value enum="2" description="SUBSCRIBE" />
+      <value enum="4" description="STOP_SUBSCRIBING" />
+      <value enum="8" description="LEVEL_OF_DETAIL" />
+    </field>
+    <field number="936" name="NoCompIDs" type="NUMINGROUP" />
+    <field number="937" name="NetworkStatusResponseType" type="INT">
+      <value enum="1" description="FULL" />
+      <value enum="2" description="INCREMENTAL_UPDATE" />
+    </field>
+    <field number="938" name="NoCollInquiryQualifier" type="NUMINGROUP" />
+    <field number="939" name="TrdRptStatus" type="INT">
+      <value enum="0" description="ACCEPTED" />
+      <value enum="1" description="REJECTED" />
+    </field>
+    <field number="940" name="AffirmStatus" type="INT">
+      <value enum="1" description="RECEIVED" />
+      <value enum="2" description="CONFIRM_REJECTED" />
+      <value enum="3" description="AFFIRMED" />
+    </field>
+    <field number="941" name="UnderlyingStrikeCurrency" type="CURRENCY" />
+    <field number="942" name="LegStrikeCurrency" type="CURRENCY" />
+    <field number="943" name="TimeBracket" type="STRING" />
+    <field number="944" name="CollAction" type="INT">
+      <value enum="0" description="RETAIN" />
+      <value enum="1" description="ADD" />
+      <value enum="2" description="REMOVE" />
+    </field>
+    <field number="945" name="CollInquiryStatus" type="INT">
+      <value enum="0" description="ACCEPTED" />
+      <value enum="1" description="ACCEPTED_WITH_WARNINGS" />
+      <value enum="2" description="COMPLETED" />
+      <value enum="3" description="COMPLETED_WITH_WARNINGS" />
+      <value enum="4" description="REJECTED" />
+    </field>
+    <field number="946" name="CollInquiryResult" type="INT">
+      <value enum="0" description="SUCCESSFUL" />
+      <value enum="1" description="INVALID_OR_UNKNOWN_INSTRUMENT" />
+      <value enum="2" description="INVALID_OR_UNKNOWN_COLLATERAL_TYPE" />
+      <value enum="3" description="INVALID_PARTIES" />
+      <value enum="4" description="INVALID_TRANSPORT_TYPE_REQUESTED" />
+      <value enum="5" description="INVALID_DESTINATION_REQUESTED" />
+      <value enum="6" description="NO_COLLATERAL_FOUND_FOR_THE_TRADE_SPECIFIED" />
+      <value enum="7" description="NO_COLLATERAL_FOUND_FOR_THE_ORDER_SPECIFIED" />
+      <value enum="8" description="COLLATERAL_INQUIRY_TYPE_NOT_SUPPORTED" />
+      <value enum="9" description="UNAUTHORIZED_FOR_COLLATERAL_INQUIRY" />
+      <value enum="99" description="OTHER" />
+    </field>
+    <field number="947" name="StrikeCurrency" type="CURRENCY" />
+    <field number="948" name="NoNested3PartyIDs" type="NUMINGROUP" />
+    <field number="949" name="Nested3PartyID" type="STRING" />
+    <field number="950" name="Nested3PartyIDSource" type="CHAR" />
+    <field number="951" name="Nested3PartyRole" type="INT" />
+    <field number="952" name="NoNested3PartySubIDs" type="NUMINGROUP" />
+    <field number="953" name="Nested3PartySubID" type="STRING" />
+    <field number="954" name="Nested3PartySubIDType" type="INT" />
+    <field number="955" name="LegContractSettlMonth" type="MONTHYEAR" />
+    <field number="956" name="LegInterestAccrualDate" type="LOCALMKTDATE" />
+  </fields>
+</fix>
diff --git a/fix/FIX40.xml b/fix/FIX40.xml
new file mode 100644 (file)
index 0000000..08bd0e7
--- /dev/null
@@ -0,0 +1,828 @@
+<fix major="4" minor="0">
+  <header>
+    <field name="BeginString" required="Y"/>
+    <field name="BodyLength" required="Y"/>
+    <field name="MsgType" required="Y"/>
+    <field name="SenderCompID" required="Y"/>
+    <field name="TargetCompID" required="Y"/>
+    <field name="OnBehalfOfCompID" required="N"/>
+    <field name="DeliverToCompID" required="N"/>
+    <field name="SecureDataLen" required="N"/>
+    <field name="SecureData" required="N"/>
+    <field name="MsgSeqNum" required="Y"/>
+    <field name="SenderSubID" required="N"/>
+    <field name="TargetSubID" required="N"/>
+    <field name="OnBehalfOfSubID" required="N"/>
+    <field name="DeliverToSubID" required="N"/>
+    <field name="PossDupFlag" required="N"/>
+    <field name="PossResend" required="N"/>
+    <field name="SendingTime" required="Y"/>
+    <field name="OrigSendingTime" required="N"/>
+  </header>
+  <trailer>
+    <field name="SignatureLength" required="N"/>
+    <field name="Signature" required="N"/>
+    <field name="CheckSum" required="Y"/>
+  </trailer>
+  <messages>
+    <message name="Heartbeat" msgtype="0" msgcat="admin">
+      <field name="TestReqID" required="N"/>
+    </message>
+    <message name="Logon" msgtype="A" msgcat="admin">
+      <field name="EncryptMethod" required="Y"/>
+      <field name="HeartBtInt" required="Y"/>
+      <field name="RawDataLength" required="N"/>
+      <field name="RawData" required="N"/>
+    </message>
+    <message name="TestRequest" msgtype="1" msgcat="admin">
+      <field name="TestReqID" required="Y"/>
+    </message>
+    <message name="ResendRequest" msgtype="2" msgcat="admin">
+      <field name="BeginSeqNo" required="Y"/>
+      <field name="EndSeqNo" required="Y"/>
+    </message>
+    <message name="Reject" msgtype="3" msgcat="admin">
+      <field name="RefSeqNum" required="Y"/>
+      <field name="Text" required="N"/>
+    </message>
+    <message name="SequenceReset" msgtype="4" msgcat="admin">
+      <field name="GapFillFlag" required="N"/>
+      <field name="NewSeqNo" required="Y"/>
+    </message>
+    <message name="Logout" msgtype="5" msgcat="admin">
+      <field name="Text" required="N"/>
+    </message>
+    <message name="Advertisement" msgtype="7" msgcat="app">
+      <field name="AdvId" required="Y"/>
+      <field name="AdvTransType" required="Y"/>
+      <field name="AdvRefID" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="AdvSide" required="Y"/>
+      <field name="Shares" required="Y"/>
+      <field name="Price" required="N"/>
+      <field name="Currency" required="N"/>
+      <field name="TransactTime" required="N"/>
+      <field name="Text" required="N"/>
+    </message>
+    <message name="IndicationofInterest" msgtype="6" msgcat="app">
+      <field name="IOIid" required="Y"/>
+      <field name="IOITransType" required="Y"/>
+      <field name="IOIRefID" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="Side" required="Y"/>
+      <field name="IOIShares" required="Y"/>
+      <field name="Price" required="N"/>
+      <field name="Currency" required="N"/>
+      <field name="ValidUntilTime" required="N"/>
+      <field name="IOIQltyInd" required="N"/>
+      <field name="IOIOthSvc" required="N"/>
+      <field name="IOINaturalFlag" required="N"/>
+      <field name="IOIQualifier" required="N"/>
+      <field name="Text" required="N"/>
+    </message>
+    <message name="News" msgtype="B" msgcat="app">
+      <field name="OrigTime" required="N"/>
+      <field name="Urgency" required="N"/>
+      <field name="RelatdSym" required="N" repeating="Y"/>
+      <group name="LinesOfText" required="Y">
+        <field name="Text" required="Y"/>
+      </group>
+      <field name="RawDataLength" required="N"/>
+      <field name="RawData" required="N"/>
+    </message>
+    <message name="Email" msgtype="C" msgcat="app">
+      <field name="EmailType" required="Y"/>
+      <field name="OrigTime" required="N"/>
+      <field name="RelatdSym" required="N" repeating="Y"/>
+      <field name="OrderID" required="N"/>
+      <field name="ClOrdID" required="N"/>
+      <group name="LinesOfText" required="Y">
+        <field name="Text" required="Y"/>
+      </group>
+      <field name="RawDataLength" required="N"/>
+      <field name="RawData" required="N"/>
+    </message>
+    <message name="QuoteRequest" msgtype="R" msgcat="app">
+      <field name="QuoteReqID" required="Y"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="PrevClosePx" required="N"/>
+      <field name="Side" required="N"/>
+      <field name="OrderQty" required="N"/>
+    </message>
+    <message name="Quote" msgtype="S" msgcat="app">
+      <field name="QuoteReqID" required="N"/>
+      <field name="QuoteID" required="Y"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="BidPx" required="Y"/>
+      <field name="OfferPx" required="N"/>
+      <field name="BidSize" required="N"/>
+      <field name="OfferSize" required="N"/>
+      <field name="ValidUntilTime" required="N"/>
+    </message>
+    <message name="NewOrderSingle" msgtype="D" msgcat="app">
+      <field name="ClOrdID" required="Y"/>
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="Account" required="N"/>
+      <field name="SettlmntTyp" required="N"/>
+      <field name="FutSettDate" required="N"/>
+      <field name="HandlInst" required="Y"/>
+      <field name="ExecInst" required="N"/>
+      <field name="MinQty" required="N"/>
+      <field name="MaxFloor" required="N"/>
+      <field name="ExDestination" required="N"/>
+      <field name="ProcessCode" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="PrevClosePx" required="N"/>
+      <field name="Side" required="Y"/>
+      <field name="LocateReqd" required="N"/>
+      <field name="OrderQty" required="Y"/>
+      <field name="OrdType" required="Y"/>
+      <field name="Price" required="N"/>
+      <field name="StopPx" required="N"/>
+      <field name="Currency" required="N"/>
+      <field name="IOIid" required="N"/>
+      <field name="QuoteID" required="N"/>
+      <field name="TimeInForce" required="N"/>
+      <field name="ExpireTime" required="N"/>
+      <field name="Commission" required="N"/>
+      <field name="CommType" required="N"/>
+      <field name="Rule80A" required="N"/>
+      <field name="ForexReq" required="N"/>
+      <field name="SettlCurrency" required="N"/>
+      <field name="Text" required="N"/>
+    </message>
+    <message name="ExecutionReport" msgtype="8" msgcat="app">
+      <field name="OrderID" required="Y"/>
+      <field name="ClOrdID" required="N"/>
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="ListID" required="N"/>
+      <field name="ExecID" required="Y"/>
+      <field name="ExecTransType" required="Y"/>
+      <field name="ExecRefID" required="N"/>
+      <field name="OrdStatus" required="Y"/>
+      <field name="OrdRejReason" required="N"/>
+      <field name="Account" required="N"/>
+      <field name="SettlmntTyp" required="N"/>
+      <field name="FutSettDate" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="Side" required="Y"/>
+      <field name="OrderQty" required="Y"/>
+      <field name="OrdType" required="N"/>
+      <field name="Price" required="N"/>
+      <field name="StopPx" required="N"/>
+      <field name="Currency" required="N"/>
+      <field name="TimeInForce" required="N"/>
+      <field name="ExpireTime" required="N"/>
+      <field name="ExecInst" required="N"/>
+      <field name="Rule80A" required="N"/>
+      <field name="LastShares" required="Y"/>
+      <field name="LastPx" required="Y"/>
+      <field name="LastMkt" required="N"/>
+      <field name="LastCapacity" required="N"/>
+      <field name="CumQty" required="Y"/>
+      <field name="AvgPx" required="Y"/>
+      <field name="TradeDate" required="N"/>
+      <field name="TransactTime" required="N"/>
+      <field name="ReportToExch" required="N"/>
+      <field name="Commission" required="N"/>
+      <field name="CommType" required="N"/>
+      <group name="NoMiscFees" required="N">
+        <field name="MiscFeeAmt" required="N"/>
+        <field name="MiscFeeCurr" required="N"/>
+        <field name="MiscFeeType" required="N"/>
+      </group>
+      <field name="NetMoney" required="N"/>
+      <field name="SettlCurrAmt" required="N"/>
+      <field name="SettlCurrency" required="N"/>
+      <field name="Text" required="N"/>
+    </message>
+    <message name="DontKnowTrade" msgtype="Q" msgcat="app">
+      <field name="OrderID" required="N"/>
+      <field name="ExecID" required="N"/>
+      <field name="DKReason" required="Y"/>
+      <field name="Symbol" required="Y"/>
+      <field name="Side" required="Y"/>
+      <field name="OrderQty" required="Y"/>
+      <field name="LastShares" required="Y"/>
+      <field name="LastPx" required="Y"/>
+      <field name="Text" required="N"/>
+    </message>
+    <message name="OrderCancelReplaceRequest" msgtype="G" msgcat="app">
+      <field name="OrderID" required="N"/>
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="OrigClOrdID" required="Y"/>
+      <field name="ClOrdID" required="Y"/>
+      <field name="ListID" required="N"/>
+      <field name="Account" required="N"/>
+      <field name="SettlmntTyp" required="N"/>
+      <field name="FutSettDate" required="N"/>
+      <field name="HandlInst" required="Y"/>
+      <field name="ExecInst" required="N"/>
+      <field name="MinQty" required="N"/>
+      <field name="MaxFloor" required="N"/>
+      <field name="ExDestination" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="Side" required="Y"/>
+      <field name="OrderQty" required="Y"/>
+      <field name="OrdType" required="Y"/>
+      <field name="Price" required="N"/>
+      <field name="StopPx" required="N"/>
+      <field name="Currency" required="N"/>
+      <field name="TimeInForce" required="N"/>
+      <field name="ExpireTime" required="N"/>
+      <field name="Commission" required="N"/>
+      <field name="CommType" required="N"/>
+      <field name="Rule80A" required="N"/>
+      <field name="ForexReq" required="N"/>
+      <field name="SettlCurrency" required="N"/>
+      <field name="Text" required="N"/>
+    </message>
+    <message name="OrderCancelRequest" msgtype="F" msgcat="app">
+      <field name="OrigClOrdID" required="Y"/>
+      <field name="OrderID" required="N"/>
+      <field name="ClOrdID" required="Y"/>
+      <field name="ListID" required="N"/>
+      <field name="CxlType" required="Y"/>
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="Side" required="Y"/>
+      <field name="OrderQty" required="Y"/>
+      <field name="Text" required="N"/>
+    </message>
+    <message name="OrderCancelReject" msgtype="9" msgcat="app">
+      <field name="OrderID" required="Y"/>
+      <field name="ClOrdID" required="Y"/>
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="ListID" required="N"/>
+      <field name="CxlRejReason" required="N"/>
+      <field name="Text" required="N"/>
+    </message>
+    <message name="OrderStatusRequest" msgtype="H" msgcat="app">
+      <field name="OrderID" required="N"/>
+      <field name="ClOrdID" required="Y"/>
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="Side" required="Y"/>
+    </message>
+    <message name="Allocation" msgtype="J" msgcat="app">
+      <field name="AllocID" required="Y"/>
+      <field name="AllocTransType" required="Y"/>
+      <field name="RefAllocID" required="N"/>
+      <group name="NoOrders" required="Y">
+        <field name="ClOrdID" required="Y"/>
+        <field name="OrderID" required="N"/>
+        <field name="ListID" required="N"/>
+        <field name="WaveNo" required="N"/>
+      </group>
+      <group name="NoExecs" required="N">
+        <field name="ExecID" required="N"/>
+        <field name="LastShares" required="N"/>
+        <field name="LastPx" required="N"/>
+        <field name="LastMkt" required="N"/>
+      </group>
+      <field name="Side" required="Y"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="Shares" required="Y"/>
+      <field name="AvgPx" required="Y"/>
+      <field name="Currency" required="N"/>
+      <field name="AvgPrxPrecision" required="N"/>
+      <field name="TradeDate" required="Y"/>
+      <field name="TransactTime" required="N"/>
+      <field name="SettlmntTyp" required="N"/>
+      <field name="FutSettDate" required="N"/>
+      <field name="NetMoney" required="N"/>
+      <group name="NoMiscFees" required="N">
+        <field name="MiscFeeAmt" required="N"/>
+        <field name="MiscFeeCurr" required="N"/>
+        <field name="MiscFeeType" required="N"/>
+      </group>
+      <field name="SettlCurrAmt" required="N"/>
+      <field name="SettlCurrency" required="N"/>
+      <field name="OpenClose" required="N"/>
+      <field name="Text" required="N"/>
+      <group name="NoAllocs" required="Y">
+        <field name="AllocAccount" required="Y"/>
+        <field name="AllocShares" required="Y"/>
+        <field name="ProcessCode" required="N"/>
+        <field name="ExecBroker" required="N"/>
+        <field name="ClientID" required="N"/>
+        <field name="Commission" required="N"/>
+        <field name="CommType" required="N"/>
+        <group name="NoDlvyInst" required="N">
+          <field name="BrokerOfCredit" required="N"/>
+          <field name="DlvyInst" required="N"/>
+        </group>
+      </group>
+    </message>
+    <message name="AllocationACK" msgtype="P" msgcat="app">
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="AllocID" required="Y"/>
+      <field name="TradeDate" required="Y"/>
+      <field name="TransactTime" required="N"/>
+      <field name="AllocStatus" required="Y"/>
+      <field name="AllocRejCode" required="N"/>
+      <field name="Text" required="N"/>
+    </message>
+    <message name="NewOrderList" msgtype="E" msgcat="app">
+      <field name="ListID" required="Y"/>
+      <field name="WaveNo" required="N"/>
+      <field name="ListSeqNo" required="Y"/>
+      <field name="ListNoOrds" required="Y"/>
+      <field name="ListExecInst" required="N"/>
+      <field name="ClOrdID" required="Y"/>
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="Account" required="N"/>
+      <field name="SettlmntTyp" required="N"/>
+      <field name="FutSettDate" required="N"/>
+      <field name="HandlInst" required="Y"/>
+      <field name="ExecInst" required="N"/>
+      <field name="MinQty" required="N"/>
+      <field name="MaxFloor" required="N"/>
+      <field name="ExDestination" required="N"/>
+      <field name="ProcessCode" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="PrevClosePx" required="N"/>
+      <field name="Side" required="Y"/>
+      <field name="LocateReqd" required="N"/>
+      <field name="OrderQty" required="Y"/>
+      <field name="OrdType" required="Y"/>
+      <field name="Price" required="N"/>
+      <field name="StopPx" required="N"/>
+      <field name="Currency" required="N"/>
+      <field name="TimeInForce" required="N"/>
+      <field name="ExpireTime" required="N"/>
+      <field name="Commission" required="N"/>
+      <field name="CommType" required="N"/>
+      <field name="Rule80A" required="N"/>
+      <field name="ForexReq" required="N"/>
+      <field name="SettlCurrency" required="N"/>
+      <field name="Text" required="N"/>
+    </message>
+    <message name="ListStatus" msgtype="N" msgcat="app">
+      <field name="ListID" required="Y"/>
+      <field name="WaveNo" required="N"/>
+      <field name="NoRpts" required="Y"/>
+      <field name="RptSeq" required="Y"/>
+      <group name="NoOrders" required="Y">
+        <field name="ClOrdID" required="Y"/>
+        <field name="CumQty" required="Y"/>
+        <field name="CxlQty" required="Y"/>
+        <field name="AvgPx" required="Y"/>
+      </group>
+    </message>
+    <message name="ListExecute" msgtype="L" msgcat="app">
+      <field name="ListID" required="Y"/>
+      <field name="WaveNo" required="N"/>
+      <field name="Text" required="N"/>
+    </message>
+    <message name="ListCancelRequest" msgtype="K" msgcat="app">
+      <field name="ListID" required="Y"/>
+      <field name="WaveNo" required="N"/>
+      <field name="Text" required="N"/>
+    </message>
+    <message name="ListStatusRequest" msgtype="M" msgcat="app">
+      <field name="ListID" required="Y"/>
+      <field name="WaveNo" required="N"/>
+      <field name="Text" required="N"/>
+    </message>
+  </messages>
+  <fields>
+    <field number="1" name="Account" type="STRING"/>
+    <field number="2" name="AdvId" type="INT"/>
+    <field number="3" name="AdvRefID" type="INT"/>
+    <field number="4" name="AdvSide" type="STRING">
+      <value enum="B" description="BUY"/>
+      <value enum="S" description="SELL"/>
+      <value enum="X" description="CROSS"/>
+      <value enum="T" description="TRADE"/>
+    </field>
+    <field number="5" name="AdvTransType" type="STRING">
+      <value enum="N" description="NEW"/>
+      <value enum="C" description="CANCEL"/>
+      <value enum="R" description="REPLACE"/>
+    </field>
+    <field number="6" name="AvgPx" type="FLOAT"/>
+    <field number="7" name="BeginSeqNo" type="INT"/>
+    <field number="8" name="BeginString" type="STRING"/>
+    <field number="9" name="BodyLength" type="INT"/>
+    <field number="10" name="CheckSum" type="STRING"/>
+    <field number="11" name="ClOrdID" type="STRING"/>
+    <field number="12" name="Commission" type="FLOAT"/>
+    <field number="13" name="CommType" type="STRING">
+      <value enum="1" description="PER_SHARE"/>
+      <value enum="2" description="PERCENTAGE"/>
+      <value enum="3" description="ABSOLUTE"/>
+    </field>
+    <field number="14" name="CumQty" type="INT"/>
+    <field number="15" name="Currency" type="STRING"/>
+    <field number="16" name="EndSeqNo" type="INT"/>
+    <field number="17" name="ExecID" type="INT"/>
+    <field number="18" name="ExecInst" type="MULTIPLEVALUESTRING">
+      <value enum="1" description="NOT_HELD"/>
+      <value enum="2" description="WORK"/>
+      <value enum="3" description="GO_ALONG"/>
+      <value enum="4" description="OVER_THE_DAY"/>
+      <value enum="5" description="HELD"/>
+      <value enum="6" description="PARTICIPATE_DONT_INITIATE"/>
+      <value enum="7" description="STRICT_SCALE"/>
+      <value enum="8" description="TRY_TO_SCALE"/>
+      <value enum="9" description="STAY_ON_BIDSIDE"/>
+      <value enum="0" description="STAY_ON_OFFERSIDE"/>
+      <value enum="A" description="NO_CROSS"/>
+      <value enum="B" description="OK_TO_CROSS"/>
+      <value enum="C" description="CALL_FIRST"/>
+      <value enum="D" description="PERCENT_OF_VOLUME"/>
+      <value enum="E" description="DO_NOT_INCREASE_DNI"/>
+      <value enum="F" description="DO_NOT_REDUCE_DNR"/>
+      <value enum="G" description="ALL_OR_NONE_AON"/>
+      <value enum="I" description="INSTITUTIONS_ONLY"/>
+      <value enum="L" description="LAST_PEG"/>
+      <value enum="M" description="MIDPRICE_PEG"/>
+      <value enum="N" description="NONNEGOTIABLE"/>
+      <value enum="O" description="OPENING_PEG"/>
+      <value enum="P" description="MARKET_PEG"/>
+      <value enum="R" description="PRIMARY_PEG"/>
+      <value enum="S" description="SUSPEND"/>
+    </field>
+    <field number="19" name="ExecRefID" type="INT"/>
+    <field number="20" name="ExecTransType" type="STRING">
+      <value enum="0" description="NEW"/>
+      <value enum="1" description="CANCEL"/>
+      <value enum="2" description="CORRECT"/>
+      <value enum="3" description="STATUS"/>
+    </field>
+    <field number="21" name="HandlInst" type="STRING">
+      <value enum="1" description="AUTOMATED_EXECUTION_ORDER_PRIVATE_NO_BROKER_INTERVENTION"/>
+      <value enum="2" description="AUTOMATED_EXECUTION_ORDER_PUBLIC_BROKER_INTERVENTION_OK"/>
+      <value enum="3" description="MANUAL_ORDER_BEST_EXECUTION"/>
+    </field>
+    <field number="22" name="IDSource" type="STRING">
+      <value enum="1" description="CUSIP"/>
+      <value enum="2" description="SEDOL"/>
+      <value enum="3" description="QUIK"/>
+      <value enum="4" description="ISIN_NUMBER"/>
+      <value enum="5" description="RIC_CODE"/>
+    </field>
+    <field number="23" name="IOIid" type="INT"/>
+    <field number="24" name="IOIOthSvc" type="STRING"/>
+    <field number="25" name="IOIQltyInd" type="STRING">
+      <value enum="L" description="LOW"/>
+      <value enum="M" description="MEDIUM"/>
+      <value enum="H" description="HIGH"/>
+    </field>
+    <field number="26" name="IOIRefID" type="INT"/>
+    <field number="27" name="IOIShares" type="STRING"/>
+    <field number="28" name="IOITransType" type="STRING">
+      <value enum="N" description="NEW"/>
+      <value enum="C" description="CANCEL"/>
+      <value enum="R" description="REPLACE"/>
+    </field>
+    <field number="29" name="LastCapacity" type="STRING">
+      <value enum="1" description="AGENT"/>
+      <value enum="2" description="CROSS_AS_AGENT"/>
+      <value enum="3" description="CROSS_AS_PRINCIPAL"/>
+      <value enum="4" description="PRINCIPAL"/>
+    </field>
+    <field number="30" name="LastMkt" type="STRING"/>
+    <field number="31" name="LastPx" type="FLOAT"/>
+    <field number="32" name="LastShares" type="INT"/>
+    <field number="33" name="LinesOfText" type="INT"/>
+    <field number="34" name="MsgSeqNum" type="INT"/>
+    <field number="35" name="MsgType" type="STRING"/>
+    <field number="36" name="NewSeqNo" type="INT"/>
+    <field number="37" name="OrderID" type="STRING"/>
+    <field number="38" name="OrderQty" type="INT"/>
+    <field number="39" name="OrdStatus" type="STRING">
+      <value enum="0" description="NEW"/>
+      <value enum="1" description="PARTIALLY_FILLED"/>
+      <value enum="2" description="FILLED"/>
+      <value enum="3" description="DONE_FOR_DAY"/>
+      <value enum="4" description="CANCELED"/>
+      <value enum="5" description="REPLACED"/>
+      <value enum="6" description="PENDING_CANCELREPLACE"/>
+      <value enum="7" description="STOPPED"/>
+      <value enum="8" description="REJECTED"/>
+      <value enum="9" description="SUSPENDED"/>
+      <value enum="A" description="PENDING_NEW"/>
+      <value enum="B" description="CALCULATED"/>
+      <value enum="C" description="EXPIRED"/>
+    </field>
+    <field number="40" name="OrdType" type="STRING">
+      <value enum="1" description="MARKET"/>
+      <value enum="2" description="LIMIT"/>
+      <value enum="3" description="STOP"/>
+      <value enum="4" description="STOP_LIMIT"/>
+      <value enum="5" description="MARKET_ON_CLOSE"/>
+      <value enum="6" description="WITH_OR_WITHOUT"/>
+      <value enum="7" description="LIMIT_OR_BETTER"/>
+      <value enum="8" description="LIMIT_WITH_OR_WITHOUT"/>
+      <value enum="9" description="ON_BASIS"/>
+      <value enum="A" description="ON_CLOSE"/>
+      <value enum="B" description="LIMIT_ON_CLOSE"/>
+      <value enum="C" description="FOREX"/>
+      <value enum="D" description="PREVIOUSLY_QUOTED"/>
+      <value enum="E" description="PREVIOUSLY_INDICATED"/>
+      <value enum="P" description="PEGGED"/>
+    </field>
+    <field number="41" name="OrigClOrdID" type="STRING"/>
+    <field number="42" name="OrigTime" type="TIME"/>
+    <field number="43" name="PossDupFlag" type="STRING">
+      <value enum="Y" description="POSSIBLE_DUPLICATE"/>
+      <value enum="N" description="ORIGINAL_TRANSMISSION"/>
+    </field>
+    <field number="44" name="Price" type="FLOAT"/>
+    <field number="45" name="RefSeqNum" type="INT"/>
+    <field number="46" name="RelatdSym" type="STRING"/>
+    <field number="47" name="Rule80A" type="STRING">
+      <value enum="A" description="AGENCY_SINGLE_ORDER"/>
+      <value enum="D" description="PROGRAM_ORDER_INDEX_ARB_FOR_MEMBER_FIRMORG"/>
+      <value enum="C" description="PROGRAM_ORDER_NONINDEX_ARB_FOR_MEMBER_FIRMORG"/>
+      <value enum="J" description="PROGRAM_ORDER_INDEX_ARB_FOR_INDIVIDUAL_CUSTOMER"/>
+      <value enum="K" description="PROGRAM_ORDER_NONINDEX_ARB_FOR_INDIVIDUAL_CUSTOMER"/>
+      <value enum="U" description="PROGRAM_ORDER_INDEX_ARB_FOR_OTHER_AGENCY"/>
+      <value enum="Y" description="PROGRAM_ORDER_NONINDEX_ARB_FOR_OTHER_AGENCY"/>
+      <value enum="M" description="PROGRAM_ORDER_INDEX_ARB_FOR_OTHER_MEMBER"/>
+      <value enum="N" description="PROGRAM_ORDER_NONINDEX_ARB_FOR_OTHER_MEMBER"/>
+      <value enum="W" description="ALL_OTHER_ORDERS_AS_AGENT_FOR_OTHER_MEMBER"/>
+    </field>
+    <field number="48" name="SecurityID" type="STRING"/>
+    <field number="49" name="SenderCompID" type="STRING"/>
+    <field number="50" name="SenderSubID" type="STRING"/>
+    <field number="52" name="SendingTime" type="TIME"/>
+    <field number="53" name="Shares" type="INT"/>
+    <field number="54" name="Side" type="STRING">
+      <value enum="1" description="BUY"/>
+      <value enum="2" description="SELL"/>
+      <value enum="3" description="BUY_MINUS"/>
+      <value enum="4" description="SELL_PLUS"/>
+      <value enum="5" description="SELL_SHORT"/>
+      <value enum="6" description="SELL_SHORT_EXEMPT"/>
+    </field>
+    <field number="55" name="Symbol" type="STRING"/>
+    <field number="56" name="TargetCompID" type="STRING"/>
+    <field number="57" name="TargetSubID" type="STRING"/>
+    <field number="58" name="Text" type="STRING"/>
+    <field number="59" name="TimeInForce" type="STRING">
+      <value enum="0" description="DAY"/>
+      <value enum="1" description="GOOD_TILL_CANCEL"/>
+      <value enum="2" description="AT_THE_OPENING"/>
+      <value enum="3" description="IMMEDIATE_OR_CANCEL"/>
+      <value enum="4" description="FILL_OR_KILL"/>
+      <value enum="5" description="GOOD_TILL_CROSSING"/>
+      <value enum="6" description="GOOD_TILL_DATE"/>
+    </field>
+    <field number="60" name="TransactTime" type="TIME"/>
+    <field number="61" name="Urgency" type="STRING">
+      <value enum="0" description="NORMAL"/>
+      <value enum="1" description="FLASH"/>
+      <value enum="2" description="BACKGROUND"/>
+    </field>
+    <field number="62" name="ValidUntilTime" type="TIME"/>
+    <field number="63" name="SettlmntTyp" type="STRING">
+      <value enum="0" description="REGULAR"/>
+      <value enum="1" description="CASH"/>
+      <value enum="2" description="NEXT_DAY"/>
+      <value enum="3" description="TPLUS2"/>
+      <value enum="4" description="TPLUS3"/>
+      <value enum="5" description="TPLUS4"/>
+      <value enum="6" description="FUTURE"/>
+      <value enum="7" description="WHEN_ISSUED"/>
+      <value enum="8" description="SELLERS_OPTION"/>
+      <value enum="9" description="TPLUS5"/>
+    </field>
+    <field number="64" name="FutSettDate" type="DATE"/>
+    <field number="65" name="SymbolSfx" type="STRING"/>
+    <field number="66" name="ListID" type="STRING"/>
+    <field number="67" name="ListSeqNo" type="INT"/>
+    <field number="68" name="ListNoOrds" type="INT"/>
+    <field number="69" name="ListExecInst" type="STRING"/>
+    <field number="70" name="AllocID" type="INT"/>
+    <field number="71" name="AllocTransType" type="STRING">
+      <value enum="0" description="NEW"/>
+      <value enum="1" description="REPLACE"/>
+      <value enum="2" description="CANCEL"/>
+    </field>
+    <field number="72" name="RefAllocID" type="INT"/>
+    <field number="73" name="NoOrders" type="INT"/>
+    <field number="74" name="AvgPrxPrecision" type="INT"/>
+    <field number="75" name="TradeDate" type="DATE"/>
+    <field number="76" name="ExecBroker" type="STRING"/>
+    <field number="77" name="OpenClose" type="STRING"/>
+    <field number="78" name="NoAllocs" type="INT"/>
+    <field number="79" name="AllocAccount" type="STRING"/>
+    <field number="80" name="AllocShares" type="INT"/>
+    <field number="81" name="ProcessCode" type="STRING">
+      <value enum="0" description="REGULAR"/>
+      <value enum="1" description="SOFT_DOLLAR"/>
+      <value enum="2" description="STEPIN"/>
+      <value enum="3" description="STEPOUT"/>
+      <value enum="4" description="SOFTDOLLAR_STEPIN"/>
+      <value enum="5" description="SOFTDOLLAR_STEPOUT"/>
+      <value enum="6" description="PLAN_SPONSOR"/>
+    </field>
+    <field number="82" name="NoRpts" type="INT"/>
+    <field number="83" name="RptSeq" type="INT"/>
+    <field number="84" name="CxlQty" type="INT"/>
+    <field number="85" name="NoDlvyInst" type="INT"/>
+    <field number="86" name="DlvyInst" type="STRING"/>
+    <field number="87" name="AllocStatus" type="INT">
+      <value enum="0" description="ACCEPTED"/>
+      <value enum="1" description="REJECTED"/>
+      <value enum="2" description="PARTIAL_ACCEPT"/>
+      <value enum="3" description="RECEIVED"/>
+    </field>
+    <field number="88" name="AllocRejCode" type="INT">
+      <value enum="0" description="UNKNOWN_ACCOUNT"/>
+      <value enum="1" description="INCORRECT_QUANTITY"/>
+      <value enum="2" description="INCORRECT_AVERAGE_PRICE"/>
+      <value enum="3" description="UNKNOWN_EXECUTING_BROKER_MNEMONIC"/>
+      <value enum="4" description="COMMISSION_DIFFERENCE"/>
+      <value enum="5" description="UNKNOWN_ORDERID"/>
+      <value enum="6" description="UNKNOWN_LISTID"/>
+      <value enum="7" description="OTHER"/>
+    </field>
+    <field number="89" name="Signature" type="DATA"/>
+    <field number="90" name="SecureDataLen" type="INT"/>
+    <field number="91" name="SecureData" type="DATA"/>
+    <field number="92" name="BrokerOfCredit" type="STRING"/>
+    <field number="93" name="SignatureLength" type="INT"/>
+    <field number="94" name="EmailType" type="STRING">
+      <value enum="0" description="NEW"/>
+      <value enum="1" description="REPLY"/>
+      <value enum="2" description="ADMIN_REPLY"/>
+    </field>
+    <field number="95" name="RawDataLength" type="INT"/>
+    <field number="96" name="RawData" type="DATA"/>
+    <field number="97" name="PossResend" type="STRING"/>
+    <field number="98" name="EncryptMethod" type="INT">
+      <value enum="0" description="NONE_OTHER"/>
+      <value enum="1" description="PKCS"/>
+      <value enum="2" description="DES"/>
+      <value enum="3" description="PKCSDES"/>
+      <value enum="4" description="PGPDES"/>
+      <value enum="5" description="PGPDESMD5"/>
+      <value enum="6" description="PEMDESMD5"/>
+    </field>
+    <field number="99" name="StopPx" type="FLOAT"/>
+    <field number="100" name="ExDestination" type="STRING">
+      <value enum="0" description="NONE"/>
+      <value enum="4" description="POSIT"/>
+    </field>
+    <field number="102" name="CxlRejReason" type="INT">
+      <value enum="0" description="TOO_LATE_TO_CANCEL"/>
+      <value enum="1" description="UNKNOWN_ORDER"/>
+    </field>
+    <field number="103" name="OrdRejReason" type="INT">
+      <value enum="0" description="BROKER_OPTION"/>
+      <value enum="1" description="UNKNOWN_SYMBOL"/>
+      <value enum="2" description="EXCHANGE_CLOSED"/>
+      <value enum="3" description="ORDER_EXCEEDS_LIMIT"/>
+      <value enum="4" description="TOO_LATE_TO_ENTER"/>
+    </field>
+    <field number="104" name="IOIQualifier" type="STRING">
+      <value enum="X" description="CROSSING_OPPORTUNITY"/>
+      <value enum="O" description="AT_THE_OPEN"/>
+      <value enum="M" description="MORE_BEHIND"/>
+      <value enum="P" description="TAKING_A_POSITION"/>
+      <value enum="V" description="VERSUS"/>
+      <value enum="Q" description="CURRENT_QUOTE"/>
+      <value enum="C" description="AT_THE_CLOSE"/>
+      <value enum="S" description="PORTFOLIO_SHOWN"/>
+      <value enum="I" description="IN_TOUCH_WITH"/>
+      <value enum="W" description="INDICATION_WORKING_AWAY"/>
+      <value enum="A" description="ALL_OR_NONE"/>
+      <value enum="L" description="LIMIT"/>
+      <value enum="T" description="THROUGH_THE_DAY"/>
+    </field>
+    <field number="105" name="WaveNo" type="STRING"/>
+    <field number="106" name="Issuer" type="STRING"/>
+    <field number="107" name="SecurityDesc" type="STRING"/>
+    <field number="108" name="HeartBtInt" type="INT"/>
+    <field number="109" name="ClientID" type="STRING"/>
+    <field number="110" name="MinQty" type="INT"/>
+    <field number="111" name="MaxFloor" type="INT"/>
+    <field number="112" name="TestReqID" type="STRING"/>
+    <field number="113" name="ReportToExch" type="STRING">
+      <value enum="Y" description="YES"/>
+      <value enum="N" description="NO"/>
+    </field>
+    <field number="114" name="LocateReqd" type="STRING">
+      <value enum="Y" description="YES"/>
+      <value enum="N" description="NO"/>
+    </field>
+    <field number="115" name="OnBehalfOfCompID" type="STRING"/>
+    <field number="116" name="OnBehalfOfSubID" type="STRING"/>
+    <field number="117" name="QuoteID" type="STRING"/>
+    <field number="118" name="NetMoney" type="FLOAT"/>
+    <field number="119" name="SettlCurrAmt" type="FLOAT"/>
+    <field number="120" name="SettlCurrency" type="STRING"/>
+    <field number="121" name="ForexReq" type="STRING">
+      <value enum="Y" description="YES"/>
+      <value enum="N" description="NO"/>
+    </field>
+    <field number="122" name="OrigSendingTime" type="TIME"/>
+    <field number="123" name="GapFillFlag" type="STRING">
+      <value enum="Y" description="GAP_FILL_MESSAGE_MSGSEQNUM_FIELD_VALID"/>
+      <value enum="N" description="SEQUENCE_RESET_IGNORE_MSGSEQNUM"/>
+    </field>
+    <field number="124" name="NoExecs" type="INT"/>
+    <field number="125" name="CxlType" type="STRING">
+      <value enum="P" description="PARTIAL_CANCEL"/>
+      <value enum="F" description="FULL_REMAINING_QUANTITY"/>
+    </field>
+    <field number="126" name="ExpireTime" type="TIME"/>
+    <field number="127" name="DKReason" type="STRING">
+      <value enum="A" description="UNKNOWN_SYMBOL"/>
+      <value enum="B" description="WRONG_SIDE"/>
+      <value enum="C" description="QUANTITY_EXCEEDS_ORDER"/>
+      <value enum="D" description="NO_MATCHING_ORDER"/>
+      <value enum="E" description="PRICE_EXCEEDS_LIMIT"/>
+      <value enum="Z" description="OTHER" />
+    </field>
+    <field number="128" name="DeliverToCompID" type="STRING"/>
+    <field number="129" name="DeliverToSubID" type="STRING"/>
+    <field number="130" name="IOINaturalFlag" type="STRING">
+      <value enum="Y" description="NATURAL"/>
+      <value enum="N" description="NOT_NATURAL"/>
+    </field>
+    <field number="131" name="QuoteReqID" type="STRING"/>
+    <field number="132" name="BidPx" type="FLOAT"/>
+    <field number="133" name="OfferPx" type="FLOAT"/>
+    <field number="134" name="BidSize" type="INT"/>
+    <field number="135" name="OfferSize" type="INT"/>
+    <field number="136" name="NoMiscFees" type="INT"/>
+    <field number="137" name="MiscFeeAmt" type="FLOAT"/>
+    <field number="138" name="MiscFeeCurr" type="STRING"/>
+    <field number="139" name="MiscFeeType" type="STRING">
+      <value enum="1" description="REGULATORY"/>
+      <value enum="2" description="TAX"/>
+      <value enum="3" description="LOCAL_COMMISSION"/>
+      <value enum="4" description="EXCHANGE_FEES"/>
+      <value enum="5" description="STAMP"/>
+      <value enum="6" description="LEVY"/>
+      <value enum="7" description="OTHER"/>
+    </field>
+    <field number="140" name="PrevClosePx" type="FLOAT"/>
+  </fields>
+</fix>
diff --git a/fix/FIX41.xml b/fix/FIX41.xml
new file mode 100644 (file)
index 0000000..d1d470e
--- /dev/null
@@ -0,0 +1,1239 @@
+<fix major="4" minor="1">
+  <header>
+    <field name="BeginString" required="Y"/>
+    <field name="BodyLength" required="Y"/>
+    <field name="MsgType" required="Y"/>
+    <field name="SenderCompID" required="Y"/>
+    <field name="TargetCompID" required="Y"/>
+    <field name="OnBehalfOfCompID" required="N"/>
+    <field name="DeliverToCompID" required="N"/>
+    <field name="SecureDataLen" required="N"/>
+    <field name="SecureData" required="N"/>
+    <field name="MsgSeqNum" required="Y"/>
+    <field name="SenderSubID" required="N"/>
+    <field name="SenderLocationID" required="N"/>
+    <field name="TargetSubID" required="N"/>
+    <field name="TargetLocationID" required="N"/>
+    <field name="OnBehalfOfSubID" required="N"/>
+    <field name="OnBehalfOfLocationID" required="N"/>
+    <field name="DeliverToSubID" required="N"/>
+    <field name="DeliverToLocationID" required="N"/>
+    <field name="PossDupFlag" required="N"/>
+    <field name="PossResend" required="N"/>
+    <field name="SendingTime" required="Y"/>
+    <field name="OrigSendingTime" required="N"/>
+  </header>
+  <trailer>
+    <field name="SignatureLength" required="N"/>
+    <field name="Signature" required="N"/>
+    <field name="CheckSum" required="Y"/>
+  </trailer>
+  <messages>
+    <message name="Heartbeat" msgtype="0" msgcat="admin">
+      <field name="TestReqID" required="N"/>
+    </message>
+    <message name="Logon" msgtype="A" msgcat="admin">
+      <field name="EncryptMethod" required="Y"/>
+      <field name="HeartBtInt" required="Y"/>
+      <field name="RawDataLength" required="N"/>
+      <field name="RawData" required="N"/>
+      <field name="ResetSeqNumFlag" required="N"/>
+    </message>
+    <message name="TestRequest" msgtype="1" msgcat="admin">
+      <field name="TestReqID" required="Y"/>
+    </message>
+    <message name="ResendRequest" msgtype="2" msgcat="admin">
+      <field name="BeginSeqNo" required="Y"/>
+      <field name="EndSeqNo" required="Y"/>
+    </message>
+    <message name="Reject" msgtype="3" msgcat="admin">
+      <field name="RefSeqNum" required="Y"/>
+      <field name="Text" required="N"/>
+    </message>
+    <message name="SequenceReset" msgtype="4" msgcat="admin">
+      <field name="GapFillFlag" required="N"/>
+      <field name="NewSeqNo" required="Y"/>
+    </message>
+    <message name="Logout" msgtype="5" msgcat="admin">
+      <field name="Text" required="N"/>
+    </message>
+    <message name="Advertisement" msgtype="7" msgcat="app">
+      <field name="AdvId" required="Y"/>
+      <field name="AdvTransType" required="Y"/>
+      <field name="AdvRefID" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="AdvSide" required="Y"/>
+      <field name="Shares" required="Y"/>
+      <field name="Price" required="N"/>
+      <field name="Currency" required="N"/>
+      <field name="TradeDate" required="N"/>
+      <field name="TransactTime" required="N"/>
+      <field name="Text" required="N"/>
+      <field name="URLLink" required="N"/>
+      <field name="LastMkt" required="N"/>
+    </message>
+    <message name="IndicationofInterest" msgtype="6" msgcat="app">
+      <field name="IOIid" required="Y"/>
+      <field name="IOITransType" required="Y"/>
+      <field name="IOIRefID" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="Side" required="Y"/>
+      <field name="IOIShares" required="Y"/>
+      <field name="Price" required="N"/>
+      <field name="Currency" required="N"/>
+      <field name="ValidUntilTime" required="N"/>
+      <field name="IOIQltyInd" required="N"/>
+      <field name="IOIOthSvc" required="N"/>
+      <field name="IOINaturalFlag" required="N"/>
+      <group name="NoIOIQualifiers" required="N">
+        <field name="IOIQualifier" required="N"/>
+      </group>
+      <field name="Text" required="N"/>
+      <field name="TransactTime" required="N"/>
+      <field name="URLLink" required="N"/>
+    </message>
+    <message name="News" msgtype="B" msgcat="app">
+      <field name="OrigTime" required="N"/>
+      <field name="Urgency" required="N"/>
+      <field name="Headline" required="Y"/>
+      <group name="NoRelatedSym" required="N">
+        <field name="RelatdSym" required="N"/>
+        <field name="SymbolSfx" required="N"/>
+        <field name="SecurityID" required="N"/>
+        <field name="IDSource" required="N"/>
+        <field name="SecurityType" required="N"/>
+        <field name="MaturityMonthYear" required="N"/>
+        <field name="MaturityDay" required="N"/>
+        <field name="PutOrCall" required="N"/>
+        <field name="StrikePrice" required="N"/>
+        <field name="OptAttribute" required="N"/>
+        <field name="SecurityExchange" required="N"/>
+        <field name="Issuer" required="N"/>
+        <field name="SecurityDesc" required="N"/>
+      </group>
+      <group name="LinesOfText" required="Y">
+        <field name="Text" required="Y"/>
+      </group>
+      <field name="URLLink" required="N"/>
+      <field name="RawDataLength" required="N"/>
+      <field name="RawData" required="N"/>
+    </message>
+    <message name="Email" msgtype="C" msgcat="app">
+      <field name="EmailThreadID" required="Y"/>
+      <field name="EmailType" required="Y"/>
+      <field name="OrigTime" required="N"/>
+      <field name="Subject" required="Y"/>
+      <group name="NoRelatedSym" required="N">
+        <field name="RelatdSym" required="N"/>
+        <field name="SymbolSfx" required="N"/>
+        <field name="SecurityID" required="N"/>
+        <field name="IDSource" required="N"/>
+        <field name="SecurityType" required="N"/>
+        <field name="MaturityMonthYear" required="N"/>
+        <field name="MaturityDay" required="N"/>
+        <field name="PutOrCall" required="N"/>
+        <field name="StrikePrice" required="N"/>
+        <field name="OptAttribute" required="N"/>
+        <field name="SecurityExchange" required="N"/>
+        <field name="Issuer" required="N"/>
+        <field name="SecurityDesc" required="N"/>
+      </group>
+      <field name="OrderID" required="N"/>
+      <field name="ClOrdID" required="N"/>
+      <group name="LinesOfText" required="Y">
+        <field name="Text" required="Y"/>
+      </group>
+      <field name="RawDataLength" required="N"/>
+      <field name="RawData" required="N"/>
+    </message>
+    <message name="QuoteRequest" msgtype="R" msgcat="app">
+      <field name="QuoteReqID" required="Y"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="PrevClosePx" required="N"/>
+      <field name="Side" required="N"/>
+      <field name="OrderQty" required="N"/>
+      <field name="FutSettDate" required="N"/>
+      <field name="OrdType" required="N"/>
+      <field name="FutSettDate2" required="N"/>
+      <field name="OrderQty2" required="N"/>
+    </message>
+    <message name="Quote" msgtype="S" msgcat="app">
+      <field name="QuoteReqID" required="N"/>
+      <field name="QuoteID" required="Y"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="BidPx" required="N"/>
+      <field name="OfferPx" required="N"/>
+      <field name="BidSize" required="N"/>
+      <field name="OfferSize" required="N"/>
+      <field name="ValidUntilTime" required="N"/>
+      <field name="BidSpotRate" required="N"/>
+      <field name="OfferSpotRate" required="N"/>
+      <field name="BidForwardPoints" required="N"/>
+      <field name="OfferForwardPoints" required="N"/>
+      <field name="TransactTime" required="N"/>
+      <field name="FutSettDate" required="N"/>
+      <field name="OrdType" required="N"/>
+      <field name="FutSettDate2" required="N"/>
+      <field name="OrderQty2" required="N"/>
+    </message>
+    <message name="NewOrderSingle" msgtype="D" msgcat="app">
+      <field name="ClOrdID" required="Y"/>
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="Account" required="N"/>
+      <field name="SettlmntTyp" required="N"/>
+      <field name="FutSettDate" required="N"/>
+      <field name="HandlInst" required="Y"/>
+      <field name="ExecInst" required="N"/>
+      <field name="MinQty" required="N"/>
+      <field name="MaxFloor" required="N"/>
+      <field name="ExDestination" required="N"/>
+      <field name="ProcessCode" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="PrevClosePx" required="N"/>
+      <field name="Side" required="Y"/>
+      <field name="LocateReqd" required="N"/>
+      <field name="OrderQty" required="N"/>
+      <field name="CashOrderQty" required="N"/>
+      <field name="OrdType" required="Y"/>
+      <field name="Price" required="N"/>
+      <field name="StopPx" required="N"/>
+      <field name="Currency" required="N"/>
+      <field name="IOIid" required="N"/>
+      <field name="QuoteID" required="N"/>
+      <field name="TimeInForce" required="N"/>
+      <field name="ExpireTime" required="N"/>
+      <field name="Commission" required="N"/>
+      <field name="CommType" required="N"/>
+      <field name="Rule80A" required="N"/>
+      <field name="ForexReq" required="N"/>
+      <field name="SettlCurrency" required="N"/>
+      <field name="Text" required="N"/>
+      <field name="FutSettDate2" required="N"/>
+      <field name="OrderQty2" required="N"/>
+      <field name="OpenClose" required="N"/>
+      <field name="CoveredOrUncovered" required="N"/>
+      <field name="CustomerOrFirm" required="N"/>
+      <field name="MaxShow" required="N"/>
+      <field name="PegDifference" required="N"/>
+    </message>
+    <message name="ExecutionReport" msgtype="8" msgcat="app">
+      <field name="OrderID" required="Y"/>
+      <field name="SecondaryOrderID" required="N"/>
+      <field name="ClOrdID" required="N"/>
+      <field name="OrigClOrdID" required="N"/>
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="ListID" required="N"/>
+      <field name="ExecID" required="Y"/>
+      <field name="ExecTransType" required="Y"/>
+      <field name="ExecRefID" required="N"/>
+      <field name="ExecType" required="Y"/>
+      <field name="OrdStatus" required="Y"/>
+      <field name="OrdRejReason" required="N"/>
+      <field name="Account" required="N"/>
+      <field name="SettlmntTyp" required="N"/>
+      <field name="FutSettDate" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="Side" required="Y"/>
+      <field name="OrderQty" required="Y"/>
+      <field name="OrdType" required="N"/>
+      <field name="Price" required="N"/>
+      <field name="StopPx" required="N"/>
+      <field name="PegDifference" required="N"/>
+      <field name="Currency" required="N"/>
+      <field name="TimeInForce" required="N"/>
+      <field name="ExpireTime" required="N"/>
+      <field name="ExecInst" required="N"/>
+      <field name="Rule80A" required="N"/>
+      <field name="LastShares" required="Y"/>
+      <field name="LastPx" required="Y"/>
+      <field name="LastSpotRate" required="N"/>
+      <field name="LastForwardPoints" required="N"/>
+      <field name="LastMkt" required="N"/>
+      <field name="LastCapacity" required="N"/>
+      <field name="LeavesQty" required="Y"/>
+      <field name="CumQty" required="Y"/>
+      <field name="AvgPx" required="Y"/>
+      <field name="TradeDate" required="N"/>
+      <field name="TransactTime" required="N"/>
+      <field name="ReportToExch" required="N"/>
+      <field name="Commission" required="N"/>
+      <field name="CommType" required="N"/>
+      <field name="SettlCurrAmt" required="N"/>
+      <field name="SettlCurrency" required="N"/>
+      <field name="Text" required="N"/>
+    </message>
+    <message name="DontKnowTrade" msgtype="Q" msgcat="app">
+      <field name="OrderID" required="N"/>
+      <field name="ExecID" required="N"/>
+      <field name="DKReason" required="Y"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="Side" required="Y"/>
+      <field name="OrderQty" required="N"/>
+      <field name="CashOrderQty" required="N"/>
+      <field name="LastShares" required="N"/>
+      <field name="LastPx" required="N"/>
+      <field name="Text" required="N"/>
+    </message>
+    <message name="OrderCancelReplaceRequest" msgtype="G" msgcat="app">
+      <field name="OrderID" required="N"/>
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="OrigClOrdID" required="Y"/>
+      <field name="ClOrdID" required="Y"/>
+      <field name="ListID" required="N"/>
+      <field name="Account" required="N"/>
+      <field name="SettlmntTyp" required="N"/>
+      <field name="FutSettDate" required="N"/>
+      <field name="HandlInst" required="Y"/>
+      <field name="ExecInst" required="N"/>
+      <field name="MinQty" required="N"/>
+      <field name="MaxFloor" required="N"/>
+      <field name="ExDestination" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="Side" required="Y"/>
+      <field name="OrderQty" required="N"/>
+      <field name="CashOrderQty" required="N"/>
+      <field name="OrdType" required="Y"/>
+      <field name="Price" required="N"/>
+      <field name="StopPx" required="N"/>
+      <field name="PegDifference" required="N"/>
+      <field name="Currency" required="N"/>
+      <field name="TimeInForce" required="N"/>
+      <field name="ExpireTime" required="N"/>
+      <field name="Commission" required="N"/>
+      <field name="CommType" required="N"/>
+      <field name="Rule80A" required="N"/>
+      <field name="ForexReq" required="N"/>
+      <field name="SettlCurrency" required="N"/>
+      <field name="Text" required="N"/>
+      <field name="FutSettDate2" required="N"/>
+      <field name="OrderQty2" required="N"/>
+      <field name="OpenClose" required="N"/>
+      <field name="CoveredOrUncovered" required="N"/>
+      <field name="CustomerOrFirm" required="N"/>
+      <field name="MaxShow" required="N"/>
+      <field name="LocateReqd" required="N"/>
+    </message>
+    <message name="OrderCancelRequest" msgtype="F" msgcat="app">
+      <field name="OrigClOrdID" required="Y"/>
+      <field name="OrderID" required="N"/>
+      <field name="ClOrdID" required="Y"/>
+      <field name="ListID" required="N"/>
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="Side" required="Y"/>
+      <field name="OrderQty" required="N"/>
+      <field name="CashOrderQty" required="N"/>
+      <field name="Text" required="N"/>
+    </message>
+    <message name="OrderCancelReject" msgtype="9" msgcat="app">
+      <field name="OrderID" required="Y"/>
+      <field name="SecondaryOrderID" required="N"/>
+      <field name="ClOrdID" required="Y"/>
+      <field name="OrigClOrdID" required="Y"/>
+      <field name="OrdStatus" required="Y"/>
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="ListID" required="N"/>
+      <field name="CxlRejReason" required="N"/>
+      <field name="Text" required="N"/>
+    </message>
+    <message name="OrderStatusRequest" msgtype="H" msgcat="app">
+      <field name="OrderID" required="N"/>
+      <field name="ClOrdID" required="Y"/>
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="Side" required="Y"/>
+    </message>
+    <message name="Allocation" msgtype="J" msgcat="app">
+      <field name="AllocID" required="Y"/>
+      <field name="AllocTransType" required="Y"/>
+      <field name="RefAllocID" required="N"/>
+      <field name="AllocLinkID" required="N"/>
+      <field name="AllocLinkType" required="N"/>
+      <group name="NoOrders" required="Y">
+        <field name="ClOrdID" required="Y"/>
+        <field name="OrderID" required="N"/>
+        <field name="SecondaryOrderID" required="N"/>
+        <field name="ListID" required="N"/>
+        <field name="WaveNo" required="N"/>
+      </group>
+      <group name="NoExecs" required="N">
+        <field name="LastShares" required="N"/>
+        <field name="ExecID" required="N"/>
+        <field name="LastPx" required="N"/>
+        <field name="LastCapacity" required="N"/>
+      </group>
+      <field name="Side" required="Y"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="Shares" required="Y"/>
+      <field name="LastMkt" required="N"/>
+      <field name="AvgPx" required="Y"/>
+      <field name="Currency" required="N"/>
+      <field name="AvgPrxPrecision" required="N"/>
+      <field name="TradeDate" required="Y"/>
+      <field name="TransactTime" required="N"/>
+      <field name="SettlmntTyp" required="N"/>
+      <field name="FutSettDate" required="N"/>
+      <field name="NetMoney" required="N"/>
+      <field name="OpenClose" required="N"/>
+      <field name="Text" required="N"/>
+      <field name="NumDaysInterest" required="N"/>
+      <field name="AccruedInterestRate" required="N"/>
+      <group name="NoAllocs" required="Y">
+        <field name="AllocAccount" required="Y"/>
+        <field name="AllocShares" required="Y"/>
+        <field name="ProcessCode" required="N"/>
+        <field name="BrokerOfCredit" required="N"/>
+        <field name="NotifyBrokerOfCredit" required="N"/>
+        <field name="AllocHandlInst" required="N"/>
+        <field name="AllocText" required="N"/>
+        <field name="ExecBroker" required="N"/>
+        <field name="ClientID" required="N"/>
+        <field name="Commission" required="N"/>
+        <field name="CommType" required="N"/>
+        <field name="AllocAvgPx" required="N"/>
+        <field name="AllocNetMoney" required="N"/>
+        <field name="SettlCurrAmt" required="N"/>
+        <field name="SettlCurrency" required="N"/>
+        <field name="SettlCurrFxRate" required="N"/>
+        <field name="SettlCurrFxRateCalc" required="N"/>
+        <field name="AccruedInterestAmt" required="N"/>
+        <field name="SettlInstMode" required="N"/>
+        <group name="NoMiscFees" required="N">
+          <field name="MiscFeeAmt" required="N"/>
+          <field name="MiscFeeCurr" required="N"/>
+          <field name="MiscFeeType" required="N"/>
+        </group>
+      </group>
+    </message>
+    <message name="AllocationACK" msgtype="P" msgcat="app">
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="AllocID" required="Y"/>
+      <field name="TradeDate" required="Y"/>
+      <field name="TransactTime" required="N"/>
+      <field name="AllocStatus" required="Y"/>
+      <field name="AllocRejCode" required="N"/>
+      <field name="Text" required="N"/>
+    </message>
+    <message name="SettlementInstructions" msgtype="T" msgcat="app">
+      <field name="SettlInstID" required="Y"/>
+      <field name="SettlInstTransType" required="Y"/>
+      <field name="SettlInstMode" required="Y"/>
+      <field name="SettlInstSource" required="Y"/>
+      <field name="AllocAccount" required="Y"/>
+      <field name="SettlLocation" required="N"/>
+      <field name="TradeDate" required="N"/>
+      <field name="AllocID" required="N"/>
+      <field name="LastMkt" required="N"/>
+      <field name="Side" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="EffectiveTime" required="N"/>
+      <field name="TransactTime" required="Y"/>
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="StandInstDbType" required="N"/>
+      <field name="StandInstDbName" required="N"/>
+      <field name="StandInstDbID" required="N"/>
+      <field name="SettlDeliveryType" required="N"/>
+      <field name="SettlDepositoryCode" required="N"/>
+      <field name="SettlBrkrCode" required="N"/>
+      <field name="SettlInstCode" required="N"/>
+      <field name="SecuritySettlAgentName" required="N"/>
+      <field name="SecuritySettlAgentCode" required="N"/>
+      <field name="SecuritySettlAgentAcctNum" required="N"/>
+      <field name="SecuritySettlAgentAcctName" required="N"/>
+      <field name="SecuritySettlAgentContactName" required="N"/>
+      <field name="SecuritySettlAgentContactPhone" required="N"/>
+      <field name="CashSettlAgentName" required="N"/>
+      <field name="CashSettlAgentCode" required="N"/>
+      <field name="CashSettlAgentAcctNum" required="N"/>
+      <field name="CashSettlAgentAcctName" required="N"/>
+      <field name="CashSettlAgentContactName" required="N"/>
+      <field name="CashSettlAgentContactPhone" required="N"/>
+    </message>
+    <message name="NewOrderList" msgtype="E" msgcat="app">
+      <field name="ListID" required="Y"/>
+      <field name="WaveNo" required="N"/>
+      <field name="ListSeqNo" required="Y"/>
+      <field name="ListNoOrds" required="Y"/>
+      <field name="ListExecInst" required="N"/>
+      <field name="ClOrdID" required="Y"/>
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="Account" required="N"/>
+      <field name="SettlmntTyp" required="N"/>
+      <field name="FutSettDate" required="N"/>
+      <field name="HandlInst" required="Y"/>
+      <field name="ExecInst" required="N"/>
+      <field name="MinQty" required="N"/>
+      <field name="MaxFloor" required="N"/>
+      <field name="ExDestination" required="N"/>
+      <field name="ProcessCode" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="PrevClosePx" required="N"/>
+      <field name="Side" required="Y"/>
+      <field name="LocateReqd" required="N"/>
+      <field name="OrderQty" required="Y"/>
+      <field name="OrdType" required="Y"/>
+      <field name="Price" required="N"/>
+      <field name="StopPx" required="N"/>
+      <field name="PegDifference" required="N"/>
+      <field name="Currency" required="N"/>
+      <field name="TimeInForce" required="N"/>
+      <field name="ExpireTime" required="N"/>
+      <field name="Commission" required="N"/>
+      <field name="CommType" required="N"/>
+      <field name="Rule80A" required="N"/>
+      <field name="ForexReq" required="N"/>
+      <field name="SettlCurrency" required="N"/>
+      <field name="Text" required="N"/>
+      <field name="FutSettDate2" required="N"/>
+      <field name="OrderQty2" required="N"/>
+      <field name="OpenClose" required="N"/>
+      <field name="CoveredOrUncovered" required="N"/>
+      <field name="CustomerOrFirm" required="N"/>
+      <field name="MaxShow" required="N"/>
+    </message>
+    <message name="ListStatus" msgtype="N" msgcat="app">
+      <field name="ListID" required="Y"/>
+      <field name="WaveNo" required="N"/>
+      <field name="NoRpts" required="Y"/>
+      <field name="RptSeq" required="Y"/>
+      <group name="NoOrders" required="Y">
+        <field name="ClOrdID" required="Y"/>
+        <field name="CumQty" required="Y"/>
+        <field name="LeavesQty" required="Y"/>
+        <field name="CxlQty" required="Y"/>
+        <field name="AvgPx" required="Y"/>
+      </group>
+    </message>
+    <message name="ListExecute" msgtype="L" msgcat="app">
+      <field name="ListID" required="Y"/>
+      <field name="WaveNo" required="N"/>
+      <field name="Text" required="N"/>
+    </message>
+    <message name="ListCancelRequest" msgtype="K" msgcat="app">
+      <field name="ListID" required="Y"/>
+      <field name="WaveNo" required="N"/>
+      <field name="Text" required="N"/>
+    </message>
+    <message name="ListStatusRequest" msgtype="M" msgcat="app">
+      <field name="ListID" required="Y"/>
+      <field name="WaveNo" required="N"/>
+      <field name="Text" required="N"/>
+    </message>
+  </messages>
+  <fields>
+    <field number="1" name="Account" type="STRING"/>
+    <field number="2" name="AdvId" type="STRING"/>
+    <field number="3" name="AdvRefID" type="STRING"/>
+    <field number="4" name="AdvSide" type="STRING">
+      <value enum="B" description="BUY"/>
+      <value enum="S" description="SELL"/>
+      <value enum="X" description="CROSS"/>
+      <value enum="T" description="TRADE"/>
+    </field>
+    <field number="5" name="AdvTransType" type="STRING">
+      <value enum="N" description="NEW"/>
+      <value enum="C" description="CANCEL"/>
+      <value enum="R" description="REPLACE"/>
+    </field>
+    <field number="6" name="AvgPx" type="FLOAT"/>
+    <field number="7" name="BeginSeqNo" type="INT"/>
+    <field number="8" name="BeginString" type="STRING"/>
+    <field number="9" name="BodyLength" type="INT"/>
+    <field number="10" name="CheckSum" type="STRING"/>
+    <field number="11" name="ClOrdID" type="STRING"/>
+    <field number="12" name="Commission" type="FLOAT"/>
+    <field number="13" name="CommType" type="STRING">
+      <value enum="1" description="PER_SHARE"/>
+      <value enum="2" description="PERCENTAGE"/>
+      <value enum="3" description="ABSOLUTE"/>
+    </field>
+    <field number="14" name="CumQty" type="INT"/>
+    <field number="15" name="Currency" type="STRING"/>
+    <field number="16" name="EndSeqNo" type="INT"/>
+    <field number="17" name="ExecID" type="STRING"/>
+    <field number="18" name="ExecInst" type="MULTIPLEVALUESTRING">
+      <value enum="1" description="NOT_HELD"/>
+      <value enum="2" description="WORK"/>
+      <value enum="3" description="GO_ALONG"/>
+      <value enum="4" description="OVER_THE_DAY"/>
+      <value enum="5" description="HELD"/>
+      <value enum="6" description="PARTICIPATE_DONT_INITIATE"/>
+      <value enum="7" description="STRICT_SCALE"/>
+      <value enum="8" description="TRY_TO_SCALE"/>
+      <value enum="9" description="STAY_ON_BIDSIDE"/>
+      <value enum="0" description="STAY_ON_OFFERSIDE"/>
+      <value enum="A" description="NO_CROSS"/>
+      <value enum="B" description="OK_TO_CROSS"/>
+      <value enum="C" description="CALL_FIRST"/>
+      <value enum="D" description="PERCENT_OF_VOLUME"/>
+      <value enum="E" description="DO_NOT_INCREASE_DNI"/>
+      <value enum="F" description="DO_NOT_REDUCE_DNR"/>
+      <value enum="G" description="ALL_OR_NONE_AON"/>
+      <value enum="I" description="INSTITUTIONS_ONLY"/>
+      <value enum="L" description="LAST_PEG"/>
+      <value enum="M" description="MIDPRICE_PEG"/>
+      <value enum="N" description="NONNEGOTIABLE"/>
+      <value enum="O" description="OPENING_PEG"/>
+      <value enum="P" description="MARKET_PEG"/>
+      <value enum="R" description="PRIMARY_PEG"/>
+      <value enum="S" description="SUSPEND"/>
+      <value enum="U" description="CUSTOMER_DISPLAY_INSTRUCTION"/>
+      <value enum="V" description="NETTING"/>
+    </field>
+    <field number="19" name="ExecRefID" type="STRING"/>
+    <field number="20" name="ExecTransType" type="STRING">
+      <value enum="0" description="NEW"/>
+      <value enum="1" description="CANCEL"/>
+      <value enum="2" description="CORRECT"/>
+      <value enum="3" description="STATUS"/>
+    </field>
+    <field number="21" name="HandlInst" type="STRING">
+      <value enum="1" description="AUTOMATED_EXECUTION_ORDER_PRIVATE_NO_BROKER_INTERVENTION"/>
+      <value enum="2" description="AUTOMATED_EXECUTION_ORDER_PUBLIC_BROKER_INTERVENTION_OK"/>
+      <value enum="3" description="MANUAL_ORDER_BEST_EXECUTION"/>
+    </field>
+    <field number="22" name="IDSource" type="STRING">
+      <value enum="1" description="CUSIP"/>
+      <value enum="2" description="SEDOL"/>
+      <value enum="3" description="QUIK"/>
+      <value enum="4" description="ISIN_NUMBER"/>
+      <value enum="5" description="RIC_CODE"/>
+      <value enum="6" description="ISO_CURRENCY_CODE"/>
+      <value enum="7" description="ISO_COUNTRY_CODE"/>
+    </field>
+    <field number="23" name="IOIid" type="STRING"/>
+    <field number="24" name="IOIOthSvc" type="STRING"/>
+    <field number="25" name="IOIQltyInd" type="STRING">
+      <value enum="L" description="LOW"/>
+      <value enum="M" description="MEDIUM"/>
+      <value enum="H" description="HIGH"/>
+    </field>
+    <field number="26" name="IOIRefID" type="STRING"/>
+    <field number="27" name="IOIShares" type="STRING"/>
+    <field number="28" name="IOITransType" type="STRING">
+      <value enum="N" description="NEW"/>
+      <value enum="C" description="CANCEL"/>
+      <value enum="R" description="REPLACE"/>
+    </field>
+    <field number="29" name="LastCapacity" type="STRING">
+      <value enum="1" description="AGENT"/>
+      <value enum="2" description="CROSS_AS_AGENT"/>
+      <value enum="3" description="CROSS_AS_PRINCIPAL"/>
+      <value enum="4" description="PRINCIPAL"/>
+    </field>
+    <field number="30" name="LastMkt" type="STRING"/>
+    <field number="31" name="LastPx" type="FLOAT"/>
+    <field number="32" name="LastShares" type="INT"/>
+    <field number="33" name="LinesOfText" type="INT"/>
+    <field number="34" name="MsgSeqNum" type="INT"/>
+    <field number="35" name="MsgType" type="STRING"/>
+    <field number="36" name="NewSeqNo" type="INT"/>
+    <field number="37" name="OrderID" type="STRING"/>
+    <field number="38" name="OrderQty" type="INT"/>
+    <field number="39" name="OrdStatus" type="STRING">
+      <value enum="0" description="NEW"/>
+      <value enum="1" description="PARTIALLY_FILLED"/>
+      <value enum="2" description="FILLED"/>
+      <value enum="3" description="DONE_FOR_DAY"/>
+      <value enum="4" description="CANCELED"/>
+      <value enum="5" description="REPLACED"/>
+      <value enum="6" description="PENDING_CANCELREPLACE"/>
+      <value enum="7" description="STOPPED"/>
+      <value enum="8" description="REJECTED"/>
+      <value enum="9" description="SUSPENDED"/>
+      <value enum="A" description="PENDING_NEW"/>
+      <value enum="B" description="CALCULATED"/>
+      <value enum="C" description="EXPIRED"/>
+    </field>
+    <field number="40" name="OrdType" type="STRING">
+      <value enum="1" description="MARKET"/>
+      <value enum="2" description="LIMIT"/>
+      <value enum="3" description="STOP"/>
+      <value enum="4" description="STOP_LIMIT"/>
+      <value enum="5" description="MARKET_ON_CLOSE"/>
+      <value enum="6" description="WITH_OR_WITHOUT"/>
+      <value enum="7" description="LIMIT_OR_BETTER"/>
+      <value enum="8" description="LIMIT_WITH_OR_WITHOUT"/>
+      <value enum="9" description="ON_BASIS"/>
+      <value enum="A" description="ON_CLOSE"/>
+      <value enum="B" description="LIMIT_ON_CLOSE"/>
+      <value enum="C" description="FOREX_MARKET"/>
+      <value enum="D" description="PREVIOUSLY_QUOTED"/>
+      <value enum="E" description="PREVIOUSLY_INDICATED"/>
+      <value enum="F" description="FOREX_LIMIT"/>
+      <value enum="G" description="FOREX_SWAP"/>
+      <value enum="H" description="FOREX_PREVIOUSLY_QUOTED"/>
+      <value enum="P" description="PEGGED"/>
+    </field>
+    <field number="41" name="OrigClOrdID" type="STRING"/>
+    <field number="42" name="OrigTime" type="TIME"/>
+    <field number="43" name="PossDupFlag" type="STRING">
+      <value enum="Y" description="POSSIBLE_DUPLICATE"/>
+      <value enum="N" description="ORIGINAL_TRANSMISSION"/>
+    </field>
+    <field number="44" name="Price" type="FLOAT"/>
+    <field number="45" name="RefSeqNum" type="INT"/>
+    <field number="46" name="RelatdSym" type="STRING"/>
+    <field number="47" name="Rule80A" type="STRING">
+      <value enum="A" description="AGENCY_SINGLE_ORDER"/>
+      <value enum="B" description="SHORT_EXEMPT_TRANSACTION_B"/>
+      <value enum="C" description="PROGRAM_ORDER_NONINDEX_ARB_FOR_MEMBER_FIRMORG"/>
+      <value enum="D" description="PROGRAM_ORDER_INDEX_ARB_FOR_MEMBER_FIRMORG"/>
+      <value enum="E" description="REGISTERED_EQUITY_MARKET_MAKER_TRADES"/>
+      <value enum="F" description="SHORT_EXEMPT_TRANSACTION_F"/>
+      <value enum="H" description="SHORT_EXEMPT_TRANSACTION_H"/>
+      <value enum="J" description="PROGRAM_ORDER_INDEX_ARB_FOR_INDIVIDUAL_CUSTOMER"/>
+      <value enum="K" description="PROGRAM_ORDER_NONINDEX_ARB_FOR_INDIVIDUAL_CUSTOMER"/>
+      <value enum="L" description="SHORT_EXEMPT_AFFILIATED"/>
+      <value enum="M" description="PROGRAM_ORDER_INDEX_ARB_FOR_OTHER_MEMBER"/>
+      <value enum="N" description="PROGRAM_ORDER_NONINDEX_ARB_FOR_OTHER_MEMBER"/>
+      <value enum="O" description="COMPETING_DEALER_TRADES_O"/>
+      <value enum="P" description="PRINCIPAL"/>
+      <value enum="R" description="COMPETING_DEALER_TRADES_R"/>
+      <value enum="S" description="SPECIALIST_TRADES"/>
+      <value enum="T" description="COMPETING_DEALER_TRADES_T"/>
+      <value enum="U" description="PROGRAM_ORDER_INDEX_ARB_FOR_OTHER_AGENCY"/>
+      <value enum="W" description="ALL_OTHER_ORDERS_AS_AGENT_FOR_OTHER_MEMBER"/>
+      <value enum="X" description="SHORT_EXEMPT_NOT_AFFILIATED"/>
+      <value enum="Y" description="PROGRAM_ORDER_NONINDEX_ARB_FOR_OTHER_AGENCY"/>
+      <value enum="Z" description="SHORT_EXEMPT_NONMEMBER"/>
+    </field>
+    <field number="48" name="SecurityID" type="STRING"/>
+    <field number="49" name="SenderCompID" type="STRING"/>
+    <field number="50" name="SenderSubID" type="STRING"/>
+    <field number="52" name="SendingTime" type="TIME"/>
+    <field number="53" name="Shares" type="INT"/>
+    <field number="54" name="Side" type="STRING">
+      <value enum="1" description="BUY"/>
+      <value enum="2" description="SELL"/>
+      <value enum="3" description="BUY_MINUS"/>
+      <value enum="4" description="SELL_PLUS"/>
+      <value enum="5" description="SELL_SHORT"/>
+      <value enum="6" description="SELL_SHORT_EXEMPT"/>
+      <value enum="7" description="D"/>
+      <value enum="8" description="CROSS"/>
+    </field>
+    <field number="55" name="Symbol" type="STRING"/>
+    <field number="56" name="TargetCompID" type="STRING"/>
+    <field number="57" name="TargetSubID" type="STRING"/>
+    <field number="58" name="Text" type="STRING"/>
+    <field number="59" name="TimeInForce" type="STRING">
+      <value enum="0" description="DAY"/>
+      <value enum="1" description="GOOD_TILL_CANCEL"/>
+      <value enum="2" description="AT_THE_OPENING"/>
+      <value enum="3" description="IMMEDIATE_OR_CANCEL"/>
+      <value enum="4" description="FILL_OR_KILL"/>
+      <value enum="5" description="GOOD_TILL_CROSSING"/>
+      <value enum="6" description="GOOD_TILL_DATE"/>
+    </field>
+    <field number="60" name="TransactTime" type="TIME"/>
+    <field number="61" name="Urgency" type="STRING">
+      <value enum="0" description="NORMAL"/>
+      <value enum="1" description="FLASH"/>
+      <value enum="2" description="BACKGROUND"/>
+    </field>
+    <field number="62" name="ValidUntilTime" type="TIME"/>
+    <field number="63" name="SettlmntTyp" type="STRING">
+      <value enum="0" description="REGULAR"/>
+      <value enum="1" description="CASH"/>
+      <value enum="2" description="NEXT_DAY"/>
+      <value enum="3" description="TPLUS2"/>
+      <value enum="4" description="TPLUS3"/>
+      <value enum="5" description="TPLUS4"/>
+      <value enum="6" description="FUTURE"/>
+      <value enum="7" description="WHEN_ISSUED"/>
+      <value enum="8" description="SELLERS_OPTION"/>
+      <value enum="9" description="TPLUS5"/>
+    </field>
+    <field number="64" name="FutSettDate" type="DATE"/>
+    <field number="65" name="SymbolSfx" type="STRING"/>
+    <field number="66" name="ListID" type="STRING"/>
+    <field number="67" name="ListSeqNo" type="INT"/>
+    <field number="68" name="ListNoOrds" type="INT"/>
+    <field number="69" name="ListExecInst" type="STRING"/>
+    <field number="70" name="AllocID" type="STRING"/>
+    <field number="71" name="AllocTransType" type="STRING">
+      <value enum="0" description="NEW"/>
+      <value enum="1" description="REPLACE"/>
+      <value enum="2" description="CANCEL"/>
+      <value enum="3" description="PRELIMINARY"/>
+      <value enum="4" description="CALCULATED"/>
+    </field>
+    <field number="72" name="RefAllocID" type="STRING"/>
+    <field number="73" name="NoOrders" type="INT"/>
+    <field number="74" name="AvgPrxPrecision" type="INT"/>
+    <field number="75" name="TradeDate" type="DATE"/>
+    <field number="76" name="ExecBroker" type="STRING"/>
+    <field number="77" name="OpenClose" type="STRING"/>
+    <field number="78" name="NoAllocs" type="INT"/>
+    <field number="79" name="AllocAccount" type="STRING"/>
+    <field number="80" name="AllocShares" type="INT"/>
+    <field number="81" name="ProcessCode" type="STRING">
+      <value enum="0" description="REGULAR"/>
+      <value enum="1" description="SOFT_DOLLAR"/>
+      <value enum="2" description="STEPIN"/>
+      <value enum="3" description="STEPOUT"/>
+      <value enum="4" description="SOFTDOLLAR_STEPIN"/>
+      <value enum="5" description="SOFTDOLLAR_STEPOUT"/>
+      <value enum="6" description="PLAN_SPONSOR"/>
+    </field>
+    <field number="82" name="NoRpts" type="INT"/>
+    <field number="83" name="RptSeq" type="INT"/>
+    <field number="84" name="CxlQty" type="INT"/>
+    <field number="85" name="NoDlvyInst" type="INT"/>
+    <field number="86" name="DlvyInst" type="STRING"/>
+    <field number="87" name="AllocStatus" type="INT">
+      <value enum="0" description="ACCEPTED"/>
+      <value enum="1" description="REJECTED"/>
+      <value enum="2" description="PARTIAL_ACCEPT"/>
+      <value enum="3" description="RECEIVED"/>
+    </field>
+    <field number="88" name="AllocRejCode" type="INT">
+      <value enum="0" description="UNKNOWN_ACCOUNT"/>
+      <value enum="1" description="INCORRECT_QUANTITY"/>
+      <value enum="2" description="INCORRECT_AVERAGE_PRICE"/>
+      <value enum="3" description="UNKNOWN_EXECUTING_BROKER_MNEMONIC"/>
+      <value enum="4" description="COMMISSION_DIFFERENCE"/>
+      <value enum="5" description="UNKNOWN_ORDERID"/>
+      <value enum="6" description="UNKNOWN_LISTID"/>
+      <value enum="7" description="OTHER"/>
+    </field>
+    <field number="89" name="Signature" type="DATA"/>
+    <field number="90" name="SecureDataLen" type="INT"/>
+    <field number="91" name="SecureData" type="DATA"/>
+    <field number="92" name="BrokerOfCredit" type="STRING"/>
+    <field number="93" name="SignatureLength" type="INT"/>
+    <field number="94" name="EmailType" type="STRING">
+      <value enum="0" description="NEW"/>
+      <value enum="1" description="REPLY"/>
+      <value enum="2" description="ADMIN_REPLY"/>
+    </field>
+    <field number="95" name="RawDataLength" type="INT"/>
+    <field number="96" name="RawData" type="DATA"/>
+    <field number="97" name="PossResend" type="STRING"/>
+    <field number="98" name="EncryptMethod" type="INT">
+      <value enum="0" description="NONE_OTHER"/>
+      <value enum="1" description="PKCS"/>
+      <value enum="2" description="DES"/>
+      <value enum="3" description="PKCSDES"/>
+      <value enum="4" description="PGPDES"/>
+      <value enum="5" description="PGPDESMD5"/>
+      <value enum="6" description="PEMDESMD5"/>
+    </field>
+    <field number="99" name="StopPx" type="FLOAT"/>
+    <field number="100" name="ExDestination" type="STRING"/>
+    <field number="102" name="CxlRejReason" type="INT">
+      <value enum="0" description="TOO_LATE_TO_CANCEL"/>
+      <value enum="1" description="UNKNOWN_ORDER"/>
+    </field>
+    <field number="103" name="OrdRejReason" type="INT">
+      <value enum="0" description="BROKER_OPTION"/>
+      <value enum="1" description="UNKNOWN_SYMBOL"/>
+      <value enum="2" description="EXCHANGE_CLOSED"/>
+      <value enum="3" description="ORDER_EXCEEDS_LIMIT"/>
+      <value enum="4" description="TOO_LATE_TO_ENTER"/>
+      <value enum="5" description="UNKNOWN_ORDER"/>
+      <value enum="6" description="DUPLICATE_ORDER"/>
+    </field>
+    <field number="104" name="IOIQualifier" type="STRING">
+      <value enum="X" description="CROSSING_OPPORTUNITY"/>
+      <value enum="O" description="AT_THE_OPEN"/>
+      <value enum="M" description="MORE_BEHIND"/>
+      <value enum="P" description="TAKING_A_POSITION"/>
+      <value enum="V" description="VERSUS"/>
+      <value enum="Q" description="AT_THE_MARKET"/>
+      <value enum="C" description="AT_THE_CLOSE"/>
+      <value enum="S" description="PORTFOLIO_SHOWN"/>
+      <value enum="I" description="IN_TOUCH_WITH"/>
+      <value enum="W" description="INDICATION_WORKING_AWAY"/>
+      <value enum="A" description="ALL_OR_NONE"/>
+      <value enum="L" description="LIMIT"/>
+      <value enum="T" description="THROUGH_THE_DAY"/>
+      <value enum="Y" description="AT_THE_MIDPOINT"/>
+      <value enum="Z" description="PREOPEN"/>
+    </field>
+    <field number="105" name="WaveNo" type="STRING"/>
+    <field number="106" name="Issuer" type="STRING"/>
+    <field number="107" name="SecurityDesc" type="STRING"/>
+    <field number="108" name="HeartBtInt" type="INT"/>
+    <field number="109" name="ClientID" type="STRING"/>
+    <field number="110" name="MinQty" type="INT"/>
+    <field number="111" name="MaxFloor" type="INT"/>
+    <field number="112" name="TestReqID" type="STRING"/>
+    <field number="113" name="ReportToExch" type="STRING">
+      <value enum="Y" description="YES"/>
+      <value enum="N" description="NO"/>
+    </field>
+    <field number="114" name="LocateReqd" type="STRING">
+      <value enum="Y" description="YES"/>
+      <value enum="N" description="NO"/>
+    </field>
+    <field number="115" name="OnBehalfOfCompID" type="STRING"/>
+    <field number="116" name="OnBehalfOfSubID" type="STRING"/>
+    <field number="117" name="QuoteID" type="STRING"/>
+    <field number="118" name="NetMoney" type="FLOAT"/>
+    <field number="119" name="SettlCurrAmt" type="FLOAT"/>
+    <field number="120" name="SettlCurrency" type="STRING"/>
+    <field number="121" name="ForexReq" type="STRING">
+      <value enum="Y" description="YES"/>
+      <value enum="N" description="NO"/>
+    </field>
+    <field number="122" name="OrigSendingTime" type="TIME"/>
+    <field number="123" name="GapFillFlag" type="STRING">
+      <value enum="Y" description="GAP_FILL_MESSAGE_MSGSEQNUM_FIELD_VALID"/>
+      <value enum="N" description="SEQUENCE_RESET_IGNORE_MSGSEQNUM"/>
+    </field>
+    <field number="124" name="NoExecs" type="INT"/>
+    <field number="125" name="CxlType" type="STRING"/>
+    <field number="126" name="ExpireTime" type="TIME"/>
+    <field number="127" name="DKReason" type="STRING">
+      <value enum="A" description="UNKNOWN_SYMBOL"/>
+      <value enum="B" description="WRONG_SIDE"/>
+      <value enum="C" description="QUANTITY_EXCEEDS_ORDER"/>
+      <value enum="D" description="NO_MATCHING_ORDER"/>
+      <value enum="E" description="PRICE_EXCEEDS_LIMIT"/>
+      <value enum="Z" description="OTHER" />
+    </field>
+    <field number="128" name="DeliverToCompID" type="STRING"/>
+    <field number="129" name="DeliverToSubID" type="STRING"/>
+    <field number="130" name="IOINaturalFlag" type="STRING">
+      <value enum="Y" description="NATURAL"/>
+      <value enum="N" description="NOT_NATURAL"/>
+    </field>
+    <field number="131" name="QuoteReqID" type="STRING"/>
+    <field number="132" name="BidPx" type="FLOAT"/>
+    <field number="133" name="OfferPx" type="FLOAT"/>
+    <field number="134" name="BidSize" type="INT"/>
+    <field number="135" name="OfferSize" type="INT"/>
+    <field number="136" name="NoMiscFees" type="INT"/>
+    <field number="137" name="MiscFeeAmt" type="FLOAT"/>
+    <field number="138" name="MiscFeeCurr" type="STRING"/>
+    <field number="139" name="MiscFeeType" type="STRING">
+      <value enum="1" description="REGULATORY"/>
+      <value enum="2" description="TAX"/>
+      <value enum="3" description="LOCAL_COMMISSION"/>
+      <value enum="4" description="EXCHANGE_FEES"/>
+      <value enum="5" description="STAMP"/>
+      <value enum="6" description="LEVY"/>
+      <value enum="7" description="OTHER"/>
+      <value enum="8" description="MARKUP"/>
+    </field>
+    <field number="140" name="PrevClosePx" type="FLOAT"/>
+    <field number="141" name="ResetSeqNumFlag" type="STRING">
+      <value enum="Y" description="YES_RESET_SEQUENCE_NUMBERS"/>
+      <value enum="N" description="NO"/>
+    </field>
+    <field number="142" name="SenderLocationID" type="STRING"/>
+    <field number="143" name="TargetLocationID" type="STRING"/>
+    <field number="144" name="OnBehalfOfLocationID" type="STRING"/>
+    <field number="145" name="DeliverToLocationID" type="STRING"/>
+    <field number="146" name="NoRelatedSym" type="INT"/>
+    <field number="147" name="Subject" type="STRING"/>
+    <field number="148" name="Headline" type="STRING"/>
+    <field number="149" name="URLLink" type="STRING"/>
+    <field number="150" name="ExecType" type="STRING">
+      <value enum="0" description="NEW"/>
+      <value enum="1" description="PARTIAL_FILL"/>
+      <value enum="2" description="FILL"/>
+      <value enum="3" description="DONE_FOR_DAY"/>
+      <value enum="4" description="CANCELLED"/>
+      <value enum="5" description="REPLACE"/>
+      <value enum="6" description="PENDING_CANCELREPLACE"/>
+      <value enum="7" description="STOPPED"/>
+      <value enum="8" description="REJECTED"/>
+      <value enum="9" description="SUSPENDED"/>
+      <value enum="A" description="PENDING_NEW"/>
+      <value enum="B" description="CALCULATED"/>
+      <value enum="C" description="EXPIRED"/>
+    </field>
+    <field number="151" name="LeavesQty" type="INT"/>
+    <field number="152" name="CashOrderQty" type="FLOAT"/>
+    <field number="153" name="AllocAvgPx" type="FLOAT"/>
+    <field number="154" name="AllocNetMoney" type="FLOAT"/>
+    <field number="155" name="SettlCurrFxRate" type="FLOAT"/>
+    <field number="156" name="SettlCurrFxRateCalc" type="STRING"/>
+    <field number="157" name="NumDaysInterest" type="INT"/>
+    <field number="158" name="AccruedInterestRate" type="FLOAT"/>
+    <field number="159" name="AccruedInterestAmt" type="FLOAT"/>
+    <field number="160" name="SettlInstMode" type="STRING">
+      <value enum="0" description="DEFAULT"/>
+      <value enum="1" description="STANDING_INSTRUCTIONS_PROVIDED"/>
+      <value enum="2" description="SPECIFIC_ALLOCATION_ACCOUNT_OVERRIDING"/>
+      <value enum="3" description="SPECIFIC_ALLOCATION_ACCOUNT_STANDING"/>
+    </field>
+    <field number="161" name="AllocText" type="STRING"/>
+    <field number="162" name="SettlInstID" type="STRING"/>
+    <field number="163" name="SettlInstTransType" type="STRING">
+      <value enum="N" description="NEW"/>
+      <value enum="C" description="CANCEL"/>
+      <value enum="R" description="REPLACE"/>
+    </field>
+    <field number="164" name="EmailThreadID" type="STRING"/>
+    <field number="165" name="SettlInstSource" type="STRING">
+      <value enum="1" description="BROKER"/>
+      <value enum="2" description="INSTITUTION"/>
+    </field>
+    <field number="166" name="SettlLocation" type="STRING">
+      <value enum="CED" description="CEDEL"/>
+      <value enum="DTC" description="DEPOSITORY_TRUST_COMPANY"/>
+      <value enum="EUR" description="EUROCLEAR"/>
+      <value enum="FED" description="FEDERAL_BOOK_ENTRY"/>
+      <value enum="PNY" description="PHYSICAL"/>
+      <value enum="PTC" description="PARTICIPANT_TRUST_COMPANY"/>
+      <value enum="ISO" description="LOCAL_MARKET_SETTLE_LOCATION"/>
+    </field>
+    <field number="167" name="SecurityType" type="STRING">
+      <value enum="BA" description="BANKERS_ACCEPTANCE"/>
+      <value enum="CD" description="CERTIFICATE_OF_DEPOSIT"/>
+      <value enum="CMO" description="COLLATERALIZE_MORTGAGE_OBLIGATION"/>
+      <value enum="CORP" description="CORPORATE_BOND"/>
+      <value enum="CP" description="COMMERCIAL_PAPER"/>
+      <value enum="CPP" description="CORPORATE_PRIVATE_PLACEMENT"/>
+      <value enum="CS" description="COMMON_STOCK"/>
+      <value enum="FHA" description="FEDERAL_HOUSING_AUTHORITY"/>
+      <value enum="FHL" description="FEDERAL_HOME_LOAN"/>
+      <value enum="FN" description="FEDERAL_NATIONAL_MORTGAGE_ASSOCIATION"/>
+      <value enum="FOR" description="FOREIGN_EXCHANGE_CONTRACT"/>
+      <value enum="FUT" description="FUTURE"/>
+      <value enum="GN" description="GOVERNMENT_NATIONAL_MORTGAGE_ASSOCIATION"/>
+      <value enum="GOVT" description="TREASURIES_PLUS_AGENCY_DEBENTURE"/>
+      <value enum="MF" description="MUTUAL_FUND"/>
+      <value enum="MIO" description="MORTGAGE_INTEREST_ONLY"/>
+      <value enum="MPO" description="MORTGAGE_PRINCIPLE_ONLY"/>
+      <value enum="MPP" description="MORTGAGE_PRIVATE_PLACEMENT"/>
+      <value enum="MPT" description="MISCELLANEOUS_PASSTHRU"/>
+      <value enum="MUNI" description="MUNICIPAL_BOND"/>
+      <value enum="NONE" description="NO_ISITC_SECURITY_TYPE"/>
+      <value enum="OPT" description="OPTION"/>
+      <value enum="PS" description="PREFERRED_STOCK"/>
+      <value enum="RP" description="REPURCHASE_AGREEMENT"/>
+      <value enum="RVRP" description="REVERSE_REPURCHASE_AGREEMENT"/>
+      <value enum="SL" description="STUDENT_LOAN_MARKETING_ASSOCIATION"/>
+      <value enum="TD" description="TIME_DEPOSIT"/>
+      <value enum="USTB" description="US_TREASURY_BILL"/>
+      <value enum="WAR" description="WARRANT"/>
+      <value enum="ZOO" description="CATS_TIGERS"/>
+    </field>
+    <field number="168" name="EffectiveTime" type="TIME"/>
+    <field number="169" name="StandInstDbType" type="INT">
+      <value enum="0" description="OTHER"/>
+      <value enum="1" description="DTC_SID"/>
+      <value enum="2" description="THOMSON_ALERT"/>
+      <value enum="3" description="A_GLOBAL_CUSTODIAN"/>
+    </field>
+    <field number="170" name="StandInstDbName" type="STRING"/>
+    <field number="171" name="StandInstDbID" type="STRING"/>
+    <field number="172" name="SettlDeliveryType" type="INT"/>
+    <field number="173" name="SettlDepositoryCode" type="STRING"/>
+    <field number="174" name="SettlBrkrCode" type="STRING"/>
+    <field number="175" name="SettlInstCode" type="STRING"/>
+    <field number="176" name="SecuritySettlAgentName" type="STRING"/>
+    <field number="177" name="SecuritySettlAgentCode" type="STRING"/>
+    <field number="178" name="SecuritySettlAgentAcctNum" type="STRING"/>
+    <field number="179" name="SecuritySettlAgentAcctName" type="STRING"/>
+    <field number="180" name="SecuritySettlAgentContactName" type="STRING"/>
+    <field number="181" name="SecuritySettlAgentContactPhone" type="STRING"/>
+    <field number="182" name="CashSettlAgentName" type="STRING"/>
+    <field number="183" name="CashSettlAgentCode" type="STRING"/>
+    <field number="184" name="CashSettlAgentAcctNum" type="STRING"/>
+    <field number="185" name="CashSettlAgentAcctName" type="STRING"/>
+    <field number="186" name="CashSettlAgentContactName" type="STRING"/>
+    <field number="187" name="CashSettlAgentContactPhone" type="STRING"/>
+    <field number="188" name="BidSpotRate" type="FLOAT"/>
+    <field number="189" name="BidForwardPoints" type="FLOAT"/>
+    <field number="190" name="OfferSpotRate" type="FLOAT"/>
+    <field number="191" name="OfferForwardPoints" type="FLOAT"/>
+    <field number="192" name="OrderQty2" type="FLOAT"/>
+    <field number="193" name="FutSettDate2" type="DATE"/>
+    <field number="194" name="LastSpotRate" type="FLOAT"/>
+    <field number="195" name="LastForwardPoints" type="FLOAT"/>
+    <field number="196" name="AllocLinkID" type="STRING"/>
+    <field number="197" name="AllocLinkType" type="INT">
+      <value enum="0" description="FX_NETTING"/>
+      <value enum="1" description="FX_SWAP"/>
+    </field>
+    <field number="198" name="SecondaryOrderID" type="STRING"/>
+    <field number="199" name="NoIOIQualifiers" type="INT"/>
+    <field number="200" name="MaturityMonthYear" type="MONTHYEAR"/>
+    <field number="201" name="PutOrCall" type="INT">
+      <value enum="0" description="PUT"/>
+      <value enum="1" description="CALL"/>
+    </field>
+    <field number="202" name="StrikePrice" type="FLOAT"/>
+    <field number="203" name="CoveredOrUncovered" type="INT">
+      <value enum="0" description="COVERED"/>
+      <value enum="1" description="UNCOVERED"/>
+    </field>
+    <field number="204" name="CustomerOrFirm" type="INT">
+      <value enum="0" description="CUSTOMER"/>
+      <value enum="1" description="FIRM"/>
+    </field>
+    <field number="205" name="MaturityDay" type="DAYOFMONTH"/>
+    <field number="206" name="OptAttribute" type="STRING"/>
+    <field number="207" name="SecurityExchange" type="STRING"/>
+    <field number="208" name="NotifyBrokerOfCredit" type="STRING">
+      <value enum="Y" description="DETAILS_SHOULD_BE_COMMUNICATED"/>
+      <value enum="N" description="DETAILS_SHOULD_NOT_BE_COMMUNICATED"/>
+    </field>
+    <field number="209" name="AllocHandlInst" type="INT">
+      <value enum="1" description="MATCH"/>
+      <value enum="2" description="FORWARD"/>
+      <value enum="3" description="FORWARD_AND_MATCH"/>
+    </field>
+    <field number="210" name="MaxShow" type="INT"/>
+    <field number="211" name="PegDifference" type="FLOAT"/>
+  </fields>
+</fix>
diff --git a/fix/FIX42.xml b/fix/FIX42.xml
new file mode 100644 (file)
index 0000000..d209e06
--- /dev/null
@@ -0,0 +1,2623 @@
+<fix major="4" minor="2">
+  <header>
+    <field name="BeginString" required="Y"/>
+    <field name="BodyLength" required="Y"/>
+    <field name="MsgType" required="Y"/>
+    <field name="SenderCompID" required="Y"/>
+    <field name="TargetCompID" required="Y"/>
+    <field name="OnBehalfOfCompID" required="N"/>
+    <field name="DeliverToCompID" required="N"/>
+    <field name="SecureDataLen" required="N"/>
+    <field name="SecureData" required="N"/>
+    <field name="MsgSeqNum" required="Y"/>
+    <field name="SenderSubID" required="N"/>
+    <field name="SenderLocationID" required="N"/>
+    <field name="TargetSubID" required="N"/>
+    <field name="TargetLocationID" required="N"/>
+    <field name="OnBehalfOfSubID" required="N"/>
+    <field name="OnBehalfOfLocationID" required="N"/>
+    <field name="DeliverToSubID" required="N"/>
+    <field name="DeliverToLocationID" required="N"/>
+    <field name="PossDupFlag" required="N"/>
+    <field name="PossResend" required="N"/>
+    <field name="SendingTime" required="Y"/>
+    <field name="OrigSendingTime" required="N"/>
+    <field name="XmlDataLen" required="N"/>
+    <field name="XmlData" required="N"/>
+    <field name="MessageEncoding" required="N"/>
+    <field name="LastMsgSeqNumProcessed" required="N"/>
+    <field name="OnBehalfOfSendingTime" required="N"/>
+  </header>
+  <trailer>
+    <field name="SignatureLength" required="N"/>
+    <field name="Signature" required="N"/>
+    <field name="CheckSum" required="Y"/>
+  </trailer>
+  <messages>
+    <message name="Heartbeat" msgtype="0" msgcat="admin">
+      <field name="TestReqID" required="N"/>
+    </message>
+    <message name="Logon" msgtype="A" msgcat="admin">
+      <field name="EncryptMethod" required="Y"/>
+      <field name="HeartBtInt" required="Y"/>
+      <field name="RawDataLength" required="N"/>
+      <field name="RawData" required="N"/>
+      <field name="ResetSeqNumFlag" required="N"/>
+      <field name="MaxMessageSize" required="N"/>
+      <group name="NoMsgTypes" required="N">
+        <field name="RefMsgType" required="N"/>
+        <field name="MsgDirection" required="N"/>
+      </group>
+    </message>
+    <message name="TestRequest" msgtype="1" msgcat="admin">
+      <field name="TestReqID" required="Y"/>
+    </message>
+    <message name="ResendRequest" msgtype="2" msgcat="admin">
+      <field name="BeginSeqNo" required="Y"/>
+      <field name="EndSeqNo" required="Y"/>
+    </message>
+    <message name="Reject" msgtype="3" msgcat="admin">
+      <field name="RefSeqNum" required="Y"/>
+      <field name="RefTagID" required="N"/>
+      <field name="RefMsgType" required="N"/>
+      <field name="SessionRejectReason" required="N"/>
+      <field name="Text" required="N"/>
+      <field name="EncodedTextLen" required="N"/>
+      <field name="EncodedText" required="N"/>
+    </message>
+    <message name="SequenceReset" msgtype="4" msgcat="admin">
+      <field name="GapFillFlag" required="N"/>
+      <field name="NewSeqNo" required="Y"/>
+    </message>
+    <message name="Logout" msgtype="5" msgcat="admin">
+      <field name="Text" required="N"/>
+      <field name="EncodedTextLen" required="N"/>
+      <field name="EncodedText" required="N"/>
+    </message>
+    <message name="Advertisement" msgtype="7" msgcat="app">
+      <field name="AdvId" required="Y"/>
+      <field name="AdvTransType" required="Y"/>
+      <field name="AdvRefID" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="ContractMultiplier" required="N"/>
+      <field name="CouponRate" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="EncodedIssuerLen" required="N"/>
+      <field name="EncodedIssuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="EncodedSecurityDescLen" required="N"/>
+      <field name="EncodedSecurityDesc" required="N"/>
+      <field name="AdvSide" required="Y"/>
+      <field name="Shares" required="Y"/>
+      <field name="Price" required="N"/>
+      <field name="Currency" required="N"/>
+      <field name="TradeDate" required="N"/>
+      <field name="TransactTime" required="N"/>
+      <field name="Text" required="N"/>
+      <field name="EncodedTextLen" required="N"/>
+      <field name="EncodedText" required="N"/>
+      <field name="URLLink" required="N"/>
+      <field name="LastMkt" required="N"/>
+      <field name="TradingSessionID" required="N"/>
+    </message>
+    <message name="IndicationofInterest" msgtype="6" msgcat="app">
+      <field name="IOIid" required="Y"/>
+      <field name="IOITransType" required="Y"/>
+      <field name="IOIRefID" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="ContractMultiplier" required="N"/>
+      <field name="CouponRate" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="EncodedIssuerLen" required="N"/>
+      <field name="EncodedIssuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="EncodedSecurityDescLen" required="N"/>
+      <field name="EncodedSecurityDesc" required="N"/>
+      <field name="Side" required="Y"/>
+      <field name="IOIShares" required="Y"/>
+      <field name="Price" required="N"/>
+      <field name="Currency" required="N"/>
+      <field name="ValidUntilTime" required="N"/>
+      <field name="IOIQltyInd" required="N"/>
+      <field name="IOINaturalFlag" required="N"/>
+      <group name="NoIOIQualifiers" required="N">
+        <field name="IOIQualifier" required="N"/>
+      </group>
+      <field name="Text" required="N"/>
+      <field name="EncodedTextLen" required="N"/>
+      <field name="EncodedText" required="N"/>
+      <field name="TransactTime" required="N"/>
+      <field name="URLLink" required="N"/>
+      <group name="NoRoutingIDs" required="N">
+        <field name="RoutingType" required="N"/>
+        <field name="RoutingID" required="N"/>
+      </group>
+      <field name="SpreadToBenchmark" required="N"/>
+      <field name="Benchmark" required="N"/>
+    </message>
+    <message name="News" msgtype="B" msgcat="app">
+      <field name="OrigTime" required="N"/>
+      <field name="Urgency" required="N"/>
+      <field name="Headline" required="Y"/>
+      <field name="EncodedHeadlineLen" required="N"/>
+      <field name="EncodedHeadline" required="N"/>
+      <group name="NoRoutingIDs" required="N">
+        <field name="RoutingType" required="N"/>
+        <field name="RoutingID" required="N"/>
+      </group>
+      <group name="NoRelatedSym" required="N">
+        <field name="RelatdSym" required="N"/>
+        <field name="SymbolSfx" required="N"/>
+        <field name="SecurityID" required="N"/>
+        <field name="IDSource" required="N"/>
+        <field name="SecurityType" required="N"/>
+        <field name="MaturityMonthYear" required="N"/>
+        <field name="MaturityDay" required="N"/>
+        <field name="PutOrCall" required="N"/>
+        <field name="StrikePrice" required="N"/>
+        <field name="OptAttribute" required="N"/>
+        <field name="ContractMultiplier" required="N"/>
+        <field name="CouponRate" required="N"/>
+        <field name="SecurityExchange" required="N"/>
+        <field name="Issuer" required="N"/>
+        <field name="EncodedIssuerLen" required="N"/>
+        <field name="EncodedIssuer" required="N"/>
+        <field name="SecurityDesc" required="N"/>
+        <field name="EncodedSecurityDescLen" required="N"/>
+        <field name="EncodedSecurityDesc" required="N"/>
+      </group>
+      <group name="LinesOfText" required="Y">
+        <field name="Text" required="Y"/>
+        <field name="EncodedTextLen" required="N"/>
+        <field name="EncodedText" required="N"/>
+      </group>
+      <field name="URLLink" required="N"/>
+      <field name="RawDataLength" required="N"/>
+      <field name="RawData" required="N"/>
+    </message>
+    <message name="Email" msgtype="C" msgcat="app">
+      <field name="EmailThreadID" required="Y"/>
+      <field name="EmailType" required="Y"/>
+      <field name="OrigTime" required="N"/>
+      <field name="Subject" required="Y"/>
+      <field name="EncodedSubjectLen" required="N"/>
+      <field name="EncodedSubject" required="N"/>
+      <group name="NoRoutingIDs" required="N">
+        <field name="RoutingType" required="N"/>
+        <field name="RoutingID" required="N"/>
+      </group>
+      <group name="NoRelatedSym" required="N">
+        <field name="RelatdSym" required="N"/>
+        <field name="SymbolSfx" required="N"/>
+        <field name="SecurityID" required="N"/>
+        <field name="IDSource" required="N"/>
+        <field name="SecurityType" required="N"/>
+        <field name="MaturityMonthYear" required="N"/>
+        <field name="MaturityDay" required="N"/>
+        <field name="PutOrCall" required="N"/>
+        <field name="StrikePrice" required="N"/>
+        <field name="OptAttribute" required="N"/>
+        <field name="ContractMultiplier" required="N"/>
+        <field name="CouponRate" required="N"/>
+        <field name="SecurityExchange" required="N"/>
+        <field name="Issuer" required="N"/>
+        <field name="EncodedIssuerLen" required="N"/>
+        <field name="EncodedIssuer" required="N"/>
+        <field name="SecurityDesc" required="N"/>
+        <field name="EncodedSecurityDescLen" required="N"/>
+        <field name="EncodedSecurityDesc" required="N"/>
+      </group>
+      <field name="OrderID" required="N"/>
+      <field name="ClOrdID" required="N"/>
+      <group name="LinesOfText" required="Y">
+        <field name="Text" required="Y"/>
+        <field name="EncodedTextLen" required="N"/>
+        <field name="EncodedText" required="N"/>
+      </group>
+      <field name="RawDataLength" required="N"/>
+      <field name="RawData" required="N"/>
+    </message>
+    <message name="QuoteRequest" msgtype="R" msgcat="app">
+      <field name="QuoteReqID" required="Y"/>
+      <group name="NoRelatedSym" required="Y">
+        <field name="Symbol" required="Y"/>
+        <field name="SymbolSfx" required="N"/>
+        <field name="SecurityID" required="N"/>
+        <field name="IDSource" required="N"/>
+        <field name="SecurityType" required="N"/>
+        <field name="MaturityMonthYear" required="N"/>
+        <field name="MaturityDay" required="N"/>
+        <field name="PutOrCall" required="N"/>
+        <field name="StrikePrice" required="N"/>
+        <field name="OptAttribute" required="N"/>
+        <field name="ContractMultiplier" required="N"/>
+        <field name="CouponRate" required="N"/>
+        <field name="SecurityExchange" required="N"/>
+        <field name="Issuer" required="N"/>
+        <field name="EncodedIssuerLen" required="N"/>
+        <field name="EncodedIssuer" required="N"/>
+        <field name="SecurityDesc" required="N"/>
+        <field name="EncodedSecurityDescLen" required="N"/>
+        <field name="EncodedSecurityDesc" required="N"/>
+        <field name="PrevClosePx" required="N"/>
+        <field name="QuoteRequestType" required="N"/>
+        <field name="TradingSessionID" required="N"/>
+        <field name="Side" required="N"/>
+        <field name="OrderQty" required="N"/>
+        <field name="FutSettDate" required="N"/>
+        <field name="OrdType" required="N"/>
+        <field name="FutSettDate2" required="N"/>
+        <field name="OrderQty2" required="N"/>
+        <field name="ExpireTime" required="N"/>
+        <field name="TransactTime" required="N"/>
+        <field name="Currency" required="N"/>
+      </group>
+    </message>
+    <message name="Quote" msgtype="S" msgcat="app">
+      <field name="QuoteReqID" required="N"/>
+      <field name="QuoteID" required="Y"/>
+      <field name="QuoteResponseLevel" required="N"/>
+      <field name="TradingSessionID" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="ContractMultiplier" required="N"/>
+      <field name="CouponRate" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="EncodedIssuerLen" required="N"/>
+      <field name="EncodedIssuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="EncodedSecurityDescLen" required="N"/>
+      <field name="EncodedSecurityDesc" required="N"/>
+      <field name="BidPx" required="N"/>
+      <field name="OfferPx" required="N"/>
+      <field name="BidSize" required="N"/>
+      <field name="OfferSize" required="N"/>
+      <field name="ValidUntilTime" required="N"/>
+      <field name="BidSpotRate" required="N"/>
+      <field name="OfferSpotRate" required="N"/>
+      <field name="BidForwardPoints" required="N"/>
+      <field name="OfferForwardPoints" required="N"/>
+      <field name="TransactTime" required="N"/>
+      <field name="FutSettDate" required="N"/>
+      <field name="OrdType" required="N"/>
+      <field name="FutSettDate2" required="N"/>
+      <field name="OrderQty2" required="N"/>
+      <field name="Currency" required="N"/>
+    </message>
+    <message name="MassQuote" msgtype="i" msgcat="app">
+      <field name="QuoteReqID" required="N"/>
+      <field name="QuoteID" required="Y"/>
+      <field name="QuoteResponseLevel" required="N"/>
+      <field name="DefBidSize" required="N"/>
+      <field name="DefOfferSize" required="N"/>
+      <group name="NoQuoteSets" required="Y">
+        <field name="QuoteSetID" required="Y"/>
+        <field name="UnderlyingSymbol" required="Y"/>
+        <field name="UnderlyingSymbolSfx" required="N"/>
+        <field name="UnderlyingSecurityID" required="N"/>
+        <field name="UnderlyingIDSource" required="N"/>
+        <field name="UnderlyingSecurityType" required="N"/>
+        <field name="UnderlyingMaturityMonthYear" required="N"/>
+        <field name="UnderlyingMaturityDay" required="N"/>
+        <field name="UnderlyingPutOrCall" required="N"/>
+        <field name="UnderlyingStrikePrice" required="N"/>
+        <field name="UnderlyingOptAttribute" required="N"/>
+        <field name="UnderlyingContractMultiplier" required="N"/>
+        <field name="UnderlyingCouponRate" required="N"/>
+        <field name="UnderlyingSecurityExchange" required="N"/>
+        <field name="UnderlyingIssuer" required="N"/>
+        <field name="EncodedUnderlyingIssuerLen" required="N"/>
+        <field name="EncodedUnderlyingIssuer" required="N"/>
+        <field name="UnderlyingSecurityDesc" required="N"/>
+        <field name="EncodedUnderlyingSecurityDescLen" required="N"/>
+        <field name="EncodedUnderlyingSecurityDesc" required="N"/>
+        <field name="QuoteSetValidUntilTime" required="N"/>
+        <field name="TotQuoteEntries" required="Y"/>
+        <group name="NoQuoteEntries" required="Y">
+          <field name="QuoteEntryID" required="Y"/>
+          <field name="Symbol" required="N"/>
+          <field name="SymbolSfx" required="N"/>
+          <field name="SecurityID" required="N"/>
+          <field name="IDSource" required="N"/>
+          <field name="SecurityType" required="N"/>
+          <field name="MaturityMonthYear" required="N"/>
+          <field name="MaturityDay" required="N"/>
+          <field name="PutOrCall" required="N"/>
+          <field name="StrikePrice" required="N"/>
+          <field name="OptAttribute" required="N"/>
+          <field name="ContractMultiplier" required="N"/>
+          <field name="CouponRate" required="N"/>
+          <field name="SecurityExchange" required="N"/>
+          <field name="Issuer" required="N"/>
+          <field name="EncodedIssuerLen" required="N"/>
+          <field name="EncodedIssuer" required="N"/>
+          <field name="SecurityDesc" required="N"/>
+          <field name="EncodedSecurityDescLen" required="N"/>
+          <field name="EncodedSecurityDesc" required="N"/>
+          <field name="BidPx" required="N"/>
+          <field name="OfferPx" required="N"/>
+          <field name="BidSize" required="N"/>
+          <field name="OfferSize" required="N"/>
+          <field name="ValidUntilTime" required="N"/>
+          <field name="BidSpotRate" required="N"/>
+          <field name="OfferSpotRate" required="N"/>
+          <field name="BidForwardPoints" required="N"/>
+          <field name="OfferForwardPoints" required="N"/>
+          <field name="TransactTime" required="N"/>
+          <field name="TradingSessionID" required="N"/>
+          <field name="FutSettDate" required="N"/>
+          <field name="OrdType" required="N"/>
+          <field name="FutSettDate2" required="N"/>
+          <field name="OrderQty2" required="N"/>
+          <field name="Currency" required="N"/>
+        </group>
+      </group>
+    </message>
+    <message name="QuoteCancel" msgtype="Z" msgcat="app">
+      <field name="QuoteReqID" required="N"/>
+      <field name="QuoteID" required="Y"/>
+      <field name="QuoteCancelType" required="Y"/>
+      <field name="QuoteResponseLevel" required="N"/>
+      <field name="TradingSessionID" required="N"/>
+      <group name="NoQuoteEntries" required="Y">
+        <field name="Symbol" required="Y"/>
+        <field name="SymbolSfx" required="N"/>
+        <field name="SecurityID" required="N"/>
+        <field name="IDSource" required="N"/>
+        <field name="SecurityType" required="N"/>
+        <field name="MaturityMonthYear" required="N"/>
+        <field name="MaturityDay" required="N"/>
+        <field name="PutOrCall" required="N"/>
+        <field name="StrikePrice" required="N"/>
+        <field name="OptAttribute" required="N"/>
+        <field name="ContractMultiplier" required="N"/>
+        <field name="CouponRate" required="N"/>
+        <field name="SecurityExchange" required="N"/>
+        <field name="Issuer" required="N"/>
+        <field name="EncodedIssuerLen" required="N"/>
+        <field name="EncodedIssuer" required="N"/>
+        <field name="SecurityDesc" required="N"/>
+        <field name="EncodedSecurityDescLen" required="N"/>
+        <field name="EncodedSecurityDesc" required="N"/>
+        <field name="UnderlyingSymbol" required="N"/>
+      </group>
+    </message>
+    <message name="QuoteStatusRequest" msgtype="a" msgcat="app">
+      <field name="QuoteID" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="ContractMultiplier" required="N"/>
+      <field name="CouponRate" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="EncodedIssuerLen" required="N"/>
+      <field name="EncodedIssuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="EncodedSecurityDescLen" required="N"/>
+      <field name="EncodedSecurityDesc" required="N"/>
+      <field name="Side" required="N"/>
+      <field name="TradingSessionID" required="N"/>
+    </message>
+    <message name="QuoteAcknowledgement" msgtype="b" msgcat="app">
+      <field name="QuoteReqID" required="N"/>
+      <field name="QuoteID" required="N"/>
+      <field name="QuoteAckStatus" required="Y"/>
+      <field name="QuoteRejectReason" required="N"/>
+      <field name="QuoteResponseLevel" required="N"/>
+      <field name="TradingSessionID" required="N"/>
+      <field name="Text" required="N"/>
+      <group name="NoQuoteSets" required="N">
+        <field name="QuoteSetID" required="N"/>
+        <field name="UnderlyingSymbol" required="N"/>
+        <field name="UnderlyingSymbolSfx" required="N"/>
+        <field name="UnderlyingSecurityID" required="N"/>
+        <field name="UnderlyingIDSource" required="N"/>
+        <field name="UnderlyingSecurityType" required="N"/>
+        <field name="UnderlyingMaturityMonthYear" required="N"/>
+        <field name="UnderlyingMaturityDay" required="N"/>
+        <field name="UnderlyingPutOrCall" required="N"/>
+        <field name="UnderlyingStrikePrice" required="N"/>
+        <field name="UnderlyingOptAttribute" required="N"/>
+        <field name="UnderlyingContractMultiplier" required="N"/>
+        <field name="UnderlyingCouponRate" required="N"/>
+        <field name="UnderlyingSecurityExchange" required="N"/>
+        <field name="UnderlyingIssuer" required="N"/>
+        <field name="EncodedUnderlyingIssuerLen" required="N"/>
+        <field name="EncodedUnderlyingIssuer" required="N"/>
+        <field name="UnderlyingSecurityDesc" required="N"/>
+        <field name="EncodedUnderlyingSecurityDescLen" required="N"/>
+        <field name="EncodedUnderlyingSecurityDesc" required="N"/>
+        <field name="TotQuoteEntries" required="N"/>
+        <group name="NoQuoteEntries" required="N">
+          <field name="QuoteEntryID" required="N"/>
+          <field name="Symbol" required="N"/>
+          <field name="SymbolSfx" required="N"/>
+          <field name="SecurityID" required="N"/>
+          <field name="IDSource" required="N"/>
+          <field name="SecurityType" required="N"/>
+          <field name="MaturityMonthYear" required="N"/>
+          <field name="MaturityDay" required="N"/>
+          <field name="PutOrCall" required="N"/>
+          <field name="StrikePrice" required="N"/>
+          <field name="OptAttribute" required="N"/>
+          <field name="ContractMultiplier" required="N"/>
+          <field name="CouponRate" required="N"/>
+          <field name="SecurityExchange" required="N"/>
+          <field name="Issuer" required="N"/>
+          <field name="EncodedIssuerLen" required="N"/>
+          <field name="EncodedIssuer" required="N"/>
+          <field name="SecurityDesc" required="N"/>
+          <field name="EncodedSecurityDescLen" required="N"/>
+          <field name="EncodedSecurityDesc" required="N"/>
+          <field name="QuoteEntryRejectReason" required="N"/>
+        </group>
+      </group>
+    </message>
+    <message name="MarketDataRequest" msgtype="V" msgcat="app">
+      <field name="MDReqID" required="Y"/>
+      <field name="SubscriptionRequestType" required="Y"/>
+      <field name="MarketDepth" required="Y"/>
+      <field name="MDUpdateType" required="N"/>
+      <field name="AggregatedBook" required="N"/>
+      <group name="NoMDEntryTypes" required="Y">
+        <field name="MDEntryType" required="Y"/>
+      </group>
+      <group name="NoRelatedSym" required="Y">
+        <field name="Symbol" required="Y"/>
+        <field name="SymbolSfx" required="N"/>
+        <field name="SecurityID" required="N"/>
+        <field name="IDSource" required="N"/>
+        <field name="SecurityType" required="N"/>
+        <field name="MaturityMonthYear" required="N"/>
+        <field name="MaturityDay" required="N"/>
+        <field name="PutOrCall" required="N"/>
+        <field name="StrikePrice" required="N"/>
+        <field name="OptAttribute" required="N"/>
+        <field name="ContractMultiplier" required="N"/>
+        <field name="CouponRate" required="N"/>
+        <field name="SecurityExchange" required="N"/>
+        <field name="Issuer" required="N"/>
+        <field name="EncodedIssuerLen" required="N"/>
+        <field name="EncodedIssuer" required="N"/>
+        <field name="SecurityDesc" required="N"/>
+        <field name="EncodedSecurityDescLen" required="N"/>
+        <field name="EncodedSecurityDesc" required="N"/>
+        <field name="TradingSessionID" required="N"/>
+      </group>
+    </message>
+    <message name="MarketDataSnapshotFullRefresh" msgtype="W" msgcat="app">
+      <field name="MDReqID" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="ContractMultiplier" required="N"/>
+      <field name="CouponRate" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="EncodedIssuerLen" required="N"/>
+      <field name="EncodedIssuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="EncodedSecurityDescLen" required="N"/>
+      <field name="EncodedSecurityDesc" required="N"/>
+      <field name="FinancialStatus" required="N"/>
+      <field name="CorporateAction" required="N"/>
+      <field name="TotalVolumeTraded" required="N"/>
+      <group name="NoMDEntries" required="Y">
+        <field name="MDEntryType" required="Y"/>
+        <field name="MDEntryPx" required="Y"/>
+        <field name="Currency" required="N"/>
+        <field name="MDEntrySize" required="N"/>
+        <field name="MDEntryDate" required="N"/>
+        <field name="MDEntryTime" required="N"/>
+        <field name="TickDirection" required="N"/>
+        <field name="MDMkt" required="N"/>
+        <field name="TradingSessionID" required="N"/>
+        <field name="QuoteCondition" required="N"/>
+        <field name="TradeCondition" required="N"/>
+        <field name="MDEntryOriginator" required="N"/>
+        <field name="LocationID" required="N"/>
+        <field name="DeskID" required="N"/>
+        <field name="OpenCloseSettleFlag" required="N"/>
+        <field name="TimeInForce" required="N"/>
+        <field name="ExpireDate" required="N"/>
+        <field name="ExpireTime" required="N"/>
+        <field name="MinQty" required="N"/>
+        <field name="ExecInst" required="N"/>
+        <field name="SellerDays" required="N"/>
+        <field name="OrderID" required="N"/>
+        <field name="QuoteEntryID" required="N"/>
+        <field name="MDEntryBuyer" required="N"/>
+        <field name="MDEntrySeller" required="N"/>
+        <field name="NumberOfOrders" required="N"/>
+        <field name="MDEntryPositionNo" required="N"/>
+        <field name="Text" required="N"/>
+        <field name="EncodedTextLen" required="N"/>
+        <field name="EncodedText" required="N"/>
+      </group>
+    </message>
+    <message name="MarketDataIncrementalRefresh" msgtype="X" msgcat="app">
+      <field name="MDReqID" required="N"/>
+      <group name="NoMDEntries" required="Y">
+        <field name="MDUpdateAction" required="Y"/>
+        <field name="DeleteReason" required="N"/>
+        <field name="MDEntryType" required="N"/>
+        <field name="MDEntryID" required="N"/>
+        <field name="MDEntryRefID" required="N"/>
+        <field name="Symbol" required="N"/>
+        <field name="SymbolSfx" required="N"/>
+        <field name="SecurityID" required="N"/>
+        <field name="IDSource" required="N"/>
+        <field name="SecurityType" required="N"/>
+        <field name="MaturityMonthYear" required="N"/>
+        <field name="MaturityDay" required="N"/>
+        <field name="PutOrCall" required="N"/>
+        <field name="StrikePrice" required="N"/>
+        <field name="OptAttribute" required="N"/>
+        <field name="ContractMultiplier" required="N"/>
+        <field name="CouponRate" required="N"/>
+        <field name="SecurityExchange" required="N"/>
+        <field name="Issuer" required="N"/>
+        <field name="EncodedIssuerLen" required="N"/>
+        <field name="EncodedIssuer" required="N"/>
+        <field name="SecurityDesc" required="N"/>
+        <field name="EncodedSecurityDescLen" required="N"/>
+        <field name="EncodedSecurityDesc" required="N"/>
+        <field name="FinancialStatus" required="N"/>
+        <field name="CorporateAction" required="N"/>
+        <field name="MDEntryPx" required="N"/>
+        <field name="Currency" required="N"/>
+        <field name="MDEntrySize" required="N"/>
+        <field name="MDEntryDate" required="N"/>
+        <field name="MDEntryTime" required="N"/>
+        <field name="TickDirection" required="N"/>
+        <field name="MDMkt" required="N"/>
+        <field name="TradingSessionID" required="N"/>
+        <field name="QuoteCondition" required="N"/>
+        <field name="TradeCondition" required="N"/>
+        <field name="MDEntryOriginator" required="N"/>
+        <field name="LocationID" required="N"/>
+        <field name="DeskID" required="N"/>
+        <field name="OpenCloseSettleFlag" required="N"/>
+        <field name="TimeInForce" required="N"/>
+        <field name="ExpireDate" required="N"/>
+        <field name="ExpireTime" required="N"/>
+        <field name="MinQty" required="N"/>
+        <field name="ExecInst" required="N"/>
+        <field name="SellerDays" required="N"/>
+        <field name="OrderID" required="N"/>
+        <field name="QuoteEntryID" required="N"/>
+        <field name="MDEntryBuyer" required="N"/>
+        <field name="MDEntrySeller" required="N"/>
+        <field name="NumberOfOrders" required="N"/>
+        <field name="MDEntryPositionNo" required="N"/>
+        <field name="TotalVolumeTraded" required="N"/>
+        <field name="Text" required="N"/>
+        <field name="EncodedTextLen" required="N"/>
+        <field name="EncodedText" required="N"/>
+      </group>
+    </message>
+    <message name="MarketDataRequestReject" msgtype="Y" msgcat="app">
+      <field name="MDReqID" required="Y"/>
+      <field name="MDReqRejReason" required="N"/>
+      <field name="Text" required="N"/>
+      <field name="EncodedTextLen" required="N"/>
+      <field name="EncodedText" required="N"/>
+    </message>
+    <message name="SecurityDefinitionRequest" msgtype="c" msgcat="app">
+      <field name="SecurityReqID" required="Y"/>
+      <field name="SecurityRequestType" required="Y"/>
+      <field name="Symbol" required="N"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="ContractMultiplier" required="N"/>
+      <field name="CouponRate" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="EncodedIssuerLen" required="N"/>
+      <field name="EncodedIssuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="EncodedSecurityDescLen" required="N"/>
+      <field name="EncodedSecurityDesc" required="N"/>
+      <field name="Currency" required="N"/>
+      <field name="Text" required="N"/>
+      <field name="EncodedTextLen" required="N"/>
+      <field name="EncodedText" required="N"/>
+      <field name="TradingSessionID" required="N"/>
+      <group name="NoRelatedSym" required="N">
+        <field name="UnderlyingSymbol" required="N"/>
+        <field name="UnderlyingSymbolSfx" required="N"/>
+        <field name="UnderlyingSecurityID" required="N"/>
+        <field name="UnderlyingIDSource" required="N"/>
+        <field name="UnderlyingSecurityType" required="N"/>
+        <field name="UnderlyingMaturityMonthYear" required="N"/>
+        <field name="UnderlyingMaturityDay" required="N"/>
+        <field name="UnderlyingPutOrCall" required="N"/>
+        <field name="UnderlyingStrikePrice" required="N"/>
+        <field name="UnderlyingOptAttribute" required="N"/>
+        <field name="UnderlyingContractMultiplier" required="N"/>
+        <field name="UnderlyingCouponRate" required="N"/>
+        <field name="UnderlyingSecurityExchange" required="N"/>
+        <field name="UnderlyingIssuer" required="N"/>
+        <field name="EncodedUnderlyingIssuerLen" required="N"/>
+        <field name="EncodedUnderlyingIssuer" required="N"/>
+        <field name="UnderlyingSecurityDesc" required="N"/>
+        <field name="EncodedUnderlyingSecurityDescLen" required="N"/>
+        <field name="EncodedUnderlyingSecurityDesc" required="N"/>
+        <field name="RatioQty" required="N"/>
+        <field name="Side" required="N"/>
+        <field name="UnderlyingCurrency" required="N"/>
+      </group>
+    </message>
+    <message name="SecurityDefinition" msgtype="d" msgcat="app">
+      <field name="SecurityReqID" required="Y"/>
+      <field name="SecurityResponseID" required="Y"/>
+      <field name="SecurityResponseType" required="N"/>
+      <field name="TotalNumSecurities" required="Y"/>
+      <field name="Symbol" required="N"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="ContractMultiplier" required="N"/>
+      <field name="CouponRate" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="EncodedIssuerLen" required="N"/>
+      <field name="EncodedIssuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="EncodedSecurityDescLen" required="N"/>
+      <field name="EncodedSecurityDesc" required="N"/>
+      <field name="Currency" required="N"/>
+      <field name="TradingSessionID" required="N"/>
+      <field name="Text" required="N"/>
+      <field name="EncodedTextLen" required="N"/>
+      <field name="EncodedText" required="N"/>
+      <group name="NoRelatedSym" required="N">
+        <field name="UnderlyingSymbol" required="N"/>
+        <field name="UnderlyingSymbolSfx" required="N"/>
+        <field name="UnderlyingSecurityID" required="N"/>
+        <field name="UnderlyingIDSource" required="N"/>
+        <field name="UnderlyingSecurityType" required="N"/>
+        <field name="UnderlyingMaturityMonthYear" required="N"/>
+        <field name="UnderlyingMaturityDay" required="N"/>
+        <field name="UnderlyingPutOrCall" required="N"/>
+        <field name="UnderlyingStrikePrice" required="N"/>
+        <field name="UnderlyingOptAttribute" required="N"/>
+        <field name="UnderlyingContractMultiplier" required="N"/>
+        <field name="UnderlyingCouponRate" required="N"/>
+        <field name="UnderlyingSecurityExchange" required="N"/>
+        <field name="UnderlyingIssuer" required="N"/>
+        <field name="EncodedUnderlyingIssuerLen" required="N"/>
+        <field name="EncodedUnderlyingIssuer" required="N"/>
+        <field name="UnderlyingSecurityDesc" required="N"/>
+        <field name="EncodedUnderlyingSecurityDescLen" required="N"/>
+        <field name="EncodedUnderlyingSecurityDesc" required="N"/>
+        <field name="RatioQty" required="N"/>
+        <field name="Side" required="N"/>
+        <field name="UnderlyingCurrency" required="N"/>
+      </group>
+    </message>
+    <message name="SecurityStatusRequest" msgtype="e" msgcat="app">
+      <field name="SecurityStatusReqID" required="Y"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="ContractMultiplier" required="N"/>
+      <field name="CouponRate" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="EncodedIssuerLen" required="N"/>
+      <field name="EncodedIssuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="EncodedSecurityDescLen" required="N"/>
+      <field name="EncodedSecurityDesc" required="N"/>
+      <field name="Currency" required="N"/>
+      <field name="SubscriptionRequestType" required="Y"/>
+      <field name="TradingSessionID" required="N"/>
+    </message>
+    <message name="SecurityStatus" msgtype="f" msgcat="app">
+      <field name="SecurityStatusReqID" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="ContractMultiplier" required="N"/>
+      <field name="CouponRate" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="EncodedIssuerLen" required="N"/>
+      <field name="EncodedIssuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="EncodedSecurityDescLen" required="N"/>
+      <field name="EncodedSecurityDesc" required="N"/>
+      <field name="Currency" required="N"/>
+      <field name="TradingSessionID" required="N"/>
+      <field name="UnsolicitedIndicator" required="N"/>
+      <field name="SecurityTradingStatus" required="N"/>
+      <field name="FinancialStatus" required="N"/>
+      <field name="CorporateAction" required="N"/>
+      <field name="HaltReason" required="N"/>
+      <field name="InViewOfCommon" required="N"/>
+      <field name="DueToRelated" required="N"/>
+      <field name="BuyVolume" required="N"/>
+      <field name="SellVolume" required="N"/>
+      <field name="HighPx" required="N"/>
+      <field name="LowPx" required="N"/>
+      <field name="LastPx" required="N"/>
+      <field name="TransactTime" required="N"/>
+      <field name="Adjustment" required="N"/>
+    </message>
+    <message name="TradingSessionStatusRequest" msgtype="g" msgcat="app">
+      <field name="TradSesReqID" required="Y"/>
+      <field name="TradingSessionID" required="N"/>
+      <field name="TradSesMethod" required="N"/>
+      <field name="TradSesMode" required="N"/>
+      <field name="SubscriptionRequestType" required="Y"/>
+    </message>
+    <message name="TradingSessionStatus" msgtype="h" msgcat="app">
+      <field name="TradSesReqID" required="N"/>
+      <field name="TradingSessionID" required="Y"/>
+      <field name="TradSesMethod" required="N"/>
+      <field name="TradSesMode" required="N"/>
+      <field name="UnsolicitedIndicator" required="N"/>
+      <field name="TradSesStatus" required="Y"/>
+      <field name="TradSesStartTime" required="N"/>
+      <field name="TradSesOpenTime" required="N"/>
+      <field name="TradSesPreCloseTime" required="N"/>
+      <field name="TradSesCloseTime" required="N"/>
+      <field name="TradSesEndTime" required="N"/>
+      <field name="TotalVolumeTraded" required="N"/>
+      <field name="Text" required="N"/>
+      <field name="EncodedTextLen" required="N"/>
+      <field name="EncodedText" required="N"/>
+    </message>
+    <message name="NewOrderSingle" msgtype="D" msgcat="app">
+      <field name="ClOrdID" required="Y"/>
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="Account" required="N"/>
+      <group name="NoAllocs" required="N">
+        <field name="AllocAccount" required="N"/>
+        <field name="AllocShares" required="N"/>
+      </group>
+      <field name="SettlmntTyp" required="N"/>
+      <field name="FutSettDate" required="N"/>
+      <field name="HandlInst" required="Y"/>
+      <field name="ExecInst" required="N"/>
+      <field name="MinQty" required="N"/>
+      <field name="MaxFloor" required="N"/>
+      <field name="ExDestination" required="N"/>
+      <group name="NoTradingSessions" required="N">
+        <field name="TradingSessionID" required="N"/>
+      </group>
+      <field name="ProcessCode" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="ContractMultiplier" required="N"/>
+      <field name="CouponRate" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="EncodedIssuerLen" required="N"/>
+      <field name="EncodedIssuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="EncodedSecurityDescLen" required="N"/>
+      <field name="EncodedSecurityDesc" required="N"/>
+      <field name="PrevClosePx" required="N"/>
+      <field name="Side" required="Y"/>
+      <field name="LocateReqd" required="N"/>
+      <field name="TransactTime" required="Y"/>
+      <field name="OrderQty" required="N"/>
+      <field name="CashOrderQty" required="N"/>
+      <field name="OrdType" required="Y"/>
+      <field name="Price" required="N"/>
+      <field name="StopPx" required="N"/>
+      <field name="Currency" required="N"/>
+      <field name="ComplianceID" required="N"/>
+      <field name="SolicitedFlag" required="N"/>
+      <field name="IOIid" required="N"/>
+      <field name="QuoteID" required="N"/>
+      <field name="TimeInForce" required="N"/>
+      <field name="EffectiveTime" required="N"/>
+      <field name="ExpireDate" required="N"/>
+      <field name="ExpireTime" required="N"/>
+      <field name="GTBookingInst" required="N"/>
+      <field name="Commission" required="N"/>
+      <field name="CommType" required="N"/>
+      <field name="Rule80A" required="N"/>
+      <field name="ForexReq" required="N"/>
+      <field name="SettlCurrency" required="N"/>
+      <field name="Text" required="N"/>
+      <field name="EncodedTextLen" required="N"/>
+      <field name="EncodedText" required="N"/>
+      <field name="FutSettDate2" required="N"/>
+      <field name="OrderQty2" required="N"/>
+      <field name="OpenClose" required="N"/>
+      <field name="CoveredOrUncovered" required="N"/>
+      <field name="CustomerOrFirm" required="N"/>
+      <field name="MaxShow" required="N"/>
+      <field name="PegDifference" required="N"/>
+      <field name="DiscretionInst" required="N"/>
+      <field name="DiscretionOffset" required="N"/>
+      <field name="ClearingFirm" required="N"/>
+      <field name="ClearingAccount" required="N"/>
+    </message>
+    <message name="ExecutionReport" msgtype="8" msgcat="app">
+      <field name="OrderID" required="Y"/>
+      <field name="SecondaryOrderID" required="N"/>
+      <field name="ClOrdID" required="N"/>
+      <field name="OrigClOrdID" required="N"/>
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <group name="NoContraBrokers" required="N">
+        <field name="ContraBroker" required="N"/>
+        <field name="ContraTrader" required="N"/>
+        <field name="ContraTradeQty" required="N"/>
+        <field name="ContraTradeTime" required="N"/>
+      </group>
+      <field name="ListID" required="N"/>
+      <field name="ExecID" required="Y"/>
+      <field name="ExecTransType" required="Y"/>
+      <field name="ExecRefID" required="N"/>
+      <field name="ExecType" required="Y"/>
+      <field name="OrdStatus" required="Y"/>
+      <field name="OrdRejReason" required="N"/>
+      <field name="ExecRestatementReason" required="N"/>
+      <field name="Account" required="N"/>
+      <field name="SettlmntTyp" required="N"/>
+      <field name="FutSettDate" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="ContractMultiplier" required="N"/>
+      <field name="CouponRate" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="EncodedIssuerLen" required="N"/>
+      <field name="EncodedIssuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="EncodedSecurityDescLen" required="N"/>
+      <field name="EncodedSecurityDesc" required="N"/>
+      <field name="Side" required="Y"/>
+      <field name="OrderQty" required="N"/>
+      <field name="CashOrderQty" required="N"/>
+      <field name="OrdType" required="N"/>
+      <field name="Price" required="N"/>
+      <field name="StopPx" required="N"/>
+      <field name="PegDifference" required="N"/>
+      <field name="DiscretionInst" required="N"/>
+      <field name="DiscretionOffset" required="N"/>
+      <field name="Currency" required="N"/>
+      <field name="ComplianceID" required="N"/>
+      <field name="SolicitedFlag" required="N"/>
+      <field name="TimeInForce" required="N"/>
+      <field name="EffectiveTime" required="N"/>
+      <field name="ExpireDate" required="N"/>
+      <field name="ExpireTime" required="N"/>
+      <field name="ExecInst" required="N"/>
+      <field name="Rule80A" required="N"/>
+      <field name="LastShares" required="N"/>
+      <field name="LastPx" required="N"/>
+      <field name="LastSpotRate" required="N"/>
+      <field name="LastForwardPoints" required="N"/>
+      <field name="LastMkt" required="N"/>
+      <field name="TradingSessionID" required="N"/>
+      <field name="LastCapacity" required="N"/>
+      <field name="LeavesQty" required="Y"/>
+      <field name="CumQty" required="Y"/>
+      <field name="AvgPx" required="Y"/>
+      <field name="DayOrderQty" required="N"/>
+      <field name="DayCumQty" required="N"/>
+      <field name="DayAvgPx" required="N"/>
+      <field name="GTBookingInst" required="N"/>
+      <field name="TradeDate" required="N"/>
+      <field name="TransactTime" required="N"/>
+      <field name="ReportToExch" required="N"/>
+      <field name="Commission" required="N"/>
+      <field name="CommType" required="N"/>
+      <field name="GrossTradeAmt" required="N"/>
+      <field name="SettlCurrAmt" required="N"/>
+      <field name="SettlCurrency" required="N"/>
+      <field name="SettlCurrFxRate" required="N"/>
+      <field name="SettlCurrFxRateCalc" required="N"/> 
+      <field name="HandlInst" required="N"/>
+      <field name="MinQty" required="N"/>
+      <field name="MaxFloor" required="N"/>
+      <field name="OpenClose" required="N"/>
+      <field name="MaxShow" required="N"/>
+      <field name="Text" required="N"/>
+      <field name="EncodedTextLen" required="N"/>
+      <field name="EncodedText" required="N"/>
+      <field name="FutSettDate2" required="N"/>
+      <field name="OrderQty2" required="N"/>
+      <field name="ClearingFirm" required="N"/>
+      <field name="ClearingAccount" required="N"/>
+      <field name="MultiLegReportingType" required="N"/>
+    </message>
+    <message name="DontKnowTrade" msgtype="Q" msgcat="app">
+      <field name="OrderID" required="Y"/>
+      <field name="ExecID" required="Y"/>
+      <field name="DKReason" required="Y"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="ContractMultiplier" required="N"/>
+      <field name="CouponRate" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="EncodedIssuerLen" required="N"/>
+      <field name="EncodedIssuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="EncodedSecurityDescLen" required="N"/>
+      <field name="EncodedSecurityDesc" required="N"/>
+      <field name="Side" required="Y"/>
+      <field name="OrderQty" required="N"/>
+      <field name="CashOrderQty" required="N"/>
+      <field name="LastShares" required="N"/>
+      <field name="LastPx" required="N"/>
+      <field name="Text" required="N"/>
+      <field name="EncodedTextLen" required="N"/>
+      <field name="EncodedText" required="N"/>
+    </message>
+    <message name="OrderCancelReplaceRequest" msgtype="G" msgcat="app">
+      <field name="OrderID" required="N"/>
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="OrigClOrdID" required="Y"/>
+      <field name="ClOrdID" required="Y"/>
+      <field name="ListID" required="N"/>
+      <field name="Account" required="N"/>
+      <group name="NoAllocs" required="N">
+        <field name="AllocAccount" required="N"/>
+        <field name="AllocShares" required="N"/>
+      </group>
+      <field name="SettlmntTyp" required="N"/>
+      <field name="FutSettDate" required="N"/>
+      <field name="HandlInst" required="Y"/>
+      <field name="ExecInst" required="N"/>
+      <field name="MinQty" required="N"/>
+      <field name="MaxFloor" required="N"/>
+      <field name="ExDestination" required="N"/>
+      <group name="NoTradingSessions" required="N">
+        <field name="TradingSessionID" required="N"/>
+      </group>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="ContractMultiplier" required="N"/>
+      <field name="CouponRate" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="EncodedIssuerLen" required="N"/>
+      <field name="EncodedIssuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="EncodedSecurityDescLen" required="N"/>
+      <field name="EncodedSecurityDesc" required="N"/>
+      <field name="Side" required="Y"/>
+      <field name="TransactTime" required="Y"/>
+      <field name="OrderQty" required="N"/>
+      <field name="CashOrderQty" required="N"/>
+      <field name="OrdType" required="Y"/>
+      <field name="Price" required="N"/>
+      <field name="StopPx" required="N"/>
+      <field name="PegDifference" required="N"/>
+      <field name="DiscretionInst" required="N"/>
+      <field name="DiscretionOffset" required="N"/>
+      <field name="ComplianceID" required="N"/>
+      <field name="SolicitedFlag" required="N"/>
+      <field name="Currency" required="N"/>
+      <field name="TimeInForce" required="N"/>
+      <field name="EffectiveTime" required="N"/>
+      <field name="ExpireDate" required="N"/>
+      <field name="ExpireTime" required="N"/>
+      <field name="GTBookingInst" required="N"/>
+      <field name="Commission" required="N"/>
+      <field name="CommType" required="N"/>
+      <field name="Rule80A" required="N"/>
+      <field name="ForexReq" required="N"/>
+      <field name="SettlCurrency" required="N"/>
+      <field name="Text" required="N"/>
+      <field name="EncodedTextLen" required="N"/>
+      <field name="EncodedText" required="N"/>
+      <field name="FutSettDate2" required="N"/>
+      <field name="OrderQty2" required="N"/>
+      <field name="OpenClose" required="N"/>
+      <field name="CoveredOrUncovered" required="N"/>
+      <field name="CustomerOrFirm" required="N"/>
+      <field name="MaxShow" required="N"/>
+      <field name="LocateReqd" required="N"/>
+      <field name="ClearingFirm" required="N"/>
+      <field name="ClearingAccount" required="N"/>
+    </message>
+    <message name="OrderCancelRequest" msgtype="F" msgcat="app">
+      <field name="OrigClOrdID" required="Y"/>
+      <field name="OrderID" required="N"/>
+      <field name="ClOrdID" required="Y"/>
+      <field name="ListID" required="N"/>
+      <field name="Account" required="N"/>
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="ContractMultiplier" required="N"/>
+      <field name="CouponRate" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="EncodedIssuerLen" required="N"/>
+      <field name="EncodedIssuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="EncodedSecurityDescLen" required="N"/>
+      <field name="EncodedSecurityDesc" required="N"/>
+      <field name="Side" required="Y"/>
+      <field name="TransactTime" required="Y"/>
+      <field name="OrderQty" required="N"/>
+      <field name="CashOrderQty" required="N"/>
+      <field name="ComplianceID" required="N"/>
+      <field name="SolicitedFlag" required="N"/>
+      <field name="Text" required="N"/>
+      <field name="EncodedTextLen" required="N"/>
+      <field name="EncodedText" required="N"/>
+    </message>
+    <message name="OrderCancelReject" msgtype="9" msgcat="app">
+      <field name="OrderID" required="Y"/>
+      <field name="SecondaryOrderID" required="N"/>
+      <field name="ClOrdID" required="Y"/>
+      <field name="OrigClOrdID" required="Y"/>
+      <field name="OrdStatus" required="Y"/>
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="ListID" required="N"/>
+      <field name="Account" required="N"/>
+      <field name="TransactTime" required="N"/>
+      <field name="CxlRejResponseTo" required="Y"/>
+      <field name="CxlRejReason" required="N"/>
+      <field name="Text" required="N"/>
+      <field name="EncodedTextLen" required="N"/>
+      <field name="EncodedText" required="N"/>
+    </message>
+    <message name="OrderStatusRequest" msgtype="H" msgcat="app">
+      <field name="OrderID" required="N"/>
+      <field name="ClOrdID" required="Y"/>
+      <field name="ClientID" required="N"/>
+      <field name="Account" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="ContractMultiplier" required="N"/>
+      <field name="CouponRate" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="EncodedIssuerLen" required="N"/>
+      <field name="EncodedIssuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="EncodedSecurityDescLen" required="N"/>
+      <field name="EncodedSecurityDesc" required="N"/>
+      <field name="Side" required="Y"/>
+    </message>
+    <message name="Allocation" msgtype="J" msgcat="app">
+      <field name="AllocID" required="Y"/>
+      <field name="AllocTransType" required="Y"/>
+      <field name="RefAllocID" required="N"/>
+      <field name="AllocLinkID" required="N"/>
+      <field name="AllocLinkType" required="N"/>
+      <group name="NoOrders" required="Y">
+        <field name="ClOrdID" required="Y"/>
+        <field name="OrderID" required="N"/>
+        <field name="SecondaryOrderID" required="N"/>
+        <field name="ListID" required="N"/>
+        <field name="WaveNo" required="N"/>
+      </group>
+      <group name="NoExecs" required="N">
+        <field name="LastShares" required="N"/>
+        <field name="ExecID" required="N"/>
+        <field name="LastPx" required="N"/>
+        <field name="LastCapacity" required="N"/>
+      </group>
+      <field name="Side" required="Y"/>
+      <field name="Symbol" required="Y"/>
+      <field name="SymbolSfx" required="N"/>
+      <field name="SecurityID" required="N"/>
+      <field name="IDSource" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="MaturityMonthYear" required="N"/>
+      <field name="MaturityDay" required="N"/>
+      <field name="PutOrCall" required="N"/>
+      <field name="StrikePrice" required="N"/>
+      <field name="OptAttribute" required="N"/>
+      <field name="ContractMultiplier" required="N"/>
+      <field name="CouponRate" required="N"/>
+      <field name="SecurityExchange" required="N"/>
+      <field name="Issuer" required="N"/>
+      <field name="EncodedIssuerLen" required="N"/>
+      <field name="EncodedIssuer" required="N"/>
+      <field name="SecurityDesc" required="N"/>
+      <field name="EncodedSecurityDescLen" required="N"/>
+      <field name="EncodedSecurityDesc" required="N"/>
+      <field name="Shares" required="Y"/>
+      <field name="LastMkt" required="N"/>
+      <field name="TradingSessionID" required="N"/>
+      <field name="AvgPx" required="Y"/>
+      <field name="Currency" required="N"/>
+      <field name="AvgPrxPrecision" required="N"/>
+      <field name="TradeDate" required="Y"/>
+      <field name="TransactTime" required="N"/>
+      <field name="SettlmntTyp" required="N"/>
+      <field name="FutSettDate" required="N"/>
+      <field name="GrossTradeAmt" required="N"/>
+      <field name="NetMoney" required="N"/>
+      <field name="OpenClose" required="N"/>
+      <field name="Text" required="N"/>
+      <field name="EncodedTextLen" required="N"/>
+      <field name="EncodedText" required="N"/>
+      <field name="NumDaysInterest" required="N"/>
+      <field name="AccruedInterestRate" required="N"/>
+      <group name="NoAllocs" required="Y">
+        <field name="AllocAccount" required="Y"/>
+        <field name="AllocPrice" required="N"/>
+        <field name="AllocShares" required="Y"/>
+        <field name="ProcessCode" required="N"/>
+        <field name="BrokerOfCredit" required="N"/>
+        <field name="NotifyBrokerOfCredit" required="N"/>
+        <field name="AllocHandlInst" required="N"/>
+        <field name="AllocText" required="N"/>
+        <field name="EncodedAllocTextLen" required="N"/>
+        <field name="EncodedAllocText" required="N"/>
+        <field name="ExecBroker" required="N"/>
+        <field name="ClientID" required="N"/>
+        <field name="Commission" required="N"/>
+        <field name="CommType" required="N"/>
+        <field name="AllocAvgPx" required="N"/>
+        <field name="AllocNetMoney" required="N"/>
+        <field name="SettlCurrAmt" required="N"/>
+        <field name="SettlCurrency" required="N"/>
+        <field name="SettlCurrFxRate" required="N"/>
+        <field name="SettlCurrFxRateCalc" required="N"/>
+        <field name="AccruedInterestAmt" required="N"/>
+        <field name="SettlInstMode" required="N"/>
+        <group name="NoMiscFees" required="N">
+          <field name="MiscFeeAmt" required="N"/>
+          <field name="MiscFeeCurr" required="N"/>
+          <field name="MiscFeeType" required="N"/>
+        </group>
+      </group>
+    </message>
+    <message name="AllocationACK" msgtype="P" msgcat="app">
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="AllocID" required="Y"/>
+      <field name="TradeDate" required="Y"/>
+      <field name="TransactTime" required="N"/>
+      <field name="AllocStatus" required="Y"/>
+      <field name="AllocRejCode" required="N"/>
+      <field name="Text" required="N"/>
+      <field name="EncodedTextLen" required="N"/>
+      <field name="EncodedText" required="N"/>
+    </message>
+    <message name="SettlementInstructions" msgtype="T" msgcat="app">
+      <field name="SettlInstID" required="Y"/>
+      <field name="SettlInstTransType" required="Y"/>
+      <field name="SettlInstRefID" required="Y"/>
+      <field name="SettlInstMode" required="Y"/>
+      <field name="SettlInstSource" required="Y"/>
+      <field name="AllocAccount" required="Y"/>
+      <field name="SettlLocation" required="N"/>
+      <field name="TradeDate" required="N"/>
+      <field name="AllocID" required="N"/>
+      <field name="LastMkt" required="N"/>
+      <field name="TradingSessionID" required="N"/>
+      <field name="Side" required="N"/>
+      <field name="SecurityType" required="N"/>
+      <field name="EffectiveTime" required="N"/>
+      <field name="TransactTime" required="Y"/>
+      <field name="ClientID" required="N"/>
+      <field name="ExecBroker" required="N"/>
+      <field name="StandInstDbType" required="N"/>
+      <field name="StandInstDbName" required="N"/>
+      <field name="StandInstDbID" required="N"/>
+      <field name="SettlDeliveryType" required="N"/>
+      <field name="SettlDepositoryCode" required="N"/>
+      <field name="SettlBrkrCode" required="N"/>
+      <field name="SettlInstCode" required="N"/>
+      <field name="SecuritySettlAgentName" required="N"/>
+      <field name="SecuritySettlAgentCode" required="N"/>
+      <field name="SecuritySettlAgentAcctNum" required="N"/>
+      <field name="SecuritySettlAgentAcctName" required="N"/>
+      <field name="SecuritySettlAgentContactName" required="N"/>
+      <field name="SecuritySettlAgentContactPhone" required="N"/>
+      <field name="CashSettlAgentName" required="N"/>
+      <field name="CashSettlAgentCode" required="N"/>
+      <field name="CashSettlAgentAcctNum" required="N"/>
+      <field name="CashSettlAgentAcctName" required="N"/>
+      <field name="CashSettlAgentContactName" required="N"/>
+      <field name="CashSettlAgentContactPhone" required="N"/>
+    </message>
+    <message name="BidRequest" msgtype="k" msgcat="app">
+      <field name="BidID" required="N" />
+      <field name="ClientBidID" required="Y" />
+      <field name="BidRequestTransType" required="Y" />
+      <field name="ListName" required="N" />
+      <field name="TotalNumSecurities" required="Y" />
+      <field name="BidType" required="Y" />
+      <field name="NumTickets" required="N" />
+      <field name="Currency" required="N" />
+      <field name="SideValue1" required="N" />
+      <field name="SideValue2" required="N" />
+      <group name="NoBidDescriptors" required="N">
+        <field name="BidDescriptorType" required="N" />
+        <field name="BidDescriptor" required="N" />
+        <field name="SideValueInd" required="N" />
+        <field name="LiquidityValue" required="N" />
+        <field name="LiquidityNumSecurities" required="N" />
+        <field name="LiquidityPctLow" required="N" />
+        <field name="LiquidityPctHigh" required="N" />
+        <field name="EFPTrackingError" required="N" />
+        <field name="FairValue" required="N" />
+        <field name="OutsideIndexPct" required="N" />
+        <field name="ValueOfFutures" required="N" />
+      </group>
+      <group name="NoBidComponents" required="N">
+        <field name="ListID" required="N" />
+        <field name="Side" required="N" />
+        <field name="TradingSessionID" required="N" />
+        <field name="NetGrossInd" required="N" />
+        <field name="SettlmntTyp" required="N" />
+        <field name="FutSettDate" required="N" />
+        <field name="Account" required="N" />
+      </group>
+      <field name="LiquidityIndType" required="N" />
+      <field name="WtAverageLiquidity" required="N" />
+      <field name="ExchangeForPhysical" required="N" />
+      <field name="OutMainCntryUIndex" required="N" />
+      <field name="CrossPercent" required="N" />
+      <field name="ProgRptReqs" required="N" />
+      <field name="ProgPeriodInterval" required="N" />
+      <field name="IncTaxInd" required="N" />
+      <field name="ForexReq" required="N" />
+      <field name="NumBidders" required="N" />
+      <field name="TradeDate" required="N" />
+      <field name="TradeType" required="Y" />
+      <field name="BasisPxType" required="Y" />
+      <field name="StrikeTime" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="BidResponse" msgtype="l" msgcat="app">
+      <field name="BidID" required="N" />
+      <field name="ClientBidID" required="N" />
+      <group name="NoBidComponents" required="Y">
+        <field name="Commission" required="Y" />
+        <field name="CommType" required="Y" />
+        <field name="ListID" required="N" />
+        <field name="Country" required="N" />
+        <field name="Side" required="N" />
+        <field name="Price" required="N" />
+        <field name="PriceType" required="N" />
+        <field name="FairValue" required="N" />
+        <field name="NetGrossInd" required="N" />
+        <field name="SettlmntTyp" required="N" />
+        <field name="FutSettDate" required="N" />
+        <field name="TradingSessionID" required="N" />
+        <field name="Text" required="N" />
+        <field name="EncodedTextLen" required="N" />
+        <field name="EncodedText" required="N" />
+      </group>
+    </message>
+    <message name="NewOrderList" msgtype="E" msgcat="app">
+      <field name="ListID" required="Y"/>
+      <field name="BidID" required="N"/>
+      <field name="ClientBidID" required="N"/>
+      <field name="ProgRptReqs" required="N"/>
+      <field name="BidType" required="Y"/>
+      <field name="ProgPeriodInterval" required="N"/>
+      <field name="ListExecInstType" required="N"/>
+      <field name="ListExecInst" required="N"/>
+      <field name="EncodedListExecInstLen" required="N"/>
+      <field name="EncodedListExecInst" required="N"/>
+      <field name="TotNoOrders" required="Y"/>
+      <group name="NoOrders" required="Y">
+        <field name="ClOrdID" required="Y"/>
+        <field name="ListSeqNo" required="Y"/>
+        <field name="SettlInstMode" required="N"/>
+        <field name="ClientID" required="N"/>
+        <field name="ExecBroker" required="N"/>
+        <field name="Account" required="N"/>
+        <group name="NoAllocs" required="N">
+          <field name="AllocAccount" required="N"/>
+          <field name="AllocShares" required="N"/>
+        </group>
+        <field name="SettlmntTyp" required="N"/>
+        <field name="FutSettDate" required="N"/>
+        <field name="HandlInst" required="N"/>
+        <field name="ExecInst" required="N"/>
+        <field name="MinQty" required="N"/>
+        <field name="MaxFloor" required="N"/>
+        <field name="ExDestination" required="N"/>
+        <group name="NoTradingSessions" required="N">
+          <field name="TradingSessionID" required="N"/>
+        </group>
+        <field name="ProcessCode" required="N"/>
+        <field name="Symbol" required="Y"/>
+        <field name="SymbolSfx" required="N"/>
+        <field name="SecurityID" required="N"/>
+        <field name="IDSource" required="N"/>
+        <field name="SecurityType" required="N"/>
+        <field name="MaturityMonthYear" required="N"/>
+        <field name="MaturityDay" required="N"/>
+        <field name="PutOrCall" required="N"/>
+        <field name="StrikePrice" required="N"/>
+        <field name="OptAttribute" required="N"/>
+        <field name="ContractMultiplier" required="N"/>
+        <field name="CouponRate" required="N"/>
+        <field name="SecurityExchange" required="N"/>
+        <field name="Issuer" required="N"/>
+        <field name="EncodedIssuerLen" required="N"/>
+        <field name="EncodedIssuer" required="N"/>
+        <field name="SecurityDesc" required="N"/>
+        <field name="EncodedSecurityDescLen" required="N"/>
+        <field name="EncodedSecurityDesc" required="N"/>
+        <field name="PrevClosePx" required="N"/>
+        <field name="Side" required="Y"/>
+        <field name="SideValueInd" required="N"/>
+        <field name="LocateReqd" required="N"/>
+        <field name="TransactTime" required="N"/>
+        <field name="OrderQty" required="N"/>
+        <field name="CashOrderQty" required="N"/>
+        <field name="OrdType" required="N"/>
+        <field name="Price" required="N"/>
+        <field name="StopPx" required="N"/>
+        <field name="Currency" required="N"/>
+        <field name="ComplianceID" required="N"/>
+        <field name="SolicitedFlag" required="N"/>
+        <field name="IOIid" required="N"/>
+        <field name="QuoteID" required="N"/>
+        <field name="TimeInForce" required="N"/>
+        <field name="EffectiveTime" required="N"/>
+        <field name="ExpireDate" required="N"/>
+        <field name="ExpireTime" required="N"/>
+        <field name="GTBookingInst" required="N"/>
+        <field name="Commission" required="N"/>
+        <field name="CommType" required="N"/>
+        <field name="Rule80A" required="N"/>
+        <field name="ForexReq" required="N"/>
+        <field name="SettlCurrency" required="N"/>
+        <field name="Text" required="N"/>
+        <field name="EncodedTextLen" required="N"/>
+        <field name="EncodedText" required="N"/>
+        <field name="FutSettDate2" required="N"/>
+        <field name="OrderQty2" required="N"/>
+        <field name="OpenClose" required="N"/>
+        <field name="CoveredOrUncovered" required="N"/>
+        <field name="CustomerOrFirm" required="N"/>
+        <field name="MaxShow" required="N"/>
+        <field name="PegDifference" required="N"/>
+        <field name="DiscretionInst" required="N"/>
+        <field name="DiscretionOffset" required="N"/>
+        <field name="ClearingFirm" required="N"/>
+        <field name="ClearingAccount" required="N"/>
+      </group>
+    </message>
+    <message name="ListStrikePrice" msgtype="m" msgcat="app">
+      <field name="ListID" required="Y" />
+      <field name="TotNoStrikes" required="Y" />
+      <group name="NoStrikes" required="Y">
+        <field name="Symbol" required="Y" />
+        <field name="SymbolSfx" required="N" />
+        <field name="SecurityID" required="N" />
+        <field name="IDSource" required="N" />
+        <field name="SecurityType" required="N" />
+        <field name="MaturityMonthYear" required="N" />
+        <field name="MaturityDay" required="N" />
+        <field name="PutOrCall" required="N" />
+        <field name="StrikePrice" required="N" />
+        <field name="OptAttribute" required="N" />
+        <field name="ContractMultiplier" required="N" />
+        <field name="CouponRate" required="N" />
+        <field name="SecurityExchange" required="N" />
+        <field name="Issuer" required="N" />
+        <field name="EncodedIssuerLen" required="N" />
+        <field name="EncodedIssuer" required="N" />
+        <field name="SecurityDesc" required="N" />
+        <field name="EncodedSecurityDescLen" required="N" />
+        <field name="EncodedSecurityDesc" required="N" />
+        <field name="PrevClosePx" required="N" />
+        <field name="ClOrdID" required="N" />
+        <field name="Side" required="N" />
+        <field name="Price" required="Y" />
+        <field name="Currency" required="N" />
+        <field name="Text" required="N" />
+        <field name="EncodedTextLen" required="N" />
+        <field name="EncodedText" required="N" />
+      </group>
+    </message>
+    <message name="ListStatus" msgtype="N" msgcat="app">
+      <field name="ListID" required="Y"/>
+      <field name="ListStatusType" required="Y"/>
+      <field name="NoRpts" required="Y"/>
+      <field name="ListOrderStatus" required="Y"/>
+      <field name="RptSeq" required="Y"/>
+      <field name="ListStatusText" required="N"/>
+      <field name="EncodedListStatusTextLen" required="N"/>
+      <field name="EncodedListStatusText" required="N"/>
+      <field name="TransactTime" required="N"/>
+      <field name="TotNoOrders" required="Y"/>
+      <group name="NoOrders" required="Y">
+        <field name="ClOrdID" required="Y"/>
+        <field name="CumQty" required="Y"/>
+        <field name="OrdStatus" required="Y"/>
+        <field name="LeavesQty" required="Y"/>
+        <field name="CxlQty" required="Y"/>
+        <field name="AvgPx" required="Y"/>
+        <field name="OrdRejReason" required="N"/>
+        <field name="Text" required="N"/>
+        <field name="EncodedTextLen" required="N"/>
+        <field name="EncodedText" required="N"/>
+      </group>
+    </message>
+    <message name="ListExecute" msgtype="L" msgcat="app">
+      <field name="ListID" required="Y"/>
+      <field name="ClientBidID" required="N"/>
+      <field name="BidID" required="N"/>
+      <field name="TransactTime" required="Y"/>
+      <field name="Text" required="N"/>
+      <field name="EncodedTextLen" required="N"/>
+      <field name="EncodedText" required="N"/>
+    </message>
+    <message name="ListCancelRequest" msgtype="K" msgcat="app">
+      <field name="ListID" required="Y"/>
+      <field name="TransactTime" required="Y"/>
+      <field name="Text" required="N"/>
+      <field name="EncodedTextLen" required="N"/>
+      <field name="EncodedText" required="N"/>
+    </message>
+    <message name="ListStatusRequest" msgtype="M" msgcat="app">
+      <field name="ListID" required="Y"/>
+      <field name="Text" required="N"/>
+      <field name="EncodedTextLen" required="N"/>
+      <field name="EncodedText" required="N"/>
+    </message>
+    <message name="BusinessMessageReject" msgtype="j" msgcat="app">
+      <field name="RefSeqNum" required="N"/>
+      <field name="RefMsgType" required="Y"/>
+      <field name="BusinessRejectRefID" required="N"/>
+      <field name="BusinessRejectReason" required="Y"/>
+      <field name="Text" required="N"/>
+      <field name="EncodedTextLen" required="N"/>
+      <field name="EncodedText" required="N"/>
+    </message>
+  </messages>
+  <fields>
+    <field number="1" name="Account" type="STRING"/>
+    <field number="2" name="AdvId" type="STRING"/>
+    <field number="3" name="AdvRefID" type="STRING"/>
+    <field number="4" name="AdvSide" type="CHAR">
+      <value enum="B" description="BUY"/>
+      <value enum="S" description="SELL"/>
+      <value enum="X" description="CROSS"/>
+      <value enum="T" description="TRADE"/>
+    </field>
+    <field number="5" name="AdvTransType" type="STRING">
+      <value enum="N" description="NEW"/>
+      <value enum="C" description="CANCEL"/>
+      <value enum="R" description="REPLACE"/>
+    </field>
+    <field number="6" name="AvgPx" type="PRICE"/>
+    <field number="7" name="BeginSeqNo" type="INT"/>
+    <field number="8" name="BeginString" type="STRING"/>
+    <field number="9" name="BodyLength" type="INT"/>
+    <field number="10" name="CheckSum" type="STRING"/>
+    <field number="11" name="ClOrdID" type="STRING"/>
+    <field number="12" name="Commission" type="AMT"/>
+    <field number="13" name="CommType" type="CHAR">
+      <value enum="1" description="PER_SHARE"/>
+      <value enum="2" description="PERCENTAGE"/>
+      <value enum="3" description="ABSOLUTE"/>
+    </field>
+    <field number="14" name="CumQty" type="QTY"/>
+    <field number="15" name="Currency" type="CURRENCY"/>
+    <field number="16" name="EndSeqNo" type="INT"/>
+    <field number="17" name="ExecID" type="STRING"/>
+    <field number="18" name="ExecInst" type="MULTIPLEVALUESTRING">
+      <value enum="1" description="NOT_HELD"/>
+      <value enum="2" description="WORK"/>
+      <value enum="3" description="GO_ALONG"/>
+      <value enum="4" description="OVER_THE_DAY"/>
+      <value enum="5" description="HELD"/>
+      <value enum="6" description="PARTICIPATE_DONT_INITIATE"/>
+      <value enum="7" description="STRICT_SCALE"/>
+      <value enum="8" description="TRY_TO_SCALE"/>
+      <value enum="9" description="STAY_ON_BIDSIDE"/>
+      <value enum="0" description="STAY_ON_OFFERSIDE"/>
+      <value enum="A" description="NO_CROSS"/>
+      <value enum="B" description="OK_TO_CROSS"/>
+      <value enum="C" description="CALL_FIRST"/>
+      <value enum="D" description="PERCENT_OF_VOLUME"/>
+      <value enum="E" description="DO_NOT_INCREASE_DNI"/>
+      <value enum="F" description="DO_NOT_REDUCE_DNR"/>
+      <value enum="G" description="ALL_OR_NONE_AON"/>
+      <value enum="I" description="INSTITUTIONS_ONLY"/>
+      <value enum="L" description="LAST_PEG"/>
+      <value enum="M" description="MIDPRICE_PEG"/>
+      <value enum="N" description="NONNEGOTIABLE"/>
+      <value enum="O" description="OPENING_PEG"/>
+      <value enum="P" description="MARKET_PEG"/>
+      <value enum="R" description="PRIMARY_PEG"/>
+      <value enum="S" description="SUSPEND"/>
+      <value enum="T" description="FIXED_PEG"/>
+      <value enum="U" description="CUSTOMER_DISPLAY_INSTRUCTION"/>
+      <value enum="V" description="NETTING"/>
+      <value enum="W" description="PEG_TO_VWAP"/>
+    </field>
+    <field number="19" name="ExecRefID" type="STRING"/>
+    <field number="20" name="ExecTransType" type="CHAR">
+      <value enum="0" description="NEW"/>
+      <value enum="1" description="CANCEL"/>
+      <value enum="2" description="CORRECT"/>
+      <value enum="3" description="STATUS"/>
+    </field>
+    <field number="21" name="HandlInst" type="CHAR">
+      <value enum="1" description="AUTOMATED_EXECUTION_ORDER_PRIVATE_NO_BROKER_INTERVENTION"/>
+      <value enum="2" description="AUTOMATED_EXECUTION_ORDER_PUBLIC_BROKER_INTERVENTION_OK"/>
+      <value enum="3" description="MANUAL_ORDER_BEST_EXECUTION"/>
+    </field>
+    <field number="22" name="IDSource" type="STRING">
+      <value enum="1" description="CUSIP"/>
+      <value enum="2" description="SEDOL"/>
+      <value enum="3" description="QUIK"/>
+      <value enum="4" description="ISIN_NUMBER"/>
+      <value enum="5" description="RIC_CODE"/>
+      <value enum="6" description="ISO_CURRENCY_CODE"/>
+      <value enum="7" description="ISO_COUNTRY_CODE"/>
+      <value enum="8" description="EXCHANGE_SYMBOL"/>
+      <value enum="9" description="CONSOLIDATED_TAPE_ASSOCIATION"/>
+    </field>
+    <field number="23" name="IOIid" type="STRING"/>
+    <field number="24" name="IOIOthSvc" type="CHAR"/>
+    <field number="25" name="IOIQltyInd" type="CHAR">
+      <value enum="L" description="LOW"/>
+      <value enum="M" description="MEDIUM"/>
+      <value enum="H" description="HIGH"/>
+    </field>
+    <field number="26" name="IOIRefID" type="STRING"/>
+    <field number="27" name="IOIShares" type="STRING"/>
+    <field number="28" name="IOITransType" type="CHAR">
+      <value enum="N" description="NEW"/>
+      <value enum="C" description="CANCEL"/>
+      <value enum="R" description="REPLACE"/>
+    </field>
+    <field number="29" name="LastCapacity" type="CHAR">
+      <value enum="1" description="AGENT"/>
+      <value enum="2" description="CROSS_AS_AGENT"/>
+      <value enum="3" description="CROSS_AS_PRINCIPAL"/>
+      <value enum="4" description="PRINCIPAL"/>
+    </field>
+    <field number="30" name="LastMkt" type="EXCHANGE"/>
+    <field number="31" name="LastPx" type="PRICE"/>
+    <field number="32" name="LastShares" type="QTY"/>
+    <field number="33" name="LinesOfText" type="INT"/>
+    <field number="34" name="MsgSeqNum" type="INT"/>
+    <field number="35" name="MsgType" type="STRING"/>
+    <field number="36" name="NewSeqNo" type="INT"/>
+    <field number="37" name="OrderID" type="STRING"/>
+    <field number="38" name="OrderQty" type="QTY"/>
+    <field number="39" name="OrdStatus" type="CHAR">
+      <value enum="0" description="NEW"/>
+      <value enum="1" description="PARTIALLY_FILLED"/>
+      <value enum="2" description="FILLED"/>
+      <value enum="3" description="DONE_FOR_DAY"/>
+      <value enum="4" description="CANCELED"/>
+      <value enum="5" description="REPLACED"/>
+      <value enum="6" description="PENDING_CANCEL"/>
+      <value enum="7" description="STOPPED"/>
+      <value enum="8" description="REJECTED"/>
+      <value enum="9" description="SUSPENDED"/>
+      <value enum="A" description="PENDING_NEW"/>
+      <value enum="B" description="CALCULATED"/>
+      <value enum="C" description="EXPIRED"/>
+      <value enum="D" description="ACCEPTED_FOR_BIDDING"/>
+      <value enum="E" description="PENDING_REPLACE"/>
+    </field>
+    <field number="40" name="OrdType" type="CHAR">
+      <value enum="1" description="MARKET"/>
+      <value enum="2" description="LIMIT"/>
+      <value enum="3" description="STOP"/>
+      <value enum="4" description="STOP_LIMIT"/>
+      <value enum="5" description="MARKET_ON_CLOSE"/>
+      <value enum="6" description="WITH_OR_WITHOUT"/>
+      <value enum="7" description="LIMIT_OR_BETTER"/>
+      <value enum="8" description="LIMIT_WITH_OR_WITHOUT"/>
+      <value enum="9" description="ON_BASIS"/>
+      <value enum="A" description="ON_CLOSE"/>
+      <value enum="B" description="LIMIT_ON_CLOSE"/>
+      <value enum="C" description="FOREX_MARKET"/>
+      <value enum="D" description="PREVIOUSLY_QUOTED"/>
+      <value enum="E" description="PREVIOUSLY_INDICATED"/>
+      <value enum="F" description="FOREX_LIMIT"/>
+      <value enum="G" description="FOREX_SWAP"/>
+      <value enum="H" description="FOREX_PREVIOUSLY_QUOTED"/>
+      <value enum="I" description="FUNARI"/>
+      <value enum="P" description="PEGGED"/>
+    </field>
+    <field number="41" name="OrigClOrdID" type="STRING"/>
+    <field number="42" name="OrigTime" type="UTCTIMESTAMP"/>
+    <field number="43" name="PossDupFlag" type="BOOLEAN">
+      <value enum="Y" description="POSSIBLE_DUPLICATE"/>
+      <value enum="N" description="ORIGINAL_TRANSMISSION"/>
+    </field>
+    <field number="44" name="Price" type="PRICE"/>
+    <field number="45" name="RefSeqNum" type="INT"/>
+    <field number="46" name="RelatdSym" type="STRING"/>
+    <field number="47" name="Rule80A" type="CHAR">
+      <value enum="A" description="AGENCY_SINGLE_ORDER"/>
+      <value enum="B" description="SHORT_EXEMPT_TRANSACTION_B"/>
+      <value enum="C" description="PROGRAM_ORDER_NONINDEX_ARB_FOR_MEMBER_FIRMORG"/>
+      <value enum="D" description="PROGRAM_ORDER_INDEX_ARB_FOR_MEMBER_FIRMORG"/>
+      <value enum="E" description="REGISTERED_EQUITY_MARKET_MAKER_TRADES"/>
+      <value enum="F" description="SHORT_EXEMPT_TRANSACTION_F"/>
+      <value enum="H" description="SHORT_EXEMPT_TRANSACTION_H"/>
+      <value enum="J" description="PROGRAM_ORDER_INDEX_ARB_FOR_INDIVIDUAL_CUSTOMER"/>
+      <value enum="K" description="PROGRAM_ORDER_NONINDEX_ARB_FOR_INDIVIDUAL_CUSTOMER"/>
+      <value enum="L" description="SHORT_EXEMPT_AFFILIATED"/>
+      <value enum="M" description="PROGRAM_ORDER_INDEX_ARB_FOR_OTHER_MEMBER"/>
+      <value enum="N" description="PROGRAM_ORDER_NONINDEX_ARB_FOR_OTHER_MEMBER"/>
+      <value enum="O" description="COMPETING_DEALER_TRADES_O"/>
+      <value enum="P" description="PRINCIPAL"/>
+      <value enum="R" description="COMPETING_DEALER_TRADES_R"/>
+      <value enum="S" description="SPECIALIST_TRADES"/>
+      <value enum="T" description="COMPETING_DEALER_TRADES_T"/>
+      <value enum="U" description="PROGRAM_ORDER_INDEX_ARB_FOR_OTHER_AGENCY"/>
+      <value enum="W" description="ALL_OTHER_ORDERS_AS_AGENT_FOR_OTHER_MEMBER"/>
+      <value enum="X" description="SHORT_EXEMPT_NOT_AFFILIATED"/>
+      <value enum="Y" description="PROGRAM_ORDER_NONINDEX_ARB_FOR_OTHER_AGENCY"/>
+      <value enum="Z" description="SHORT_EXEMPT_NONMEMBER"/>
+    </field>
+    <field number="48" name="SecurityID" type="STRING"/>
+    <field number="49" name="SenderCompID" type="STRING"/>
+    <field number="50" name="SenderSubID" type="STRING"/>
+    <field number="52" name="SendingTime" type="UTCTIMESTAMP"/>
+    <field number="53" name="Shares" type="QTY"/>
+    <field number="54" name="Side" type="CHAR">
+      <value enum="1" description="BUY"/>
+      <value enum="2" description="SELL"/>
+      <value enum="3" description="BUY_MINUS"/>
+      <value enum="4" description="SELL_PLUS"/>
+      <value enum="5" description="SELL_SHORT"/>
+      <value enum="6" description="SELL_SHORT_EXEMPT"/>
+      <value enum="7" description="D"/>
+      <value enum="8" description="CROSS"/>
+      <value enum="9" description="CROSS_SHORT"/>
+    </field>
+    <field number="55" name="Symbol" type="STRING"/>
+    <field number="56" name="TargetCompID" type="STRING"/>
+    <field number="57" name="TargetSubID" type="STRING"/>
+    <field number="58" name="Text" type="STRING"/>
+    <field number="59" name="TimeInForce" type="CHAR">
+      <value enum="0" description="DAY"/>
+      <value enum="1" description="GOOD_TILL_CANCEL"/>
+      <value enum="2" description="AT_THE_OPENING"/>
+      <value enum="3" description="IMMEDIATE_OR_CANCEL"/>
+      <value enum="4" description="FILL_OR_KILL"/>
+      <value enum="5" description="GOOD_TILL_CROSSING"/>
+      <value enum="6" description="GOOD_TILL_DATE"/>
+    </field>
+    <field number="60" name="TransactTime" type="UTCTIMESTAMP"/>
+    <field number="61" name="Urgency" type="CHAR">
+      <value enum="0" description="NORMAL"/>
+      <value enum="1" description="FLASH"/>
+      <value enum="2" description="BACKGROUND"/>
+    </field>
+    <field number="62" name="ValidUntilTime" type="UTCTIMESTAMP"/>
+    <field number="63" name="SettlmntTyp" type="CHAR">
+      <value enum="0" description="REGULAR"/>
+      <value enum="1" description="CASH"/>
+      <value enum="2" description="NEXT_DAY"/>
+      <value enum="3" description="TPLUS2"/>
+      <value enum="4" description="TPLUS3"/>
+      <value enum="5" description="TPLUS4"/>
+      <value enum="6" description="FUTURE"/>
+      <value enum="7" description="WHEN_ISSUED"/>
+      <value enum="8" description="SELLERS_OPTION"/>
+      <value enum="9" description="TPLUS5"/>
+    </field>
+    <field number="64" name="FutSettDate" type="LOCALMKTDATE"/>
+    <field number="65" name="SymbolSfx" type="STRING"/>
+    <field number="66" name="ListID" type="STRING"/>
+    <field number="67" name="ListSeqNo" type="INT"/>
+    <field number="68" name="TotNoOrders" type="INT"/>
+    <field number="69" name="ListExecInst" type="STRING"/>
+    <field number="70" name="AllocID" type="STRING"/>
+    <field number="71" name="AllocTransType" type="CHAR">
+      <value enum="0" description="NEW"/>
+      <value enum="1" description="REPLACE"/>
+      <value enum="2" description="CANCEL"/>
+      <value enum="3" description="PRELIMINARY"/>
+      <value enum="4" description="CALCULATED"/>
+      <value enum="5" description="CALCULATED_WITHOUT_PRELIMINARY"/>
+    </field>
+    <field number="72" name="RefAllocID" type="STRING"/>
+    <field number="73" name="NoOrders" type="INT"/>
+    <field number="74" name="AvgPrxPrecision" type="INT"/>
+    <field number="75" name="TradeDate" type="LOCALMKTDATE"/>
+    <field number="76" name="ExecBroker" type="STRING"/>
+    <field number="77" name="OpenClose" type="CHAR">
+      <value enum="O" description="OPEN"/>
+      <value enum="C" description="CLOSE"/>
+    </field>
+    <field number="78" name="NoAllocs" type="INT"/>
+    <field number="79" name="AllocAccount" type="STRING"/>
+    <field number="80" name="AllocShares" type="QTY"/>
+    <field number="81" name="ProcessCode" type="CHAR">
+      <value enum="0" description="REGULAR"/>
+      <value enum="1" description="SOFT_DOLLAR"/>
+      <value enum="2" description="STEPIN"/>
+      <value enum="3" description="STEPOUT"/>
+      <value enum="4" description="SOFTDOLLAR_STEPIN"/>
+      <value enum="5" description="SOFTDOLLAR_STEPOUT"/>
+      <value enum="6" description="PLAN_SPONSOR"/>
+    </field>
+    <field number="82" name="NoRpts" type="INT"/>
+    <field number="83" name="RptSeq" type="INT"/>
+    <field number="84" name="CxlQty" type="QTY"/>
+    <field number="85" name="NoDlvyInst" type="INT"/>
+    <field number="86" name="DlvyInst" type="STRING"/>
+    <field number="87" name="AllocStatus" type="INT">
+      <value enum="0" description="ACCEPTED"/>
+      <value enum="1" description="REJECTED"/>
+      <value enum="2" description="PARTIAL_ACCEPT"/>
+      <value enum="3" description="RECEIVED"/>
+    </field>
+    <field number="88" name="AllocRejCode" type="INT">
+      <value enum="0" description="UNKNOWN_ACCOUNT"/>
+      <value enum="1" description="INCORRECT_QUANTITY"/>
+      <value enum="2" description="INCORRECT_AVERAGE_PRICE"/>
+      <value enum="3" description="UNKNOWN_EXECUTING_BROKER_MNEMONIC"/>
+      <value enum="4" description="COMMISSION_DIFFERENCE"/>
+      <value enum="5" description="UNKNOWN_ORDERID"/>
+      <value enum="6" description="UNKNOWN_LISTID"/>
+      <value enum="7" description="OTHER"/>
+    </field>
+    <field number="89" name="Signature" type="DATA"/>
+    <field number="90" name="SecureDataLen" type="INT"/>
+    <field number="91" name="SecureData" type="DATA"/>
+    <field number="92" name="BrokerOfCredit" type="STRING"/>
+    <field number="93" name="SignatureLength" type="INT"/>
+    <field number="94" name="EmailType" type="CHAR">
+      <value enum="0" description="NEW"/>
+      <value enum="1" description="REPLY"/>
+      <value enum="2" description="ADMIN_REPLY"/>
+    </field>
+    <field number="95" name="RawDataLength" type="INT"/>
+    <field number="96" name="RawData" type="DATA"/>
+    <field number="97" name="PossResend" type="BOOLEAN"/>
+    <field number="98" name="EncryptMethod" type="INT">
+      <value enum="0" description="NONE_OTHER"/>
+      <value enum="1" description="PKCS"/>
+      <value enum="2" description="DES"/>
+      <value enum="3" description="PKCSDES"/>
+      <value enum="4" description="PGPDES"/>
+      <value enum="5" description="PGPDESMD5"/>
+      <value enum="6" description="PEMDESMD5"/>
+    </field>
+    <field number="99" name="StopPx" type="PRICE"/>
+    <field number="100" name="ExDestination" type="EXCHANGE"/>
+    <field number="102" name="CxlRejReason" type="INT">
+      <value enum="0" description="TOO_LATE_TO_CANCEL"/>
+      <value enum="1" description="UNKNOWN_ORDER"/>
+      <value enum="2" description="BROKER_OPTION"/>
+      <value enum="3" description="ALREADY_PENDING"/>
+    </field>
+    <field number="103" name="OrdRejReason" type="INT">
+      <value enum="0" description="BROKER_OPTION"/>
+      <value enum="1" description="UNKNOWN_SYMBOL"/>
+      <value enum="2" description="EXCHANGE_CLOSED"/>
+      <value enum="3" description="ORDER_EXCEEDS_LIMIT"/>
+      <value enum="4" description="TOO_LATE_TO_ENTER"/>
+      <value enum="5" description="UNKNOWN_ORDER"/>
+      <value enum="6" description="DUPLICATE_ORDER"/>
+      <value enum="7" description="DUPLICATE_VERBALYES"/>
+      <value enum="8" description="STALE_ORDER"/>
+    </field>
+    <field number="104" name="IOIQualifier" type="CHAR">
+      <value enum="A" description="ALL_OR_NONE"/>
+      <value enum="C" description="AT_THE_CLOSE"/>
+      <value enum="I" description="IN_TOUCH_WITH"/>
+      <value enum="L" description="LIMIT"/>
+      <value enum="M" description="MORE_BEHIND"/>
+      <value enum="O" description="AT_THE_OPEN"/>
+      <value enum="P" description="TAKING_A_POSITION"/>
+      <value enum="Q" description="AT_THE_MARKET"/>
+      <value enum="R" description="READY_TO_TRADE"/>
+      <value enum="S" description="PORTFOLIO_SHOWN"/>
+      <value enum="T" description="THROUGH_THE_DAY"/>
+      <value enum="V" description="VERSUS"/>
+      <value enum="W" description="INDICATION_WORKING_AWAY"/>
+      <value enum="X" description="CROSSING_OPPORTUNITY"/>
+      <value enum="Y" description="AT_THE_MIDPOINT"/>
+      <value enum="Z" description="PREOPEN"/>
+    </field>
+    <field number="105" name="WaveNo" type="STRING"/>
+    <field number="106" name="Issuer" type="STRING"/>
+    <field number="107" name="SecurityDesc" type="STRING"/>
+    <field number="108" name="HeartBtInt" type="INT"/>
+    <field number="109" name="ClientID" type="STRING"/>
+    <field number="110" name="MinQty" type="QTY"/>
+    <field number="111" name="MaxFloor" type="QTY"/>
+    <field number="112" name="TestReqID" type="STRING"/>
+    <field number="113" name="ReportToExch" type="BOOLEAN">
+      <value enum="Y" description="YES"/>
+      <value enum="N" description="NO"/>
+    </field>
+    <field number="114" name="LocateReqd" type="BOOLEAN">
+      <value enum="Y" description="YES"/>
+      <value enum="N" description="NO"/>
+    </field>
+    <field number="115" name="OnBehalfOfCompID" type="STRING"/>
+    <field number="116" name="OnBehalfOfSubID" type="STRING"/>
+    <field number="117" name="QuoteID" type="STRING"/>
+    <field number="118" name="NetMoney" type="AMT"/>
+    <field number="119" name="SettlCurrAmt" type="AMT"/>
+    <field number="120" name="SettlCurrency" type="CURRENCY"/>
+    <field number="121" name="ForexReq" type="BOOLEAN">
+      <value enum="Y" description="YES"/>
+      <value enum="N" description="NO"/>
+    </field>
+    <field number="122" name="OrigSendingTime" type="UTCTIMESTAMP"/>
+    <field number="123" name="GapFillFlag" type="BOOLEAN">
+      <value enum="Y" description="GAP_FILL_MESSAGE_MSGSEQNUM_FIELD_VALID"/>
+      <value enum="N" description="SEQUENCE_RESET_IGNORE_MSGSEQNUM"/>
+    </field>
+    <field number="124" name="NoExecs" type="INT"/>
+    <field number="125" name="CxlType" type="CHAR"/>
+    <field number="126" name="ExpireTime" type="UTCTIMESTAMP"/>
+    <field number="127" name="DKReason" type="CHAR">
+      <value enum="A" description="UNKNOWN_SYMBOL"/>
+      <value enum="B" description="WRONG_SIDE"/>
+      <value enum="C" description="QUANTITY_EXCEEDS_ORDER"/>
+      <value enum="D" description="NO_MATCHING_ORDER"/>
+      <value enum="E" description="PRICE_EXCEEDS_LIMIT"/>
+      <value enum="Z" description="OTHER" />
+    </field>
+    <field number="128" name="DeliverToCompID" type="STRING"/>
+    <field number="129" name="DeliverToSubID" type="STRING"/>
+    <field number="130" name="IOINaturalFlag" type="BOOLEAN">
+      <value enum="Y" description="NATURAL"/>
+      <value enum="N" description="NOT_NATURAL"/>
+    </field>
+    <field number="131" name="QuoteReqID" type="STRING"/>
+    <field number="132" name="BidPx" type="PRICE"/>
+    <field number="133" name="OfferPx" type="PRICE"/>
+    <field number="134" name="BidSize" type="QTY"/>
+    <field number="135" name="OfferSize" type="QTY"/>
+    <field number="136" name="NoMiscFees" type="INT"/>
+    <field number="137" name="MiscFeeAmt" type="AMT"/>
+    <field number="138" name="MiscFeeCurr" type="CURRENCY"/>
+    <field number="139" name="MiscFeeType" type="CHAR">
+      <value enum="1" description="REGULATORY"/>
+      <value enum="2" description="TAX"/>
+      <value enum="3" description="LOCAL_COMMISSION"/>
+      <value enum="4" description="EXCHANGE_FEES"/>
+      <value enum="5" description="STAMP"/>
+      <value enum="6" description="LEVY"/>
+      <value enum="7" description="OTHER"/>
+      <value enum="8" description="MARKUP"/>
+      <value enum="9" description="CONSUMPTION_TAX"/>
+    </field>
+    <field number="140" name="PrevClosePx" type="PRICE"/>
+    <field number="141" name="ResetSeqNumFlag" type="BOOLEAN">
+      <value enum="Y" description="YES_RESET_SEQUENCE_NUMBERS"/>
+      <value enum="N" description="NO"/>
+    </field>
+    <field number="142" name="SenderLocationID" type="STRING"/>
+    <field number="143" name="TargetLocationID" type="STRING"/>
+    <field number="144" name="OnBehalfOfLocationID" type="STRING"/>
+    <field number="145" name="DeliverToLocationID" type="STRING"/>
+    <field number="146" name="NoRelatedSym" type="INT"/>
+    <field number="147" name="Subject" type="STRING"/>
+    <field number="148" name="Headline" type="STRING"/>
+    <field number="149" name="URLLink" type="STRING"/>
+    <field number="150" name="ExecType" type="CHAR">
+      <value enum="0" description="NEW"/>
+      <value enum="1" description="PARTIAL_FILL"/>
+      <value enum="2" description="FILL"/>
+      <value enum="3" description="DONE_FOR_DAY"/>
+      <value enum="4" description="CANCELED"/>
+      <value enum="5" description="REPLACE"/>
+      <value enum="6" description="PENDING_CANCEL"/>
+      <value enum="7" description="STOPPED"/>
+      <value enum="8" description="REJECTED"/>
+      <value enum="9" description="SUSPENDED"/>
+      <value enum="A" description="PENDING_NEW"/>
+      <value enum="B" description="CALCULATED"/>
+      <value enum="C" description="EXPIRED"/>
+      <value enum="D" description="RESTATED"/>
+      <value enum="E" description="PENDING_REPLACE"/>
+    </field>
+    <field number="151" name="LeavesQty" type="QTY"/>
+    <field number="152" name="CashOrderQty" type="QTY"/>
+    <field number="153" name="AllocAvgPx" type="PRICE"/>
+    <field number="154" name="AllocNetMoney" type="AMT"/>
+    <field number="155" name="SettlCurrFxRate" type="FLOAT"/>
+    <field number="156" name="SettlCurrFxRateCalc" type="CHAR">
+      <value enum="M" description="MULTIPLY"/>
+      <value enum="D" description="DIVIDE"/>
+    </field>
+    <field number="157" name="NumDaysInterest" type="INT"/>
+    <field number="158" name="AccruedInterestRate" type="FLOAT"/>
+    <field number="159" name="AccruedInterestAmt" type="AMT"/>
+    <field number="160" name="SettlInstMode" type="CHAR">
+      <value enum="0" description="DEFAULT"/>
+      <value enum="1" description="STANDING_INSTRUCTIONS_PROVIDED"/>
+      <value enum="2" description="SPECIFIC_ALLOCATION_ACCOUNT_OVERRIDING"/>
+      <value enum="3" description="SPECIFIC_ALLOCATION_ACCOUNT_STANDING"/>
+    </field>
+    <field number="161" name="AllocText" type="STRING"/>
+    <field number="162" name="SettlInstID" type="STRING"/>
+    <field number="163" name="SettlInstTransType" type="CHAR">
+      <value enum="N" description="NEW"/>
+      <value enum="C" description="CANCEL"/>
+      <value enum="R" description="REPLACE"/>
+    </field>
+    <field number="164" name="EmailThreadID" type="STRING"/>
+    <field number="165" name="SettlInstSource" type="CHAR">
+      <value enum="1" description="BROKER"/>
+      <value enum="2" description="INSTITUTION"/>
+    </field>
+    <field number="166" name="SettlLocation" type="STRING">
+      <value enum="CED" description="CEDEL"/>
+      <value enum="DTC" description="DEPOSITORY_TRUST_COMPANY"/>
+      <value enum="EUR" description="EUROCLEAR"/>
+      <value enum="FED" description="FEDERAL_BOOK_ENTRY"/>
+      <value enum="PNY" description="PHYSICAL"/>
+      <value enum="PTC" description="PARTICIPANT_TRUST_COMPANY"/>
+      <value enum="ISO" description="LOCAL_MARKET_SETTLE_LOCATION"/>
+    </field>
+    <field number="167" name="SecurityType" type="STRING">
+      <value enum="BA" description="BANKERS_ACCEPTANCE"/>
+      <value enum="CB" description="CONVERTIBLE_BOND"/>
+      <value enum="CD" description="CERTIFICATE_OF_DEPOSIT"/>
+      <value enum="CMO" description="COLLATERALIZE_MORTGAGE_OBLIGATION"/>
+      <value enum="CORP" description="CORPORATE_BOND"/>
+      <value enum="CP" description="COMMERCIAL_PAPER"/>
+      <value enum="CPP" description="CORPORATE_PRIVATE_PLACEMENT"/>
+      <value enum="CS" description="COMMON_STOCK"/>
+      <value enum="FHA" description="FEDERAL_HOUSING_AUTHORITY"/>
+      <value enum="FHL" description="FEDERAL_HOME_LOAN"/>
+      <value enum="FN" description="FEDERAL_NATIONAL_MORTGAGE_ASSOCIATION"/>
+      <value enum="FOR" description="FOREIGN_EXCHANGE_CONTRACT"/>
+      <value enum="FUT" description="FUTURE"/>
+      <value enum="GN" description="GOVERNMENT_NATIONAL_MORTGAGE_ASSOCIATION"/>
+      <value enum="GOVT" description="TREASURIES_PLUS_AGENCY_DEBENTURE"/>
+      <value enum="MF" description="MUTUAL_FUND"/>
+      <value enum="MIO" description="MORTGAGE_INTEREST_ONLY"/>
+      <value enum="MPO" description="MORTGAGE_PRINCIPAL_ONLY"/>
+      <value enum="MPP" description="MORTGAGE_PRIVATE_PLACEMENT"/>
+      <value enum="MPT" description="MISCELLANEOUS_PASSTHRU"/>
+      <value enum="MUNI" description="MUNICIPAL_BOND"/>
+      <value enum="NONE" description="NO_ISITC_SECURITY_TYPE"/>
+      <value enum="OPT" description="OPTION"/>
+      <value enum="PS" description="PREFERRED_STOCK"/>
+      <value enum="RP" description="REPURCHASE_AGREEMENT"/>
+      <value enum="RVRP" description="REVERSE_REPURCHASE_AGREEMENT"/>
+      <value enum="SL" description="STUDENT_LOAN_MARKETING_ASSOCIATION"/>
+      <value enum="TD" description="TIME_DEPOSIT"/>
+      <value enum="USTB" description="US_TREASURY_BILL"/>
+      <value enum="WAR" description="WARRANT"/>
+      <value enum="ZOO" description="CATS_TIGERS"/>
+    </field>
+    <field number="168" name="EffectiveTime" type="UTCTIMESTAMP"/>
+    <field number="169" name="StandInstDbType" type="INT">
+      <value enum="0" description="OTHER"/>
+      <value enum="1" description="DTC_SID"/>
+      <value enum="2" description="THOMSON_ALERT"/>
+      <value enum="3" description="A_GLOBAL_CUSTODIAN"/>
+    </field>
+    <field number="170" name="StandInstDbName" type="STRING"/>
+    <field number="171" name="StandInstDbID" type="STRING"/>
+    <field number="172" name="SettlDeliveryType" type="INT"/>
+    <field number="173" name="SettlDepositoryCode" type="STRING"/>
+    <field number="174" name="SettlBrkrCode" type="STRING"/>
+    <field number="175" name="SettlInstCode" type="STRING"/>
+    <field number="176" name="SecuritySettlAgentName" type="STRING"/>
+    <field number="177" name="SecuritySettlAgentCode" type="STRING"/>
+    <field number="178" name="SecuritySettlAgentAcctNum" type="STRING"/>
+    <field number="179" name="SecuritySettlAgentAcctName" type="STRING"/>
+    <field number="180" name="SecuritySettlAgentContactName" type="STRING"/>
+    <field number="181" name="SecuritySettlAgentContactPhone" type="STRING"/>
+    <field number="182" name="CashSettlAgentName" type="STRING"/>
+    <field number="183" name="CashSettlAgentCode" type="STRING"/>
+    <field number="184" name="CashSettlAgentAcctNum" type="STRING"/>
+    <field number="185" name="CashSettlAgentAcctName" type="STRING"/>
+    <field number="186" name="CashSettlAgentContactName" type="STRING"/>
+    <field number="187" name="CashSettlAgentContactPhone" type="STRING"/>
+    <field number="188" name="BidSpotRate" type="PRICE"/>
+    <field number="189" name="BidForwardPoints" type="PRICEOFFSET"/>
+    <field number="190" name="OfferSpotRate" type="PRICE"/>
+    <field number="191" name="OfferForwardPoints" type="PRICEOFFSET"/>
+    <field number="192" name="OrderQty2" type="QTY"/>
+    <field number="193" name="FutSettDate2" type="LOCALMKTDATE"/>
+    <field number="194" name="LastSpotRate" type="PRICE"/>
+    <field number="195" name="LastForwardPoints" type="PRICEOFFSET"/>
+    <field number="196" name="AllocLinkID" type="STRING"/>
+    <field number="197" name="AllocLinkType" type="INT">
+      <value enum="0" description="FX_NETTING"/>
+      <value enum="1" description="FX_SWAP"/>
+    </field>
+    <field number="198" name="SecondaryOrderID" type="STRING"/>
+    <field number="199" name="NoIOIQualifiers" type="INT"/>
+    <field number="200" name="MaturityMonthYear" type="MONTHYEAR"/>
+    <field number="201" name="PutOrCall" type="INT">
+      <value enum="0" description="PUT"/>
+      <value enum="1" description="CALL"/>
+    </field>
+    <field number="202" name="StrikePrice" type="PRICE"/>
+    <field number="203" name="CoveredOrUncovered" type="INT">
+      <value enum="0" description="COVERED"/>
+      <value enum="1" description="UNCOVERED"/>
+    </field>
+    <field number="204" name="CustomerOrFirm" type="INT">
+      <value enum="0" description="CUSTOMER"/>
+      <value enum="1" description="FIRM"/>
+    </field>
+    <field number="205" name="MaturityDay" type="DAYOFMONTH"/>
+    <field number="206" name="OptAttribute" type="CHAR"/>
+    <field number="207" name="SecurityExchange" type="EXCHANGE"/>
+    <field number="208" name="NotifyBrokerOfCredit" type="BOOLEAN">
+      <value enum="Y" description="DETAILS_SHOULD_BE_COMMUNICATED"/>
+      <value enum="N" description="DETAILS_SHOULD_NOT_BE_COMMUNICATED"/>
+    </field>
+    <field number="209" name="AllocHandlInst" type="INT">
+      <value enum="1" description="MATCH"/>
+      <value enum="2" description="FORWARD"/>
+      <value enum="3" description="FORWARD_AND_MATCH"/>
+    </field>
+    <field number="210" name="MaxShow" type="QTY"/>
+    <field number="211" name="PegDifference" type="PRICEOFFSET"/>
+    <field number="212" name="XmlDataLen" type="INT"/>
+    <field number="213" name="XmlData" type="DATA"/>
+    <field number="214" name="SettlInstRefID" type="STRING"/>
+    <field number="215" name="NoRoutingIDs" type="INT"/>
+    <field number="216" name="RoutingType" type="INT">
+      <value enum="1" description="TARGET_FIRM"/>
+      <value enum="2" description="TARGET_LIST"/>
+      <value enum="3" description="BLOCK_FIRM"/>
+      <value enum="4" description="BLOCK_LIST"/>
+    </field>
+    <field number="217" name="RoutingID" type="STRING"/>
+    <field number="218" name="SpreadToBenchmark" type="PRICEOFFSET"/>
+    <field number="219" name="Benchmark" type="CHAR">
+      <value enum="1" description="CURVE"/>
+      <value enum="2" description="FIVEYR"/>
+      <value enum="3" description="OLD5"/>
+      <value enum="4" description="TENYR"/>
+      <value enum="5" description="OLD10"/>
+      <value enum="6" description="THIRTYYR"/>
+      <value enum="7" description="OLD30"/>
+      <value enum="8" description="THREEMOLIBOR"/>
+      <value enum="9" description="SIXMOLIBOR"/>
+    </field>
+    <field number="223" name="CouponRate" type="FLOAT"/>
+    <field number="231" name="ContractMultiplier" type="FLOAT"/>
+    <field number="262" name="MDReqID" type="STRING"/>
+    <field number="263" name="SubscriptionRequestType" type="CHAR">
+      <value enum="0" description="SNAPSHOT"/>
+      <value enum="1" description="SNAPSHOT_PLUS_UPDATES"/>
+      <value enum="2" description="DISABLE_PREVIOUS"/>
+    </field>
+    <field number="264" name="MarketDepth" type="INT">
+<!--
+      Temporarily commented out until we can handle
+      N>1 scenario
+
+      <value enum="0" description="FULL_BOOK"/>
+      <value enum="1" description="TOP_OF_BOOK"/>
+-->
+    </field>
+    <field number="265" name="MDUpdateType" type="INT">
+      <value enum="0" description="FULL_REFRESH"/>
+      <value enum="1" description="INCREMENTAL_REFRESH"/>
+    </field>
+    <field number="266" name="AggregatedBook" type="BOOLEAN">
+      <value enum="Y" description="ONE_BOOK_ENTRY_PER_SIDE_PER_PRICE"/>
+      <value enum="N" description="MULTIPLE_ENTRIES_PER_SIDE_PER_PRICE_ALLOWED"/>
+    </field>
+    <field number="267" name="NoMDEntryTypes" type="INT"/>
+    <field number="268" name="NoMDEntries" type="INT"/>
+    <field number="269" name="MDEntryType" type="CHAR">
+      <value enum="0" description="BID"/>
+      <value enum="1" description="OFFER"/>
+      <value enum="2" description="TRADE"/>
+      <value enum="3" description="INDEX_VALUE"/>
+      <value enum="4" description="OPENING_PRICE"/>
+      <value enum="5" description="CLOSING_PRICE"/>
+      <value enum="6" description="SETTLEMENT_PRICE"/>
+      <value enum="7" description="TRADING_SESSION_HIGH_PRICE"/>
+      <value enum="8" description="TRADING_SESSION_LOW_PRICE"/>
+      <value enum="9" description="TRADING_SESSION_VWAP_PRICE"/>
+    </field>
+    <field number="270" name="MDEntryPx" type="PRICE"/>
+    <field number="271" name="MDEntrySize" type="QTY"/>
+    <field number="272" name="MDEntryDate" type="UTCDATE"/>
+    <field number="273" name="MDEntryTime" type="UTCTIMEONLY"/>
+    <field number="274" name="TickDirection" type="CHAR">
+      <value enum="0" description="PLUS_TICK"/>
+      <value enum="1" description="ZEROPLUS_TICK"/>
+      <value enum="2" description="MINUS_TICK"/>
+      <value enum="3" description="ZEROMINUS_TICK"/>
+    </field>
+    <field number="275" name="MDMkt" type="EXCHANGE"/>
+    <field number="276" name="QuoteCondition" type="MULTIPLEVALUESTRING">
+      <value enum="A" description="OPEN_ACTIVE"/>
+      <value enum="B" description="CLOSED_INACTIVE"/>
+      <value enum="C" description="EXCHANGE_BEST"/>
+      <value enum="D" description="CONSOLIDATED_BEST"/>
+      <value enum="E" description="LOCKED"/>
+      <value enum="F" description="CROSSED"/>
+      <value enum="G" description="DEPTH"/>
+      <value enum="H" description="FAST_TRADING"/>
+      <value enum="I" description="NONFIRM"/>
+    </field>
+    <field number="277" name="TradeCondition" type="MULTIPLEVALUESTRING">
+      <value enum="A" description="CASH"/>
+      <value enum="B" description="AVERAGE_PRICE_TRADE"/>
+      <value enum="C" description="CASH_TRADE"/>
+      <value enum="D" description="NEXT_DAY"/>
+      <value enum="E" description="OPENING_REOPENING_TRADE_DETAIL"/>
+      <value enum="F" description="INTRADAY_TRADE_DETAIL"/>
+      <value enum="G" description="RULE_127_TRADE"/>
+      <value enum="H" description="RULE_155_TRADE"/>
+      <value enum="I" description="SOLD_LAST"/>
+      <value enum="J" description="NEXT_DAY_TRADE"/>
+      <value enum="K" description="OPENED"/>
+      <value enum="L" description="SELLER"/>
+      <value enum="M" description="SOLD"/>
+      <value enum="N" description="STOPPED_STOCK"/>
+    </field>
+    <field number="278" name="MDEntryID" type="STRING"/>
+    <field number="279" name="MDUpdateAction" type="CHAR">
+      <value enum="0" description="NEW"/>
+      <value enum="1" description="CHANGE"/>
+      <value enum="2" description="DELETE"/>
+    </field>
+    <field number="280" name="MDEntryRefID" type="STRING"/>
+    <field number="281" name="MDReqRejReason" type="CHAR">
+      <value enum="0" description="UNKNOWN_SYMBOL"/>
+      <value enum="1" description="DUPLICATE_MDREQID"/>
+      <value enum="2" description="INSUFFICIENT_BANDWIDTH"/>
+      <value enum="3" description="INSUFFICIENT_PERMISSIONS"/>
+      <value enum="4" description="UNSUPPORTED_SUBSCRIPTIONREQUESTTYPE"/>
+      <value enum="5" description="UNSUPPORTED_MARKETDEPTH"/>
+      <value enum="6" description="UNSUPPORTED_MDUPDATETYPE"/>
+      <value enum="7" description="UNSUPPORTED_AGGREGATEDBOOK"/>
+      <value enum="8" description="UNSUPPORTED_MDENTRYTYPE"/>
+    </field>
+    <field number="282" name="MDEntryOriginator" type="STRING"/>
+    <field number="283" name="LocationID" type="STRING"/>
+    <field number="284" name="DeskID" type="STRING"/>
+    <field number="285" name="DeleteReason" type="CHAR">
+      <value enum="0" description="CANCELATION_TRADE_BUST"/>
+      <value enum="1" description="ERROR"/>
+    </field>
+    <field number="286" name="OpenCloseSettleFlag" type="CHAR">
+      <value enum="0" description="DAILY_OPEN_CLOSE__SETTLEMENT_PRICE"/>
+      <value enum="1" description="SESSION_OPEN_CLOSE__SETTLEMENT_PRICE"/>
+      <value enum="2" description="DELIVERY_SETTLEMENT_PRICE"/>
+    </field>
+    <field number="287" name="SellerDays" type="INT"/>
+    <field number="288" name="MDEntryBuyer" type="STRING"/>
+    <field number="289" name="MDEntrySeller" type="STRING"/>
+    <field number="290" name="MDEntryPositionNo" type="INT"/>
+    <field number="291" name="FinancialStatus" type="CHAR">
+      <value enum="1" description="BANKRUPT"/>
+    </field>
+    <field number="292" name="CorporateAction" type="CHAR">
+      <value enum="A" description="EXDIVIDEND"/>
+      <value enum="B" description="EXDISTRIBUTION"/>
+      <value enum="C" description="EXRIGHTS"/>
+      <value enum="D" description="NEW"/>
+      <value enum="E" description="EXINTEREST"/>
+    </field>
+    <field number="293" name="DefBidSize" type="QTY"/>
+    <field number="294" name="DefOfferSize" type="QTY"/>
+    <field number="295" name="NoQuoteEntries" type="INT"/>
+    <field number="296" name="NoQuoteSets" type="INT"/>
+    <field number="297" name="QuoteAckStatus" type="INT"/>
+    <field number="298" name="QuoteCancelType" type="INT"/>
+    <field number="299" name="QuoteEntryID" type="STRING"/>
+    <field number="300" name="QuoteRejectReason" type="INT">
+      <value enum="1" description="UNKNOWN_SYMBOL"/>
+      <value enum="2" description="EXCHANGE"/>
+      <value enum="3" description="QUOTE_REQUEST_EXCEEDS_LIMIT"/>
+      <value enum="4" description="TOO_LATE_TO_ENTER"/>
+      <value enum="5" description="UNKNOWN_QUOTE"/>
+      <value enum="6" description="DUPLICATE_QUOTE_7"/>
+      <value enum="8" description="INVALID_PRICE"/>
+      <value enum="9" description="NOT_AUTHORIZED_TO_QUOTE_SECURITY"/>
+    </field>
+    <field number="301" name="QuoteResponseLevel" type="INT"/>
+    <field number="302" name="QuoteSetID" type="STRING"/>
+    <field number="303" name="QuoteRequestType" type="INT"/>
+    <field number="304" name="TotQuoteEntries" type="INT"/>
+    <field number="305" name="UnderlyingIDSource" type="STRING"/>
+    <field number="306" name="UnderlyingIssuer" type="STRING"/>
+    <field number="307" name="UnderlyingSecurityDesc" type="STRING"/>
+    <field number="308" name="UnderlyingSecurityExchange" type="EXCHANGE"/>
+    <field number="309" name="UnderlyingSecurityID" type="STRING"/>
+    <field number="310" name="UnderlyingSecurityType" type="STRING"/>
+    <field number="311" name="UnderlyingSymbol" type="STRING"/>
+    <field number="312" name="UnderlyingSymbolSfx" type="STRING"/>
+    <field number="313" name="UnderlyingMaturityMonthYear" type="MONTHYEAR"/>
+    <field number="314" name="UnderlyingMaturityDay" type="DAYOFMONTH"/>
+    <field number="315" name="UnderlyingPutOrCall" type="INT"/>
+    <field number="316" name="UnderlyingStrikePrice" type="PRICE"/>
+    <field number="317" name="UnderlyingOptAttribute" type="CHAR"/>
+    <field number="318" name="UnderlyingCurrency" type="CURRENCY"/>
+    <field number="319" name="RatioQty" type="QTY"/>
+    <field number="320" name="SecurityReqID" type="STRING"/>
+    <field number="321" name="SecurityRequestType" type="INT">
+      <value enum="0" description="REQUEST_SECURITY_IDENTITY_AND_SPECIFICATIONS"/>
+      <value enum="1" description="REQUEST_SECURITY_IDENTITY_FOR_THE_SPECIFICATIONS_PROVIDED"/>
+      <value enum="2" description="REQUEST_LIST_SECURITY_TYPES"/>
+      <value enum="3" description="REQUEST_LIST_SECURITIES"/>
+    </field>
+    <field number="322" name="SecurityResponseID" type="STRING"/>
+    <field number="323" name="SecurityResponseType" type="INT">
+      <value enum="1" description="ACCEPT_SECURITY_PROPOSAL_AS_IS"/>
+      <value enum="2" description="ACCEPT_SECURITY_PROPOSAL_WITH_REVISIONS_AS_INDICATED_IN_THE_MESSAGE"/>
+      <value enum="3" description="LIST_OF_SECURITY_TYPES_RETURNED_PER_REQUEST"/>
+      <value enum="4" description="LIST_OF_SECURITIES_RETURNED_PER_REQUEST"/>
+      <value enum="5" description="REJECT_SECURITY_PROPOSAL"/>
+      <value enum="6" description="CAN_NOT_MATCH_SELECTION_CRITERIA"/>
+    </field>
+    <field number="324" name="SecurityStatusReqID" type="STRING"/>
+    <field number="325" name="UnsolicitedIndicator" type="BOOLEAN">
+      <value enum="Y" description="MESSAGE_IS_BEING_SENT_UNSOLICITED"/>
+      <value enum="N" description="MESSAGE_IS_BEING_SENT_AS_A_RESULT_OF_A_PRIOR_REQUEST"/>
+    </field>
+    <field number="326" name="SecurityTradingStatus" type="INT">
+      <value enum="1" description="OPENING_DELAY"/>
+      <value enum="2" description="TRADING_HALT"/>
+      <value enum="3" description="RESUME"/>
+      <value enum="4" description="NO_OPENNO_RESUME"/>
+      <value enum="5" description="PRICE_INDICATION"/>
+      <value enum="6" description="TRADING_RANGE_INDICATION"/>
+      <value enum="7" description="MARKET_IMBALANCE_BUY"/>
+      <value enum="8" description="MARKET_IMBALANCE_SELL"/>
+      <value enum="9" description="MARKET_ON_CLOSE_IMBALANCE_BUY"/>
+      <value enum="10" description="MARKET_ON_CLOSE_IMBALANCE_SELL"/>
+      <value enum="11" description="NOT_ASSIGNED" />
+      <value enum="12" description="NO_MARKET_IMBALANCE"/>
+      <value enum="13" description="NO_MARKET_ON_CLOSE_IMBALANCE"/>
+      <value enum="14" description="ITS_PREOPENING"/>
+      <value enum="15" description="NEW_PRICE_INDICATION"/>
+      <value enum="16" description="TRADE_DISSEMINATION_TIME"/>
+      <value enum="17" description="READY_TO_TRADE"/>
+      <value enum="18" description="NOT_AVAILABLE_FOR_TRADING"/>
+      <value enum="19" description="NOT_TRADED_ON_THIS_MARKET"/>
+      <value enum="20" description="UNKNOWN_OR_INVALID"/>
+    </field>
+    <field number="327" name="HaltReason" type="CHAR">
+      <value enum="I" description="ORDER_IMBALANCE"/>
+      <value enum="X" description="EQUIPMENT_CHANGEOVER"/>
+      <value enum="P" description="NEWS_PENDING"/>
+      <value enum="D" description="NEWS_DISSEMINATION"/>
+      <value enum="E" description="ORDER_INFLUX"/>
+      <value enum="M" description="ADDITIONAL_INFORMATION"/>
+    </field>
+    <field number="328" name="InViewOfCommon" type="BOOLEAN">
+      <value enum="Y" description="HALT_WAS_DUE_TO_COMMON_STOCK_BEING_HALTED"/>
+      <value enum="N" description="HALT_WAS_NOT_RELATED_TO_A_HALT_OF_THE_COMMON_STOCK"/>
+    </field>
+    <field number="329" name="DueToRelated" type="BOOLEAN">
+      <value enum="Y" description="HALT_WAS_DUE_TO_RELATED_SECURITY_BEING_HALTED"/>
+      <value enum="N" description="HALT_WAS_NOT_RELATED_TO_A_HALT_OF_THE_RELATED_SECURITY"/>
+    </field>
+    <field number="330" name="BuyVolume" type="QTY"/>
+    <field number="331" name="SellVolume" type="QTY"/>
+    <field number="332" name="HighPx" type="PRICE"/>
+    <field number="333" name="LowPx" type="PRICE"/>
+    <field number="334" name="Adjustment" type="INT">
+      <value enum="1" description="CANCEL"/>
+      <value enum="2" description="ERROR"/>
+      <value enum="3" description="CORRECTION"/>
+    </field>
+    <field number="335" name="TradSesReqID" type="STRING"/>
+    <field number="336" name="TradingSessionID" type="STRING"/>
+    <field number="337" name="ContraTrader" type="STRING"/>
+    <field number="338" name="TradSesMethod" type="INT">
+      <value enum="1" description="ELECTRONIC"/>
+      <value enum="2" description="OPEN_OUTCRY"/>
+      <value enum="3" description="TWO_PARTY"/>
+    </field>
+    <field number="339" name="TradSesMode" type="INT">
+      <value enum="1" description="TESTING"/>
+      <value enum="2" description="SIMULATED"/>
+      <value enum="3" description="PRODUCTION"/>
+    </field>
+    <field number="340" name="TradSesStatus" type="INT">
+      <value enum="1" description="HALTED"/>
+      <value enum="2" description="OPEN"/>
+      <value enum="3" description="CLOSED"/>
+      <value enum="4" description="PREOPEN"/>
+      <value enum="5" description="PRECLOSE"/>
+    </field>
+    <field number="341" name="TradSesStartTime" type="UTCTIMESTAMP"/>
+    <field number="342" name="TradSesOpenTime" type="UTCTIMESTAMP"/>
+    <field number="343" name="TradSesPreCloseTime" type="UTCTIMESTAMP"/>
+    <field number="344" name="TradSesCloseTime" type="UTCTIMESTAMP"/>
+    <field number="345" name="TradSesEndTime" type="UTCTIMESTAMP"/>
+    <field number="346" name="NumberOfOrders" type="INT"/>
+    <field number="347" name="MessageEncoding" type="STRING"/>
+    <field number="348" name="EncodedIssuerLen" type="INT"/>
+    <field number="349" name="EncodedIssuer" type="DATA"/>
+    <field number="350" name="EncodedSecurityDescLen" type="INT"/>
+    <field number="351" name="EncodedSecurityDesc" type="DATA"/>
+    <field number="352" name="EncodedListExecInstLen" type="INT"/>
+    <field number="353" name="EncodedListExecInst" type="DATA"/>
+    <field number="354" name="EncodedTextLen" type="INT"/>
+    <field number="355" name="EncodedText" type="DATA"/>
+    <field number="356" name="EncodedSubjectLen" type="INT"/>
+    <field number="357" name="EncodedSubject" type="DATA"/>
+    <field number="358" name="EncodedHeadlineLen" type="INT"/>
+    <field number="359" name="EncodedHeadline" type="DATA"/>
+    <field number="360" name="EncodedAllocTextLen" type="INT"/>
+    <field number="361" name="EncodedAllocText" type="DATA"/>
+    <field number="362" name="EncodedUnderlyingIssuerLen" type="INT"/>
+    <field number="363" name="EncodedUnderlyingIssuer" type="DATA"/>
+    <field number="364" name="EncodedUnderlyingSecurityDescLen" type="INT"/>
+    <field number="365" name="EncodedUnderlyingSecurityDesc" type="DATA"/>
+    <field number="366" name="AllocPrice" type="PRICE"/>
+    <field number="367" name="QuoteSetValidUntilTime" type="UTCTIMESTAMP"/>
+    <field number="368" name="QuoteEntryRejectReason" type="INT">
+      <value enum="1" description="UNKNOWN_SYMBOL"/>
+      <value enum="2" description="EXCHANGE"/>
+      <value enum="3" description="QUOTE_EXCEEDS_LIMIT"/>
+      <value enum="4" description="TOO_LATE_TO_ENTER"/>
+      <value enum="5" description="UNKNOWN_QUOTE"/>
+      <value enum="6" description="DUPLICATE_QUOTE"/>
+      <value enum="7" description="INVALID_BIDASK_SPREAD"/>
+      <value enum="8" description="INVALID_PRICE"/>
+      <value enum="9" description="NOT_AUTHORIZED_TO_QUOTE_SECURITY"/>
+    </field>
+    <field number="369" name="LastMsgSeqNumProcessed" type="INT"/>
+    <field number="370" name="OnBehalfOfSendingTime" type="UTCTIMESTAMP"/>
+    <field number="371" name="RefTagID" type="INT"/>
+    <field number="372" name="RefMsgType" type="STRING"/>
+    <field number="373" name="SessionRejectReason" type="INT">
+      <value enum="0" description="INVALID_TAG_NUMBER"/>
+      <value enum="1" description="REQUIRED_TAG_MISSING"/>
+      <value enum="2" description="TAG_NOT_DEFINED_FOR_THIS_MESSAGE_TYPE"/>
+      <value enum="3" description="UNDEFINED_TAG"/>
+      <value enum="4" description="TAG_SPECIFIED_WITHOUT_A_VALUE"/>
+      <value enum="5" description="VALUE_IS_INCORRECT"/>
+      <value enum="6" description="INCORRECT_DATA_FORMAT_FOR_VALUE"/>
+      <value enum="7" description="DECRYPTION_PROBLEM"/>
+      <value enum="8" description="SIGNATURE_PROBLEM"/>
+      <value enum="9" description="COMPID_PROBLEM"/>
+      <value enum="10" description="SENDINGTIME_ACCURACY_PROBLEM"/>
+      <value enum="11" description="E"/>
+    </field>
+    <field number="374" name="BidRequestTransType" type="CHAR">
+      <value enum="N" description="NEW"/>
+      <value enum="C" description="CANCEL"/>
+    </field>
+    <field number="375" name="ContraBroker" type="STRING"/>
+    <field number="376" name="ComplianceID" type="STRING"/>
+    <field number="377" name="SolicitedFlag" type="BOOLEAN">
+      <value enum="Y" description="WAS_SOLCITIED"/>
+      <value enum="N" description="WAS_NOT_SOLICITED"/>
+    </field>
+    <field number="378" name="ExecRestatementReason" type="INT">
+      <value enum="0" description="GT_CORPORATE_ACTION"/>
+      <value enum="1" description="GT_RENEWAL_RESTATEMENT"/>
+      <value enum="2" description="VERBAL_CHANGE"/>
+      <value enum="3" description="REPRICING_OF_ORDER"/>
+      <value enum="4" description="BROKER_OPTION"/>
+      <value enum="5" description="PARTIAL_DECLINE_OF_ORDERQTY"/>
+    </field>
+    <field number="379" name="BusinessRejectRefID" type="STRING"/>
+    <field number="380" name="BusinessRejectReason" type="INT">
+      <value enum="0" description="OTHER"/>
+      <value enum="1" description="UNKOWN_ID"/>
+      <value enum="2" description="UNKNOWN_SECURITY"/>
+      <value enum="3" description="UNSUPPORTED_MESSAGE_TYPE"/>
+      <value enum="4" description="APPLICATION_NOT_AVAILABLE"/>
+      <value enum="5" description="CONDITIONALLY_REQUIRED_FIELD_MISSING"/>
+    </field>
+    <field number="381" name="GrossTradeAmt" type="AMT"/>
+    <field number="382" name="NoContraBrokers" type="INT"/>
+    <field number="383" name="MaxMessageSize" type="INT"/>
+    <field number="384" name="NoMsgTypes" type="INT"/>
+    <field number="385" name="MsgDirection" type="CHAR">
+      <value enum="S" description="SEND"/>
+      <value enum="R" description="RECEIVE"/>
+    </field>
+    <field number="386" name="NoTradingSessions" type="INT"/>
+    <field number="387" name="TotalVolumeTraded" type="QTY"/>
+    <field number="388" name="DiscretionInst" type="CHAR">
+      <value enum="0" description="RELATED_TO_DISPLAYED_PRICE"/>
+      <value enum="1" description="RELATED_TO_MARKET_PRICE"/>
+      <value enum="2" description="RELATED_TO_PRIMARY_PRICE"/>
+      <value enum="3" description="RELATED_TO_LOCAL_PRIMARY_PRICE"/>
+      <value enum="4" description="RELATED_TO_MIDPOINT_PRICE"/>
+      <value enum="5" description="RELATED_TO_LAST_TRADE_PRICE"/>
+    </field>
+    <field number="389" name="DiscretionOffset" type="PRICEOFFSET"/>
+    <field number="390" name="BidID" type="STRING"/>
+    <field number="391" name="ClientBidID" type="STRING"/>
+    <field number="392" name="ListName" type="STRING"/>
+    <field number="393" name="TotalNumSecurities" type="INT"/>
+    <field number="394" name="BidType" type="INT"/>
+    <field number="395" name="NumTickets" type="INT"/>
+    <field number="396" name="SideValue1" type="AMT"/>
+    <field number="397" name="SideValue2" type="AMT"/>
+    <field number="398" name="NoBidDescriptors" type="INT"/>
+    <field number="399" name="BidDescriptorType" type="INT"/>
+    <field number="400" name="BidDescriptor" type="STRING"/>
+    <field number="401" name="SideValueInd" type="INT"/>
+    <field number="402" name="LiquidityPctLow" type="FLOAT"/>
+    <field number="403" name="LiquidityPctHigh" type="FLOAT"/>
+    <field number="404" name="LiquidityValue" type="AMT"/>
+    <field number="405" name="EFPTrackingError" type="FLOAT"/>
+    <field number="406" name="FairValue" type="AMT"/>
+    <field number="407" name="OutsideIndexPct" type="FLOAT"/>
+    <field number="408" name="ValueOfFutures" type="AMT"/>
+    <field number="409" name="LiquidityIndType" type="INT"/>
+    <field number="410" name="WtAverageLiquidity" type="FLOAT"/>
+    <field number="411" name="ExchangeForPhysical" type="BOOLEAN">
+      <value enum="Y" description="TRUE"/>
+      <value enum="N" description="FALSE"/>
+    </field>
+    <field number="412" name="OutMainCntryUIndex" type="AMT"/>
+    <field number="413" name="CrossPercent" type="FLOAT"/>
+    <field number="414" name="ProgRptReqs" type="INT"/>
+    <field number="415" name="ProgPeriodInterval" type="INT"/>
+    <field number="416" name="IncTaxInd" type="INT"/>
+    <field number="417" name="NumBidders" type="INT"/>
+    <field number="418" name="TradeType" type="CHAR"/>
+    <field number="419" name="BasisPxType" type="CHAR"/>
+    <field number="420" name="NoBidComponents" type="INT"/>
+    <field number="421" name="Country" type="STRING"/>
+    <field number="422" name="TotNoStrikes" type="INT"/>
+    <field number="423" name="PriceType" type="INT"/>
+    <field number="424" name="DayOrderQty" type="QTY"/>
+    <field number="425" name="DayCumQty" type="QTY"/>
+    <field number="426" name="DayAvgPx" type="PRICE"/>
+    <field number="427" name="GTBookingInst" type="INT">
+      <value enum="0" description="BOOK_OUT_ALL_TRADES_ON_DAY_OF_EXECUTION"/>
+      <value enum="1" description="ACCUMULATE_EXECUTIONS_UNTIL_ORDER_IS_FILLED_OR_EXPIRES"/>
+      <value enum="2" description="ACCUMULATE_UNTIL_VERBALLY_NOTIFIED_OTHERWISE"/>
+    </field>
+    <field number="428" name="NoStrikes" type="INT"/>
+    <field number="429" name="ListStatusType" type="INT"/>
+    <field number="430" name="NetGrossInd" type="INT"/>
+    <field number="431" name="ListOrderStatus" type="INT"/>
+    <field number="432" name="ExpireDate" type="LOCALMKTDATE"/>
+    <field number="433" name="ListExecInstType" type="CHAR"/>
+    <field number="434" name="CxlRejResponseTo" type="CHAR"/>
+    <field number="435" name="UnderlyingCouponRate" type="FLOAT"/>
+    <field number="436" name="UnderlyingContractMultiplier" type="FLOAT"/>
+    <field number="437" name="ContraTradeQty" type="QTY"/>
+    <field number="438" name="ContraTradeTime" type="UTCTIMESTAMP"/>
+    <field number="439" name="ClearingFirm" type="STRING"/>
+    <field number="440" name="ClearingAccount" type="STRING"/>
+    <field number="441" name="LiquidityNumSecurities" type="INT"/>
+    <field number="442" name="MultiLegReportingType" type="CHAR"/>
+    <field number="443" name="StrikeTime" type="UTCTIMESTAMP"/>
+    <field number="444" name="ListStatusText" type="STRING"/>
+    <field number="445" name="EncodedListStatusTextLen" type="INT"/>
+    <field number="446" name="EncodedListStatusText" type="DATA"/>
+  </fields>
+</fix>
diff --git a/fix/FIX43.xml b/fix/FIX43.xml
new file mode 100644 (file)
index 0000000..26b57eb
--- /dev/null
@@ -0,0 +1,3992 @@
+<fix major="4" minor="3">
+  <header>
+    <field name="BeginString" required="Y" />
+    <field name="BodyLength" required="Y" />
+    <field name="MsgType" required="Y" />
+    <field name="SenderCompID" required="Y" />
+    <field name="TargetCompID" required="Y" />
+    <field name="OnBehalfOfCompID" required="N" />
+    <field name="DeliverToCompID" required="N" />
+    <field name="SecureDataLen" required="N" />
+    <field name="SecureData" required="N" />
+    <field name="MsgSeqNum" required="Y" />
+    <field name="SenderSubID" required="N" />
+    <field name="SenderLocationID" required="N" />
+    <field name="TargetSubID" required="N" />
+    <field name="TargetLocationID" required="N" />
+    <field name="OnBehalfOfSubID" required="N" />
+    <field name="OnBehalfOfLocationID" required="N" />
+    <field name="DeliverToSubID" required="N" />
+    <field name="DeliverToLocationID" required="N" />
+    <field name="PossDupFlag" required="N" />
+    <field name="PossResend" required="N" />
+    <field name="SendingTime" required="Y" />
+    <field name="OrigSendingTime" required="N" />
+    <field name="XmlDataLen" required="N" />
+    <field name="XmlData" required="N" />
+    <field name="MessageEncoding" required="N" />
+    <field name="LastMsgSeqNumProcessed" required="N" />
+    <field name="OnBehalfOfSendingTime" required="N" />
+    <group name="NoHops" required="N">
+      <field name="HopCompID" required="N" />
+      <field name="HopSendingTime" required="N" />    
+      <field name="HopRefID" required="N" />
+    </group>
+  </header>
+  <trailer>
+    <field name="SignatureLength" required="N" />
+    <field name="Signature" required="N" />
+    <field name="CheckSum" required="Y" />
+  </trailer>
+  <messages>
+    <message name="Heartbeat" msgtype="0" msgcat="admin">
+      <field name="TestReqID" required="N" />
+    </message>
+    <message name="Logon" msgtype="A" msgcat="admin">
+      <field name="EncryptMethod" required="Y" />
+      <field name="HeartBtInt" required="Y" />
+      <field name="RawDataLength" required="N" />
+      <field name="RawData" required="N" />
+      <field name="ResetSeqNumFlag" required="N" />
+      <field name="MaxMessageSize" required="N" />
+      <group name="NoMsgTypes" required="N">
+        <field name="RefMsgType" required="N" />
+        <field name="MsgDirection" required="N" />
+      </group>
+      <field name="TestMessageIndicator" required="N" />
+      <field name="Username" required="N" />
+      <field name="Password" required="N" />
+    </message>
+    <message name="TestRequest" msgtype="1" msgcat="admin">
+      <field name="TestReqID" required="Y" />
+    </message>
+    <message name="ResendRequest" msgtype="2" msgcat="admin">
+      <field name="BeginSeqNo" required="Y" />
+      <field name="EndSeqNo" required="Y" />
+    </message>
+    <message name="Reject" msgtype="3" msgcat="admin">
+      <field name="RefSeqNum" required="Y" />
+      <field name="RefTagID" required="N" />
+      <field name="RefMsgType" required="N" />
+      <field name="SessionRejectReason" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="SequenceReset" msgtype="4" msgcat="admin">
+      <field name="GapFillFlag" required="N" />
+      <field name="NewSeqNo" required="Y" />
+    </message>
+    <message name="Logout" msgtype="5" msgcat="admin">
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="BusinessMessageReject" msgtype="j" msgcat="admin">
+      <field name="RefSeqNum" required="N" />
+      <field name="RefMsgType" required="Y" />
+      <field name="BusinessRejectRefID" required="N" />
+      <field name="BusinessRejectReason" required="Y" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="Advertisement" msgtype="7" msgcat="app">
+      <field name="AdvId" required="Y" />
+      <field name="AdvTransType" required="Y" />
+      <field name="AdvRefID" required="N" />
+      <component name="Instrument" required="Y" />
+      <field name="AdvSide" required="Y" />
+      <field name="Quantity" required="Y" />
+      <field name="Price" required="N" />
+      <field name="Currency" required="N" />
+      <field name="TradeDate" required="N" />
+      <field name="TransactTime" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="URLLink" required="N" />
+      <field name="LastMkt" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </message>
+    <message name="IndicationOfInterest" msgtype="6" msgcat="app">
+      <field name="IOIid" required="Y" />
+      <field name="IOITransType" required="Y" />
+      <field name="IOIRefID" required="N" />
+      <component name="Instrument" required="Y" />
+      <field name="Side" required="Y" />
+      <field name="QuantityType" required="N" />
+      <field name="IOIQty" required="Y" />
+      <field name="PriceType" required="N" />
+      <field name="Price" required="N" />
+      <field name="Currency" required="N" />
+      <field name="ValidUntilTime" required="N" />
+      <field name="IOIQltyInd" required="N" />
+      <field name="IOINaturalFlag" required="N" />
+      <group name="NoIOIQualifiers" required="N">
+        <field name="IOIQualifier" required="N" />
+      </group>
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="TransactTime" required="N" />
+      <field name="URLLink" required="N" />
+      <group name="NoRoutingIDs" required="N">
+        <field name="RoutingType" required="N" />
+        <field name="RoutingID" required="N" />
+      </group>
+      <component name="SpreadOrBenchmarkCurveData" required="N" />
+      <field name="Benchmark" required="N" />
+    </message>
+    <message name="News" msgtype="B" msgcat="app">
+      <field name="OrigTime" required="N" />
+      <field name="Urgency" required="N" />
+      <field name="Headline" required="Y" />
+      <field name="EncodedHeadlineLen" required="N" />
+      <field name="EncodedHeadline" required="N" />
+      <group name="NoRoutingIDs" required="N">
+        <field name="RoutingType" required="N" />
+        <field name="RoutingID" required="N" />
+      </group>
+      <group name="NoRelatedSym" required="N">
+        <component name="Instrument" required="N" />
+      </group>
+      <group name="LinesOfText" required="Y">
+        <field name="Text" required="Y" />
+        <field name="EncodedTextLen" required="N" />
+        <field name="EncodedText" required="N" />
+      </group>
+      <field name="URLLink" required="N" />
+      <field name="RawDataLength" required="N" />
+      <field name="RawData" required="N" />
+    </message>
+    <message name="Email" msgtype="C" msgcat="app">
+      <field name="EmailThreadID" required="Y" />
+      <field name="EmailType" required="Y" />
+      <field name="OrigTime" required="N" />
+      <field name="Subject" required="Y" />
+      <field name="EncodedSubjectLen" required="N" />
+      <field name="EncodedSubject" required="N" />
+      <group name="NoRoutingIDs" required="N">
+        <field name="RoutingType" required="N" />
+        <field name="RoutingID" required="N" />
+      </group>
+      <group name="NoRelatedSym" required="N">
+        <component name="Instrument" required="N" />
+      </group>
+      <field name="OrderID" required="N" />
+      <field name="ClOrdID" required="N" />
+      <group name="LinesOfText" required="Y">
+        <field name="Text" required="Y" />
+        <field name="EncodedTextLen" required="N" />
+        <field name="EncodedText" required="N" />
+      </group>
+      <field name="RawDataLength" required="N" />
+      <field name="RawData" required="N" />
+    </message>
+    <message name="QuoteRequest" msgtype="R" msgcat="app">
+      <field name="QuoteReqID" required="Y" />
+      <field name="RFQReqID" required="N" />
+      <group name="NoRelatedSym" required="Y">
+        <component name="Instrument" required="Y" />
+        <field name="PrevClosePx" required="N" />
+        <field name="QuoteRequestType" required="N" />
+        <field name="QuoteType" required="N" />
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+        <field name="TradeOriginationDate" required="N" />
+        <component name="Stipulations" required="N" />
+        <field name="Side" required="N" />
+        <field name="QuantityType" required="N" />
+        <field name="OrderQty" required="N" />
+        <field name="CashOrderQty" required="N" />
+        <field name="SettlmntTyp" required="N" />
+        <field name="FutSettDate" required="N" />
+        <field name="OrdType" required="N" />
+        <field name="FutSettDate2" required="N" />
+        <field name="OrderQty2" required="N" />
+        <field name="ExpireTime" required="N" />
+        <field name="TransactTime" required="N" />
+        <field name="Currency" required="N" />
+        <component name="SpreadOrBenchmarkCurveData" required="N" />
+        <field name="PriceType" required="N" />
+        <field name="Price" required="N" />
+        <field name="Price2" required="N" />
+        <component name="YieldData" required="N" />
+      </group>
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="QuoteRequestReject" msgtype="AG" msgcat="app">
+      <field name="QuoteReqID" required="Y" />
+      <field name="RFQReqID" required="N" />
+      <field name="QuoteRequestRejectReason" required="Y" />
+      <group name="NoRelatedSym" required="Y">
+        <component name="Instrument" required="Y" />
+        <field name="PrevClosePx" required="N" />
+        <field name="QuoteRequestType" required="N" />
+        <field name="QuoteType" required="N" />
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+        <field name="TradeOriginationDate" required="N" />
+        <component name="Stipulations" required="N" />
+        <field name="Side" required="N" />
+        <field name="QuantityType" required="N" />
+        <field name="OrderQty" required="N" />
+        <field name="CashOrderQty" required="N" />
+        <field name="SettlmntTyp" required="N" />
+        <field name="FutSettDate" required="N" />
+        <field name="OrdType" required="N" />
+        <field name="FutSettDate2" required="N" />
+        <field name="OrderQty2" required="N" />
+        <field name="ExpireTime" required="N" />
+        <field name="TransactTime" required="N" />
+        <field name="Currency" required="N" />
+        <component name="SpreadOrBenchmarkCurveData" required="N" />
+        <field name="PriceType" required="N" />
+        <field name="Price" required="N" />
+        <field name="Price2" required="N" />
+        <component name="YieldData" required="N" />
+      </group>
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="RFQRequest" msgtype="AH" msgcat="app">
+      <field name="RFQReqID" required="Y" />
+      <group name="NoRelatedSym" required="Y">
+        <component name="Instrument" required="Y" />
+        <field name="PrevClosePx" required="N" />
+        <field name="QuoteRequestType" required="N" />
+        <field name="QuoteType" required="N" />
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+      </group>
+      <field name="SubscriptionRequestType" required="N" />
+    </message>
+    <message name="Quote" msgtype="S" msgcat="app">
+      <field name="QuoteReqID" required="N" />
+      <field name="QuoteID" required="Y" />
+      <field name="QuoteType" required="N" />
+      <field name="QuoteResponseLevel" required="N" />
+      <component name="Parties" required="N" />
+      <field name="Account" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <component name="Instrument" required="Y" />
+      <field name="BidPx" required="N" />
+      <field name="OfferPx" required="N" />
+      <field name="MktBidPx" required="N" />
+      <field name="MktOfferPx" required="N" />
+      <field name="MinBidSize" required="N" />
+      <field name="BidSize" required="N" />
+      <field name="MinOfferSize" required="N" />
+      <field name="OfferSize" required="N" />
+      <field name="ValidUntilTime" required="N" />
+      <field name="BidSpotRate" required="N" />
+      <field name="OfferSpotRate" required="N" />
+      <field name="BidForwardPoints" required="N" />
+      <field name="OfferForwardPoints" required="N" />
+      <field name="MidPx" required="N" />
+      <field name="BidYield" required="N" />
+      <field name="MidYield" required="N" />
+      <field name="OfferYield" required="N" />
+      <field name="TransactTime" required="N" />
+      <field name="SettlmntTyp" required="N" />
+      <field name="FutSettDate" required="N" />
+      <field name="OrdType" required="N" />
+      <field name="FutSettDate2" required="N" />
+      <field name="OrderQty2" required="N" />
+      <field name="BidForwardPoints2" required="N" />
+      <field name="OfferForwardPoints2" required="N" />
+      <field name="Currency" required="N" />
+      <field name="SettlCurrBidFxRate" required="N" />
+      <field name="SettlCurrOfferFxRate" required="N" />
+      <field name="SettlCurrFxRateCalc" required="N" />
+      <field name="CommType" required="N" />
+      <field name="Commission" required="N" />
+      <field name="CustOrderCapacity" required="N" />
+      <field name="ExDestination" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="QuoteCancel" msgtype="Z" msgcat="app">
+      <field name="QuoteReqID" required="N" />
+      <field name="QuoteID" required="Y" />
+      <field name="QuoteCancelType" required="Y" />
+      <field name="QuoteResponseLevel" required="N" />
+      <component name="Parties" required="N" />
+      <field name="Account" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <group name="NoQuoteEntries" required="N">
+        <component name="Instrument" required="N" />
+      </group>
+    </message>
+    <message name="QuoteStatusRequest" msgtype="a" msgcat="app">
+      <field name="QuoteStatusReqID" required="N" />
+      <field name="QuoteID" required="N" />
+      <component name="Instrument" required="Y" />
+      <component name="Parties" required="N" />
+      <field name="Account" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="SubscriptionRequestType" required="N" />
+    </message>
+    <message name="QuoteStatusReport" msgtype="AI" msgcat="app">
+      <field name="QuoteStatusReqID" required="N" />
+      <field name="QuoteReqID" required="N" />
+      <field name="QuoteID" required="Y" />
+      <field name="QuoteType" required="N" />
+      <component name="Parties" required="N" />
+      <field name="Account" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <component name="Instrument" required="Y" />
+      <field name="BidPx" required="N" />
+      <field name="OfferPx" required="N" />
+      <field name="MktBidPx" required="N" />
+      <field name="MktOfferPx" required="N" />
+      <field name="MinBidSize" required="N" />
+      <field name="BidSize" required="N" />
+      <field name="MinOfferSize" required="N" />
+      <field name="OfferSize" required="N" />
+      <field name="ValidUntilTime" required="N" />
+      <field name="BidSpotRate" required="N" />
+      <field name="OfferSpotRate" required="N" />
+      <field name="BidForwardPoints" required="N" />
+      <field name="OfferForwardPoints" required="N" />
+      <field name="MidPx" required="N" />
+      <field name="BidYield" required="N" />
+      <field name="MidYield" required="N" />
+      <field name="OfferYield" required="N" />
+      <field name="TransactTime" required="N" />
+      <field name="FutSettDate" required="N" />
+      <field name="OrdType" required="N" />
+      <field name="FutSettDate2" required="N" />
+      <field name="OrderQty2" required="N" />
+      <field name="BidForwardPoints2" required="N" />
+      <field name="OfferForwardPoints2" required="N" />
+      <field name="Currency" required="N" />
+      <field name="SettlCurrBidFxRate" required="N" />
+      <field name="SettlCurrOfferFxRate" required="N" />
+      <field name="SettlCurrFxRateCalc" required="N" />
+      <field name="CommType" required="N" />
+      <field name="Commission" required="N" />
+      <field name="CustOrderCapacity" required="N" />
+      <field name="ExDestination" required="N" />
+      <field name="QuoteStatus" required="N" />
+    </message>
+    <message name="MassQuote" msgtype="i" msgcat="app">
+      <field name="QuoteReqID" required="N" />
+      <field name="QuoteID" required="Y" />
+      <field name="QuoteType" required="N" />
+      <field name="QuoteResponseLevel" required="N" />
+      <component name="Parties" required="N" />
+      <field name="Account" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="DefBidSize" required="N" />
+      <field name="DefOfferSize" required="N" />
+      <group name="NoQuoteSets" required="Y">
+        <field name="QuoteSetID" required="Y" />
+        <component name="UnderlyingInstrument" required="N" />
+        <field name="QuoteSetValidUntilTime" required="N" />
+        <field name="TotQuoteEntries" required="Y" />
+        <group name="NoQuoteEntries" required="N">
+          <field name="QuoteEntryID" required="Y" />
+          <component name="Instrument" required="N" />
+          <field name="BidPx" required="N" />
+          <field name="OfferPx" required="N" />
+          <field name="BidSize" required="N" />
+          <field name="OfferSize" required="N" />
+          <field name="ValidUntilTime" required="N" />
+          <field name="BidSpotRate" required="N" />
+          <field name="OfferSpotRate" required="N" />
+          <field name="BidForwardPoints" required="N" />
+          <field name="OfferForwardPoints" required="N" />
+          <field name="MidPx" required="N" />
+          <field name="BidYield" required="N" />
+          <field name="MidYield" required="N" />
+          <field name="OfferYield" required="N" />
+          <field name="TransactTime" required="N" />
+          <field name="TradingSessionID" required="N" />
+          <field name="TradingSessionSubID" required="N" />
+          <field name="FutSettDate" required="N" />
+          <field name="OrdType" required="N" />
+          <field name="FutSettDate2" required="N" />
+          <field name="OrderQty2" required="N" />
+          <field name="BidForwardPoints2" required="N" />
+          <field name="OfferForwardPoints2" required="N" />
+          <field name="Currency" required="N" />
+        </group>
+      </group>
+    </message>
+    <message name="MassQuoteAcknowledgement" msgtype="b" msgcat="app">
+      <field name="QuoteReqID" required="N" />
+      <field name="QuoteID" required="N" />
+      <field name="QuoteStatus" required="Y" />
+      <field name="QuoteRejectReason" required="N" />
+      <field name="QuoteResponseLevel" required="N" />
+      <field name="QuoteType" required="N" />
+      <component name="Parties" required="N" />
+      <field name="Account" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="Text" required="N" />
+      <group name="NoQuoteSets" required="N">
+        <field name="QuoteSetID" required="N" />
+        <component name="UnderlyingInstrument" required="N" />
+        <field name="TotQuoteEntries" required="N" />
+        <group name="NoQuoteEntries" required="N">
+          <field name="QuoteEntryID" required="N" />
+          <component name="Instrument" required="N" />
+          <field name="BidPx" required="N" />
+          <field name="OfferPx" required="N" />
+          <field name="BidSize" required="N" />
+          <field name="OfferSize" required="N" />
+          <field name="ValidUntilTime" required="N" />
+          <field name="BidSpotRate" required="N" />
+          <field name="OfferSpotRate" required="N" />
+          <field name="BidForwardPoints" required="N" />
+          <field name="OfferForwardPoints" required="N" />
+          <field name="MidPx" required="N" />
+          <field name="BidYield" required="N" />
+          <field name="MidYield" required="N" />
+          <field name="OfferYield" required="N" />
+          <field name="TransactTime" required="N" />
+          <field name="TradingSessionID" required="N" />
+          <field name="TradingSessionSubID" required="N" />
+          <field name="FutSettDate" required="N" />
+          <field name="OrdType" required="N" />
+          <field name="FutSettDate2" required="N" />
+          <field name="OrderQty2" required="N" />
+          <field name="BidForwardPoints2" required="N" />
+          <field name="OfferForwardPoints2" required="N" />
+          <field name="Currency" required="N" />
+          <field name="QuoteEntryRejectReason" required="N" />
+        </group>
+      </group>
+    </message>
+    <message name="MarketDataRequest" msgtype="V" msgcat="app">
+      <field name="MDReqID" required="Y" />
+      <field name="SubscriptionRequestType" required="Y" />
+      <field name="MarketDepth" required="Y" />
+      <field name="MDUpdateType" required="N" />
+      <field name="AggregatedBook" required="N" />
+      <field name="OpenCloseSettleFlag" required="N" />
+      <field name="Scope" required="N" />
+      <field name="MDImplicitDelete" required="N" />
+      <group name="NoMDEntryTypes" required="Y">
+        <field name="MDEntryType" required="Y" />
+      </group>
+      <group name="NoRelatedSym" required="Y">
+        <component name="Instrument" required="Y" />
+      </group>
+      <group name="NoTradingSessions" required="N">
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+      </group>
+    </message>
+    <message name="MarketDataSnapshotFullRefresh" msgtype="W" msgcat="app">
+      <field name="MDReqID" required="N" />
+      <component name="Instrument" required="Y" />
+      <field name="FinancialStatus" required="N" />
+      <field name="CorporateAction" required="N" />
+      <field name="TotalVolumeTraded" required="N" />
+      <field name="TotalVolumeTradedDate" required="N" />
+      <field name="TotalVolumeTradedTime" required="N" />
+      <field name="NetChgPrevDay" required="N" />
+      <group name="NoMDEntries" required="Y">
+        <field name="MDEntryType" required="Y" />
+        <field name="MDEntryPx" required="N" />
+        <field name="Currency" required="N" />
+        <field name="MDEntrySize" required="N" />
+        <field name="MDEntryDate" required="N" />
+        <field name="MDEntryTime" required="N" />
+        <field name="TickDirection" required="N" />
+        <field name="MDMkt" required="N" />
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+        <field name="QuoteCondition" required="N" />
+        <field name="TradeCondition" required="N" />
+        <field name="MDEntryOriginator" required="N" />
+        <field name="LocationID" required="N" />
+        <field name="DeskID" required="N" />
+        <field name="OpenCloseSettleFlag" required="N" />
+        <field name="TimeInForce" required="N" />
+        <field name="ExpireDate" required="N" />
+        <field name="ExpireTime" required="N" />
+        <field name="MinQty" required="N" />
+        <field name="ExecInst" required="N" />
+        <field name="SellerDays" required="N" />
+        <field name="OrderID" required="N" />
+        <field name="QuoteEntryID" required="N" />
+        <field name="MDEntryBuyer" required="N" />
+        <field name="MDEntrySeller" required="N" />
+        <field name="NumberOfOrders" required="N" />
+        <field name="MDEntryPositionNo" required="N" />
+        <field name="Scope" required="N" />
+        <field name="Text" required="N" />
+        <field name="EncodedTextLen" required="N" />
+        <field name="EncodedText" required="N" />
+      </group>
+    </message>
+    <message name="MarketDataIncrementalRefresh" msgtype="X" msgcat="app">
+      <field name="MDReqID" required="N" />
+      <group name="NoMDEntries" required="Y">
+        <field name="MDUpdateAction" required="Y" />
+        <field name="DeleteReason" required="N" />
+        <field name="MDEntryType" required="N" />
+        <field name="MDEntryID" required="N" />
+        <field name="MDEntryRefID" required="N" />
+        <component name="Instrument" required="N" />
+        <field name="FinancialStatus" required="N" />
+        <field name="CorporateAction" required="N" />
+        <field name="MDEntryPx" required="N" />
+        <field name="Currency" required="N" />
+        <field name="MDEntrySize" required="N" />
+        <field name="MDEntryDate" required="N" />
+        <field name="MDEntryTime" required="N" />
+        <field name="TickDirection" required="N" />
+        <field name="MDMkt" required="N" />
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+        <field name="QuoteCondition" required="N" />
+        <field name="TradeCondition" required="N" />
+        <field name="MDEntryOriginator" required="N" />
+        <field name="LocationID" required="N" />
+        <field name="DeskID" required="N" />
+        <field name="OpenCloseSettleFlag" required="N" />
+        <field name="TimeInForce" required="N" />
+        <field name="ExpireDate" required="N" />
+        <field name="ExpireTime" required="N" />
+        <field name="MinQty" required="N" />
+        <field name="ExecInst" required="N" />
+        <field name="SellerDays" required="N" />
+        <field name="OrderID" required="N" />
+        <field name="QuoteEntryID" required="N" />
+        <field name="MDEntryBuyer" required="N" />
+        <field name="MDEntrySeller" required="N" />
+        <field name="NumberOfOrders" required="N" />
+        <field name="MDEntryPositionNo" required="N" />
+        <field name="Scope" required="N" />
+        <field name="TotalVolumeTraded" required="N" />
+        <field name="TotalVolumeTradedDate" required="N" />
+        <field name="TotalVolumeTradedTime" required="N" />
+        <field name="NetChgPrevDay" required="N" />
+        <field name="Text" required="N" />
+        <field name="EncodedTextLen" required="N" />
+        <field name="EncodedText" required="N" />
+      </group>
+    </message>
+    <message name="MarketDataRequestReject" msgtype="Y" msgcat="app">
+      <field name="MDReqID" required="Y" />
+      <field name="MDReqRejReason" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="SecurityDefinitionRequest" msgtype="c" msgcat="app">
+      <field name="SecurityReqID" required="Y" />
+      <field name="SecurityRequestType" required="Y" />
+      <component name="Instrument" required="N" />
+      <field name="Currency" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+        <field name="LegCurrency" required="N" />
+      </group>
+      <field name="SubscriptionRequestType" required="N" />
+    </message>
+    <message name="SecurityDefinition" msgtype="d" msgcat="app">
+      <field name="SecurityReqID" required="Y" />
+      <field name="SecurityResponseID" required="Y" />
+      <field name="SecurityResponseType" required="Y" />
+      <component name="Instrument" required="N" />
+      <field name="Currency" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+        <field name="LegCurrency" required="N" />
+      </group>
+      <field name="RoundLot" required="N" />
+      <field name="MinTradeVol" required="N" />
+    </message>
+    <message name="SecurityTypeRequest" msgtype="v" msgcat="app">
+      <field name="SecurityReqID" required="Y" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </message>
+    <message name="SecurityTypes" msgtype="w" msgcat="app">
+      <field name="SecurityReqID" required="Y" />
+      <field name="SecurityResponseID" required="Y" />
+      <field name="SecurityResponseType" required="Y" />
+      <field name="TotalNumSecurityTypes" required="N" />
+      <group name="NoSecurityTypes" required="N">
+        <field name="SecurityType" required="N" />
+        <field name="Product" required="N" />
+        <field name="CFICode" required="N" />
+      </group>
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="SubscriptionRequestType" required="N" />
+    </message>
+    <message name="SecurityListRequest" msgtype="x" msgcat="app">
+      <field name="SecurityReqID" required="Y" />
+      <field name="SecurityListRequestType" required="Y" />
+      <component name="Instrument" required="N" />
+      <field name="Currency" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="SubscriptionRequestType" required="N" />
+    </message>
+    <message name="SecurityList" msgtype="y" msgcat="app">
+      <field name="SecurityReqID" required="Y" />
+      <field name="SecurityResponseID" required="Y" />
+      <field name="SecurityRequestResult" required="Y" />
+      <field name="TotalNumSecurities" required="N" />
+      <group name="NoRelatedSym" required="N">
+        <component name="Instrument" required="N" />
+        <field name="Currency" required="N" />
+        <group name="NoLegs" required="N">
+          <component name="InstrumentLeg" required="N" />
+          <field name="LegCurrency" required="N" />
+        </group>
+        <field name="RoundLot" required="N" />
+        <field name="MinTradeVol" required="N" />
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+        <field name="Text" required="N" />
+        <field name="EncodedTextLen" required="N" />
+        <field name="EncodedText" required="N" />
+      </group>
+    </message>
+    <message name="DerivativeSecurityListRequest" msgtype="z" msgcat="app">
+      <field name="SecurityReqID" required="Y" />
+      <field name="SecurityListRequestType" required="Y" />
+      <component name="UnderlyingInstrument" required="N" />
+      <field name="Currency" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="SubscriptionRequestType" required="N" />
+    </message>
+    <message name="DerivativeSecurityList" msgtype="AA" msgcat="app">
+      <field name="SecurityReqID" required="Y" />
+      <field name="SecurityResponseID" required="Y" />
+      <field name="SecurityRequestResult" required="Y" />
+      <component name="UnderlyingInstrument" required="N" />
+      <field name="TotalNumSecurities" required="N" />
+      <group name="NoRelatedSym" required="N">
+        <component name="Instrument" required="N" />
+        <field name="Currency" required="N" />
+        <group name="NoLegs" required="N">
+          <component name="InstrumentLeg" required="N" />
+          <field name="LegCurrency" required="N" />
+        </group>
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+        <field name="Text" required="N" />
+        <field name="EncodedTextLen" required="N" />
+        <field name="EncodedText" required="N" />
+      </group>
+    </message>
+    <message name="SecurityStatusRequest" msgtype="e" msgcat="app">
+      <field name="SecurityStatusReqID" required="Y" />
+      <component name="Instrument" required="Y" />
+      <field name="Currency" required="N" />
+      <field name="SubscriptionRequestType" required="Y" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </message>
+    <message name="SecurityStatus" msgtype="f" msgcat="app">
+      <field name="SecurityStatusReqID" required="N" />
+      <component name="Instrument" required="Y" />
+      <field name="Currency" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="UnsolicitedIndicator" required="N" />
+      <field name="SecurityTradingStatus" required="N" />
+      <field name="FinancialStatus" required="N" />
+      <field name="CorporateAction" required="N" />
+      <field name="HaltReason" required="N" />
+      <field name="InViewOfCommon" required="N" />
+      <field name="DueToRelated" required="N" />
+      <field name="BuyVolume" required="N" />
+      <field name="SellVolume" required="N" />
+      <field name="HighPx" required="N" />
+      <field name="LowPx" required="N" />
+      <field name="LastPx" required="N" />
+      <field name="TransactTime" required="N" />
+      <field name="Adjustment" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="TradingSessionStatusRequest" msgtype="g" msgcat="app">
+      <field name="TradSesReqID" required="Y" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="TradSesMethod" required="N" />
+      <field name="TradSesMode" required="N" />
+      <field name="SubscriptionRequestType" required="Y" />
+    </message>
+    <message name="TradingSessionStatus" msgtype="h" msgcat="app">
+      <field name="TradSesReqID" required="N" />
+      <field name="TradingSessionID" required="Y" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="TradSesMethod" required="N" />
+      <field name="TradSesMode" required="N" />
+      <field name="UnsolicitedIndicator" required="N" />
+      <field name="TradSesStatus" required="Y" />
+      <field name="TradSesStatusRejReason" required="N" />
+      <field name="TradSesStartTime" required="N" />
+      <field name="TradSesOpenTime" required="N" />
+      <field name="TradSesPreCloseTime" required="N" />
+      <field name="TradSesCloseTime" required="N" />
+      <field name="TradSesEndTime" required="N" />
+      <field name="TotalVolumeTraded" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="NewOrderSingle" msgtype="D" msgcat="app">
+      <field name="ClOrdID" required="Y" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ClOrdLinkID" required="N" />
+      <component name="Parties" required="N" />
+      <field name="TradeOriginationDate" required="N" />
+      <field name="Account" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="DayBookingInst" required="N" />
+      <field name="BookingUnit" required="N" />
+      <field name="PreallocMethod" required="N" />
+      <group name="NoAllocs" required="N">
+        <field name="AllocAccount" required="N" />
+        <field name="IndividualAllocID" required="N" />
+        <component name="NestedParties" required="N" />
+        <field name="AllocQty" required="N" />
+      </group>
+      <field name="SettlmntTyp" required="N" />
+      <field name="FutSettDate" required="N" />
+      <field name="CashMargin" required="N" />
+      <field name="ClearingFeeIndicator" required="N" />
+      <field name="HandlInst" required="Y" />
+      <field name="ExecInst" required="N" />
+      <field name="MinQty" required="N" />
+      <field name="MaxFloor" required="N" />
+      <field name="ExDestination" required="N" />
+      <group name="NoTradingSessions" required="N">
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+      </group>
+      <field name="ProcessCode" required="N" />
+      <component name="Instrument" required="Y" />
+      <field name="PrevClosePx" required="N" />
+      <field name="Side" required="Y" />
+      <field name="LocateReqd" required="N" />
+      <field name="TransactTime" required="Y" />
+      <component name="Stipulations" required="N" />
+      <field name="QuantityType" required="N" />
+      <component name="OrderQtyData" required="Y" />
+      <field name="OrdType" required="Y" />
+      <field name="PriceType" required="N" />
+      <field name="Price" required="N" />
+      <field name="StopPx" required="N" />
+      <component name="SpreadOrBenchmarkCurveData" required="N" />
+      <component name="YieldData" required="N" />
+      <field name="Currency" required="N" />
+      <field name="ComplianceID" required="N" />
+      <field name="SolicitedFlag" required="N" />
+      <field name="IOIid" required="N" />
+      <field name="QuoteID" required="N" />
+      <field name="TimeInForce" required="N" />
+      <field name="EffectiveTime" required="N" />
+      <field name="ExpireDate" required="N" />
+      <field name="ExpireTime" required="N" />
+      <field name="GTBookingInst" required="N" />
+      <component name="CommissionData" required="N" />
+      <field name="OrderCapacity" required="N" />
+      <field name="OrderRestrictions" required="N" />
+      <field name="CustOrderCapacity" required="N" />
+      <field name="Rule80A" required="N" />
+      <field name="ForexReq" required="N" />
+      <field name="SettlCurrency" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="FutSettDate2" required="N" />
+      <field name="OrderQty2" required="N" />
+      <field name="Price2" required="N" />
+      <field name="PositionEffect" required="N" />
+      <field name="CoveredOrUncovered" required="N" />
+      <field name="MaxShow" required="N" />
+      <field name="PegDifference" required="N" />
+      <field name="DiscretionInst" required="N" />
+      <field name="DiscretionOffset" required="N" />
+      <field name="CancellationRights" required="N" />
+      <field name="MoneyLaunderingStatus" required="N" />
+      <field name="RegistID" required="N" />
+      <field name="Designation" required="N" />
+      <field name="AccruedInterestRate" required="N" />
+      <field name="AccruedInterestAmt" required="N" />
+      <field name="NetMoney" required="N" />
+    </message>
+    <message name="ExecutionReport" msgtype="8" msgcat="app">
+      <field name="OrderID" required="Y" />
+      <field name="SecondaryOrderID" required="N" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="SecondaryExecID" required="N" />
+      <field name="ClOrdID" required="N" />
+      <field name="OrigClOrdID" required="N" />
+      <field name="ClOrdLinkID" required="N" />
+      <component name="Parties" required="N" />
+      <field name="TradeOriginationDate" required="N" />
+      <group name="NoContraBrokers" required="N">
+        <field name="ContraBroker" required="N" />
+        <field name="ContraTrader" required="N" />
+        <field name="ContraTradeQty" required="N" />
+        <field name="ContraTradeTime" required="N" />
+        <field name="ContraLegRefID" required="N" />
+      </group>
+      <field name="ListID" required="N" />
+      <field name="CrossID" required="N" />
+      <field name="OrigCrossID" required="N" />
+      <field name="CrossType" required="N" />
+      <field name="ExecID" required="Y" />
+      <field name="ExecRefID" required="N" />
+      <field name="ExecType" required="Y" />
+      <field name="OrdStatus" required="Y" />
+      <field name="WorkingIndicator" required="N" />
+      <field name="OrdRejReason" required="N" />
+      <field name="ExecRestatementReason" required="N" />
+      <field name="Account" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="DayBookingInst" required="N" />
+      <field name="BookingUnit" required="N" />
+      <field name="PreallocMethod" required="N" />
+      <field name="SettlmntTyp" required="N" />
+      <field name="FutSettDate" required="N" />
+      <field name="CashMargin" required="N" />
+      <field name="ClearingFeeIndicator" required="N" />
+      <component name="Instrument" required="Y" />
+      <field name="Side" required="Y" />
+      <component name="Stipulations" required="N" />
+      <field name="QuantityType" required="N" />
+      <component name="OrderQtyData" required="Y" />
+      <field name="OrdType" required="N" />
+      <field name="PriceType" required="N" />
+      <field name="Price" required="N" />
+      <field name="StopPx" required="N" />
+      <field name="PegDifference" required="N" />
+      <field name="DiscretionInst" required="N" />
+      <field name="DiscretionOffset" required="N" />
+      <field name="Currency" required="N" />
+      <field name="ComplianceID" required="N" />
+      <field name="SolicitedFlag" required="N" />
+      <field name="TimeInForce" required="N" />
+      <field name="EffectiveTime" required="N" />
+      <field name="ExpireDate" required="N" />
+      <field name="ExpireTime" required="N" />
+      <field name="ExecInst" required="N" />
+      <field name="OrderCapacity" required="N" />
+      <field name="OrderRestrictions" required="N" />
+      <field name="CustOrderCapacity" required="N" />
+      <field name="Rule80A" required="N" />
+      <field name="LastQty" required="N" />
+      <field name="UnderlyingLastQty" required="N" />
+      <field name="LastPx" required="N" />
+      <field name="UnderlyingLastPx" required="N" />
+      <field name="LastSpotRate" required="N" />
+      <field name="LastForwardPoints" required="N" />
+      <field name="LastMkt" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="LastCapacity" required="N" />
+      <field name="LeavesQty" required="Y" />
+      <field name="CumQty" required="Y" />
+      <field name="AvgPx" required="Y" />
+      <field name="DayOrderQty" required="N" />
+      <field name="DayCumQty" required="N" />
+      <field name="DayAvgPx" required="N" />
+      <field name="GTBookingInst" required="N" />
+      <field name="TradeDate" required="N" />
+      <field name="TransactTime" required="N" />
+      <field name="ReportToExch" required="N" />
+      <component name="CommissionData" required="N" />
+      <component name="SpreadOrBenchmarkCurveData" required="N" />
+      <component name="YieldData" required="N" />
+      <field name="GrossTradeAmt" required="N" />
+      <field name="NumDaysInterest" required="N" />
+      <field name="ExDate" required="N" />
+      <field name="AccruedInterestRate" required="N" />
+      <field name="AccruedInterestAmt" required="N" />
+      <field name="TradedFlatSwitch" required="N" />
+      <field name="BasisFeatureDate" required="N" />
+      <field name="BasisFeaturePrice" required="N" />
+      <field name="Concession" required="N" />
+      <field name="TotalTakedown" required="N" />
+      <field name="NetMoney" required="N" />
+      <field name="SettlCurrAmt" required="N" />
+      <field name="SettlCurrency" required="N" />
+      <field name="SettlCurrFxRate" required="N" />
+      <field name="SettlCurrFxRateCalc" required="N" />
+      <field name="HandlInst" required="N" />
+      <field name="MinQty" required="N" />
+      <field name="MaxFloor" required="N" />
+      <field name="PositionEffect" required="N" />
+      <field name="MaxShow" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="FutSettDate2" required="N" />
+      <field name="OrderQty2" required="N" />
+      <field name="LastForwardPoints2" required="N" />
+      <field name="MultiLegReportingType" required="N" />
+      <field name="CancellationRights" required="N" />
+      <field name="MoneyLaunderingStatus" required="N" />
+      <field name="RegistID" required="N" />
+      <field name="Designation" required="N" />
+      <field name="TransBkdTime" required="N" />
+      <field name="ExecValuationPoint" required="N" />
+      <field name="ExecPriceType" required="N" />
+      <field name="ExecPriceAdjustment" required="N" />
+      <field name="PriorityIndicator" required="N" />
+      <field name="PriceImprovement" required="N" />
+      <group name="NoContAmts" required="N">
+        <field name="ContAmtType" required="N" />
+        <field name="ContAmtValue" required="N" />
+        <field name="ContAmtCurr" required="N" />
+      </group>
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+        <field name="LegPositionEffect" required="N" />
+        <field name="LegCoveredOrUncovered" required="N" />
+        <component name="NestedParties" required="N" />
+        <field name="LegRefID" required="N" />
+        <field name="LegPrice" required="N" />
+        <field name="LegSettlmntTyp" required="N" />
+        <field name="LegFutSettDate" required="N" />
+        <field name="LegLastPx" required="N" />
+      </group>
+    </message>
+    <message name="DontKnowTrade" msgtype="Q" msgcat="app">
+      <field name="OrderID" required="Y" />
+      <field name="ExecID" required="Y" />
+      <field name="DKReason" required="Y" />
+      <component name="Instrument" required="Y" />
+      <field name="Side" required="Y" />
+      <component name="OrderQtyData" required="Y" />
+      <field name="LastQty" required="N" />
+      <field name="LastPx" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="OrderCancelReplaceRequest" msgtype="G" msgcat="app">
+      <field name="OrderID" required="N" />
+      <component name="Parties" required="N" />
+      <field name="TradeOriginationDate" required="N" />
+      <field name="OrigClOrdID" required="Y" />
+      <field name="ClOrdID" required="Y" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ClOrdLinkID" required="N" />
+      <field name="ListID" required="N" />
+      <field name="OrigOrdModTime" required="N" />
+      <field name="Account" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="DayBookingInst" required="N" />
+      <field name="BookingUnit" required="N" />
+      <field name="PreallocMethod" required="N" />
+      <group name="NoAllocs" required="N">
+        <field name="AllocAccount" required="N" />
+        <field name="IndividualAllocID" required="N" />
+        <component name="NestedParties" required="N" />
+        <field name="AllocQty" required="N" />
+      </group>
+      <field name="SettlmntTyp" required="N" />
+      <field name="FutSettDate" required="N" />
+      <field name="CashMargin" required="N" />
+      <field name="ClearingFeeIndicator" required="N" />
+      <field name="HandlInst" required="Y" />
+      <field name="ExecInst" required="N" />
+      <field name="MinQty" required="N" />
+      <field name="MaxFloor" required="N" />
+      <field name="ExDestination" required="N" />
+      <group name="NoTradingSessions" required="N">
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+      </group>
+      <component name="Instrument" required="Y" />
+      <field name="Side" required="Y" />
+      <field name="TransactTime" required="Y" />
+      <field name="QuantityType" required="N" />
+      <component name="OrderQtyData" required="Y" />
+      <field name="OrdType" required="Y" />
+      <field name="PriceType" required="N" />
+      <field name="Price" required="N" />
+      <field name="StopPx" required="N" />
+      <component name="SpreadOrBenchmarkCurveData" required="N" />
+      <component name="YieldData" required="N" />
+      <field name="PegDifference" required="N" />
+      <field name="DiscretionInst" required="N" />
+      <field name="DiscretionOffset" required="N" />
+      <field name="ComplianceID" required="N" />
+      <field name="SolicitedFlag" required="N" />
+      <field name="Currency" required="N" />
+      <field name="TimeInForce" required="N" />
+      <field name="EffectiveTime" required="N" />
+      <field name="ExpireDate" required="N" />
+      <field name="ExpireTime" required="N" />
+      <field name="GTBookingInst" required="N" />
+      <component name="CommissionData" required="N" />
+      <field name="OrderCapacity" required="N" />
+      <field name="OrderRestrictions" required="N" />
+      <field name="CustOrderCapacity" required="N" />
+      <field name="Rule80A" required="N" />
+      <field name="ForexReq" required="N" />
+      <field name="SettlCurrency" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="FutSettDate2" required="N" />
+      <field name="OrderQty2" required="N" />
+      <field name="Price2" required="N" />
+      <field name="PositionEffect" required="N" />
+      <field name="CoveredOrUncovered" required="N" />
+      <field name="MaxShow" required="N" />
+      <field name="LocateReqd" required="N" />
+      <field name="CancellationRights" required="N" />
+      <field name="MoneyLaunderingStatus" required="N" />
+      <field name="RegistID" required="N" />
+      <field name="Designation" required="N" />
+      <field name="AccruedInterestRate" required="N" />
+      <field name="AccruedInterestAmt" required="N" />
+      <field name="NetMoney" required="N" />
+    </message>
+    <message name="OrderCancelRequest" msgtype="F" msgcat="app">
+      <field name="OrigClOrdID" required="Y" />
+      <field name="OrderID" required="N" />
+      <field name="ClOrdID" required="Y" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ClOrdLinkID" required="N" />
+      <field name="ListID" required="N" />
+      <field name="OrigOrdModTime" required="N" />
+      <field name="Account" required="N" />
+      <field name="AccountType" required="N" />
+      <component name="Parties" required="N" />
+      <component name="Instrument" required="Y" />
+      <field name="Side" required="Y" />
+      <field name="TransactTime" required="Y" />
+      <component name="OrderQtyData" required="Y" />
+      <field name="ComplianceID" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="OrderCancelReject" msgtype="9" msgcat="app">
+      <field name="OrderID" required="Y" />
+      <field name="SecondaryOrderID" required="N" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ClOrdID" required="Y" />
+      <field name="ClOrdLinkID" required="N" />
+      <field name="OrigClOrdID" required="Y" />
+      <field name="OrdStatus" required="Y" />
+      <field name="WorkingIndicator" required="N" />
+      <field name="OrigOrdModTime" required="N" />
+      <field name="ListID" required="N" />
+      <field name="Account" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="TradeOriginationDate" required="N" />
+      <field name="TransactTime" required="N" />
+      <field name="CxlRejResponseTo" required="Y" />
+      <field name="CxlRejReason" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="OrderStatusRequest" msgtype="H" msgcat="app">
+      <field name="OrderID" required="N" />
+      <field name="ClOrdID" required="Y" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ClOrdLinkID" required="N" />
+      <component name="Parties" required="N" />
+      <field name="Account" required="N" />
+      <component name="Instrument" required="Y" />
+      <field name="Side" required="Y" />
+    </message>
+    <message name="OrderMassCancelRequest" msgtype="q" msgcat="app">
+      <field name="ClOrdID" required="Y" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="MassCancelRequestType" required="Y" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <component name="Instrument" required="N" />
+      <component name="UnderlyingInstrument" required="N" />
+      <field name="Side" required="N" />
+      <field name="TransactTime" required="Y" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="OrderMassCancelReport" msgtype="r" msgcat="app">
+      <field name="ClOrdID" required="N" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="OrderID" required="Y" />
+      <field name="SecondaryOrderID" required="N" />
+      <field name="MassCancelRequestType" required="Y" />
+      <field name="MassCancelResponse" required="Y" />
+      <field name="MassCancelRejectReason" required="N" />
+      <field name="TotalAffectedOrders" required="N" />
+      <group name="NoAffectedOrders" required="N">
+        <field name="OrigClOrdID" required="N" />
+        <field name="AffectedOrderID" required="N" />
+        <field name="AffectedSecondaryOrderID" required="N" />
+      </group>
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <component name="Instrument" required="N" />
+      <component name="UnderlyingInstrument" required="N" />
+      <field name="Side" required="N" />
+      <field name="TransactTime" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="OrderMassStatusRequest" msgtype="AF" msgcat="app">
+      <field name="MassStatusReqID" required="Y" />
+      <field name="MassStatusReqType" required="Y" />
+      <component name="Parties" required="N" />
+      <field name="Account" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <component name="Instrument" required="N" />
+      <component name="UnderlyingInstrument" required="N" />
+      <field name="Side" required="N" />
+    </message>
+    <message name="NewOrderCross" msgtype="s" msgcat="app">
+      <field name="CrossID" required="Y" />
+      <field name="CrossType" required="Y" />
+      <field name="CrossPrioritization" required="Y" />
+      <group name="NoSides" required="Y">
+        <field name="Side" required="Y" />
+        <field name="ClOrdID" required="Y" />
+        <field name="SecondaryClOrdID" required="N" />
+        <field name="ClOrdLinkID" required="N" />
+        <component name="Parties" required="N" />
+        <field name="TradeOriginationDate" required="N" />
+        <field name="Account" required="N" />
+        <field name="AccountType" required="N" />
+        <field name="DayBookingInst" required="N" />
+        <field name="BookingUnit" required="N" />
+        <field name="PreallocMethod" required="N" />
+        <group name="NoAllocs" required="N">
+          <field name="AllocAccount" required="N" />
+          <field name="IndividualAllocID" required="N" />
+          <component name="NestedParties" required="N" />
+          <field name="AllocQty" required="N" />
+        </group>
+        <field name="QuantityType" required="N" />
+        <component name="OrderQtyData" required="Y" />
+        <component name="CommissionData" required="N" />
+        <field name="OrderCapacity" required="N" />
+        <field name="OrderRestrictions" required="N" />
+        <field name="CustOrderCapacity" required="N" />
+        <field name="ForexReq" required="N" />
+        <field name="SettlCurrency" required="N" />
+        <field name="Text" required="N" />
+        <field name="EncodedTextLen" required="N" />
+        <field name="EncodedText" required="N" />
+        <field name="PositionEffect" required="N" />
+        <field name="CoveredOrUncovered" required="N" />
+        <field name="CashMargin" required="N" />
+        <field name="ClearingFeeIndicator" required="N" />
+        <field name="SolicitedFlag" required="N" />
+        <field name="SideComplianceID" required="N" />
+      </group>
+      <component name="Instrument" required="Y" />
+      <field name="SettlmntTyp" required="N" />
+      <field name="FutSettDate" required="N" />
+      <field name="HandlInst" required="Y" />
+      <field name="ExecInst" required="N" />
+      <field name="MinQty" required="N" />
+      <field name="MaxFloor" required="N" />
+      <field name="ExDestination" required="N" />
+      <group name="NoTradingSessions" required="N">
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+      </group>
+      <field name="ProcessCode" required="N" />
+      <field name="PrevClosePx" required="N" />
+      <field name="LocateReqd" required="N" />
+      <field name="TransactTime" required="Y" />
+      <component name="Stipulations" required="N" />
+      <field name="OrdType" required="Y" />
+      <field name="PriceType" required="N" />
+      <field name="Price" required="N" />
+      <field name="StopPx" required="N" />
+      <component name="SpreadOrBenchmarkCurveData" required="N" />
+      <component name="YieldData" required="N" />
+      <field name="Currency" required="N" />
+      <field name="ComplianceID" required="N" />
+      <field name="IOIid" required="N" />
+      <field name="QuoteID" required="N" />
+      <field name="TimeInForce" required="N" />
+      <field name="EffectiveTime" required="N" />
+      <field name="ExpireDate" required="N" />
+      <field name="ExpireTime" required="N" />
+      <field name="GTBookingInst" required="N" />
+      <field name="MaxShow" required="N" />
+      <field name="PegDifference" required="N" />
+      <field name="DiscretionInst" required="N" />
+      <field name="DiscretionOffset" required="N" />
+      <field name="CancellationRights" required="N" />
+      <field name="MoneyLaunderingStatus" required="N" />
+      <field name="RegistID" required="N" />
+      <field name="Designation" required="N" />
+      <field name="AccruedInterestRate" required="N" />
+      <field name="AccruedInterestAmt" required="N" />
+      <field name="NetMoney" required="N" />
+    </message>
+    <message name="CrossOrderCancelReplaceRequest" msgtype="t" msgcat="app">
+      <field name="OrderID" required="N" />
+      <field name="CrossID" required="Y" />
+      <field name="OrigCrossID" required="Y" />
+      <field name="CrossType" required="Y" />
+      <field name="CrossPrioritization" required="Y" />
+      <group name="NoSides" required="Y">
+        <field name="Side" required="Y" />
+        <field name="OrigClOrdID" required="N" />
+        <field name="ClOrdID" required="Y" />
+        <field name="SecondaryClOrdID" required="N" />
+        <field name="ClOrdLinkID" required="N" />
+        <field name="OrigOrdModTime" required="N" />
+        <component name="Parties" required="N" />
+        <field name="TradeOriginationDate" required="N" />
+        <field name="Account" required="N" />
+        <field name="AccountType" required="N" />
+        <field name="DayBookingInst" required="N" />
+        <field name="BookingUnit" required="N" />
+        <field name="PreallocMethod" required="N" />
+        <group name="NoAllocs" required="N">
+          <field name="AllocAccount" required="N" />
+          <field name="IndividualAllocID" required="N" />
+          <component name="NestedParties" required="N" />
+          <field name="AllocQty" required="N" />
+        </group>
+        <field name="QuantityType" required="N" />
+        <component name="OrderQtyData" required="Y" />
+        <component name="CommissionData" required="N" />
+        <field name="OrderCapacity" required="N" />
+        <field name="OrderRestrictions" required="N" />
+        <field name="CustOrderCapacity" required="N" />
+        <field name="ForexReq" required="N" />
+        <field name="SettlCurrency" required="N" />
+        <field name="Text" required="N" />
+        <field name="EncodedTextLen" required="N" />
+        <field name="EncodedText" required="N" />
+        <field name="PositionEffect" required="N" />
+        <field name="CoveredOrUncovered" required="N" />
+        <field name="CashMargin" required="N" />
+        <field name="ClearingFeeIndicator" required="N" />
+        <field name="SolicitedFlag" required="N" />
+        <field name="SideComplianceID" required="N" />
+      </group>
+      <component name="Instrument" required="Y" />
+      <field name="SettlmntTyp" required="N" />
+      <field name="FutSettDate" required="N" />
+      <field name="HandlInst" required="Y" />
+      <field name="ExecInst" required="N" />
+      <field name="MinQty" required="N" />
+      <field name="MaxFloor" required="N" />
+      <field name="ExDestination" required="N" />
+      <group name="NoTradingSessions" required="N">
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+      </group>
+      <field name="ProcessCode" required="N" />
+      <field name="PrevClosePx" required="N" />
+      <field name="LocateReqd" required="N" />
+      <field name="TransactTime" required="Y" />
+      <component name="Stipulations" required="N" />
+      <field name="OrdType" required="Y" />
+      <field name="PriceType" required="N" />
+      <field name="Price" required="N" />
+      <field name="StopPx" required="N" />
+      <component name="SpreadOrBenchmarkCurveData" required="N" />
+      <component name="YieldData" required="N" />
+      <field name="Currency" required="N" />
+      <field name="ComplianceID" required="N" />
+      <field name="IOIid" required="N" />
+      <field name="QuoteID" required="N" />
+      <field name="TimeInForce" required="N" />
+      <field name="EffectiveTime" required="N" />
+      <field name="ExpireDate" required="N" />
+      <field name="ExpireTime" required="N" />
+      <field name="GTBookingInst" required="N" />
+      <field name="MaxShow" required="N" />
+      <field name="PegDifference" required="N" />
+      <field name="DiscretionInst" required="N" />
+      <field name="DiscretionOffset" required="N" />
+      <field name="CancellationRights" required="N" />
+      <field name="MoneyLaunderingStatus" required="N" />
+      <field name="RegistID" required="N" />
+      <field name="Designation" required="N" />
+      <field name="AccruedInterestRate" required="N" />
+      <field name="AccruedInterestAmt" required="N" />
+      <field name="NetMoney" required="N" />
+    </message>
+    <message name="CrossOrderCancelRequest" msgtype="u" msgcat="app">
+      <field name="OrderID" required="N" />
+      <field name="CrossID" required="Y" />
+      <field name="OrigCrossID" required="Y" />
+      <field name="CrossType" required="Y" />
+      <field name="CrossPrioritization" required="Y" />
+      <group name="NoSides" required="Y">
+        <field name="Side" required="Y" />
+        <field name="OrigClOrdID" required="N" />
+        <field name="ClOrdID" required="Y" />
+        <field name="SecondaryClOrdID" required="N" />
+        <field name="ClOrdLinkID" required="N" />
+        <field name="OrigOrdModTime" required="N" />
+        <component name="Parties" required="N" />
+        <field name="TradeOriginationDate" required="N" />
+        <component name="OrderQtyData" required="Y" />
+        <field name="ComplianceID" required="N" />
+        <field name="Text" required="N" />
+        <field name="EncodedTextLen" required="N" />
+        <field name="EncodedText" required="N" />
+      </group>
+      <component name="Instrument" required="Y" />
+      <field name="TransactTime" required="Y" />
+    </message>
+    <message name="NewOrderMultileg" msgtype="AB" msgcat="app">
+      <field name="ClOrdID" required="Y" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ClOrdLinkID" required="N" />
+      <component name="Parties" required="N" />
+      <field name="Account" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="DayBookingInst" required="N" />
+      <field name="BookingUnit" required="N" />
+      <field name="PreallocMethod" required="N" />
+      <group name="NoAllocs" required="N">
+        <field name="AllocAccount" required="N" />
+        <field name="IndividualAllocID" required="N" />
+        <field name="AllocQty" required="N" />
+      </group>
+      <field name="SettlmntTyp" required="N" />
+      <field name="FutSettDate" required="N" />
+      <field name="CashMargin" required="N" />
+      <field name="ClearingFeeIndicator" required="N" />
+      <field name="HandlInst" required="Y" />
+      <field name="ExecInst" required="N" />
+      <field name="MinQty" required="N" />
+      <field name="MaxFloor" required="N" />
+      <field name="ExDestination" required="N" />
+      <group name="NoTradingSessions" required="N">
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+      </group>
+      <field name="ProcessCode" required="N" />
+      <field name="Side" required="Y" />
+      <component name="Instrument" required="Y" />
+      <field name="PrevClosePx" required="N" />
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+        <field name="LegPositionEffect" required="N" />
+        <field name="LegCoveredOrUncovered" required="N" />
+        <component name="NestedParties" required="N" />
+        <field name="LegRefID" required="N" />
+        <field name="LegPrice" required="N" />
+        <field name="LegSettlmntTyp" required="N" />
+        <field name="LegFutSettDate" required="N" />
+      </group>
+      <field name="LocateReqd" required="N" />
+      <field name="TransactTime" required="Y" />
+      <field name="QuantityType" required="N" />
+      <component name="OrderQtyData" required="Y" />
+      <field name="OrdType" required="Y" />
+      <field name="PriceType" required="N" />
+      <field name="Price" required="N" />
+      <field name="StopPx" required="N" />
+      <field name="Currency" required="N" />
+      <field name="ComplianceID" required="N" />
+      <field name="SolicitedFlag" required="N" />
+      <field name="IOIid" required="N" />
+      <field name="QuoteID" required="N" />
+      <field name="TimeInForce" required="N" />
+      <field name="EffectiveTime" required="N" />
+      <field name="ExpireDate" required="N" />
+      <field name="ExpireTime" required="N" />
+      <field name="GTBookingInst" required="N" />
+      <component name="CommissionData" required="N" />
+      <field name="OrderCapacity" required="N" />
+      <field name="OrderRestrictions" required="N" />
+      <field name="CustOrderCapacity" required="N" />
+      <field name="ForexReq" required="N" />
+      <field name="SettlCurrency" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="PositionEffect" required="N" />
+      <field name="CoveredOrUncovered" required="N" />
+      <field name="MaxShow" required="N" />
+      <field name="PegDifference" required="N" />
+      <field name="DiscretionInst" required="N" />
+      <field name="DiscretionOffset" required="N" />
+      <field name="CancellationRights" required="N" />
+      <field name="MoneyLaunderingStatus" required="N" />
+      <field name="RegistID" required="N" />
+      <field name="Designation" required="N" />
+      <field name="MultiLegRptTypeReq" required="N" />
+      <field name="NetMoney" required="N" />
+    </message>
+    <message name="MultilegOrderCancelReplaceRequest" msgtype="AC" msgcat="app">
+      <field name="OrderID" required="N" />
+      <field name="OrigClOrdID" required="Y" />
+      <field name="ClOrdID" required="Y" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ClOrdLinkID" required="N" />
+      <field name="OrigOrdModTime" required="N" />
+      <component name="Parties" required="N" />
+      <field name="Account" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="DayBookingInst" required="N" />
+      <field name="BookingUnit" required="N" />
+      <field name="PreallocMethod" required="N" />
+      <group name="NoAllocs" required="N">
+        <field name="AllocAccount" required="N" />
+        <field name="IndividualAllocID" required="N" />
+        <field name="AllocQty" required="N" />
+      </group>
+      <field name="SettlmntTyp" required="N" />
+      <field name="FutSettDate" required="N" />
+      <field name="CashMargin" required="N" />
+      <field name="ClearingFeeIndicator" required="N" />
+      <field name="HandlInst" required="Y" />
+      <field name="ExecInst" required="N" />
+      <field name="MinQty" required="N" />
+      <field name="MaxFloor" required="N" />
+      <field name="ExDestination" required="N" />
+      <group name="NoTradingSessions" required="N">
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+      </group>
+      <field name="ProcessCode" required="N" />
+      <field name="Side" required="Y" />
+      <component name="Instrument" required="Y" />
+      <field name="PrevClosePx" required="N" />
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+        <field name="LegPositionEffect" required="N" />
+        <field name="LegCoveredOrUncovered" required="N" />
+        <component name="NestedParties" required="N" />
+        <field name="LegRefID" required="N" />
+        <field name="LegPrice" required="N" />
+        <field name="LegSettlmntTyp" required="N" />
+        <field name="LegFutSettDate" required="N" />
+      </group>
+      <field name="LocateReqd" required="N" />
+      <field name="TransactTime" required="Y" />
+      <field name="QuantityType" required="N" />
+      <component name="OrderQtyData" required="Y" />
+      <field name="OrdType" required="Y" />
+      <field name="PriceType" required="N" />
+      <field name="Price" required="N" />
+      <field name="StopPx" required="N" />
+      <field name="Currency" required="N" />
+      <field name="ComplianceID" required="N" />
+      <field name="SolicitedFlag" required="N" />
+      <field name="IOIid" required="N" />
+      <field name="QuoteID" required="N" />
+      <field name="TimeInForce" required="N" />
+      <field name="EffectiveTime" required="N" />
+      <field name="ExpireDate" required="N" />
+      <field name="ExpireTime" required="N" />
+      <field name="GTBookingInst" required="N" />
+      <component name="CommissionData" required="N" />
+      <field name="OrderCapacity" required="N" />
+      <field name="OrderRestrictions" required="N" />
+      <field name="CustOrderCapacity" required="N" />
+      <field name="ForexReq" required="N" />
+      <field name="SettlCurrency" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="PositionEffect" required="N" />
+      <field name="CoveredOrUncovered" required="N" />
+      <field name="MaxShow" required="N" />
+      <field name="PegDifference" required="N" />
+      <field name="DiscretionInst" required="N" />
+      <field name="DiscretionOffset" required="N" />
+      <field name="CancellationRights" required="N" />
+      <field name="MoneyLaunderingStatus" required="N" />
+      <field name="RegistID" required="N" />
+      <field name="Designation" required="N" />
+      <field name="MultiLegRptTypeReq" required="N" />
+      <field name="NetMoney" required="N" />
+    </message>
+    <message name="BidRequest" msgtype="k" msgcat="app">
+      <field name="BidID" required="N" />
+      <field name="ClientBidID" required="Y" />
+      <field name="BidRequestTransType" required="Y" />
+      <field name="ListName" required="N" />
+      <field name="TotalNumSecurities" required="Y" />
+      <field name="BidType" required="Y" />
+      <field name="NumTickets" required="N" />
+      <field name="Currency" required="N" />
+      <field name="SideValue1" required="N" />
+      <field name="SideValue2" required="N" />
+      <group name="NoBidDescriptors" required="N">
+        <field name="BidDescriptorType" required="N" />
+        <field name="BidDescriptor" required="N" />
+        <field name="SideValueInd" required="N" />
+        <field name="LiquidityValue" required="N" />
+        <field name="LiquidityNumSecurities" required="N" />
+        <field name="LiquidityPctLow" required="N" />
+        <field name="LiquidityPctHigh" required="N" />
+        <field name="EFPTrackingError" required="N" />
+        <field name="FairValue" required="N" />
+        <field name="OutsideIndexPct" required="N" />
+        <field name="ValueOfFutures" required="N" />
+      </group>
+      <group name="NoBidComponents" required="N">
+        <field name="ListID" required="N" />
+        <field name="Side" required="N" />
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+        <field name="NetGrossInd" required="N" />
+        <field name="SettlmntTyp" required="N" />
+        <field name="FutSettDate" required="N" />
+        <field name="Account" required="N" />
+      </group>
+      <field name="LiquidityIndType" required="N" />
+      <field name="WtAverageLiquidity" required="N" />
+      <field name="ExchangeForPhysical" required="N" />
+      <field name="OutMainCntryUIndex" required="N" />
+      <field name="CrossPercent" required="N" />
+      <field name="ProgRptReqs" required="N" />
+      <field name="ProgPeriodInterval" required="N" />
+      <field name="IncTaxInd" required="N" />
+      <field name="ForexReq" required="N" />
+      <field name="NumBidders" required="N" />
+      <field name="TradeDate" required="N" />
+      <field name="TradeType" required="Y" />
+      <field name="BasisPxType" required="Y" />
+      <field name="StrikeTime" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="BidResponse" msgtype="l" msgcat="app">
+      <field name="BidID" required="N" />
+      <field name="ClientBidID" required="N" />
+      <group name="NoBidComponents" required="Y">
+        <component name="CommissionData" required="Y" />
+        <field name="ListID" required="N" />
+        <field name="Country" required="N" />
+        <field name="Side" required="N" />
+        <field name="Price" required="N" />
+        <field name="PriceType" required="N" />
+        <field name="FairValue" required="N" />
+        <field name="NetGrossInd" required="N" />
+        <field name="SettlmntTyp" required="N" />
+        <field name="FutSettDate" required="N" />
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+        <field name="Text" required="N" />
+        <field name="EncodedTextLen" required="N" />
+        <field name="EncodedText" required="N" />
+      </group>
+    </message>
+    <message name="NewOrderList" msgtype="E" msgcat="app">
+      <field name="ListID" required="Y" />
+      <field name="BidID" required="N" />
+      <field name="ClientBidID" required="N" />
+      <field name="ProgRptReqs" required="N" />
+      <field name="BidType" required="Y" />
+      <field name="ProgPeriodInterval" required="N" />
+      <field name="CancellationRights" required="N" />
+      <field name="MoneyLaunderingStatus" required="N" />
+      <field name="RegistID" required="N" />
+      <field name="ListExecInstType" required="N" />
+      <field name="ListExecInst" required="N" />
+      <field name="EncodedListExecInstLen" required="N" />
+      <field name="EncodedListExecInst" required="N" />
+      <field name="TotNoOrders" required="Y" />
+      <group name="NoOrders" required="Y">
+        <field name="ClOrdID" required="Y" />
+        <field name="SecondaryClOrdID" required="N" />
+        <field name="ListSeqNo" required="Y" />
+        <field name="ClOrdLinkID" required="N" />
+        <field name="SettlInstMode" required="N" />
+        <component name="Parties" required="N" />
+        <field name="TradeOriginationDate" required="N" />
+        <field name="Account" required="N" />
+        <field name="AccountType" required="N" />
+        <field name="DayBookingInst" required="N" />
+        <field name="BookingUnit" required="N" />
+        <field name="PreallocMethod" required="N" />
+        <group name="NoAllocs" required="N">
+          <field name="AllocAccount" required="N" />
+          <field name="IndividualAllocID" required="N" />
+          <component name="NestedParties" required="N" />
+          <field name="AllocQty" required="N" />
+        </group>
+        <field name="SettlmntTyp" required="N" />
+        <field name="FutSettDate" required="N" />
+        <field name="CashMargin" required="N" />
+        <field name="ClearingFeeIndicator" required="N" />
+        <field name="HandlInst" required="N" />
+        <field name="ExecInst" required="N" />
+        <field name="MinQty" required="N" />
+        <field name="MaxFloor" required="N" />
+        <field name="ExDestination" required="N" />
+        <group name="NoTradingSessions" required="N">
+          <field name="TradingSessionID" required="N" />
+          <field name="TradingSessionSubID" required="N" />
+        </group>
+        <field name="ProcessCode" required="N" />
+        <component name="Instrument" required="Y" />
+        <field name="PrevClosePx" required="N" />
+        <field name="Side" required="Y" />
+        <field name="SideValueInd" required="N" />
+        <field name="LocateReqd" required="N" />
+        <field name="TransactTime" required="N" />
+        <component name="Stipulations" required="N" />
+        <field name="QuantityType" required="N" />
+        <component name="OrderQtyData" required="Y" />
+        <field name="OrdType" required="N" />
+        <field name="PriceType" required="N" />
+        <field name="Price" required="N" />
+        <field name="StopPx" required="N" />
+        <component name="SpreadOrBenchmarkCurveData" required="N" />
+        <component name="YieldData" required="N" />
+        <field name="Currency" required="N" />
+        <field name="ComplianceID" required="N" />
+        <field name="SolicitedFlag" required="N" />
+        <field name="IOIid" required="N" />
+        <field name="QuoteID" required="N" />
+        <field name="TimeInForce" required="N" />
+        <field name="EffectiveTime" required="N" />
+        <field name="ExpireDate" required="N" />
+        <field name="ExpireTime" required="N" />
+        <field name="GTBookingInst" required="N" />
+        <component name="CommissionData" required="N" />
+        <field name="OrderCapacity" required="N" />
+        <field name="OrderRestrictions" required="N" />
+        <field name="CustOrderCapacity" required="N" />
+        <field name="Rule80A" required="N" />
+        <field name="ForexReq" required="N" />
+        <field name="SettlCurrency" required="N" />
+        <field name="Text" required="N" />
+        <field name="EncodedTextLen" required="N" />
+        <field name="EncodedText" required="N" />
+        <field name="FutSettDate2" required="N" />
+        <field name="OrderQty2" required="N" />
+        <field name="Price2" required="N" />
+        <field name="PositionEffect" required="N" />
+        <field name="CoveredOrUncovered" required="N" />
+        <field name="MaxShow" required="N" />
+        <field name="PegDifference" required="N" />
+        <field name="DiscretionInst" required="N" />
+        <field name="DiscretionOffset" required="N" />
+        <field name="Designation" required="N" />
+        <field name="AccruedInterestRate" required="N" />
+        <field name="AccruedInterestAmt" required="N" />
+        <field name="NetMoney" required="N" />
+      </group>
+    </message>
+    <message name="ListStrikePrice" msgtype="m" msgcat="app">
+      <field name="ListID" required="Y" />
+      <field name="TotNoStrikes" required="Y" />
+      <group name="NoStrikes" required="Y">
+        <component name="Instrument" required="Y" />
+        <field name="PrevClosePx" required="N" />
+        <field name="ClOrdID" required="N" />
+        <field name="SecondaryClOrdID" required="N" />
+        <field name="Side" required="N" />
+        <field name="Price" required="Y" />
+        <field name="Currency" required="N" />
+        <field name="Text" required="N" />
+        <field name="EncodedTextLen" required="N" />
+        <field name="EncodedText" required="N" />
+      </group>
+    </message>
+    <message name="ListExecute" msgtype="L" msgcat="app">
+      <field name="ListID" required="Y" />
+      <field name="ClientBidID" required="N" />
+      <field name="BidID" required="N" />
+      <field name="TransactTime" required="Y" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="ListCancelRequest" msgtype="K" msgcat="app">
+      <field name="ListID" required="Y" />
+      <field name="TransactTime" required="Y" />
+      <field name="TradeOriginationDate" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="ListStatusRequest" msgtype="M" msgcat="app">
+      <field name="ListID" required="Y" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="ListStatus" msgtype="N" msgcat="app">
+      <field name="ListID" required="Y" />
+      <field name="ListStatusType" required="Y" />
+      <field name="NoRpts" required="Y" />
+      <field name="ListOrderStatus" required="Y" />
+      <field name="RptSeq" required="Y" />
+      <field name="ListStatusText" required="N" />
+      <field name="EncodedListStatusTextLen" required="N" />
+      <field name="EncodedListStatusText" required="N" />
+      <field name="TransactTime" required="N" />
+      <field name="TotNoOrders" required="Y" />
+      <group name="NoOrders" required="Y">
+        <field name="ClOrdID" required="Y" />
+        <field name="SecondaryClOrdID" required="N" />
+        <field name="CumQty" required="Y" />
+        <field name="OrdStatus" required="Y" />
+        <field name="WorkingIndicator" required="N" />
+        <field name="LeavesQty" required="Y" />
+        <field name="CxlQty" required="Y" />
+        <field name="AvgPx" required="Y" />
+        <field name="OrdRejReason" required="N" />
+        <field name="Text" required="N" />
+        <field name="EncodedTextLen" required="N" />
+        <field name="EncodedText" required="N" />
+      </group>
+    </message>
+    <message name="Allocation" msgtype="J" msgcat="app">
+      <field name="AllocID" required="Y" />
+      <field name="AllocTransType" required="Y" />
+      <field name="AllocType" required="Y" />
+      <field name="RefAllocID" required="N" />
+      <field name="AllocLinkID" required="N" />
+      <field name="AllocLinkType" required="N" />
+      <field name="BookingRefID" required="N" />
+      <group name="NoOrders" required="Y">
+        <field name="ClOrdID" required="Y" />
+        <field name="OrderID" required="N" />
+        <field name="SecondaryOrderID" required="N" />
+        <field name="SecondaryClOrdID" required="N" />
+        <field name="ListID" required="N" />
+      </group>
+      <group name="NoExecs" required="N">
+        <field name="LastQty" required="N" />      
+        <field name="ExecID" required="N" />
+        <field name="SecondaryExecID" required="N" />
+        <field name="LastPx" required="N" />
+        <field name="LastCapacity" required="N" />
+      </group>
+      <field name="Side" required="Y" />
+      <component name="Instrument" required="Y" />
+      <field name="Quantity" required="Y" />
+      <field name="LastMkt" required="N" />
+      <field name="TradeOriginationDate" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="PriceType" required="N" />
+      <field name="AvgPx" required="Y" />
+      <field name="Currency" required="N" />
+      <field name="AvgPrxPrecision" required="N" />
+      <component name="Parties" required="N" />
+      <field name="TradeDate" required="Y" />
+      <field name="TransactTime" required="N" />
+      <field name="SettlmntTyp" required="N" />
+      <field name="FutSettDate" required="N" />
+      <field name="GrossTradeAmt" required="N" />
+      <field name="Concession" required="N" />
+      <field name="TotalTakedown" required="N" />
+      <field name="NetMoney" required="N" />
+      <field name="PositionEffect" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="NumDaysInterest" required="N" />
+      <field name="AccruedInterestRate" required="N" />
+      <field name="TotalAccruedInterestAmt" required="N" />
+      <field name="LegalConfirm" required="N" />
+      <group name="NoAllocs" required="Y">
+        <field name="AllocAccount" required="Y" />
+        <field name="AllocPrice" required="N" />
+        <field name="AllocQty" required="Y" />
+        <field name="IndividualAllocID" required="N" />
+        <field name="ProcessCode" required="N" />
+        <component name="NestedParties" required="N" />
+        <field name="NotifyBrokerOfCredit" required="N" />
+        <field name="AllocHandlInst" required="N" />
+        <field name="AllocText" required="N" />
+        <field name="EncodedAllocTextLen" required="N" />
+        <field name="EncodedAllocText" required="N" />
+        <component name="CommissionData" required="N" />
+        <field name="AllocAvgPx" required="N" />
+        <field name="AllocNetMoney" required="N" />
+        <field name="SettlCurrAmt" required="N" />
+        <field name="SettlCurrency" required="N" />
+        <field name="SettlCurrFxRate" required="N" />
+        <field name="SettlCurrFxRateCalc" required="N" />
+        <field name="AccruedInterestAmt" required="N" />
+        <field name="SettlInstMode" required="N" />
+        <group name="NoMiscFees" required="N">
+          <field name="MiscFeeAmt" required="N" />
+          <field name="MiscFeeCurr" required="N" />
+          <field name="MiscFeeType" required="N" />
+        </group>
+      </group>
+    </message>
+    <message name="AllocationACK" msgtype="P" msgcat="app">
+      <component name="Parties" required="N" />
+      <field name="AllocID" required="Y" />
+      <field name="TradeDate" required="Y" />
+      <field name="TransactTime" required="N" />
+      <field name="AllocStatus" required="Y" />
+      <field name="AllocRejCode" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="LegalConfirm" required="N" />
+    </message>
+    <message name="SettlementInstructions" msgtype="T" msgcat="app">
+      <field name="SettlInstID" required="Y" />
+      <field name="SettlInstTransType" required="Y" />
+      <field name="SettlInstRefID" required="Y" />
+      <field name="SettlInstMode" required="Y" />
+      <field name="SettlInstSource" required="Y" />
+      <field name="AllocAccount" required="Y" />
+      <field name="IndividualAllocID" required="N" />
+      <field name="ClOrdID" required="N" />
+      <field name="TradeDate" required="N" />
+      <field name="AllocID" required="N" />
+      <field name="LastMkt" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="Side" required="N" />
+      <field name="SecurityType" required="N" />
+      <field name="EffectiveTime" required="N" />
+      <field name="TransactTime" required="Y" />
+      <component name="Parties" required="N" />
+      <field name="StandInstDbType" required="N" />
+      <field name="StandInstDbName" required="N" />
+      <field name="StandInstDbID" required="N" />
+      <field name="SettlDeliveryType" required="N" />
+      <field name="SettlDepositoryCode" required="N" />
+      <field name="SettlBrkrCode" required="N" />
+      <field name="SettlInstCode" required="N" />
+      <field name="SecuritySettlAgentName" required="N" />
+      <field name="SecuritySettlAgentCode" required="N" />
+      <field name="SecuritySettlAgentAcctNum" required="N" />
+      <field name="SecuritySettlAgentAcctName" required="N" />
+      <field name="SecuritySettlAgentContactName" required="N" />
+      <field name="SecuritySettlAgentContactPhone" required="N" />
+      <field name="CashSettlAgentName" required="N" />
+      <field name="CashSettlAgentCode" required="N" />
+      <field name="CashSettlAgentAcctNum" required="N" />
+      <field name="CashSettlAgentAcctName" required="N" />
+      <field name="CashSettlAgentContactName" required="N" />
+      <field name="CashSettlAgentContactPhone" required="N" />
+      <field name="PaymentMethod" required="N" />
+      <field name="PaymentRef" required="N" />
+      <field name="CardHolderName" required="N" />
+      <field name="CardNumber" required="N" />
+      <field name="CardStartDate" required="N" />
+      <field name="CardExpDate" required="N" />
+      <field name="CardIssNo" required="N" />
+      <field name="PaymentDate" required="N" />
+      <field name="PaymentRemitterID" required="N" />
+    </message>
+    <message name="TradeCaptureReportRequest" msgtype="AD" msgcat="app">
+      <field name="TradeRequestID" required="Y" />
+      <field name="TradeRequestType" required="Y" />
+      <field name="SubscriptionRequestType" required="N" />
+      <field name="ExecID" required="N" />
+      <field name="OrderID" required="N" />
+      <field name="ClOrdID" required="N" />
+      <field name="MatchStatus" required="N" />
+      <component name="Parties" required="N" />
+      <component name="Instrument" required="N" />
+      <group name="NoDates" required="N">
+        <field name="TradeDate" required="N" />
+        <field name="TransactTime" required="N" />
+      </group>
+      <field name="Side" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="TradeInputSource" required="N" />
+      <field name="TradeInputDevice" required="N" />
+    </message>
+    <message name="TradeCaptureReport" msgtype="AE" msgcat="app">
+      <field name="TradeReportID" required="Y" />
+      <field name="TradeReportTransType" required="N" />
+      <field name="TradeRequestID" required="N" />
+      <field name="ExecType" required="Y" />
+      <field name="TradeReportRefID" required="N" />
+      <field name="ExecID" required="N" />
+      <field name="SecondaryExecID" required="N" />
+      <field name="ExecRestatementReason" required="N" />
+      <field name="PreviouslyReported" required="Y" />
+      <component name="Instrument" required="Y" />
+      <component name="OrderQtyData" required="N" />
+      <field name="LastQty" required="Y" />
+      <field name="LastPx" required="Y" />
+      <field name="LastSpotRate" required="N" />
+      <field name="LastForwardPoints" required="N" />
+      <field name="LastMkt" required="N" />
+      <field name="TradeDate" required="Y" />
+      <field name="TransactTime" required="Y" />
+      <field name="SettlmntTyp" required="N" />
+      <field name="FutSettDate" required="N" />
+      <field name="MatchStatus" required="N" />
+      <field name="MatchType" required="N" />
+      <group name="NoSides" required="Y">
+        <field name="Side" required="Y" />
+        <field name="OrderID" required="Y" />
+        <field name="SecondaryOrderID" required="N" />
+        <field name="ClOrdID" required="N" />
+        <component name="Parties" required="N" />
+        <field name="Account" required="N" />
+        <field name="AccountType" required="N" />
+        <field name="ProcessCode" required="N" />
+        <field name="OddLot" required="N" />
+        <group name="NoClearingInstructions" required="N">
+          <field name="ClearingInstruction" required="N" />
+        </group>
+        <field name="ClearingFeeIndicator" required="N" />
+        <field name="TradeInputSource" required="N" />
+        <field name="TradeInputDevice" required="N" />
+        <field name="Currency" required="N" />
+        <field name="ComplianceID" required="N" />
+        <field name="SolicitedFlag" required="N" />
+        <field name="OrderCapacity" required="N" />
+        <field name="OrderRestrictions" required="N" />
+        <field name="CustOrderCapacity" required="N" />
+        <field name="TransBkdTime" required="N" />
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+        <component name="CommissionData" required="N" />
+        <field name="GrossTradeAmt" required="N" />
+        <field name="NumDaysInterest" required="N" />
+        <field name="ExDate" required="N" />
+        <field name="AccruedInterestRate" required="N" />
+        <field name="AccruedInterestAmt" required="N" />
+        <field name="Concession" required="N" />
+        <field name="TotalTakedown" required="N" />
+        <field name="NetMoney" required="N" />
+        <field name="SettlCurrAmt" required="N" />
+        <field name="SettlCurrency" required="N" />
+        <field name="SettlCurrFxRate" required="N" />
+        <field name="SettlCurrFxRateCalc" required="N" />
+        <field name="PositionEffect" required="N" />
+        <field name="Text" required="N" />
+        <field name="EncodedTextLen" required="N" />
+        <field name="EncodedText" required="N" />
+        <field name="MultiLegReportingType" required="N" />
+        <group name="NoContAmts" required="N">
+          <field name="ContAmtType" required="N" />
+          <field name="ContAmtValue" required="N" />
+          <field name="ContAmtCurr" required="N" />        
+        </group>
+        <group name="NoMiscFees" required="N">
+          <field name="MiscFeeAmt" required="N" />
+          <field name="MiscFeeCurr" required="N" />
+          <field name="MiscFeeType" required="N" />
+        </group>
+      </group>
+    </message>
+    <message name="RegistrationInstructions" msgtype="o" msgcat="app">
+      <field name="RegistID" required="Y" />
+      <field name="RegistTransType" required="Y" />
+      <field name="RegistRefID" required="Y" />
+      <field name="ClOrdID" required="N" />
+      <component name="Parties" required="N" />
+      <field name="Account" required="N" />
+      <field name="RegistAcctType" required="N" />
+      <field name="TaxAdvantageType" required="N" />
+      <field name="OwnershipType" required="N" />
+      <group name="NoRegistDtls" required="N">
+        <field name="RegistDetls" required="N" />
+        <field name="RegistEmail" required="N" />
+        <field name="MailingDtls" required="N" />
+        <field name="MailingInst" required="N" />
+        <component name="NestedParties" required="N" />
+        <field name="OwnerType" required="N" />
+        <field name="DateOfBirth" required="N" />
+        <field name="InvestorCountryOfResidence" required="N" />
+      </group>
+      <group name="NoDistribInsts" required="N">
+        <field name="DistribPaymentMethod" required="N" />
+        <field name="DistribPercentage" required="N" />
+        <field name="CashDistribCurr" required="N" />
+        <field name="CashDistribAgentName" required="N" />
+        <field name="CashDistribAgentCode" required="N" />
+        <field name="CashDistribAgentAcctNumber" required="N" />
+        <field name="CashDistribPayRef" required="N" />
+        <field name="CashDistribAgentAcctName" required="N" />
+      </group>
+    </message>
+    <message name="RegistrationInstructionsResponse" msgtype="p" msgcat="app">
+      <field name="RegistID" required="Y" />
+      <field name="RegistTransType" required="Y" />
+      <field name="RegistRefID" required="Y" />
+      <field name="ClOrdID" required="N" />
+      <component name="Parties" required="N" />
+      <field name="Account" required="N" />
+      <field name="RegistStatus" required="Y" />
+      <field name="RegistRejReasonCode" required="N" />
+      <field name="RegistRejReasonText" required="N" />
+    </message>
+  </messages>
+  <components>
+    <component name="Instrument">
+      <field name="Symbol" required="Y" />
+      <field name="SymbolSfx" required="N" />
+      <field name="SecurityID" required="N" />
+      <field name="SecurityIDSource" required="N" />
+      <group name="NoSecurityAltID" required="N">
+        <field name="SecurityAltID" required="N" />
+        <field name="SecurityAltIDSource" required="N" />
+      </group>
+      <field name="Product" required="N" />
+      <field name="CFICode" required="N" />
+      <field name="SecurityType" required="N" />
+      <field name="MaturityMonthYear" required="N" />
+      <field name="MaturityDate" required="N" />
+      <field name="CouponPaymentDate" required="N" />
+      <field name="IssueDate" required="N" />
+      <field name="RepoCollateralSecurityType" required="N" />
+      <field name="RepurchaseTerm" required="N" />
+      <field name="RepurchaseRate" required="N" />
+      <field name="Factor" required="N" />
+      <field name="CreditRating" required="N" />
+      <field name="InstrRegistry" required="N" />
+      <field name="CountryOfIssue" required="N" />
+      <field name="StateOrProvinceOfIssue" required="N" />
+      <field name="LocaleOfIssue" required="N" />
+      <field name="RedemptionDate" required="N" />
+      <field name="StrikePrice" required="N" />
+      <field name="OptAttribute" required="N" />
+      <field name="ContractMultiplier" required="N" />
+      <field name="CouponRate" required="N" />
+      <field name="SecurityExchange" required="N" />
+      <field name="Issuer" required="N" />
+      <field name="EncodedIssuerLen" required="N" />
+      <field name="EncodedIssuer" required="N" />
+      <field name="SecurityDesc" required="N" />
+      <field name="EncodedSecurityDescLen" required="N" />
+      <field name="EncodedSecurityDesc" required="N" />
+    </component>
+    <component name="InstrumentLeg">
+      <field name="LegSymbol" required="Y" />
+      <field name="LegSymbolSfx" required="N" />
+      <field name="LegSecurityID" required="N" />
+      <field name="LegSecurityIDSource" required="N" />
+      <group name="NoLegSecurityAltID" required="N">
+        <field name="LegSecurityAltID" required="N" />
+        <field name="LegSecurityAltIDSource" required="N" />
+      </group>
+      <field name="LegProduct" required="N" />
+      <field name="LegCFICode" required="N" />
+      <field name="LegSecurityType" required="N" />
+      <field name="LegMaturityMonthYear" required="N" />
+      <field name="LegMaturityDate" required="N" />
+      <field name="LegCouponPaymentDate" required="N" />
+      <field name="LegIssueDate" required="N" />
+      <field name="LegRepoCollateralSecurityType" required="N" />
+      <field name="LegRepurchaseTerm" required="N" />
+      <field name="LegRepurchaseRate" required="N" />
+      <field name="LegFactor" required="N" />
+      <field name="LegCreditRating" required="N" />
+      <field name="LegInstrRegistry" required="N" />
+      <field name="LegCountryOfIssue" required="N" />
+      <field name="LegStateOrProvinceOfIssue" required="N" />
+      <field name="LegLocaleOfIssue" required="N" />
+      <field name="LegRedemptionDate" required="N" />
+      <field name="LegStrikePrice" required="N" />
+      <field name="LegOptAttribute" required="N" />
+      <field name="LegContractMultiplier" required="N" />
+      <field name="LegCouponRate" required="N" />
+      <field name="LegSecurityExchange" required="N" />
+      <field name="LegIssuer" required="N" />
+      <field name="EncodedLegIssuerLen" required="N" />
+      <field name="EncodedLegIssuer" required="N" />
+      <field name="LegSecurityDesc" required="N" />
+      <field name="EncodedLegSecurityDescLen" required="N" />
+      <field name="EncodedLegSecurityDesc" required="N" />
+      <field name="LegRatioQty" required="N" />
+      <field name="LegSide" required="N" />
+    </component>
+    <component name="OrderQtyData">
+      <field name="OrderQty" required="N" />
+      <field name="CashOrderQty" required="N" />
+      <field name="OrderPercent" required="N" />
+      <field name="RoundingDirection" required="N" />
+      <field name="RoundingModulus" required="N" />
+    </component>
+    <component name="CommissionData">
+      <field name="Commission" required="N" />
+      <field name="CommType" required="N" />
+      <field name="CommCurrency" required="N" />
+      <field name="FundRenewWaiv" required="N" />
+    </component>
+    <component name="Parties">
+      <group name="NoPartyIDs" required="N">
+        <field name="PartyID" required="N" />
+        <field name="PartyIDSource" required="N" />
+        <field name="PartyRole" required="N" />
+        <field name="PartySubID" required="N" />
+      </group>
+    </component>
+    <component name="NestedParties">
+      <group name="NoNestedPartyIDs" required="N">
+        <field name="NestedPartyID" required="N" />
+        <field name="NestedPartyIDSource" required="N" />
+        <field name="NestedPartyRole" required="N" />
+        <field name="NestedPartySubID" required="N" />
+      </group>
+    </component>
+    <component name="SpreadOrBenchmarkCurveData">
+      <field name="Spread" required="N" />
+      <field name="BenchmarkCurveCurrency" required="N" />
+      <field name="BenchmarkCurveName" required="N" />
+      <field name="BenchmarkCurvePoint" required="N" />
+    </component>
+    <component name="Stipulations">
+      <group name="NoStipulations" required="N">
+        <field name="StipulationType" required="N" />
+        <field name="StipulationValue" required="N" />
+      </group>
+    </component>
+    <component name="YieldData">
+      <field name="YieldType" required="N" />
+      <field name="Yield" required="N" />
+    </component>
+    <component name="UnderlyingInstrument">
+      <field name="UnderlyingSymbol" required="Y" />
+      <field name="UnderlyingSymbolSfx" required="N" />
+      <field name="UnderlyingSecurityID" required="N" />
+      <field name="UnderlyingSecurityIDSource" required="N" />
+      <group name="NoUnderlyingSecurityAltID" required="N">
+        <field name="UnderlyingSecurityAltID" required="N" />
+        <field name="UnderlyingSecurityAltIDSource" required="N" />
+      </group>
+      <field name="UnderlyingProduct" required="N" />
+      <field name="UnderlyingCFICode" required="N" />
+      <field name="UnderlyingSecurityType" required="N" />
+      <field name="UnderlyingMaturityMonthYear" required="N" />
+      <field name="UnderlyingMaturityDate" required="N" />
+      <field name="UnderlyingCouponPaymentDate" required="N" />
+      <field name="UnderlyingIssueDate" required="N" />
+      <field name="UnderlyingRepoCollateralSecurityType" required="N" />
+      <field name="UnderlyingRepurchaseTerm" required="N" />
+      <field name="UnderlyingRepurchaseRate" required="N" />
+      <field name="UnderlyingFactor" required="N" />
+      <field name="UnderlyingCreditRating" required="N" />
+      <field name="UnderlyingInstrRegistry" required="N" />
+      <field name="UnderlyingCountryOfIssue" required="N" />
+      <field name="UnderlyingStateOrProvinceOfIssue" required="N" />
+      <field name="UnderlyingLocaleOfIssue" required="N" />
+      <field name="UnderlyingRedemptionDate" required="N" />
+      <field name="UnderlyingPutOrCall" required="N" />
+      <field name="UnderlyingStrikePrice" required="N" />
+      <field name="UnderlyingOptAttribute" required="N" />
+      <field name="UnderlyingContractMultiplier" required="N" />
+      <field name="UnderlyingCouponRate" required="N" />
+      <field name="UnderlyingSecurityExchange" required="N" />
+      <field name="UnderlyingIssuer" required="N" />
+      <field name="EncodedUnderlyingIssuerLen" required="N" />
+      <field name="EncodedUnderlyingIssuer" required="N" />
+      <field name="UnderlyingSecurityDesc" required="N" />
+      <field name="EncodedUnderlyingSecurityDescLen" required="N" />
+      <field name="EncodedUnderlyingSecurityDesc" required="N" />
+    </component>
+  </components>
+  <fields>
+    <field number="1" name="Account" type="STRING" />
+    <field number="2" name="AdvId" type="STRING" />
+    <field number="3" name="AdvRefID" type="STRING" />
+    <field number="4" name="AdvSide" type="CHAR">
+      <value enum="B" description="BUY" />
+      <value enum="S" description="SELL" />
+      <value enum="X" description="CROSS" />
+      <value enum="T" description="TRADE" />
+    </field>
+    <field number="5" name="AdvTransType" type="STRING">
+      <value enum="N" description="NEW" />
+      <value enum="C" description="CANCEL" />
+      <value enum="R" description="REPLACE" />
+    </field>
+    <field number="6" name="AvgPx" type="PRICE" />
+    <field number="7" name="BeginSeqNo" type="SEQNUM" />
+    <field number="8" name="BeginString" type="STRING" />
+    <field number="9" name="BodyLength" type="LENGTH" />
+    <field number="10" name="CheckSum" type="STRING" />
+    <field number="11" name="ClOrdID" type="STRING" />
+    <field number="12" name="Commission" type="AMT" />
+    <field number="13" name="CommType" type="CHAR">
+      <value enum="1" description="PER_SHARE" />
+      <value enum="2" description="PERCENTAGE" />
+      <value enum="3" description="ABSOLUTE" />
+      <value enum="4" description="PERCENTAGE_WAIVED_CASH_DISCOUNT" />
+      <value enum="5" description="PERCENTAGE_WAIVED_ENHANCED_UNITS" />
+      <value enum="6" description="PER_BOND" />
+    </field>
+    <field number="14" name="CumQty" type="QTY" />
+    <field number="15" name="Currency" type="CURRENCY" />
+    <field number="16" name="EndSeqNo" type="SEQNUM" />
+    <field number="17" name="ExecID" type="STRING" />
+    <field number="18" name="ExecInst" type="MULTIPLEVALUESTRING">
+      <value enum="1" description="NOT_HELD" />
+      <value enum="2" description="WORK" />
+      <value enum="3" description="GO_ALONG" />
+      <value enum="4" description="OVER_THE_DAY" />
+      <value enum="5" description="HELD" />
+      <value enum="6" description="PARTICIPATE_DONT_INITIATE" />
+      <value enum="7" description="STRICT_SCALE" />
+      <value enum="8" description="TRY_TO_SCALE" />
+      <value enum="9" description="STAY_ON_BIDSIDE" />
+      <value enum="0" description="STAY_ON_OFFERSIDE" />
+      <value enum="A" description="NO_CROSS" />
+      <value enum="B" description="OK_TO_CROSS" />
+      <value enum="C" description="CALL_FIRST" />
+      <value enum="D" description="PERCENT_OF_VOLUME" />
+      <value enum="E" description="DO_NOT_INCREASE" />
+      <value enum="F" description="DO_NOT_REDUCE" />
+      <value enum="G" description="ALL_OR_NONE" />
+      <value enum="H" description="REINSTATE_ON_SYSTEM_FAILURE" />
+      <value enum="I" description="INSTITUTIONS_ONLY" />
+      <value enum="J" description="REINSTATE_ON_TRADING_HALT" />
+      <value enum="K" description="CANCEL_ON_TRADING_HALT" />
+      <value enum="L" description="LAST_PEG" />
+      <value enum="M" description="MID_PRICE_PEG" />
+      <value enum="N" description="NON_NEGOTIABLE" />
+      <value enum="O" description="OPENING_PEG" />
+      <value enum="P" description="MARKET_PEG" />
+      <value enum="Q" description="CANCEL_ON_SYSTEM_FAILURE" />
+      <value enum="R" description="PRIMARY_PEG" />
+      <value enum="S" description="SUSPEND" />
+      <value enum="T" description="FIXED_PEG" />
+      <value enum="U" description="CUSTOMER_DISPLAY_INSTRUCTION" />
+      <value enum="V" description="NETTING" />
+      <value enum="W" description="PEG_TO_VWAP" />
+      <value enum="X" description="TRADE_ALONG" />
+      <value enum="Y" description="TRY_TO_STOP" />
+    </field>
+    <field number="19" name="ExecRefID" type="STRING" />
+    <field number="20" name="ExecTransType" type="CHAR">
+      <value enum="0" description="NEW" />
+      <value enum="1" description="CANCEL" />
+      <value enum="2" description="CORRECT" />
+      <value enum="3" description="STATUS" />
+    </field>
+    <field number="21" name="HandlInst" type="CHAR">
+      <value enum="1" description="AUTOMATED_EXECUTION_ORDER_PRIVATE" />
+      <value enum="2" description="AUTOMATED_EXECUTION_ORDER_PUBLIC" />
+      <value enum="3" description="MANUAL_ORDER" />
+    </field>
+    <field number="22" name="SecurityIDSource" type="STRING">
+      <value enum="1" description="CUSIP" />
+      <value enum="2" description="SEDOL" />
+      <value enum="3" description="QUIK" />
+      <value enum="4" description="ISIN_NUMBER" />
+      <value enum="5" description="RIC_CODE" />
+      <value enum="6" description="ISO_CURRENCY_CODE" />
+      <value enum="7" description="ISO_COUNTRY_CODE" />
+      <value enum="8" description="EXCHANGE_SYMBOL" />
+      <value enum="9" description="CONSOLIDATED_TAPE_ASSOCIATION" />
+      <value enum="A" description="BLOOMBERG_SYMBOL" />
+      <value enum="B" description="WERTPAPIER" />
+      <value enum="C" description="DUTCH" />
+      <value enum="D" description="VALOREN" />
+      <value enum="E" description="SICOVAM" />
+      <value enum="F" description="BELGIAN" />
+      <value enum="G" description="COMMON" />
+    </field>
+    <field number="23" name="IOIid" type="STRING" />
+    <field number="25" name="IOIQltyInd" type="CHAR">
+      <value enum="L" description="LOW" />
+      <value enum="M" description="MEDIUM" />
+      <value enum="H" description="HIGH" />
+    </field>
+    <field number="26" name="IOIRefID" type="STRING" />
+    <field number="27" name="IOIQty" type="STRING" />
+    <field number="28" name="IOITransType" type="CHAR">
+      <value enum="N" description="NEW" />
+      <value enum="C" description="CANCEL" />
+      <value enum="R" description="REPLACE" />
+    </field>
+    <field number="29" name="LastCapacity" type="CHAR">
+      <value enum="1" description="AGENT" />
+      <value enum="2" description="CROSS_AS_AGENT" />
+      <value enum="3" description="CROSS_AS_PRINCIPAL" />
+      <value enum="4" description="PRINCIPAL" />
+    </field>
+    <field number="30" name="LastMkt" type="EXCHANGE" />
+    <field number="31" name="LastPx" type="PRICE" />
+    <field number="32" name="LastQty" type="QTY" />
+    <field number="33" name="LinesOfText" type="NUMINGROUP" />
+    <field number="34" name="MsgSeqNum" type="SEQNUM" />
+    <field number="35" name="MsgType" type="STRING">
+      <value enum="0" description="HEARTBEAT" />
+      <value enum="1" description="TEST_REQUEST" />
+      <value enum="2" description="RESEND_REQUEST" />
+      <value enum="3" description="REJECT" />
+      <value enum="4" description="SEQUENCE_RESET" />
+      <value enum="5" description="LOGOUT" />
+      <value enum="6" description="INDICATION_OF_INTEREST" />
+      <value enum="7" description="ADVERTISEMENT" />
+      <value enum="8" description="EXECUTION_REPORT" />
+      <value enum="9" description="ORDER_CANCEL_REJECT" />
+      <value enum="A" description="LOGON" />
+      <value enum="B" description="NEWS" />
+      <value enum="C" description="EMAIL" />
+      <value enum="D" description="ORDER_SINGLE" />
+      <value enum="E" description="ORDER_LIST" />
+      <value enum="F" description="ORDER_CANCEL_REQUEST" />
+      <value enum="G" description="ORDER_CANCEL" />
+      <value enum="H" description="ORDER_STATUS_REQUEST" />
+      <value enum="J" description="ALLOCATION" />
+      <value enum="K" description="LIST_CANCEL_REQUEST" />
+      <value enum="L" description="LIST_EXECUTE" />
+      <value enum="M" description="LIST_STATUS_REQUEST" />
+      <value enum="N" description="LIST_STATUS" />
+      <value enum="P" description="ALLOCATION_ACK" />
+      <value enum="Q" description="DONT_KNOW_TRADE" />
+      <value enum="R" description="QUOTE_REQUEST" />
+      <value enum="S" description="QUOTE" />
+      <value enum="T" description="SETTLEMENT_INSTRUCTIONS" />
+      <value enum="V" description="MARKET_DATA_REQUEST" />
+      <value enum="W" description="MARKET_DATA_SNAPSHOT" />
+      <value enum="X" description="MARKET_DATA_INCREMENTAL_REFRESH" />
+      <value enum="Y" description="MARKET_DATA_REQUEST_REJECT" />
+      <value enum="Z" description="QUOTE_CANCEL" />
+      <value enum="a" description="QUOTE_STATUS_REQUEST" />
+      <value enum="b" description="MASS_QUOTE_ACKNOWLEDGEMENT" />
+      <value enum="c" description="SECURITY_DEFINITION_REQUEST" />
+      <value enum="d" description="SECURITY_DEFINITION" />
+      <value enum="e" description="SECURITY_STATUS_REQUEST" />
+      <value enum="f" description="SECURITY_STATUS" />
+      <value enum="g" description="TRADING_SESSION_STATUS_REQUEST" />
+      <value enum="h" description="TRADING_SESSION_STATUS" />
+      <value enum="i" description="MASS_QUOTE" />
+      <value enum="j" description="BUSINESS_MESSAGE_REJECT" />
+      <value enum="k" description="BID_REQUEST" />
+      <value enum="l" description="BID_RESPONSE" />
+      <value enum="m" description="LIST_STRIKE_PRICE" />
+      <value enum="n" description="XML_MESSAGE" />
+      <value enum="o" description="REGISTRATION_INSTRUCTIONS" />
+      <value enum="p" description="REGISTRATION_INSTRUCTIONS_RESPONSE" />
+      <value enum="q" description="ORDER_MASS_CANCEL_REQUEST" />
+      <value enum="r" description="ORDER_MASS_CANCEL_REPORT" />
+      <value enum="s" description="NEW_ORDER_CROSS" />
+      <value enum="t" description="CROSS_ORDER_CANCEL" />
+      <value enum="u" description="CROSS_ORDER_CANCEL_REQUEST" />
+      <value enum="v" description="SECURITY_TYPE_REQUEST" />
+      <value enum="w" description="SECURITY_TYPES" />
+      <value enum="x" description="SECURITY_LIST_REQUEST" />
+      <value enum="y" description="SECURITY_LIST" />
+      <value enum="z" description="DERIVATIVE_SECURITY_LIST_REQUEST" />
+      <value enum="AA" description="DERIVATIVE_SECURITY_LIST" />
+      <value enum="AB" description="NEW_ORDER_MULTILEG" />
+      <value enum="AC" description="MULTILEG_ORDER_CANCEL" />
+      <value enum="AD" description="TRADE_CAPTURE_REPORT_REQUEST" />
+      <value enum="AE" description="TRADE_CAPTURE_REPORT" />
+      <value enum="AF" description="ORDER_MASS_STATUS_REQUEST" />
+      <value enum="AG" description="QUOTE_REQUEST_REJECT" />
+      <value enum="AH" description="RFQ_REQUEST" />
+      <value enum="AI" description="QUOTE_STATUS_REPORT" />
+    </field>
+    <field number="36" name="NewSeqNo" type="SEQNUM" />
+    <field number="37" name="OrderID" type="STRING" />
+    <field number="38" name="OrderQty" type="QTY" />
+    <field number="39" name="OrdStatus" type="CHAR">
+      <value enum="0" description="NEW" />
+      <value enum="1" description="PARTIALLY_FILLED" />
+      <value enum="2" description="FILLED" />
+      <value enum="3" description="DONE_FOR_DAY" />
+      <value enum="4" description="CANCELED" />
+      <value enum="5" description="REPLACED" />
+      <value enum="6" description="PENDING_CANCEL" />
+      <value enum="7" description="STOPPED" />
+      <value enum="8" description="REJECTED" />
+      <value enum="9" description="SUSPENDED" />
+      <value enum="A" description="PENDING_NEW" />
+      <value enum="B" description="CALCULATED" />
+      <value enum="C" description="EXPIRED" />
+      <value enum="D" description="ACCEPTED_FOR_BIDDING" />
+      <value enum="E" description="PENDING_REPLACE" />
+    </field>
+    <field number="40" name="OrdType" type="CHAR">
+      <value enum="1" description="MARKET" />
+      <value enum="2" description="LIMIT" />
+      <value enum="3" description="STOP" />
+      <value enum="4" description="STOP_LIMIT" />
+      <value enum="5" description="MARKET_ON_CLOSE" />
+      <value enum="6" description="WITH_OR_WITHOUT" />
+      <value enum="7" description="LIMIT_OR_BETTER" />
+      <value enum="8" description="LIMIT_WITH_OR_WITHOUT" />
+      <value enum="9" description="ON_BASIS" />
+      <value enum="A" description="ON_CLOSE" />
+      <value enum="B" description="LIMIT_ON_CLOSE" />
+      <value enum="C" description="FOREX_MARKET" />
+      <value enum="D" description="PREVIOUSLY_QUOTED" />
+      <value enum="E" description="PREVIOUSLY_INDICATED" />
+      <value enum="F" description="FOREX_LIMIT" />
+      <value enum="G" description="FOREX_SWAP" />
+      <value enum="H" description="FOREX_PREVIOUSLY_QUOTED" />
+      <value enum="I" description="FUNARI" />
+      <value enum="J" description="MARKET_IF_TOUCHED" />
+      <value enum="K" description="MARKET_WITH_LEFTOVER_AS_LIMIT" />
+      <value enum="L" description="PREVIOUS_FUND_VALUATION_POINT" />
+      <value enum="M" description="NEXT_FUND_VALUATION_POINT" />
+      <value enum="P" description="PEGGED" />
+    </field>
+    <field number="41" name="OrigClOrdID" type="STRING" />
+    <field number="42" name="OrigTime" type="UTCTIMESTAMP" />
+    <field number="43" name="PossDupFlag" type="BOOLEAN" />
+    <field number="44" name="Price" type="PRICE" />
+    <field number="45" name="RefSeqNum" type="SEQNUM" />
+    <field number="46" name="RelatdSym" type="STRING" />
+    <field type="CHAR" name="Rule80A" number="47">
+      <value enum="A" description="AGENCY_SINGLE_ORDER" />
+      <value enum="B" description="SHORT_EXEMPT_TRANSACTION_REFER_TO_A_TYPE" />
+      <value enum="C" description="PROGRAM_ORDER_NON_INDEX_ARB_FOR_MEMBER_FIRM" />
+      <value enum="D" description="PROGRAM_ORDER_INDEX_ARB_FOR_MEMBER_FIRM" />
+      <value enum="E" description="SHORT_EXEMPT_TRANSACTION_FOR_PRINCIPAL" />
+      <value enum="F" description="SHORT_EXEMPT_TRANSACTION_REFER_TO_W_TYPE" />
+      <value enum="H" description="SHORT_EXEMPT_TRANSACTION_REFER_TO_I_TYPE" />
+      <value enum="I" description="INDIVIDUAL_INVESTOR" />
+      <value enum="J" description="PROGRAM_ORDER_INDEX_ARB_FOR_INDIVIDUAL_CUSTOMER" />
+      <value enum="K" description="PROGRAM_ORDER_NON_INDEX_ARB_FOR_INDIVIDUAL_CUSTOMER" />
+      <value enum="L" description="SHORT_EXEMPT_AFFILIATED" />
+      <value enum="M" description="PROGRAM_ORDER_INDEX_ARB_FOR_OTHER_MEMBER" />
+      <value enum="N" description="PROGRAM_ORDER_NON_INDEX_ARB_FOR_OTHER_MEMBER" />
+      <value enum="O" description="PROPRIETARY_AFFILIATED" />
+      <value enum="P" description="PRINCIPAL" />
+      <value enum="R" description="TRANSACTIONS_NON_MEMBER" />
+      <value enum="S" description="SPECIALIST_TRADES" />
+      <value enum="T" description="TRANSACTIONS_UNAFFILIATED_MEMBER" />
+      <value enum="U" description="PROGRAM_ORDER_INDEX_ARB_FOR_OTHER_AGENCY" />
+      <value enum="W" description="ALL_OTHER_ORDERS_AS_AGENT_FOR_OTHER_MEMBER" />
+      <value enum="X" description="SHORT_EXEMPT_NOT_AFFILIATED" />
+      <value enum="Y" description="PROGRAM_ORDER_NON_INDEX_ARB_FOR_OTHER_AGENCY" />
+      <value enum="Z" description="SHORT_EXEMPT_NONMEMBER" />
+    </field>
+    <field number="48" name="SecurityID" type="STRING" />
+    <field number="49" name="SenderCompID" type="STRING" />
+    <field number="50" name="SenderSubID" type="STRING" />
+    <field number="51" name="SendingDate" type="LOCALMKTDATE" />
+    <field number="52" name="SendingTime" type="UTCTIMESTAMP" />
+    <field number="53" name="Quantity" type="QTY" />
+    <field number="54" name="Side" type="CHAR">
+      <value enum="1" description="BUY" />
+      <value enum="2" description="SELL" />
+      <value enum="3" description="BUY_MINUS" />
+      <value enum="4" description="SELL_PLUS" />
+      <value enum="5" description="SELL_SHORT" />
+      <value enum="6" description="SELL_SHORT_EXEMPT" />
+      <value enum="7" description="UNDISCLOSED" />
+      <value enum="8" description="CROSS" />
+      <value enum="9" description="CROSS_SHORT" />
+      <value enum="A" description="CROSS_SHORT_EXEMPT" />
+      <value enum="B" description="AS_DEFINED" />
+      <value enum="C" description="OPPOSITE" />
+    </field>
+    <field number="55" name="Symbol" type="STRING" />
+    <field number="56" name="TargetCompID" type="STRING" />
+    <field number="57" name="TargetSubID" type="STRING" />
+    <field number="58" name="Text" type="STRING" />
+    <field number="59" name="TimeInForce" type="CHAR">
+      <value enum="0" description="DAY" />
+      <value enum="1" description="GOOD_TILL_CANCEL" />
+      <value enum="2" description="AT_THE_OPENING" />
+      <value enum="3" description="IMMEDIATE_OR_CANCEL" />
+      <value enum="4" description="FILL_OR_KILL" />
+      <value enum="5" description="GOOD_TILL_CROSSING" />
+      <value enum="6" description="GOOD_TILL_DATE" />
+      <value enum="7" description="AT_THE_CLOSE" />
+    </field>
+    <field number="60" name="TransactTime" type="UTCTIMESTAMP" />
+    <field number="61" name="Urgency" type="CHAR">
+      <value enum="0" description="NORMAL" />
+      <value enum="1" description="FLASH" />
+      <value enum="2" description="BACKGROUND" />
+    </field>
+    <field number="62" name="ValidUntilTime" type="UTCTIMESTAMP" />
+    <field number="63" name="SettlmntTyp" type="CHAR">
+      <value enum="0" description="REGULAR" />
+      <value enum="1" description="CASH" />
+      <value enum="2" description="NEXT_DAY" />
+      <value description="T_PLUS_2" enum="3" />
+      <value description="T_PLUS_3" enum="4" />
+      <value description="T_PLUS_4" enum="5" />
+      <value enum="6" description="FUTURE" />
+      <value enum="7" description="WHEN_AND_IF_ISSUED" />
+      <value enum="8" description="SELLERS_OPTION" />
+      <value description="T_PLUS_5" enum="9" />
+      <value description="T_PLUS_1" enum="A" />
+    </field>
+    <field number="64" name="FutSettDate" type="LOCALMKTDATE" />
+    <field number="65" name="SymbolSfx" type="STRING" />
+    <field number="66" name="ListID" type="STRING" />
+    <field number="67" name="ListSeqNo" type="INT" />
+    <field number="68" name="TotNoOrders" type="INT" />
+    <field number="69" name="ListExecInst" type="STRING" />
+    <field number="70" name="AllocID" type="STRING" />
+    <field number="71" name="AllocTransType" type="CHAR">
+      <value enum="0" description="NEW" />
+      <value enum="1" description="REPLACE" />
+      <value enum="2" description="CANCEL" />
+      <value enum="3" description="PRELIMINARY" />
+      <value enum="4" description="CALCULATED" />
+      <value enum="5" description="CALCULATED_WITHOUT_PRELIMINARY" />
+    </field>
+    <field number="72" name="RefAllocID" type="STRING" />
+    <field number="73" name="NoOrders" type="NUMINGROUP" />
+    <field number="74" name="AvgPrxPrecision" type="INT" />
+    <field number="75" name="TradeDate" type="LOCALMKTDATE" />
+    <field number="76" name="ExecBroker" type="STRING" />
+    <field number="77" name="PositionEffect" type="CHAR" />
+    <field number="78" name="NoAllocs" type="NUMINGROUP" />
+    <field number="79" name="AllocAccount" type="STRING" />
+    <field number="80" name="AllocQty" type="QTY" />
+    <field number="81" name="ProcessCode" type="CHAR">
+      <value enum="0" description="REGULAR" />
+      <value enum="1" description="SOFT_DOLLAR" />
+      <value enum="2" description="STEP_IN" />
+      <value enum="3" description="STEP_OUT" />
+      <value enum="4" description="SOFT_DOLLAR_STEP_IN" />
+      <value enum="5" description="SOFT_DOLLAR_STEP_OUT" />
+      <value enum="6" description="PLAN_SPONSOR" />
+    </field>
+    <field number="82" name="NoRpts" type="NUMINGROUP" />
+    <field number="83" name="RptSeq" type="INT" />
+    <field number="84" name="CxlQty" type="QTY" />
+    <field number="85" name="NoDlvyInst" type="INT" />
+    <field number="86" name="DlvyInst" type="STRING" />
+    <field number="87" name="AllocStatus" type="INT">
+      <value enum="0" description="ACCEPTED" />
+      <value enum="1" description="REJECTED" />
+      <value enum="2" description="PARTIAL_ACCEPT" />
+      <value enum="3" description="RECEIVED" />
+    </field>
+    <field number="88" name="AllocRejCode" type="INT">
+      <value enum="0" description="UNKNOWN_ACCOUNT" />
+      <value enum="1" description="INCORRECT_QUANTITY" />
+      <value enum="2" description="INCORRECT_AVERAGE_PRICE" />
+      <value enum="3" description="UNKNOWN_EXECUTING_BROKER_MNEMONIC" />
+      <value enum="4" description="COMMISSION_DIFFERENCE" />
+      <value enum="5" description="UNKNOWN_ORDERID" />
+      <value enum="6" description="UNKNOWN_LISTID" />
+      <value enum="7" description="OTHER" />
+    </field>
+    <field number="89" name="Signature" type="DATA" />
+    <field number="90" name="SecureDataLen" type="LENGTH" />
+    <field number="91" name="SecureData" type="DATA" />
+    <field number="92" name="BrokerOfCredit" type="STRING" />
+    <field number="93" name="SignatureLength" type="LENGTH" />
+    <field number="94" name="EmailType" type="CHAR">
+      <value enum="0" description="NEW" />
+      <value enum="1" description="REPLY" />
+      <value enum="2" description="ADMIN_REPLY" />
+    </field>
+    <field number="95" name="RawDataLength" type="LENGTH" />
+    <field number="96" name="RawData" type="DATA" />
+    <field number="97" name="PossResend" type="BOOLEAN" />
+    <field number="98" name="EncryptMethod" type="INT">
+      <value enum="0" description="NONE" />
+      <value enum="1" description="PKCS_PROPRIETARY" />
+      <value enum="2" description="DES" />
+      <value enum="3" description="PKCS_DES" />
+      <value enum="4" description="PGP_DES" />
+      <value enum="5" description="PGP_DES_MD5" />
+      <value enum="6" description="PEM" />
+    </field>
+    <field number="99" name="StopPx" type="PRICE" />
+    <field number="100" name="ExDestination" type="EXCHANGE" />
+    <field number="102" name="CxlRejReason" type="INT">
+      <value enum="0" description="TOO_LATE_TO_CANCEL" />
+      <value enum="1" description="UNKNOWN_ORDER" />
+      <value enum="2" description="BROKER" />
+      <value enum="3" description="ALREADY_PENDING" />
+      <value enum="4" description="UNABLE_TO_PROCESS_ORDER_MASS_CANCEL_REQUEST" />
+      <value enum="5" description="ORIGORDMODTIME_DID_NOT_MATCH_LAST_TRANSACTTIME_OF_ORDER" />
+      <value enum="6" description="DUPLICATE_CLORDID_RECEIVED" />
+    </field>
+    <field number="103" name="OrdRejReason" type="INT">
+      <value enum="0" description="BROKER_OPTION" />
+      <value enum="1" description="UNKNOWN_SYMBOL" />
+      <value enum="2" description="EXCHANGE_CLOSED" />
+      <value enum="3" description="ORDER_EXCEEDS_LIMIT" />
+      <value enum="4" description="TOO_LATE_TO_ENTER" />
+      <value enum="5" description="UNKNOWN_ORDER" />
+      <value enum="6" description="DUPLICATE_ORDER" />
+      <value enum="7" description="DUPLICATE_VERBAL" />
+      <value enum="8" description="STALE_ORDER" />
+      <value enum="9" description="TRADE_ALONG_REQUIRED" />
+      <value enum="10" description="INVALID_INVESTOR_ID" />
+      <value enum="11" description="UNSUPPORTED_ORDER_CHARACTERISTIC" />
+      <value enum="12" description="SURVEILLENCE_OPTION" />
+    </field>
+    <field number="104" name="IOIQualifier" type="CHAR">
+      <value enum="A" description="ALL_OR_NONE" />
+      <value enum="B" description="MARKET_ON_CLOSE" />
+      <value enum="C" description="AT_THE_CLOSE" />
+      <value enum="D" description="VWAP" />
+      <value enum="I" description="IN_TOUCH_WITH" />
+      <value enum="L" description="LIMIT" />
+      <value enum="M" description="MORE_BEHIND" />
+      <value enum="O" description="AT_THE_OPEN" />
+      <value enum="P" description="TAKING_A_POSITION" />
+      <value enum="Q" description="AT_THE_MARKET" />
+      <value enum="R" description="READY_TO_TRADE" />
+      <value enum="S" description="PORTFOLIO_SHOWN" />
+      <value enum="T" description="THROUGH_THE_DAY" />
+      <value enum="V" description="VERSUS" />
+      <value enum="W" description="INDICATION" />
+      <value enum="X" description="CROSSING_OPPORTUNITY" />
+      <value enum="Y" description="AT_THE_MIDPOINT" />
+      <value enum="Z" description="PRE_OPEN" />
+    </field>
+    <field number="105" name="WaveNo" type="STRING" />
+    <field number="106" name="Issuer" type="STRING" />
+    <field number="107" name="SecurityDesc" type="STRING" />
+    <field number="108" name="HeartBtInt" type="INT" />
+    <field number="109" name="ClientID" type="STRING" />
+    <field number="110" name="MinQty" type="QTY" />
+    <field number="111" name="MaxFloor" type="QTY" />
+    <field number="112" name="TestReqID" type="STRING" />
+    <field number="113" name="ReportToExch" type="BOOLEAN" />
+    <field number="114" name="LocateReqd" type="BOOLEAN" />
+    <field number="115" name="OnBehalfOfCompID" type="STRING" />
+    <field number="116" name="OnBehalfOfSubID" type="STRING" />
+    <field number="117" name="QuoteID" type="STRING" />
+    <field number="118" name="NetMoney" type="AMT" />
+    <field number="119" name="SettlCurrAmt" type="AMT" />
+    <field number="120" name="SettlCurrency" type="CURRENCY" />
+    <field number="121" name="ForexReq" type="BOOLEAN" />
+    <field number="122" name="OrigSendingTime" type="UTCTIMESTAMP" />
+    <field number="123" name="GapFillFlag" type="BOOLEAN" />
+    <field number="124" name="NoExecs" type="NUMINGROUP" />
+    <field number="125" name="CxlType" type="CHAR" />
+    <field number="126" name="ExpireTime" type="UTCTIMESTAMP" />
+    <field number="127" name="DKReason" type="CHAR">
+      <value enum="A" description="UNKNOWN_SYMBOL" />
+      <value enum="B" description="WRONG_SIDE" />
+      <value enum="C" description="QUANTITY_EXCEEDS_ORDER" />
+      <value enum="D" description="NO_MATCHING_ORDER" />
+      <value enum="E" description="PRICE_EXCEEDS_LIMIT" />
+      <value enum="Z" description="OTHER" />
+    </field>
+    <field number="128" name="DeliverToCompID" type="STRING" />
+    <field number="129" name="DeliverToSubID" type="STRING" />
+    <field number="130" name="IOINaturalFlag" type="BOOLEAN" />
+    <field number="131" name="QuoteReqID" type="STRING" />
+    <field number="132" name="BidPx" type="PRICE" />
+    <field number="133" name="OfferPx" type="PRICE" />
+    <field number="134" name="BidSize" type="QTY" />
+    <field number="135" name="OfferSize" type="QTY" />
+    <field number="136" name="NoMiscFees" type="NUMINGROUP" />
+    <field number="137" name="MiscFeeAmt" type="AMT" />
+    <field number="138" name="MiscFeeCurr" type="CURRENCY" />
+    <field number="139" name="MiscFeeType" type="CHAR">
+      <value enum="1" description="REGULATORY" />
+      <value enum="2" description="TAX" />
+      <value enum="3" description="LOCAL_COMMISSION" />
+      <value enum="4" description="EXCHANGE_FEES" />
+      <value enum="5" description="STAMP" />
+      <value enum="6" description="LEVY" />
+      <value enum="7" description="OTHER" />
+      <value enum="8" description="MARKUP" />
+      <value enum="9" description="CONSUMPTION_TAX" />
+    </field>
+    <field number="140" name="PrevClosePx" type="PRICE" />
+    <field number="141" name="ResetSeqNumFlag" type="BOOLEAN" />
+    <field number="142" name="SenderLocationID" type="STRING" />
+    <field number="143" name="TargetLocationID" type="STRING" />
+    <field number="144" name="OnBehalfOfLocationID" type="STRING" />
+    <field number="145" name="DeliverToLocationID" type="STRING" />
+    <field number="146" name="NoRelatedSym" type="NUMINGROUP" />
+    <field number="147" name="Subject" type="STRING" />
+    <field number="148" name="Headline" type="STRING" />
+    <field number="149" name="URLLink" type="STRING" />
+    <field number="150" name="ExecType" type="CHAR">
+      <value enum="0" description="NEW" />
+      <value enum="1" description="PARTIAL_FILL" />
+      <value enum="2" description="FILL" />
+      <value enum="3" description="DONE_FOR_DAY" />
+      <value enum="4" description="CANCELED" />
+      <value enum="5" description="REPLACE" />
+      <value enum="6" description="PENDING_CANCEL" />
+      <value enum="7" description="STOPPED" />
+      <value enum="8" description="REJECTED" />
+      <value enum="9" description="SUSPENDED" />
+      <value enum="A" description="PENDING_NEW" />
+      <value enum="B" description="CALCULATED" />
+      <value enum="C" description="EXPIRED" />
+      <value enum="D" description="RESTATED" />
+      <value enum="E" description="PENDING_REPLACE" />
+      <value enum="F" description="TRADE" />
+      <value enum="G" description="TRADE_CORRECT" />
+      <value enum="H" description="TRADE_CANCEL" />
+      <value enum="I" description="ORDER_STATUS" />
+    </field>
+    <field number="151" name="LeavesQty" type="QTY" />
+    <field number="152" name="CashOrderQty" type="QTY" />
+    <field number="153" name="AllocAvgPx" type="PRICE" />
+    <field number="154" name="AllocNetMoney" type="AMT" />
+    <field number="155" name="SettlCurrFxRate" type="FLOAT" />
+    <field number="156" name="SettlCurrFxRateCalc" type="CHAR" />
+    <field number="157" name="NumDaysInterest" type="INT" />
+    <field number="158" name="AccruedInterestRate" type="PERCENTAGE" />
+    <field number="159" name="AccruedInterestAmt" type="AMT" />
+    <field number="160" name="SettlInstMode" type="CHAR">
+      <value enum="0" description="DEFAULT" />
+      <value enum="1" description="STANDING_INSTRUCTIONS_PROVIDED" />
+      <value enum="2" description="SPECIFIC_ALLOCATION_ACCOUNT_OVERRIDING" />
+      <value enum="3" description="SPECIFIC_ALLOCATION_ACCOUNT_STANDING" />
+      <value enum="4" description="SPECIFIC_ORDER_FOR_A_SINGLE_ACCOUNT" />
+    </field>
+    <field number="161" name="AllocText" type="STRING" />
+    <field number="162" name="SettlInstID" type="STRING" />
+    <field number="163" name="SettlInstTransType" type="CHAR">
+      <value enum="N" description="NEW" />
+      <value enum="C" description="CANCEL" />
+      <value enum="R" description="REPLACE" />
+    </field>
+    <field number="164" name="EmailThreadID" type="STRING" />
+    <field number="165" name="SettlInstSource" type="CHAR">
+      <value enum="1" description="BROKERS_INSTRUCTIONS" />
+      <value enum="2" description="INSTITUTIONS_INSTRUCTIONS" />
+      <value enum="3" description="INVESTOR" />
+    </field>
+    <field number="166" name="SettlLocation" type="STRING">
+      <value enum="CED" description="CEDEL" />
+      <value enum="DTC" description="DEPOSITORY_TRUST_COMPANY" />
+      <value enum="EUR" description="EUROCLEAR" />
+      <value enum="FED" description="FEDERAL_BOOK_ENTRY" />
+      <value enum="PED" description="PHYSICAL" />
+      <value enum="PTC" description="PARTICIPANT_TRUST_COMPANY_ISO_COUNTRY" />
+    </field>
+    <field number="167" name="SecurityType" type="STRING">
+      <value enum="CORP" description="CORPORATE_BOND" />
+      <value enum="CPP" description="CORPORATE_PRIVATE_PLACEMENT" />
+      <value enum="CB" description="CONVERTABLE_BOND" />
+      <value enum="DUAL" description="DUAL_CURRENCY" />
+      <value enum="XLINKD" description="INDEX_LINKED" />
+      <value enum="STRUCT" description="STRUCTURED_NOTES" />
+      <value enum="YANK" description="YANKEE_CORPORATE_BOND" />
+      <value enum="FOR" description="FOREIGN_EXCHANGE_CONTRACT" />
+      <value enum="CS" description="COMMON_STOCK" />
+      <value enum="PS" description="PREFERED_STOCK" />
+      <value enum="BRADY" description="BRADY_BOND" />
+      <value enum="TBOND" description="US_TREASURY_BOND" />
+      <value enum="TINT" description="INTEREST_STRIP_FROM_ANY_BOND_OR_NOTE" />
+      <value enum="TIPS" description="TREASURY_INFLATION_PROTECTED_SECURITIES" />
+      <value enum="TCAL" description="PRINCIPAL_STRIP_OF_A_CALLABLE_BOND_OR_NOTE" />
+      <value enum="TPRN" description="PRINCIPAL_STRIP_FROM_A_NON_CALLABLE_BOND_OR_NOTE" />
+      <value enum="UST" description="US_TREASURY_NOTE_BOND" />
+      <value enum="USTB" description="US_TREASURY_BILL" />
+      <value enum="TERM" description="TERM_LOAN" />
+      <value enum="RVLV" description="REVOLVER_LOAN" />
+      <value enum="RVLVTRM" description="REVOLVER_TERM_LOAN" />
+      <value enum="BRIDGE" description="BRIDGE_LOAN" />
+      <value enum="LOFC" description="LETTER_OF_CREDIT" />
+      <value enum="SWING" description="SWING_LINE_FACILITY" />
+      <value enum="DINP" description="DEBTOR_IN_POSSESSION" />
+      <value enum="DEFLTED" description="DEFAULTED" />
+      <value enum="WITHDRN" description="WITHDRAWN" />
+      <value enum="REPLACD" description="REPLACED" />
+      <value enum="MATURED" description="MATURED" />
+      <value enum="AMENDED" description="AMENDED_AND_RESTATED" />
+      <value enum="RETIRED" description="RETIRED" />
+      <value enum="BA" description="BANKERS_ACCEPTANCE" />
+      <value enum="BN" description="BANK_NOTES" />
+      <value enum="BOX" description="BILL_OF_EXCHANGES" />
+      <value enum="CD" description="CERTIFICATE_OF_DEPOSIT" />
+      <value enum="CL" description="CALL_LOANS" />
+      <value enum="CP" description="COMMERCIAL_PAPER" />
+      <value enum="DP" description="DEPOSIT_NOTES" />
+      <value enum="LQN" description="LIQUIDITY_NOTES" />
+      <value enum="MTN" description="MEDIUM_TERM_NOTES" />
+      <value enum="ONITE" description="OVERNITE" />
+      <value enum="PN" description="PROMISSORY_NOTES" />
+      <value enum="PZFJ" description="PLAZOS_FIJOS" />
+      <value enum="RP" description="REPURCHASE_AGREEMENT" />
+      <value enum="RVRP" description="REVERSE_REPURCHASE_AGREEMENT" />
+      <value enum="STN" description="SHORT_TERM_LOAN_NOTE" />
+      <value enum="TD" description="TIME_DEPOSIT" />
+      <value enum="XCN" description="EXTENDED_COMM_NOTE" />
+      <value enum="POOL" description="AGENCY_POOLS" />
+      <value enum="ABS" description="ASSET_BACKED_SECURITIES" />
+      <value enum="CMBS" description="CORP_MORTGAGE_BACKED_SECURITIES" />
+      <value enum="CMO" description="COLLATERALIZED_MORTGAGE_OBLIGATION" />
+      <value enum="IET" description="IOETTE_MORTGAGE" />
+      <value enum="MBS" description="MORTGAGE_BACKED_SECURITIES" />
+      <value enum="MIO" description="MORTGAGE_INTEREST_ONLY" />
+      <value enum="MPO" description="MORTGAGE_PRINCIPAL_ONLY" />
+      <value enum="MPP" description="MORTGAGE_PRIVATE_PLACEMENT" />
+      <value enum="MPT" description="MISCELLANEOUS_PASS_THROUGH" />
+      <value enum="AN" description="OTHER_ANTICIPATION_NOTES" />
+      <value enum="COFO" description="CERTIFICATE_OF_OBLIGATION" />
+      <value enum="COFP" description="CERTIFICATE_OF_PARTICIPATION" />
+      <value enum="GO" description="GENERAL_OBLIGATION_BONDS" />
+      <value enum="MT" description="MANDATORY_TENDER" />
+      <value enum="RAN" description="REVENUE_ANTICIPATION_NOTE" />      
+      <value enum="REV" description="REVENUE_BONDS" />
+      <value enum="SPCLA" description="SPECIAL_ASSESSMENT" />
+      <value enum="SPCLO" description="SPECIAL_OBLIGATION" />
+      <value enum="SPCLT" description="SPECIAL_TAX" />
+      <value enum="TAN" description="TAX_ANTICIPATION_NOTE" />
+      <value enum="TAXA" description="TAX_ALLOCATION" />
+      <value enum="TECP" description="TAX_EXEMPT_COMMERCIAL_PAPER" />
+      <value enum="TRAN" description="TAX_AND_REVENUE_ANTICIPATION_NOTE" />
+      <value enum="VRDN" description="VARIABLE_RATE_DEMAND_NOTE" />
+      <value enum="WAR" description="WARRANT" />
+      <value enum="MF" description="MUTUAL_FUND" />
+      <value enum="MLEG" description="MULTI_LEG_INSTRUMENT" />
+      <value enum="NONE" description="NO_SECURITY_TYPE" />
+      <value description="WILDCARD" enum="?" />
+    </field>
+    <field number="168" name="EffectiveTime" type="UTCTIMESTAMP" />
+    <field number="169" name="StandInstDbType" type="INT">
+      <value enum="0" description="OTHER" />
+      <value enum="1" description="DTC_SID" />
+      <value enum="2" description="THOMSON_ALERT" />
+      <value enum="3" description="A_GLOBAL_CUSTODIAN" />
+    </field>
+    <field number="170" name="StandInstDbName" type="STRING" />
+    <field number="171" name="StandInstDbID" type="STRING" />
+    <field number="172" name="SettlDeliveryType" type="INT" />
+    <field number="173" name="SettlDepositoryCode" type="STRING" />
+    <field number="174" name="SettlBrkrCode" type="STRING" />
+    <field number="175" name="SettlInstCode" type="STRING" />
+    <field number="176" name="SecuritySettlAgentName" type="STRING" />
+    <field number="177" name="SecuritySettlAgentCode" type="STRING" />
+    <field number="178" name="SecuritySettlAgentAcctNum" type="STRING" />
+    <field number="179" name="SecuritySettlAgentAcctName" type="STRING" />
+    <field number="180" name="SecuritySettlAgentContactName" type="STRING" />
+    <field number="181" name="SecuritySettlAgentContactPhone" type="STRING" />
+    <field number="182" name="CashSettlAgentName" type="STRING" />
+    <field number="183" name="CashSettlAgentCode" type="STRING" />
+    <field number="184" name="CashSettlAgentAcctNum" type="STRING" />
+    <field number="185" name="CashSettlAgentAcctName" type="STRING" />
+    <field number="186" name="CashSettlAgentContactName" type="STRING" />
+    <field number="187" name="CashSettlAgentContactPhone" type="STRING" />
+    <field number="188" name="BidSpotRate" type="PRICE" />
+    <field number="189" name="BidForwardPoints" type="PRICEOFFSET" />
+    <field number="190" name="OfferSpotRate" type="PRICE" />
+    <field number="191" name="OfferForwardPoints" type="PRICEOFFSET" />
+    <field type="QTY" name="OrderQty2" number="192" />
+    <field type="LOCALMKTDATE" name="FutSettDate2" number="193" />
+    <field number="194" name="LastSpotRate" type="PRICE" />
+    <field number="195" name="LastForwardPoints" type="PRICEOFFSET" />
+    <field number="196" name="AllocLinkID" type="STRING" />
+    <field number="197" name="AllocLinkType" type="INT">
+      <value enum="0" description="F_X_NETTING" />
+      <value enum="1" description="F_X_SWAP" />
+    </field>
+    <field number="198" name="SecondaryOrderID" type="STRING" />
+    <field number="199" name="NoIOIQualifiers" type="NUMINGROUP" />
+    <field number="200" name="MaturityMonthYear" type="MONTHYEAR" />
+    <field number="201" name="PutOrCall" type="INT">
+      <value enum="0" description="PUT" />
+      <value enum="1" description="CALL" />
+    </field>
+    <field number="202" name="StrikePrice" type="PRICE" />
+    <field number="203" name="CoveredOrUncovered" type="INT">
+      <value enum="0" description="COVERED" />
+      <value enum="1" description="UNCOVERED" />
+    </field>
+    <field number="204" name="CustomerOrFirm" type="INT">
+      <value enum="0" description="CUSTOMER" />
+      <value enum="1" description="FIRM" />
+    </field>
+    <field number="205" name="MaturityDay" type="DAYOFMONTH" />
+    <field number="206" name="OptAttribute" type="CHAR" />
+    <field number="207" name="SecurityExchange" type="EXCHANGE" />
+    <field number="208" name="NotifyBrokerOfCredit" type="BOOLEAN" />
+    <field number="209" name="AllocHandlInst" type="INT">
+      <value enum="1" description="MATCH" />
+      <value enum="2" description="FORWARD" />
+      <value enum="3" description="FORWARD_AND_MATCH" />
+    </field>
+    <field number="210" name="MaxShow" type="QTY" />
+    <field number="211" name="PegDifference" type="PRICEOFFSET" />
+    <field number="212" name="XmlDataLen" type="LENGTH" />
+    <field number="213" name="XmlData" type="DATA" />
+    <field number="214" name="SettlInstRefID" type="STRING" />
+    <field number="215" name="NoRoutingIDs" type="NUMINGROUP" />
+    <field number="216" name="RoutingType" type="INT">
+      <value enum="1" description="TARGET_FIRM" />
+      <value enum="2" description="TARGET_LIST" />
+      <value enum="3" description="BLOCK_FIRM" />
+      <value enum="4" description="BLOCK_LIST" />
+    </field>
+    <field number="217" name="RoutingID" type="STRING" />
+    <field number="218" name="Spread" type="PRICEOFFSET" />
+    <field number="219" name="Benchmark" type="CHAR">
+      <value enum="1" description="CURVE" />
+      <value enum="2" description="FIVEYR" />
+      <value enum="3" description="OLD5" />
+      <value enum="4" description="TENYR" />
+      <value enum="5" description="OLD10" />
+      <value enum="6" description="THIRTYYR" />
+      <value enum="7" description="OLD30" />
+      <value enum="8" description="THREEMOLIBOR" />
+      <value enum="9" description="SIXMOLIBOR" />
+    </field>
+    <field number="220" name="BenchmarkCurveCurrency" type="CURRENCY" />
+    <field number="221" name="BenchmarkCurveName" type="STRING" />
+    <field number="222" name="BenchmarkCurvePoint" type="STRING" />
+    <field number="223" name="CouponRate" type="PERCENTAGE" />
+    <field number="224" name="CouponPaymentDate" type="UTCDATE" />
+    <field number="225" name="IssueDate" type="UTCDATE" />
+    <field number="226" name="RepurchaseTerm" type="INT" />
+    <field number="227" name="RepurchaseRate" type="PERCENTAGE" />
+    <field number="228" name="Factor" type="FLOAT" />
+    <field number="229" name="TradeOriginationDate" type="UTCDATE" />
+    <field number="230" name="ExDate" type="UTCDATE" />
+    <field number="231" name="ContractMultiplier" type="FLOAT" />
+    <field number="232" name="NoStipulations" type="NUMINGROUP" />
+    <field number="233" name="StipulationType" type="STRING" />
+    <field number="234" name="StipulationValue" type="STRING" />
+    <field number="235" name="YieldType" type="STRING">
+      <value enum="AFTERTAX" description="AFTER_TAX_YIELD" />
+      <value enum="ANNUAL" description="ANNUAL_YIELD" />
+      <value enum="ATISSUE" description="YIELD_AT_ISSUE" />
+      <value enum="AVGLIFE" description="YIELD_TO_AVERAGE_LIFE" />
+      <value enum="AVGMATURITY" description="YIELD_TO_AVERAGE_MATURITY" />
+      <value enum="BOOK" description="BOOK_YIELD" />
+      <value enum="CALL" description="YIELD_TO_NEXT_CALL" />
+      <value enum="CHANGE" description="YIELD_CHANGE_SINCE_CLOSE" />
+      <value enum="CLOSE" description="CLOSING_YIELD" />
+      <value enum="COMPOUND" description="COMPOUND_YIELD" />
+      <value enum="CURRENT" description="CURRENT_YIELD" />
+      <value enum="GROSS" description="TRUE_GROSS_YIELD" />
+      <value enum="GOVTEQUIV" description="GOVERNMENT_EQUIVALENT_YIELD" />
+      <value enum="INFLATION" description="YIELD_WITH_INFLATION_ASSUMPTION" />
+      <value enum="INVERSEFLOATER" description="INVERSE_FLOATER_BOND_YIELD" />
+      <value enum="LASTCLOSE" description="MOST_RECENT_CLOSING_YIELD" />
+      <value enum="LASTMONTH" description="CLOSING_YIELD_MOST_RECENT_MONTH" />
+      <value enum="LASTQUARTER" description="CLOSING_YIELD_MOST_RECENT_QUARTER" />
+      <value enum="LASTYEAR" description="CLOSING_YIELD_MOST_RECENT_YEAR" />
+      <value enum="LONGAVGLIFE" description="YIELD_TO_LONGEST_AVERAGE_LIFE" />
+      <value enum="LONGEST" description="YIELD_TO_LONGEST_AVERAGE" />
+      <value enum="MARK" description="MARK_TO_MARKET_YIELD" />
+      <value enum="MATURITY" description="YIELD_TO_MATURITY" />
+      <value enum="NEXTREFUND" description="YIELD_TO_NEXT_REFUND" />
+      <value enum="OPENAVG" description="OPEN_AVERAGE_YIELD" />
+      <value enum="PUT" description="YIELD_TO_NEXT_PUT" />
+      <value enum="PREVCLOSE" description="PREVIOUS_CLOSE_YIELD" />
+      <value enum="PROCEEDS" description="PROCEEDS_YIELD" />
+      <value enum="SEMIANNUAL" description="SEMI_ANNUAL_YIELD" />
+      <value enum="SHORTAVGLIFE" description="YIELD_TO_SHORTEST_AVERAGE_LIFE" />
+      <value enum="SHORTEST" description="YIELD_TO_SHORTEST_AVERAGE" />
+      <value enum="SIMPLE" description="SIMPLE_YIELD" />
+      <value enum="TAXEQUIV" description="TAX_EQUIVALENT_YIELD" />
+      <value enum="TENDER" description="YIELD_TO_TENDER_DATE" />
+      <value enum="TRUE" description="TRUE_YIELD" />
+      <value enum="WORST" description="YIELD_TO_WORST_CONVENTION" />
+    </field>
+    <field number="236" name="Yield" type="PERCENTAGE" />
+    <field number="237" name="TotalTakedown" type="AMT" />
+    <field number="238" name="Concession" type="AMT" />
+    <field number="239" name="RepoCollateralSecurityType" type="INT" />
+    <field number="240" name="RedemptionDate" type="UTCDATE" />
+    <field number="241" name="UnderlyingCouponPaymentDate" type="UTCDATE" />
+    <field number="242" name="UnderlyingIssueDate" type="UTCDATE" />
+    <field number="243" name="UnderlyingRepoCollateralSecurityType" type="INT" />
+    <field number="244" name="UnderlyingRepurchaseTerm" type="INT" />
+    <field number="245" name="UnderlyingRepurchaseRate" type="PERCENTAGE" />
+    <field number="246" name="UnderlyingFactor" type="FLOAT" />
+    <field number="247" name="UnderlyingRedemptionDate" type="UTCDATE" />
+    <field number="248" name="LegCouponPaymentDate" type="UTCDATE" />
+    <field number="249" name="LegIssueDate" type="UTCDATE" />
+    <field number="250" name="LegRepoCollateralSecurityType" type="INT" />
+    <field number="251" name="LegRepurchaseTerm" type="INT" />
+    <field number="252" name="LegRepurchaseRate" type="PERCENTAGE" />
+    <field number="253" name="LegFactor" type="FLOAT" />
+    <field number="254" name="LegRedemptionDate" type="UTCDATE" />
+    <field number="255" name="CreditRating" type="STRING" />
+    <field number="256" name="UnderlyingCreditRating" type="STRING" />
+    <field number="257" name="LegCreditRating" type="STRING" />
+    <field number="258" name="TradedFlatSwitch" type="BOOLEAN" />
+    <field number="259" name="BasisFeatureDate" type="UTCDATE" />
+    <field number="260" name="BasisFeaturePrice" type="PRICE" />
+    <field number="262" name="MDReqID" type="STRING" />
+    <field number="263" name="SubscriptionRequestType" type="CHAR">
+      <value enum="0" description="SNAPSHOT" />
+      <value enum="1" description="SNAPSHOT_PLUS_UPDATES" />
+      <value enum="2" description="DISABLE_PREVIOUS_SNAPSHOT_PLUS_UPDATE_REQUEST" />
+    </field>
+    <field number="264" name="MarketDepth" type="INT">
+<!--
+      Temporarily commented out until we can handle
+      N>1 scenario
+
+      <value enum="0" description="FULL_BOOK"/>
+      <value enum="1" description="TOP_OF_BOOK"/>
+-->
+    </field>
+    <field number="265" name="MDUpdateType" type="INT">
+      <value enum="0" description="FULL_REFRESH" />
+      <value enum="1" description="INCREMENTAL_REFRESH" />
+    </field>
+    <field number="266" name="AggregatedBook" type="BOOLEAN" />
+    <field number="267" name="NoMDEntryTypes" type="NUMINGROUP" />
+    <field number="268" name="NoMDEntries" type="NUMINGROUP" />
+    <field number="269" name="MDEntryType" type="CHAR">
+      <value enum="0" description="BID" />
+      <value enum="1" description="OFFER" />
+      <value enum="2" description="TRADE" />
+      <value enum="3" description="INDEX_VALUE" />
+      <value enum="4" description="OPENING_PRICE" />
+      <value enum="5" description="CLOSING_PRICE" />
+      <value enum="6" description="SETTLEMENT_PRICE" />
+      <value enum="7" description="TRADING_SESSION_HIGH_PRICE" />
+      <value enum="8" description="TRADING_SESSION_LOW_PRICE" />
+      <value enum="9" description="TRADING_SESSION_VWAP_PRICE" />
+      <value enum="A" description="IMBALANCE" />
+    </field>
+    <field number="270" name="MDEntryPx" type="PRICE" />
+    <field number="271" name="MDEntrySize" type="QTY" />
+    <field number="272" name="MDEntryDate" type="UTCDATE" />
+    <field number="273" name="MDEntryTime" type="UTCTIMEONLY" />
+    <field number="274" name="TickDirection" type="CHAR">
+      <value enum="0" description="PLUS_TICK" />
+      <value enum="1" description="ZERO_PLUS_TICK" />
+      <value enum="2" description="MINUS_TICK" />
+      <value enum="3" description="ZERO_MINUS_TICK" />
+    </field>
+    <field number="275" name="MDMkt" type="EXCHANGE" />
+    <field number="276" name="QuoteCondition" type="MULTIPLEVALUESTRING">
+      <value enum="A" description="OPEN" />
+      <value enum="B" description="CLOSED" />
+      <value enum="C" description="EXCHANGE_BEST" />
+      <value enum="D" description="CONSOLIDATED_BEST" />
+      <value enum="E" description="LOCKED" />
+      <value enum="F" description="CROSSED" />
+      <value enum="G" description="DEPTH" />
+      <value enum="H" description="FAST_TRADING" />
+      <value enum="I" description="NON_FIRM" />
+    </field>
+    <field number="277" name="TradeCondition" type="MULTIPLEVALUESTRING">
+      <value enum="A" description="CASH" />
+      <value enum="B" description="AVERAGE_PRICE_TRADE" />
+      <value enum="C" description="CASH_TRADE" />
+      <value enum="D" description="NEXT_DAY" />
+      <value enum="E" description="OPENING" />
+      <value enum="F" description="INTRADAY_TRADE_DETAIL" />
+      <value enum="G" description="RULE_127_TRADE" />
+      <value enum="H" description="RULE_155_TRADE" />
+      <value enum="I" description="SOLD_LAST" />
+      <value enum="J" description="NEXT_DAY_TRADE" />
+      <value enum="K" description="OPENED" />
+      <value enum="L" description="SELLER" />
+      <value enum="M" description="SOLD" />
+      <value enum="N" description="STOPPED_STOCK" />
+      <value enum="P" description="IMBALANCE_MORE_BUYERS" />
+      <value enum="Q" description="IMBALANCE_MORE_SELLERS" />
+      <value enum="R" description="OPENING_PRICE" />
+    </field>
+    <field number="278" name="MDEntryID" type="STRING" />
+    <field number="279" name="MDUpdateAction" type="CHAR">
+      <value enum="0" description="NEW" />
+      <value enum="1" description="CHANGE" />
+      <value enum="2" description="DELETE" />
+    </field>
+    <field number="280" name="MDEntryRefID" type="STRING" />
+    <field number="281" name="MDReqRejReason" type="CHAR">
+      <value enum="0" description="UNKNOWN_SYMBOL" />
+      <value enum="1" description="DUPLICATE_MDREQID" />
+      <value enum="2" description="INSUFFICIENT_BANDWIDTH" />
+      <value enum="3" description="INSUFFICIENT_PERMISSIONS" />
+      <value enum="4" description="UNSUPPORTED_SUBSCRIPTIONREQUESTTYPE" />
+      <value enum="5" description="UNSUPPORTED_MARKETDEPTH" />
+      <value enum="6" description="UNSUPPORTED_MDUPDATETYPE" />
+      <value enum="7" description="UNSUPPORTED_AGGREGATEDBOOK" />
+      <value enum="8" description="UNSUPPORTED_MDENTRYTYPE" />
+      <value enum="9" description="UNSUPPORTED_TRADINGSESSIONID" />
+      <value enum="A" description="UNSUPPORTED_SCOPE" />
+      <value enum="B" description="UNSUPPORTED_OPENCLOSESETTLEFLAG" />
+      <value enum="C" description="UNSUPPORTED_MDIMPLICITDELETE" />
+    </field>
+    <field number="282" name="MDEntryOriginator" type="STRING" />
+    <field number="283" name="LocationID" type="STRING" />
+    <field number="284" name="DeskID" type="STRING" />
+    <field number="285" name="DeleteReason" type="CHAR">
+      <value enum="0" description="CANCELATION" />
+      <value enum="1" description="ERROR" />
+    </field>
+    <field number="286" name="OpenCloseSettleFlag" type="MULTIPLEVALUESTRING">
+      <value enum="0" description="DAILY_OPEN" />
+      <value enum="1" description="SESSION_OPEN" />
+      <value enum="2" description="DELIVERY_SETTLEMENT_PRICE" />
+      <value enum="3" description="EXPECTED_PRICE" />
+      <value enum="4" description="PRICE_FROM_PREVIOUS_BUSINESS_DAY" />
+    </field>
+    <field number="287" name="SellerDays" type="INT" />
+    <field number="288" name="MDEntryBuyer" type="STRING" />
+    <field number="289" name="MDEntrySeller" type="STRING" />
+    <field number="290" name="MDEntryPositionNo" type="INT" />
+    <field number="291" name="FinancialStatus" type="MULTIPLEVALUESTRING">
+      <value enum="1" description="BANKRUPT" />
+      <value enum="2" description="PENDING_DELISTING" />
+    </field>
+    <field number="292" name="CorporateAction" type="MULTIPLEVALUESTRING">
+      <value enum="A" description="EX_DIVIDEND" />
+      <value enum="B" description="EX_DISTRIBUTION" />
+      <value enum="C" description="EX_RIGHTS" />
+      <value enum="D" description="NEW" />
+      <value enum="E" description="EX_INTEREST" />
+    </field>
+    <field number="293" name="DefBidSize" type="QTY" />
+    <field number="294" name="DefOfferSize" type="QTY" />
+    <field number="295" name="NoQuoteEntries" type="NUMINGROUP" />
+    <field number="296" name="NoQuoteSets" type="NUMINGROUP" />
+    <field number="297" name="QuoteStatus" type="INT">
+      <value enum="0" description="ACCEPTED" />
+      <value enum="1" description="CANCELED_FOR_SYMBOL" />
+      <value enum="2" description="CANCELED_FOR_SECURITY_TYPE" />
+      <value enum="3" description="CANCELED_FOR_UNDERLYING" />
+      <value enum="4" description="CANCELED_ALL" />
+      <value enum="5" description="REJECTED" />
+      <value enum="6" description="REMOVED_FROM_MARKET" />
+      <value enum="7" description="EXPIRED" />
+      <value enum="8" description="QUERY" />
+      <value enum="9" description="QUOTE_NOT_FOUND" />
+      <value enum="10" description="PENDING" />
+    </field>
+    <field number="298" name="QuoteCancelType" type="INT" />
+    <field number="299" name="QuoteEntryID" type="STRING" />
+    <field number="300" name="QuoteRejectReason" type="INT" />
+    <field number="301" name="QuoteResponseLevel" type="INT" />
+    <field number="302" name="QuoteSetID" type="STRING" />
+    <field number="303" name="QuoteRequestType" type="INT">
+      <value enum="1" description="MANUAL" />
+      <value enum="2" description="AUTOMATIC" />
+    </field>
+    <field number="304" name="TotQuoteEntries" type="INT" />
+    <field number="305" name="UnderlyingSecurityIDSource" type="STRING" />
+    <field number="306" name="UnderlyingIssuer" type="STRING" />
+    <field number="307" name="UnderlyingSecurityDesc" type="STRING" />
+    <field number="308" name="UnderlyingSecurityExchange" type="EXCHANGE" />
+    <field number="309" name="UnderlyingSecurityID" type="STRING" />
+    <field number="310" name="UnderlyingSecurityType" type="STRING" />
+    <field number="311" name="UnderlyingSymbol" type="STRING" />
+    <field number="312" name="UnderlyingSymbolSfx" type="STRING" />
+    <field number="313" name="UnderlyingMaturityMonthYear" type="MONTHYEAR" />
+    <field number="314" name="UnderlyingMaturityDay" type="DAYOFMONTH" />
+    <field number="315" name="UnderlyingPutOrCall" type="INT" />
+    <field number="316" name="UnderlyingStrikePrice" type="PRICE" />
+    <field number="317" name="UnderlyingOptAttribute" type="CHAR" />
+    <field number="318" name="UnderlyingCurrency" type="CURRENCY" />
+    <field number="319" name="RatioQty" type="QTY" />
+    <field number="320" name="SecurityReqID" type="STRING" />
+    <field number="321" name="SecurityRequestType" type="INT">
+      <value enum="0" description="REQUEST_SECURITY_IDENTITY_AND_SPECIFICATIONS" />
+      <value enum="1" description="REQUEST_SECURITY_IDENTITY_FOR_THE_SPECIFICATIONS_PROVIDED" />
+      <value enum="2" description="REQUEST_LIST_SECURITY_TYPES" />
+      <value enum="3" description="REQUEST_LIST_SECURITIES" />
+    </field>
+    <field number="322" name="SecurityResponseID" type="STRING" />
+    <field number="323" name="SecurityResponseType" type="INT">
+      <value enum="1" description="ACCEPT_SECURITY_PROPOSAL_AS_IS" />
+      <value enum="2" description="ACCEPT_SECURITY_PROPOSAL_WITH_REVISIONS_AS_INDICATED_IN_THE_MESSAGE" />
+      <value enum="3" description="LIST_OF_SECURITY_TYPES_RETURNED_PER_REQUEST" />
+      <value enum="4" description="LIST_OF_SECURITIES_RETURNED_PER_REQUEST" />
+      <value enum="5" description="REJECT_SECURITY_PROPOSAL" />
+      <value enum="6" description="CAN_NOT_MATCH_SELECTION_CRITERIA" />
+    </field>
+    <field number="324" name="SecurityStatusReqID" type="STRING" />
+    <field number="325" name="UnsolicitedIndicator" type="BOOLEAN" />
+    <field number="326" name="SecurityTradingStatus" type="INT">
+      <value enum="1" description="OPENING_DELAY" />
+      <value enum="2" description="TRADING_HALT" />
+      <value enum="3" description="RESUME" />
+      <value enum="4" description="NO_OPEN" />
+      <value enum="5" description="PRICE_INDICATION" />
+      <value enum="6" description="TRADING_RANGE_INDICATION" />
+      <value enum="7" description="MARKET_IMBALANCE_BUY" />
+      <value enum="8" description="MARKET_IMBALANCE_SELL" />
+      <value enum="9" description="MARKET_ON_CLOSE_IMBALANCE_BUY" />
+      <value enum="10" description="MARKET_ON_CLOSE_IMBALANCE_SELL" />
+      <value enum="11" description="NOT_ASSIGNED" />
+      <value enum="12" description="NO_MARKET_IMBALANCE" />
+      <value enum="13" description="NO_MARKET_ON_CLOSE_IMBALANCE" />
+      <value enum="14" description="ITS_PRE_OPENING" />
+      <value enum="15" description="NEW_PRICE_INDICATION" />
+      <value enum="16" description="TRADE_DISSEMINATION_TIME" />
+      <value enum="17" description="READY_TO_TRADE" />
+      <value enum="18" description="NOT_AVAILABLE_FOR_TRADING" />
+      <value enum="19" description="NOT_TRADED_ON_THIS_MARKET" />
+      <value enum="20" description="UNKNOWN_OR_INVALID" />
+      <value enum="21" description="PRE_OPEN" />
+      <value enum="22" description="OPENING_ROTATION" />
+      <value enum="23" description="FAST_MARKET" />
+    </field>
+    <field number="327" name="HaltReason" type="CHAR">
+      <value enum="I" description="ORDER_IMBALANCE" />
+      <value enum="X" description="EQUIPMENT_CHANGEOVER" />
+      <value enum="P" description="NEWS_PENDING" />
+      <value enum="D" description="NEWS_DISSEMINATION" />
+      <value enum="E" description="ORDER_INFLUX" />
+      <value enum="M" description="ADDITIONAL_INFORMATION" />
+    </field>
+    <field number="328" name="InViewOfCommon" type="BOOLEAN" />
+    <field number="329" name="DueToRelated" type="BOOLEAN" />
+    <field number="330" name="BuyVolume" type="QTY" />
+    <field number="331" name="SellVolume" type="QTY" />
+    <field number="332" name="HighPx" type="PRICE" />
+    <field number="333" name="LowPx" type="PRICE" />
+    <field number="334" name="Adjustment" type="INT">
+      <value enum="1" description="CANCEL" />
+      <value enum="2" description="ERROR" />
+      <value enum="3" description="CORRECTION" />
+    </field>
+    <field number="335" name="TradSesReqID" type="STRING" />
+    <field number="336" name="TradingSessionID" type="STRING" />
+    <field number="337" name="ContraTrader" type="STRING" />
+    <field number="338" name="TradSesMethod" type="INT">
+      <value enum="1" description="ELECTRONIC" />
+      <value enum="2" description="OPEN_OUTCRY" />
+      <value enum="3" description="TWO_PARTY" />
+    </field>
+    <field number="339" name="TradSesMode" type="INT">
+      <value enum="1" description="TESTING" />
+      <value enum="2" description="SIMULATED" />
+      <value enum="3" description="PRODUCTION" />
+    </field>
+    <field number="340" name="TradSesStatus" type="INT">
+      <value enum="0" description="UNKNOWN" />
+      <value enum="1" description="HALTED" />
+      <value enum="2" description="OPEN" />
+      <value enum="3" description="CLOSED" />
+      <value enum="4" description="PRE_OPEN" />
+      <value enum="5" description="PRE_CLOSE" />
+      <value enum="6" description="REQUEST_REJECTED" />
+    </field>
+    <field number="341" name="TradSesStartTime" type="UTCTIMESTAMP" />
+    <field number="342" name="TradSesOpenTime" type="UTCTIMESTAMP" />
+    <field number="343" name="TradSesPreCloseTime" type="UTCTIMESTAMP" />
+    <field number="344" name="TradSesCloseTime" type="UTCTIMESTAMP" />
+    <field number="345" name="TradSesEndTime" type="UTCTIMESTAMP" />
+    <field number="346" name="NumberOfOrders" type="INT" />
+    <field number="347" name="MessageEncoding" type="STRING" />
+    <field number="348" name="EncodedIssuerLen" type="LENGTH" />
+    <field number="349" name="EncodedIssuer" type="DATA" />
+    <field number="350" name="EncodedSecurityDescLen" type="LENGTH" />
+    <field number="351" name="EncodedSecurityDesc" type="DATA" />
+    <field number="352" name="EncodedListExecInstLen" type="LENGTH" />
+    <field number="353" name="EncodedListExecInst" type="DATA" />
+    <field number="354" name="EncodedTextLen" type="LENGTH" />
+    <field number="355" name="EncodedText" type="DATA" />
+    <field number="356" name="EncodedSubjectLen" type="LENGTH" />
+    <field number="357" name="EncodedSubject" type="DATA" />
+    <field number="358" name="EncodedHeadlineLen" type="LENGTH" />
+    <field number="359" name="EncodedHeadline" type="DATA" />
+    <field number="360" name="EncodedAllocTextLen" type="LENGTH" />
+    <field number="361" name="EncodedAllocText" type="DATA" />
+    <field number="362" name="EncodedUnderlyingIssuerLen" type="LENGTH" />
+    <field number="363" name="EncodedUnderlyingIssuer" type="DATA" />
+    <field number="364" name="EncodedUnderlyingSecurityDescLen" type="LENGTH" />
+    <field number="365" name="EncodedUnderlyingSecurityDesc" type="DATA" />
+    <field number="366" name="AllocPrice" type="PRICE" />
+    <field number="367" name="QuoteSetValidUntilTime" type="UTCTIMESTAMP" />
+    <field number="368" name="QuoteEntryRejectReason" type="INT">
+      <value enum="1" description="UNKNOWN_SYMBOL" />
+      <value enum="2" description="EXCHANGE" />
+      <value enum="3" description="QUOTE_EXCEEDS_LIMIT" />
+      <value enum="4" description="TOO_LATE_TO_ENTER" />
+      <value enum="5" description="UNKNOWN_QUOTE" />
+      <value enum="6" description="DUPLICATE_QUOTE" />
+      <value enum="7" description="INVALID_BID" />
+      <value enum="8" description="INVALID_PRICE" />
+      <value enum="9" description="NOT_AUTHORIZED_TO_QUOTE_SECURITY" />
+    </field>
+    <field number="369" name="LastMsgSeqNumProcessed" type="SEQNUM" />
+    <field number="370" name="OnBehalfOfSendingTime" type="UTCTIMESTAMP" />
+    <field number="371" name="RefTagID" type="INT" />
+    <field number="372" name="RefMsgType" type="STRING" />
+    <field number="373" name="SessionRejectReason" type="INT">
+      <value enum="0" description="INVALID_TAG_NUMBER" />
+      <value enum="1" description="REQUIRED_TAG_MISSING" />
+      <value enum="2" description="TAG_NOT_DEFINED_FOR_THIS_MESSAGE_TYPE" />
+      <value enum="3" description="UNDEFINED_TAG" />
+      <value enum="4" description="TAG_SPECIFIED_WITHOUT_A_VALUE" />
+      <value enum="5" description="VALUE_IS_INCORRECT" />
+      <value enum="6" description="INCORRECT_DATA_FORMAT_FOR_VALUE" />
+      <value enum="7" description="DECRYPTION_PROBLEM" />
+      <value enum="8" description="SIGNATURE_PROBLEM" />
+      <value enum="9" description="COMPID_PROBLEM" />
+      <value enum="10" description="SENDINGTIME_ACCURACY_PROBLEM" />
+      <value enum="11" description="INVALID_MSGTYPE" />
+      <value enum="12" description="XML_VALIDATION_ERROR" />
+      <value enum="13" description="TAG_APPEARS_MORE_THAN_ONCE" />
+      <value enum="14" description="TAG_SPECIFIED_OUT_OF_REQUIRED_ORDER" />
+      <value enum="15" description="REPEATING_GROUP_FIELDS_OUT_OF_ORDER" />
+      <value enum="16" description="INCORRECT_NUMINGROUP_COUNT_FOR_REPEATING_GROUP" />
+      <value enum="17" description="NON_DATA_VALUE_INCLUDES_FIELD_DELIMITER" />
+    </field>
+    <field number="374" name="BidRequestTransType" type="CHAR">
+      <value enum="N" description="NEW" />
+      <value enum="C" description="CANCEL" />
+    </field>
+    <field number="375" name="ContraBroker" type="STRING" />
+    <field number="376" name="ComplianceID" type="STRING" />
+    <field number="377" name="SolicitedFlag" type="BOOLEAN" />
+    <field number="378" name="ExecRestatementReason" type="INT">
+      <value enum="0" description="GT_CORPORATE_ACTION" />
+      <value enum="1" description="GT_RENEWAL" />
+      <value enum="2" description="VERBAL_CHANGE" />
+      <value enum="3" description="REPRICING_OF_ORDER" />
+      <value enum="4" description="BROKER_OPTION" />
+      <value enum="5" description="PARTIAL_DECLINE_OF_ORDERQTY" />
+      <value enum="6" description="CANCEL_ON_TRADING_HALT" />
+      <value enum="7" description="CANCEL_ON_SYSTEM_FAILURE" />
+      <value enum="8" description="MARKET" />
+    </field>
+    <field number="379" name="BusinessRejectRefID" type="STRING" />
+    <field number="380" name="BusinessRejectReason" type="INT">
+      <value enum="0" description="OTHER" />
+      <value enum="1" description="UNKOWN_ID" />
+      <value enum="2" description="UNKNOWN_SECURITY" />
+      <value enum="3" description="UNSUPPORTED_MESSAGE_TYPE" />
+      <value enum="4" description="APPLICATION_NOT_AVAILABLE" />
+      <value enum="5" description="CONDITIONALLY_REQUIRED_FIELD_MISSING" />
+      <value enum="6" description="NOT_AUTHORIZED" />
+      <value enum="7" description="DELIVERTO_FIRM_NOT_AVAILABLE_AT_THIS_TIME" />
+    </field>
+    <field number="381" name="GrossTradeAmt" type="AMT" />
+    <field number="382" name="NoContraBrokers" type="NUMINGROUP" />
+    <field number="383" name="MaxMessageSize" type="LENGTH" />
+    <field number="384" name="NoMsgTypes" type="NUMINGROUP" />
+    <field number="385" name="MsgDirection" type="CHAR">
+      <value enum="S" description="SEND" />
+      <value enum="R" description="RECEIVE" />
+    </field>
+    <field number="386" name="NoTradingSessions" type="NUMINGROUP" />
+    <field number="387" name="TotalVolumeTraded" type="QTY" />
+    <field number="388" name="DiscretionInst" type="CHAR">
+      <value enum="0" description="RELATED_TO_DISPLAYED_PRICE" />
+      <value enum="1" description="RELATED_TO_MARKET_PRICE" />
+      <value enum="2" description="RELATED_TO_PRIMARY_PRICE" />
+      <value enum="3" description="RELATED_TO_LOCAL_PRIMARY_PRICE" />
+      <value enum="4" description="RELATED_TO_MIDPOINT_PRICE" />
+      <value enum="5" description="RELATED_TO_LAST_TRADE_PRICE" />
+    </field>
+    <field number="389" name="DiscretionOffset" type="PRICEOFFSET" />
+    <field number="390" name="BidID" type="STRING" />
+    <field number="391" name="ClientBidID" type="STRING" />
+    <field number="392" name="ListName" type="STRING" />
+    <field number="393" name="TotalNumSecurities" type="INT" />
+    <field number="394" name="BidType" type="INT">
+      <value enum="1" description="NON_DISCLOSED_STYLE" />
+      <value enum="2" description="DISCLOSED_STYLE" />
+      <value enum="3" description="NO_BIDDING_PROCESS" />
+    </field>
+    <field number="395" name="NumTickets" type="INT" />
+    <field type="AMT" name="SideValue1" number="396" />
+    <field type="AMT" name="SideValue2" number="397" />
+    <field number="398" name="NoBidDescriptors" type="NUMINGROUP" />
+    <field number="399" name="BidDescriptorType" type="INT">
+      <value enum="1" description="SECTOR" />
+      <value enum="2" description="COUNTRY" />
+      <value enum="3" description="INDEX" />
+    </field>
+    <field number="400" name="BidDescriptor" type="STRING" />
+    <field number="401" name="SideValueInd" type="INT">
+      <value description="SIDEVALUE1" enum="1" />
+      <value description="SIDEVALUE_2" enum="2" />
+    </field>
+    <field number="402" name="LiquidityPctLow" type="PERCENTAGE" />
+    <field number="403" name="LiquidityPctHigh" type="PERCENTAGE" />
+    <field number="404" name="LiquidityValue" type="AMT" />
+    <field number="405" name="EFPTrackingError" type="PERCENTAGE" />
+    <field number="406" name="FairValue" type="AMT" />
+    <field number="407" name="OutsideIndexPct" type="PERCENTAGE" />
+    <field number="408" name="ValueOfFutures" type="AMT" />
+    <field number="409" name="LiquidityIndType" type="INT">
+      <value enum="1" description="FIVEDAY_MOVING_AVERAGE" />
+      <value enum="2" description="TWENTYDAY_MOVING_AVERAGE" />
+      <value enum="3" description="NORMAL_MARKET_SIZE" />
+      <value enum="4" description="OTHER" />
+    </field>
+    <field number="410" name="WtAverageLiquidity" type="PERCENTAGE" />
+    <field number="411" name="ExchangeForPhysical" type="BOOLEAN" />
+    <field number="412" name="OutMainCntryUIndex" type="AMT" />
+    <field number="413" name="CrossPercent" type="PERCENTAGE" />
+    <field number="414" name="ProgRptReqs" type="INT">
+      <value enum="1" description="BUYSIDE_EXPLICITLY_REQUESTS_STATUS_USING_STATUSREQUEST" />
+      <value enum="2" description="SELLSIDE_PERIODICALLY_SENDS_STATUS_USING_LISTSTATUS" />
+      <value enum="3" description="REAL_TIME_EXECUTION_REPORTS" />
+    </field>
+    <field number="415" name="ProgPeriodInterval" type="INT" />
+    <field number="416" name="IncTaxInd" type="INT">
+      <value enum="1" description="NET" />
+      <value enum="2" description="GROSS" />
+    </field>
+    <field number="417" name="NumBidders" type="INT" />
+    <field number="418" name="TradeType" type="CHAR" />
+    <field number="419" name="BasisPxType" type="CHAR">
+      <value enum="2" description="CLOSING_PRICE_AT_MORNING_SESSION" />
+      <value enum="3" description="CLOSING_PRICE" />
+      <value enum="4" description="CURRENT_PRICE" />
+      <value enum="5" description="SQ" />
+      <value enum="6" description="VWAP_THROUGH_A_DAY" />
+      <value enum="7" description="VWAP_THROUGH_A_MORNING_SESSION" />
+      <value enum="8" description="VWAP_THROUGH_AN_AFTERNOON_SESSION" />
+      <value enum="9" description="VWAP_THROUGH_A_DAY_EXCEPT_YORI" />
+      <value enum="A" description="VWAP_THROUGH_A_MORNING_SESSION_EXCEPT_YORI" />
+      <value enum="B" description="VWAP_THROUGH_AN_AFTERNOON_SESSION_EXCEPT_YORI" />
+      <value enum="C" description="STRIKE" />
+      <value enum="D" description="OPEN" />
+      <value enum="Z" description="OTHERS" />
+    </field>
+    <field number="420" name="NoBidComponents" type="NUMINGROUP" />
+    <field number="421" name="Country" type="COUNTRY" />
+    <field number="422" name="TotNoStrikes" type="INT" />
+    <field number="423" name="PriceType" type="INT">
+      <value enum="1" description="PERCENTAGE" />
+      <value enum="2" description="PER_SHARE" />
+      <value enum="3" description="FIXED_AMOUNT" />
+      <value enum="4" description="DISCOUNT" />
+      <value enum="5" description="PREMIUM" />
+      <value enum="6" description="BASIS_POINTS_RELATIVE_TO_BENCHMARK" />
+      <value enum="7" description="TED_PRICE" />
+      <value enum="8" description="TED_YIELD" />
+    </field>
+    <field number="424" name="DayOrderQty" type="QTY" />
+    <field number="425" name="DayCumQty" type="QTY" />
+    <field number="426" name="DayAvgPx" type="PRICE" />
+    <field number="427" name="GTBookingInst" type="INT">
+      <value enum="0" description="BOOK_OUT_ALL_TRADES_ON_DAY_OF_EXECUTION" />
+      <value enum="1" description="ACCUMULATE_EXECUTIONS_UNTIL_ORDER_IS_FILLED_OR_EXPIRES" />
+      <value enum="2" description="ACCUMULATE_UNTIL_VERBALLY_NOTIFIED_OTHERWISE" />
+    </field>
+    <field number="428" name="NoStrikes" type="NUMINGROUP" />
+    <field number="429" name="ListStatusType" type="INT">
+      <value enum="1" description="ACK" />
+      <value enum="2" description="RESPONSE" />
+      <value enum="3" description="TIMED" />
+      <value enum="4" description="EXECSTARTED" />
+      <value enum="5" description="ALLDONE" />
+      <value enum="6" description="ALERT" />
+    </field>
+    <field number="430" name="NetGrossInd" type="INT">
+      <value enum="1" description="NET" />
+      <value enum="2" description="GROSS" />
+    </field>
+    <field number="431" name="ListOrderStatus" type="INT">
+      <value enum="1" description="INBIDDINGPROCESS" />
+      <value enum="2" description="RECEIVEDFOREXECUTION" />
+      <value enum="3" description="EXECUTING" />
+      <value enum="4" description="CANCELING" />
+      <value enum="5" description="ALERT" />
+      <value enum="6" description="ALL_DONE" />
+      <value enum="7" description="REJECT" />
+    </field>
+    <field number="432" name="ExpireDate" type="LOCALMKTDATE" />
+    <field number="433" name="ListExecInstType" type="CHAR">
+      <value enum="1" description="IMMEDIATE" />
+      <value enum="2" description="WAIT_FOR_EXECUTE_INSTRUCTION" />
+      <value enum="3" description="EXCHANGE_SWITCH_CIV_ORDER_SELL_DRIVEN" />
+      <value enum="4" description="EXCHANGE_SWITCH_CIV_ORDER_BUY_DRIVEN_CASH_TOP_UP" />
+      <value enum="5" description="EXCHANGE_SWITCH_CIV_ORDER_BUY_DRIVEN_CASH_WITHDRAW" />
+    </field>
+    <field number="434" name="CxlRejResponseTo" type="CHAR">
+      <value enum="1" description="ORDER_CANCEL_REQUEST" />
+      <value enum="2" description="ORDER_CANCEL_REPLACE_REQUEST" />
+    </field>
+    <field number="435" name="UnderlyingCouponRate" type="PERCENTAGE" />
+    <field number="436" name="UnderlyingContractMultiplier" type="FLOAT" />
+    <field number="437" name="ContraTradeQty" type="QTY" />
+    <field number="438" name="ContraTradeTime" type="UTCTIMESTAMP" />
+    <field number="439" name="ClearingFirm" type="STRING" />
+    <field number="440" name="ClearingAccount" type="STRING" />
+    <field number="441" name="LiquidityNumSecurities" type="INT" />
+    <field number="442" name="MultiLegReportingType" type="CHAR" />
+    <field number="443" name="StrikeTime" type="UTCTIMESTAMP" />
+    <field number="444" name="ListStatusText" type="STRING" />
+    <field number="445" name="EncodedListStatusTextLen" type="LENGTH" />
+    <field number="446" name="EncodedListStatusText" type="DATA" />
+    <field number="447" name="PartyIDSource" type="CHAR">
+      <value enum="B" description="BIC" />
+      <value enum="C" description="GENERALLY_ACCEPTED_MARKET_PARTICIPANT_IDENTIFIER" />
+      <value enum="D" description="PROPRIETARY" />
+      <value enum="E" description="ISO_COUNTRY_CODE" />
+      <value enum="F" description="SETTLEMENT_ENTITY_LOCATION" />
+      <value enum="1" description="KOREAN_INVESTOR_ID" />
+      <value enum="2" description="TAIWANESE_QUALIFIED_FOREIGN_INVESTOR_ID_QFII" />
+      <value enum="3" description="TAIWANESE_TRADING_ACCOUNT" />
+      <value enum="4" description="MALAYSIAN_CENTRAL_DEPOSITORY" />
+      <value enum="5" description="CHINESE_B_SHARE" />
+      <value enum="6" description="UK_NATIONAL_INSURANCE_OR_PENSION_NUMBER" />
+      <value enum="7" description="US_SOCIAL_SECURITY_NUMBER" />
+      <value enum="8" description="US_EMPLOYER_IDENTIFICATION_NUMBER" />
+      <value enum="9" description="AUSTRALIAN_BUSINESS_NUMBER" />
+      <value enum="A" description="AUSTRALIAN_TAX_FILE_NUMBER" />
+    </field>
+    <field number="448" name="PartyID" type="STRING" />
+    <field number="449" name="TotalVolumeTradedDate" type="UTCDATE" />
+    <field number="450" name="TotalVolumeTradedTime" type="UTCTIMEONLY" />
+    <field number="451" name="NetChgPrevDay" type="PRICEOFFSET" />
+    <field number="452" name="PartyRole" type="INT">
+      <value enum="1" description="EXECUTING_FIRM" />
+      <value enum="2" description="BROKER_OF_CREDIT" />
+      <value enum="3" description="CLIENT_ID" />
+      <value enum="4" description="CLEARING_FIRM" />
+      <value enum="5" description="INVESTOR_ID" />
+      <value enum="6" description="INTRODUCING_FIRM" />
+      <value enum="7" description="ENTERING_FIRM" />
+      <value enum="8" description="LOCATE" />
+      <value enum="9" description="FUND_MANAGER_CLIENT_ID" />
+      <value enum="10" description="SETTLEMENT_LOCATION" />
+      <value enum="11" description="ORDER_ORIGINATION_TRADER" />
+      <value enum="12" description="EXECUTING_TRADER" />
+      <value enum="13" description="ORDER_ORIGINATION_FIRM" />
+      <value enum="14" description="GIVEUP_CLEARING_FIRM" />
+      <value enum="15" description="CORRESPONDANT_CLEARING_FIRM" />
+      <value enum="16" description="EXECUTING_SYSTEM" />
+      <value enum="17" description="CONTRA_FIRM" />
+      <value enum="18" description="CONTRA_CLEARING_FIRM" />
+      <value enum="19" description="SPONSORING_FIRM" />
+      <value enum="20" description="UNDERLYING_CONTRA_FIRM" />
+    </field>
+    <field number="453" name="NoPartyIDs" type="NUMINGROUP" />
+    <field number="454" name="NoSecurityAltID" type="NUMINGROUP" />
+    <field number="455" name="SecurityAltID" type="STRING" />
+    <field number="456" name="SecurityAltIDSource" type="STRING" />
+    <field number="457" name="NoUnderlyingSecurityAltID" type="NUMINGROUP" />
+    <field number="458" name="UnderlyingSecurityAltID" type="STRING" />
+    <field number="459" name="UnderlyingSecurityAltIDSource" type="STRING" />
+    <field number="460" name="Product" type="INT">
+      <value enum="1" description="AGENCY" />
+      <value enum="2" description="COMMODITY" />
+      <value enum="3" description="CORPORATE" />
+      <value enum="4" description="CURRENCY" />
+      <value enum="5" description="EQUITY" />
+      <value enum="6" description="GOVERNMENT" />
+      <value enum="7" description="INDEX" />
+      <value enum="8" description="LOAN" />
+      <value enum="9" description="MONEYMARKET" />
+      <value enum="10" description="MORTGAGE" />
+      <value enum="11" description="MUNICIPAL" />
+      <value enum="12" description="OTHER" />
+    </field>
+    <field number="461" name="CFICode" type="STRING" />
+    <field number="462" name="UnderlyingProduct" type="INT" />
+    <field number="463" name="UnderlyingCFICode" type="STRING" />
+    <field number="464" name="TestMessageIndicator" type="BOOLEAN" />
+    <field number="465" name="QuantityType" type="INT">
+      <value enum="1" description="SHARES" />
+      <value enum="2" description="BONDS" />
+      <value enum="3" description="CURRENTFACE" />
+      <value enum="4" description="ORIGINALFACE" />
+      <value enum="5" description="CURRENCY" />
+      <value enum="6" description="CONTRACTS" />
+      <value enum="7" description="OTHER" />
+      <value enum="8" description="PAR" />
+    </field>
+    <field number="466" name="BookingRefID" type="STRING" />
+    <field number="467" name="IndividualAllocID" type="STRING" />
+    <field number="468" name="RoundingDirection" type="CHAR" />
+    <field number="469" name="RoundingModulus" type="FLOAT" />
+    <field number="470" name="CountryOfIssue" type="COUNTRY" />
+    <field number="471" name="StateOrProvinceOfIssue" type="STRING" />
+    <field number="472" name="LocaleOfIssue" type="STRING" />
+    <field number="473" name="NoRegistDtls" type="NUMINGROUP" />
+    <field number="474" name="MailingDtls" type="STRING" />
+    <field number="475" name="InvestorCountryOfResidence" type="COUNTRY" />
+    <field number="476" name="PaymentRef" type="STRING" />
+    <field number="477" name="DistribPaymentMethod" type="INT" />
+    <field number="478" name="CashDistribCurr" type="CURRENCY" />
+    <field number="479" name="CommCurrency" type="CURRENCY" />
+    <field number="480" name="CancellationRights" type="CHAR" />
+    <field number="481" name="MoneyLaunderingStatus" type="CHAR">
+      <value enum="Y" description="PASSED" />
+      <value enum="N" description="NOT_CHECKED" />
+      <value enum="1" description="EXEMPT_BELOW_THE_LIMIT" />
+      <value enum="2" description="EXEMPT_CLIENT_MONEY_TYPE_EXEMPTION" />
+      <value enum="3" description="EXEMPT_AUTHORISED_CREDIT_OR_FINANCIAL_INSTITUTION" />
+    </field>
+    <field number="482" name="MailingInst" type="STRING" />
+    <field number="483" name="TransBkdTime" type="UTCTIMESTAMP" />
+    <field number="484" name="ExecPriceType" type="CHAR" />
+    <field number="485" name="ExecPriceAdjustment" type="FLOAT" />
+    <field number="486" name="DateOfBirth" type="LOCALMKTDATE" />
+    <field number="487" name="TradeReportTransType" type="CHAR">
+      <value enum="N" description="NEW" />
+      <value enum="C" description="CANCEL" />
+      <value enum="R" description="REPLACE" />
+    </field>
+    <field number="488" name="CardHolderName" type="STRING" />
+    <field number="489" name="CardNumber" type="STRING" />
+    <field number="490" name="CardExpDate" type="LOCALMKTDATE" />
+    <field number="491" name="CardIssNo" type="STRING" />
+    <field number="492" name="PaymentMethod" type="INT" />
+    <field number="493" name="RegistAcctType" type="STRING" />
+    <field number="494" name="Designation" type="STRING" />
+    <field number="495" name="TaxAdvantageType" type="INT" />
+    <field number="496" name="RegistRejReasonText" type="STRING" />
+    <field number="497" name="FundRenewWaiv" type="CHAR" />
+    <field number="498" name="CashDistribAgentName" type="STRING" />
+    <field number="499" name="CashDistribAgentCode" type="STRING" />
+    <field number="500" name="CashDistribAgentAcctNumber" type="STRING" />
+    <field number="501" name="CashDistribPayRef" type="STRING" />
+    <field number="502" name="CashDistribAgentAcctName" type="STRING" />
+    <field number="503" name="CardStartDate" type="LOCALMKTDATE" />
+    <field number="504" name="PaymentDate" type="LOCALMKTDATE" />
+    <field number="505" name="PaymentRemitterID" type="STRING" />
+    <field number="506" name="RegistStatus" type="CHAR" />
+    <field number="507" name="RegistRejReasonCode" type="INT" />
+    <field number="508" name="RegistRefID" type="STRING" />
+    <field number="509" name="RegistDetls" type="STRING" />
+    <field number="510" name="NoDistribInsts" type="NUMINGROUP" />
+    <field number="511" name="RegistEmail" type="STRING" />
+    <field number="512" name="DistribPercentage" type="PERCENTAGE" />
+    <field number="513" name="RegistID" type="STRING" />
+    <field number="514" name="RegistTransType" type="CHAR">
+      <value enum="0" description="NEW" />
+      <value enum="1" description="REPLACE" />
+      <value enum="2" description="CANCEL" />
+    </field>
+    <field number="515" name="ExecValuationPoint" type="UTCTIMESTAMP" />
+    <field number="516" name="OrderPercent" type="PERCENTAGE" />
+    <field number="517" name="OwnershipType" type="CHAR" />
+    <field number="518" name="NoContAmts" type="NUMINGROUP" />
+    <field number="519" name="ContAmtType" type="INT" />
+    <field number="520" name="ContAmtValue" type="FLOAT" />
+    <field number="521" name="ContAmtCurr" type="CURRENCY" />
+    <field number="522" name="OwnerType" type="INT">
+      <value enum="1" description="INDIVIDUAL_INVESTOR" />
+      <value enum="2" description="PUBLIC_COMPANY" />
+      <value enum="3" description="PRIVATE_COMPANY" />
+      <value enum="4" description="INDIVIDUAL_TRUSTEE" />
+      <value enum="5" description="COMPANY_TRUSTEE" />
+      <value enum="6" description="PENSION_PLAN" />
+      <value enum="7" description="CUSTODIAN_UNDER_GIFTS_TO_MINORS_ACT" />
+      <value enum="8" description="TRUSTS" />
+      <value enum="9" description="FIDUCIARIES" />
+      <value enum="10" description="NETWORKING_SUB_ACCOUNT" />
+      <value enum="11" description="NON_PROFIT_ORGANIZATION" />
+      <value enum="12" description="CORPORATE_BODY" />
+      <value enum="13" description="NOMINEE" />
+    </field>
+    <field number="523" name="PartySubID" type="STRING" />
+    <field number="524" name="NestedPartyID" type="STRING" />
+    <field number="525" name="NestedPartyIDSource" type="CHAR" />
+    <field number="526" name="SecondaryClOrdID" type="STRING" />
+    <field number="527" name="SecondaryExecID" type="STRING" />
+    <field number="528" name="OrderCapacity" type="CHAR">
+      <value enum="A" description="AGENCY" />
+      <value enum="G" description="PROPRIETARY" />
+      <value enum="I" description="INDIVIDUAL" />
+      <value enum="P" description="PRINCIPAL" />
+      <value enum="R" description="RISKLESS_PRINCIPAL" />
+      <value enum="W" description="AGENT_FOR_OTHER_MEMBER" />
+    </field>
+    <field number="529" name="OrderRestrictions" type="MULTIPLEVALUESTRING">
+      <value enum="1" description="PROGRAM_TRADE" />
+      <value enum="2" description="INDEX_ARBITRAGE" />
+      <value enum="3" description="NON_INDEX_ARBITRAGE" />
+      <value enum="4" description="COMPETING_MARKET_MAKER" />
+      <value enum="5" description="ACTING_AS_MARKET_MAKER_OR_SPECIALIST_IN_THE_SECURITY" />
+      <value enum="6" description="ACTING_AS_MARKET_MAKER_OR_SPECIALIST_IN_THE_UNDERLYING_SECURITY_OF_A_DERIVATIVE_SECURITY" />
+      <value enum="7" description="FOREIGN_ENTITY" />
+      <value enum="8" description="EXTERNAL_MARKET_PARTICIPANT" />
+      <value enum="9" description="EXTERNAL_INTER_CONNECTED_MARKET_LINKAGE" />
+      <value enum="A" description="RISKLESS_ARBITRAGE" />
+    </field>
+    <field number="530" name="MassCancelRequestType" type="CHAR">
+      <value enum="1" description="CANCEL_ORDERS_FOR_A_SECURITY" />
+      <value enum="2" description="CANCEL_ORDERS_FOR_AN_UNDERLYING_SECURITY" />
+      <value enum="3" description="CANCEL_ORDERS_FOR_A_PRODUCT" />
+      <value enum="4" description="CANCEL_ORDERS_FOR_A_CFICODE" />
+      <value enum="5" description="CANCEL_ORDERS_FOR_A_SECURITYTYPE" />
+      <value enum="6" description="CANCEL_ORDERS_FOR_A_TRADING_SESSION" />
+      <value enum="7" description="CANCEL_ALL_ORDERS" />
+    </field>
+    <field number="531" name="MassCancelResponse" type="CHAR">
+      <value enum="0" description="CANCEL_REQUEST_REJECTED" />
+      <value enum="1" description="CANCEL_ORDERS_FOR_A_SECURITY" />
+      <value enum="2" description="CANCEL_ORDERS_FOR_AN_UNDERLYING_SECURITY" />
+      <value enum="3" description="CANCEL_ORDERS_FOR_A_PRODUCT" />
+      <value enum="4" description="CANCEL_ORDERS_FOR_A_CFICODE" />
+      <value enum="5" description="CANCEL_ORDERS_FOR_A_SECURITYTYPE" />
+      <value enum="6" description="CANCEL_ORDERS_FOR_A_TRADING_SESSION" />
+      <value enum="7" description="CANCEL_ALL_ORDERS" />
+    </field>
+    <field number="532" name="MassCancelRejectReason" type="CHAR" />
+    <field number="533" name="TotalAffectedOrders" type="INT" />
+    <field number="534" name="NoAffectedOrders" type="INT" />
+    <field number="535" name="AffectedOrderID" type="STRING" />
+    <field number="536" name="AffectedSecondaryOrderID" type="STRING" />
+    <field number="537" name="QuoteType" type="INT">
+      <value enum="0" description="INDICATIVE" />
+      <value enum="1" description="TRADEABLE" />
+      <value enum="2" description="RESTRICTED_TRADEABLE" />
+    </field>
+    <field number="538" name="NestedPartyRole" type="INT" />
+    <field number="539" name="NoNestedPartyIDs" type="NUMINGROUP" />
+    <field number="540" name="TotalAccruedInterestAmt" type="AMT" />
+    <field number="541" name="MaturityDate" type="LOCALMKTDATE" />
+    <field number="542" name="UnderlyingMaturityDate" type="LOCALMKTDATE" />
+    <field number="543" name="InstrRegistry" type="STRING">
+      <value enum="Code" description="COUNTRY_IN_WHICH_REGISTRY_IS_KEPT" />
+      <value enum="ZZ" description="PHYSICAL_OR_BEARER" />
+    </field>
+    <field number="544" name="CashMargin" type="CHAR">
+      <value enum="1" description="CASH" />
+      <value enum="2" description="MARGIN_OPEN" />
+      <value enum="3" description="MARGIN_CLOSE" />
+    </field>
+    <field number="545" name="NestedPartySubID" type="STRING" />
+    <field number="546" name="Scope" type="MULTIPLEVALUESTRING">
+      <value enum="1" description="LOCAL" />
+      <value enum="2" description="NATIONAL" />
+      <value enum="3" description="GLOBAL" />
+    </field>
+    <field number="547" name="MDImplicitDelete" type="BOOLEAN" />
+    <field number="548" name="CrossID" type="STRING" />
+    <field number="549" name="CrossType" type="INT">
+      <value enum="1" description="CROSS_TRADE_WHICH_IS_EXECUTED_COMPLETELY_OR_NOT" />
+      <value enum="2" description="CROSS_TRADE_WHICH_IS_EXECUTED_PARTIALLY_AND_THE_REST_IS_CANCELLED" />
+      <value enum="3" description="CROSS_TRADE_WHICH_IS_PARTIALLY_EXECUTED_WITH_THE_UNFILLED_PORTIONS_REMAINING_ACTIVE" />
+      <value enum="4" description="CROSS_TRADE_IS_EXECUTED_WITH_EXISTING_ORDERS_WITH_THE_SAME_PRICE" />
+    </field>
+    <field number="550" name="CrossPrioritization" type="INT" />
+    <field number="551" name="OrigCrossID" type="STRING" />
+    <field number="552" name="NoSides" type="NUMINGROUP">
+      <value enum="1" description="ONE_SIDE" />
+      <value enum="2" description="BOTH_SIDES" />
+    </field>
+    <field number="553" name="Username" type="STRING" />
+    <field number="554" name="Password" type="STRING" />
+    <field number="555" name="NoLegs" type="NUMINGROUP" />
+    <field number="556" name="LegCurrency" type="CURRENCY" />
+    <field number="557" name="TotalNumSecurityTypes" type="INT" />
+    <field number="558" name="NoSecurityTypes" type="NUMINGROUP" />
+    <field number="559" name="SecurityListRequestType" type="INT">
+      <value enum="0" description="SYMBOL" />
+      <value enum="1" description="SECURITYTYPE_AND" />
+      <value enum="2" description="PRODUCT" />
+      <value enum="3" description="TRADINGSESSIONID" />
+      <value enum="4" description="ALL_SECURITIES" />
+    </field>
+    <field number="560" name="SecurityRequestResult" type="INT">
+      <value enum="0" description="VALID_REQUEST" />
+      <value enum="1" description="INVALID_OR_UNSUPPORTED_REQUEST" />
+      <value enum="2" description="NO_INSTRUMENTS_FOUND_THAT_MATCH_SELECTION_CRITERIA" />
+      <value enum="3" description="NOT_AUTHORIZED_TO_RETRIEVE_INSTRUMENT_DATA" />
+      <value enum="4" description="INSTRUMENT_DATA_TEMPORARILY_UNAVAILABLE" />
+      <value enum="5" description="REQUEST_FOR_INSTRUMENT_DATA_NOT_SUPPORTED" />
+    </field>
+    <field number="561" name="RoundLot" type="QTY" />
+    <field number="562" name="MinTradeVol" type="QTY" />
+    <field number="563" name="MultiLegRptTypeReq" type="INT" />
+    <field number="564" name="LegPositionEffect" type="CHAR" />
+    <field number="565" name="LegCoveredOrUncovered" type="INT" />
+    <field number="566" name="LegPrice" type="PRICE" />
+    <field number="567" name="TradSesStatusRejReason" type="INT">
+      <value enum="1" description="UNKNOWN_OR_INVALID_TRADINGSESSIONID" />
+    </field>
+    <field number="568" name="TradeRequestID" type="STRING" />
+    <field number="569" name="TradeRequestType" type="INT">
+      <value enum="0" description="ALL_TRADES" />
+      <value enum="1" description="MATCHED_TRADES_MATCHING_CRITERIA_PROVIDED_ON_REQUEST" />
+      <value enum="2" description="UNMATCHED_TRADES_THAT_MATCH_CRITERIA" />
+      <value enum="3" description="UNREPORTED_TRADES_THAT_MATCH_CRITERIA" />
+      <value enum="4" description="ADVISORIES_THAT_MATCH_CRITERIA" />
+    </field>
+    <field number="570" name="PreviouslyReported" type="BOOLEAN" />
+    <field number="571" name="TradeReportID" type="STRING" />
+    <field number="572" name="TradeReportRefID" type="STRING" />
+    <field number="573" name="MatchStatus" type="CHAR">
+      <value enum="0" description="COMPARED" />
+      <value enum="1" description="UNCOMPARED" />
+      <value enum="2" description="ADVISORY_OR_ALERT" />
+    </field>
+    <field number="574" name="MatchType" type="STRING">
+      <value enum="A1" description="EXACT_MATCH_PLUS_FOUR_BADGES_AND_EXECUTION_TIME" />
+      <value enum="A2" description="EXACT_MATCH_PLUS_FOUR_BADGES" />
+      <value enum="A3" description="EXACT_MATCH_PLUS_TWO_BADGES_AND_EXECUTION_TIME" />
+      <value enum="A4" description="EXACT_MATCH_PLUS_TWO_BADGES" />
+      <value enum="A5" description="EXACT_MATCH_PLUS_EXECUTION_TIME" />
+      <value enum="AQ" description="COMPARED_RECORDS_RESULTING_FROM_STAMPED_ADVISORIES_OR_SPECIALIST_ACCEPTS" />
+      <value description="SUMMARIZED_MATCH_USING_A1_TO_A5" enum="S5" />
+      <value enum="M1" description="EXACT_MATCH_MINUS_BADGES_AND_EXECUTION_TIME" />
+      <value enum="M2" description="SUMMARIZED_MATCH_MINUS_BADGES_AND_TIMES" />
+      <value enum="MT" description="OCS_LOCKED_IN" />
+      <value description="ACT_M1_MATCH" enum="M1" />
+      <value description="ACT_M2_MATCH" enum="M2" />
+      <value enum="M3" description="ACT_ACCEPTED_TRADE" />
+      <value enum="M4" description="ACT_DEFAULT_TRADE" />
+      <value description="ACT_DEFAULT_AFTER_M2" enum="M5" />
+      <value description="ACT_M6_MATCH" enum="M6" />
+      <value enum="MT" description="NON_ACT" />
+    </field>
+    <field number="575" name="OddLot" type="BOOLEAN" />
+    <field number="576" name="NoClearingInstructions" type="INT" />
+    <field number="577" name="ClearingInstruction" type="INT">
+      <value enum="0" description="PROCESS_NORMALLY" />
+      <value enum="1" description="EXCLUDE_FROM_ALL_NETTING" />
+      <value enum="2" description="BILATERAL_NETTING_ONLY" />
+      <value enum="3" description="EX_CLEARING" />
+      <value enum="4" description="SPECIAL_TRADE" />
+      <value enum="5" description="MULTILATERAL_NETTING" />
+      <value enum="6" description="CLEAR_AGAINST_CENTRAL_COUNTERPARTY" />
+      <value enum="7" description="EXCLUDE_FROM_CENTRAL_COUNTERPARTY" />
+      <value enum="8" description="MANUAL_MODE" />
+      <value enum="9" description="AUTOMATIC_POSTING_MODE" />
+      <value enum="10" description="AUTOMATIC_GIVE_UP_MODE" />
+    </field>
+    <field number="578" name="TradeInputSource" type="STRING" />
+    <field number="579" name="TradeInputDevice" type="STRING" />
+    <field number="580" name="NoDates" type="INT" />
+    <field number="581" name="AccountType" type="INT">
+      <value enum="1" description="ACCOUNT_IS_CARRIED_ON_CUSTOMER_SIDE_OF_BOOKS" />
+      <value enum="2" description="ACCOUNT_IS_CARRIED_ON_NON_CUSTOMER_SIDE_OF_BOOKS" />
+      <value enum="3" description="HOUSE_TRADER" />
+      <value enum="4" description="FLOOR_TRADER" />
+      <value enum="6" description="ACCOUNT_IS_CARRIED_ON_NON_CUSTOMER_SIDE_OF_BOOKS_AND_IS_CROSS_MARGINED" />
+      <value enum="7" description="ACCOUNT_IS_HOUSE_TRADER_AND_IS_CROSS_MARGINED" />
+      <value enum="8" description="JOINT_BACKOFFICE_ACCOUNT" />
+    </field>
+    <field number="582" name="CustOrderCapacity" type="INT" />
+    <field number="583" name="ClOrdLinkID" type="STRING" />
+    <field number="584" name="MassStatusReqID" type="STRING" />
+    <field number="585" name="MassStatusReqType" type="INT">
+      <value enum="1" description="STATUS_FOR_ORDERS_FOR_A_SECURITY" />
+      <value enum="2" description="STATUS_FOR_ORDERS_FOR_AN_UNDERLYING_SECURITY" />
+      <value enum="3" description="STATUS_FOR_ORDERS_FOR_A_PRODUCT" />
+      <value enum="4" description="STATUS_FOR_ORDERS_FOR_A_CFICODE" />
+      <value enum="5" description="STATUS_FOR_ORDERS_FOR_A_SECURITYTYPE" />
+      <value enum="6" description="STATUS_FOR_ORDERS_FOR_A_TRADING_SESSION" />
+      <value enum="7" description="STATUS_FOR_ALL_ORDERS" />
+      <value enum="8" description="STATUS_FOR_ORDERS_FOR_A_PARTYID" />
+    </field>
+    <field number="586" name="OrigOrdModTime" type="UTCTIMESTAMP" />
+    <field number="587" name="LegSettlmntTyp" type="CHAR" />
+    <field number="588" name="LegFutSettDate" type="LOCALMKTDATE" />
+    <field number="589" name="DayBookingInst" type="CHAR" />
+    <field number="590" name="BookingUnit" type="CHAR" />
+    <field number="591" name="PreallocMethod" type="CHAR" />
+    <field number="592" name="UnderlyingCountryOfIssue" type="COUNTRY" />
+    <field number="593" name="UnderlyingStateOrProvinceOfIssue" type="STRING" />
+    <field number="594" name="UnderlyingLocaleOfIssue" type="STRING" />
+    <field number="595" name="UnderlyingInstrRegistry" type="STRING" />
+    <field number="596" name="LegCountryOfIssue" type="COUNTRY" />
+    <field number="597" name="LegStateOrProvinceOfIssue" type="STRING" />
+    <field number="598" name="LegLocaleOfIssue" type="STRING" />
+    <field number="599" name="LegInstrRegistry" type="STRING" />
+    <field number="600" name="LegSymbol" type="STRING" />
+    <field number="601" name="LegSymbolSfx" type="STRING" />
+    <field number="602" name="LegSecurityID" type="STRING" />
+    <field number="603" name="LegSecurityIDSource" type="STRING" />
+    <field number="604" name="NoLegSecurityAltID" type="STRING" />
+    <field number="605" name="LegSecurityAltID" type="STRING" />
+    <field number="606" name="LegSecurityAltIDSource" type="STRING" />
+    <field number="607" name="LegProduct" type="INT" />
+    <field number="608" name="LegCFICode" type="STRING" />
+    <field number="609" name="LegSecurityType" type="STRING" />
+    <field number="610" name="LegMaturityMonthYear" type="MONTHYEAR" />
+    <field number="611" name="LegMaturityDate" type="LOCALMKTDATE" />
+    <field number="612" name="LegStrikePrice" type="PRICE" />
+    <field number="613" name="LegOptAttribute" type="CHAR" />
+    <field number="614" name="LegContractMultiplier" type="FLOAT" />
+    <field number="615" name="LegCouponRate" type="PERCENTAGE" />
+    <field number="616" name="LegSecurityExchange" type="EXCHANGE" />
+    <field number="617" name="LegIssuer" type="STRING" />
+    <field number="618" name="EncodedLegIssuerLen" type="LENGTH" />
+    <field number="619" name="EncodedLegIssuer" type="DATA" />
+    <field number="620" name="LegSecurityDesc" type="STRING" />
+    <field number="621" name="EncodedLegSecurityDescLen" type="LENGTH" />
+    <field number="622" name="EncodedLegSecurityDesc" type="DATA" />
+    <field number="623" name="LegRatioQty" type="FLOAT" />
+    <field number="624" name="LegSide" type="CHAR" />
+    <field number="625" name="TradingSessionSubID" type="STRING" />
+    <field number="626" name="AllocType" type="INT">
+      <value enum="1" description="BUYSIDE_CALCULATED" />
+      <value enum="2" description="BUYSIDE_PRELIMINARY" />
+      <value enum="3" description="SELLSIDE_CALCULATED_USING_PRELIMINARY" />
+      <value enum="4" description="SELLSIDE_CALCULATED_WITHOUT_PRELIMINARY" />
+      <value enum="5" description="BUYSIDE_READY_TO_BOOK_SINGLE_ORDER" />
+      <value enum="6" description="BUYSIDE_READY_TO_BOOK_COMBINED_SET_OF_ORDERS" />
+    </field>
+    <field number="627" name="NoHops" type="NUMINGROUP" />
+    <field number="628" name="HopCompID" type="STRING" />
+    <field number="629" name="HopSendingTime" type="UTCTIMESTAMP" />
+    <field number="630" name="HopRefID" type="SEQNUM" />
+    <field number="631" name="MidPx" type="PRICE" />
+    <field number="632" name="BidYield" type="PERCENTAGE" />
+    <field number="633" name="MidYield" type="PERCENTAGE" />
+    <field number="634" name="OfferYield" type="PERCENTAGE" />
+    <field number="635" name="ClearingFeeIndicator" type="STRING" />
+    <field number="636" name="WorkingIndicator" type="BOOLEAN" />
+    <field number="637" name="LegLastPx" type="PRICE" />
+    <field number="638" name="PriorityIndicator" type="INT">
+      <value enum="0" description="PRIORITY_UNCHANGED" />
+      <value enum="1" description="LOST_PRIORITY_AS_RESULT_OF_ORDER_CHANGE" />
+    </field>
+    <field number="639" name="PriceImprovement" type="PRICEOFFSET" />
+    <field type="PRICE" name="Price2" number="640" />
+    <field type="PRICEOFFSET" name="LastForwardPoints2" number="641" />
+    <field type="PRICEOFFSET" name="BidForwardPoints2" number="642" />
+    <field type="PRICEOFFSET" name="OfferForwardPoints2" number="643" />
+    <field number="644" name="RFQReqID" type="STRING" />
+    <field number="645" name="MktBidPx" type="PRICE" />
+    <field number="646" name="MktOfferPx" type="PRICE" />
+    <field number="647" name="MinBidSize" type="QTY" />
+    <field number="648" name="MinOfferSize" type="QTY" />
+    <field number="649" name="QuoteStatusReqID" type="STRING" />
+    <field number="650" name="LegalConfirm" type="BOOLEAN" />
+    <field number="651" name="UnderlyingLastPx" type="PRICE" />
+    <field number="652" name="UnderlyingLastQty" type="QTY" />
+    <field number="653" name="SecDefStatus" type="INT">
+      <value enum="0" description="PENDING_APPROVAL" />
+      <value enum="1" description="APPROVED" />
+      <value enum="2" description="REJECTED" />
+      <value enum="3" description="UNAUTHORIZED_REQUEST" />
+      <value enum="4" description="INVALID_DEFINITION_REQUEST" />
+    </field>
+    <field number="654" name="LegRefID" type="STRING" />
+    <field number="655" name="ContraLegRefID" type="STRING" />
+    <field number="656" name="SettlCurrBidFxRate" type="FLOAT" />
+    <field number="657" name="SettlCurrOfferFxRate" type="FLOAT" />
+    <field number="658" name="QuoteRequestRejectReason" type="INT" />
+    <field number="659" name="SideComplianceID" type="STRING" />
+  </fields>
+</fix>
diff --git a/fix/FIX44.xml b/fix/FIX44.xml
new file mode 100644 (file)
index 0000000..73f1a11
--- /dev/null
@@ -0,0 +1,6687 @@
+<fix major="4" minor="4">
+  <header>
+    <field name="BeginString" required="Y" />
+    <field name="BodyLength" required="Y" />
+    <field name="MsgType" required="Y" />
+    <field name="SenderCompID" required="Y" />
+    <field name="TargetCompID" required="Y" />
+    <field name="OnBehalfOfCompID" required="N" />
+    <field name="DeliverToCompID" required="N" />
+    <field name="SecureDataLen" required="N" />
+    <field name="SecureData" required="N" />
+    <field name="MsgSeqNum" required="Y" />
+    <field name="SenderSubID" required="N" />
+    <field name="SenderLocationID" required="N" />
+    <field name="TargetSubID" required="N" />
+    <field name="TargetLocationID" required="N" />
+    <field name="OnBehalfOfSubID" required="N" />
+    <field name="OnBehalfOfLocationID" required="N" />
+    <field name="DeliverToSubID" required="N" />
+    <field name="DeliverToLocationID" required="N" />
+    <field name="PossDupFlag" required="N" />
+    <field name="PossResend" required="N" />
+    <field name="SendingTime" required="Y" />
+    <field name="OrigSendingTime" required="N" />
+    <field name="XmlDataLen" required="N" />
+    <field name="XmlData" required="N" />
+    <field name="MessageEncoding" required="N" />
+    <field name="LastMsgSeqNumProcessed" required="N" />
+    <group name="NoHops" required="N">
+      <field name="HopCompID" required="N" />
+      <field name="HopSendingTime" required="N" />
+      <field name="HopRefID" required="N" />
+    </group>
+  </header>
+  <trailer>
+    <field name="SignatureLength" required="N" />
+    <field name="Signature" required="N" />
+    <field name="CheckSum" required="Y" />
+  </trailer>
+  <messages>
+    <message name="Heartbeat" msgtype="0" msgcat="admin">
+      <field name="TestReqID" required="N" />
+    </message>
+    <message name="Logon" msgtype="A" msgcat="admin">
+      <field name="EncryptMethod" required="Y" />
+      <field name="HeartBtInt" required="Y" />
+      <field name="RawDataLength" required="N" />
+      <field name="RawData" required="N" />
+      <field name="ResetSeqNumFlag" required="N" />
+      <field name="NextExpectedMsgSeqNum" required="N" />
+      <field name="MaxMessageSize" required="N" />
+      <group name="NoMsgTypes" required="N">
+        <field name="RefMsgType" required="N" />
+        <field name="MsgDirection" required="N" />
+      </group>
+      <field name="TestMessageIndicator" required="N" />
+      <field name="Username" required="N" />
+      <field name="Password" required="N" />
+    </message>
+    <message name="TestRequest" msgtype="1" msgcat="admin">
+      <field name="TestReqID" required="Y" />
+    </message>
+    <message name="ResendRequest" msgtype="2" msgcat="admin">
+      <field name="BeginSeqNo" required="Y" />
+      <field name="EndSeqNo" required="Y" />
+    </message>
+    <message name="Reject" msgtype="3" msgcat="admin">
+      <field name="RefSeqNum" required="Y" />
+      <field name="RefTagID" required="N" />
+      <field name="RefMsgType" required="N" />
+      <field name="SessionRejectReason" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="SequenceReset" msgtype="4" msgcat="admin">
+      <field name="GapFillFlag" required="N" />
+      <field name="NewSeqNo" required="Y" />
+    </message>
+    <message name="Logout" msgtype="5" msgcat="admin">
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="BusinessMessageReject" msgtype="j" msgcat="app">
+      <field name="RefSeqNum" required="N" />
+      <field name="RefMsgType" required="Y" />
+      <field name="BusinessRejectRefID" required="N" />
+      <field name="BusinessRejectReason" required="Y" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="UserRequest" msgtype="BE" msgcat="app">
+      <field name="UserRequestID" required="Y" />
+      <field name="UserRequestType" required="Y" />
+      <field name="Username" required="Y" />
+      <field name="Password" required="N" />
+      <field name="NewPassword" required="N" />
+      <field name="RawDataLength" required="N" />
+      <field name="RawData" required="N" />
+    </message>
+    <message name="UserResponse" msgtype="BF" msgcat="app">
+      <field name="UserRequestID" required="Y" />
+      <field name="Username" required="Y" />
+      <field name="UserStatus" required="N" />
+      <field name="UserStatusText" required="N" />
+    </message>
+    <message name="Advertisement" msgtype="7" msgcat="app">
+      <field name="AdvId" required="Y" />
+      <field name="AdvTransType" required="Y" />
+      <field name="AdvRefID" required="N" />
+      <component name="Instrument" required="Y" />
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+      </group>
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="Y" />
+      </group>
+      <field name="AdvSide" required="Y" />
+      <field name="Quantity" required="Y" />
+      <field name="QtyType" required="N" />
+      <field name="Price" required="N" />
+      <field name="Currency" required="N" />
+      <field name="TradeDate" required="N" />
+      <field name="TransactTime" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="URLLink" required="N" />
+      <field name="LastMkt" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </message>
+    <message name="IndicationOfInterest" msgtype="6" msgcat="app">
+      <field name="IOIid" required="Y" />
+      <field name="IOITransType" required="Y" />
+      <field name="IOIRefID" required="N" />
+      <component name="Instrument" required="Y" />
+      <component name="FinancingDetails" required="N" />
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="N" />
+      </group>
+      <field name="Side" required="Y" />
+      <field name="QtyType" required="N" />
+      <component name="OrderQtyData" required="N" />
+      <field name="IOIQty" required="Y" />
+      <field name="Currency" required="N" />
+      <component name="Stipulations" required="N" />
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+        <field name="LegIOIQty" required="N" />
+        <component name="LegStipulations" required="N" />
+      </group>
+      <field name="PriceType" required="N" />
+      <field name="Price" required="N" />
+      <field name="ValidUntilTime" required="N" />
+      <field name="IOIQltyInd" required="N" />
+      <field name="IOINaturalFlag" required="N" />
+      <group name="NoIOIQualifiers" required="N">
+        <field name="IOIQualifier" required="N" />
+      </group>
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="TransactTime" required="N" />
+      <field name="URLLink" required="N" />
+      <group name="NoRoutingIDs" required="N">
+        <field name="RoutingType" required="N" />
+        <field name="RoutingID" required="N" />
+      </group>
+      <component name="SpreadOrBenchmarkCurveData" required="N" />
+      <component name="YieldData" required="N" />
+    </message>
+    <message name="News" msgtype="B" msgcat="app">
+      <field name="OrigTime" required="N" />
+      <field name="Urgency" required="N" />
+      <field name="Headline" required="Y" />
+      <field name="EncodedHeadlineLen" required="N" />
+      <field name="EncodedHeadline" required="N" />
+      <group name="NoRoutingIDs" required="N">
+        <field name="RoutingType" required="N" />
+        <field name="RoutingID" required="N" />
+      </group>
+      <group name="NoRelatedSym" required="N">
+        <component name="Instrument" required="N" />
+      </group>
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+      </group>
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="N" />
+      </group>
+      <group name="LinesOfText" required="Y">
+        <field name="Text" required="Y" />
+        <field name="EncodedTextLen" required="N" />
+        <field name="EncodedText" required="N" />
+      </group>
+      <field name="URLLink" required="N" />
+      <field name="RawDataLength" required="N" />
+      <field name="RawData" required="N" />
+    </message>
+    <message name="Email" msgtype="C" msgcat="app">
+      <field name="EmailThreadID" required="Y" />
+      <field name="EmailType" required="Y" />
+      <field name="OrigTime" required="N" />
+      <field name="Subject" required="Y" />
+      <field name="EncodedSubjectLen" required="N" />
+      <field name="EncodedSubject" required="N" />
+      <group name="NoRoutingIDs" required="N">
+        <field name="RoutingType" required="N" />
+        <field name="RoutingID" required="N" />
+      </group>
+      <group name="NoRelatedSym" required="N">
+        <component name="Instrument" required="N" />
+      </group>
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="N" />
+      </group>
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+      </group>
+      <field name="OrderID" required="N" />
+      <field name="ClOrdID" required="N" />
+      <group name="LinesOfText" required="Y">
+        <field name="Text" required="Y" />
+        <field name="EncodedTextLen" required="N" />
+        <field name="EncodedText" required="N" />
+      </group>
+      <field name="RawDataLength" required="N" />
+      <field name="RawData" required="N" />
+    </message>
+    <message name="QuoteRequest" msgtype="R" msgcat="app">
+      <field name="QuoteReqID" required="Y" />
+      <field name="RFQReqID" required="N" />
+      <field name="ClOrdID" required="N" />
+      <field name="OrderCapacity" required="N" />
+      <group name="NoRelatedSym" required="Y">
+        <component name="Instrument" required="Y" />
+        <component name="FinancingDetails" required="N" />
+        <group name="NoUnderlyings" required="N">
+          <component name="UnderlyingInstrument" required="N" />
+        </group>
+        <field name="PrevClosePx" required="N" />
+        <field name="QuoteRequestType" required="N" />
+        <field name="QuoteType" required="N" />
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+        <field name="TradeOriginationDate" required="N" />
+        <field name="Side" required="N" />
+        <field name="QtyType" required="N" />
+        <component name="OrderQtyData" required="N" />
+        <field name="SettlType" required="N" />
+        <field name="SettlDate" required="N" />
+        <field name="SettlDate2" required="N" />
+        <field name="OrderQty2" required="N" />
+        <field name="Currency" required="N" />
+        <component name="Stipulations" required="N" />
+        <field name="Account" required="N" />
+        <field name="AcctIDSource" required="N" />
+        <field name="AccountType" required="N" />
+        <group name="NoLegs" required="N">
+          <component name="InstrumentLeg" required="N" />
+          <field name="LegQty" required="N" />
+          <field name="LegSwapType" required="N" />
+          <field name="LegSettlType" required="N" />
+          <field name="LegSettlDate" required="N" />
+          <component name="LegStipulations" required="N" />
+          <component name="NestedParties" required="N" />
+          <component name="LegBenchmarkCurveData" required="N" />
+        </group>
+        <group name="NoQuoteQualifiers" required="N">
+          <field name="QuoteQualifier" required="N" />
+        </group>
+        <field name="QuotePriceType" required="N" />
+        <field name="OrdType" required="N" />
+        <field name="ValidUntilTime" required="N" />
+        <field name="ExpireTime" required="N" />
+        <field name="TransactTime" required="N" />
+        <component name="SpreadOrBenchmarkCurveData" required="N" />
+        <field name="PriceType" required="N" />
+        <field name="Price" required="N" />
+        <field name="Price2" required="N" />
+        <component name="YieldData" required="N" />
+        <component name="Parties" required="N" />
+      </group>
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="QuoteResponse" msgtype="AJ" msgcat="app">
+      <field name="QuoteRespID" required="Y" />
+      <field name="QuoteID" required="N" />
+      <field name="QuoteRespType" required="Y" />
+      <field name="ClOrdID" required="N" />
+      <field name="OrderCapacity" required="N" />
+      <field name="IOIid" required="N" />
+      <field name="QuoteType" required="N" />
+      <group name="NoQuoteQualifiers" required="N">
+        <field name="QuoteQualifier" required="N" />
+      </group>
+      <component name="Parties" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <component name="Instrument" required="Y" />
+      <component name="FinancingDetails" required="N" />
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="N" />
+      </group>
+      <field name="Side" required="N" />
+      <component name="OrderQtyData" required="N" />
+      <field name="SettlType" required="N" />
+      <field name="SettlDate" required="N" />
+      <field name="SettlDate2" required="N" />
+      <field name="OrderQty2" required="N" />
+      <field name="Currency" required="N" />
+      <component name="Stipulations" required="N" />
+      <field name="Account" required="N" />
+      <field name="AcctIDSource" required="N" />
+      <field name="AccountType" required="N" />
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+        <field name="LegQty" required="N" />
+        <field name="LegSwapType" required="N" />
+        <field name="LegSettlType" required="N" />
+        <field name="LegSettlDate" required="N" />
+        <component name="LegStipulations" required="N" />
+        <component name="NestedParties" required="N" />
+        <field name="LegPriceType" required="N" />
+        <field name="LegBidPx" required="N" />
+        <field name="LegOfferPx" required="N" />
+        <component name="LegBenchmarkCurveData" required="N" />
+      </group>
+      <field name="BidPx" required="N" />
+      <field name="OfferPx" required="N" />
+      <field name="MktBidPx" required="N" />
+      <field name="MktOfferPx" required="N" />
+      <field name="MinBidSize" required="N" />
+      <field name="BidSize" required="N" />
+      <field name="MinOfferSize" required="N" />
+      <field name="OfferSize" required="N" />
+      <field name="ValidUntilTime" required="N" />
+      <field name="BidSpotRate" required="N" />
+      <field name="OfferSpotRate" required="N" />
+      <field name="BidForwardPoints" required="N" />
+      <field name="OfferForwardPoints" required="N" />
+      <field name="MidPx" required="N" />
+      <field name="BidYield" required="N" />
+      <field name="MidYield" required="N" />
+      <field name="OfferYield" required="N" />
+      <field name="TransactTime" required="N" />
+      <field name="OrdType" required="N" />
+      <field name="BidForwardPoints2" required="N" />
+      <field name="OfferForwardPoints2" required="N" />
+      <field name="SettlCurrBidFxRate" required="N" />
+      <field name="SettlCurrOfferFxRate" required="N" />
+      <field name="SettlCurrFxRateCalc" required="N" />
+      <field name="Commission" required="N" />
+      <field name="CommType" required="N" />
+      <field name="CustOrderCapacity" required="N" />
+      <field name="ExDestination" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="Price" required="N" />
+      <field name="PriceType" required="N" />
+      <component name="SpreadOrBenchmarkCurveData" required="N" />
+      <component name="YieldData" required="N" />
+    </message>
+    <message name="QuoteRequestReject" msgtype="AG" msgcat="app">
+      <field name="QuoteReqID" required="Y" />
+      <field name="RFQReqID" required="N" />
+      <field name="QuoteRequestRejectReason" required="Y" />
+      <group name="NoRelatedSym" required="Y">
+        <component name="Instrument" required="Y" />
+        <component name="FinancingDetails" required="N" />
+        <group name="NoUnderlyings" required="N">
+          <component name="UnderlyingInstrument" required="N" />
+        </group>
+        <field name="PrevClosePx" required="N" />
+        <field name="QuoteRequestType" required="N" />
+        <field name="QuoteType" required="N" />
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+        <field name="TradeOriginationDate" required="N" />
+        <field name="Side" required="N" />
+        <field name="QtyType" required="N" />
+        <component name="OrderQtyData" required="N" />
+        <field name="SettlType" required="N" />
+        <field name="SettlDate" required="N" />
+        <field name="SettlDate2" required="N" />
+        <field name="OrderQty2" required="N" />
+        <field name="Currency" required="N" />
+        <component name="Stipulations" required="N" />
+        <field name="Account" required="N" />
+        <field name="AcctIDSource" required="N" />
+        <field name="AccountType" required="N" />
+        <group name="NoLegs" required="N">
+          <component name="InstrumentLeg" required="N" />
+          <field name="LegQty" required="N" />
+          <field name="LegSwapType" required="N" />
+          <field name="LegSettlType" required="N" />
+          <field name="LegSettlDate" required="N" />
+          <component name="LegStipulations" required="N" />
+          <component name="NestedParties" required="N" />
+          <component name="LegBenchmarkCurveData" required="N" />
+          </group>
+        </group>
+        <group name="NoQuoteQualifiers" required="N">
+          <field name="QuoteQualifier" required="N" />
+        </group>
+        <field name="QuotePriceType" required="N" />
+        <field name="OrdType" required="N" />
+        <field name="ExpireTime" required="N" />
+        <field name="TransactTime" required="N" />
+        <component name="SpreadOrBenchmarkCurveData" required="N" />
+        <field name="PriceType" required="N" />
+        <field name="Price" required="N" />
+        <field name="Price2" required="N" />
+        <component name="YieldData" required="N" />
+        <component name="Parties" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="RFQRequest" msgtype="AH" msgcat="app">
+      <field name="RFQReqID" required="Y" />
+      <group name="NoRelatedSym" required="Y">
+        <component name="Instrument" required="Y" />
+        <group name="NoUnderlyings" required="N">
+          <component name="UnderlyingInstrument" required="N" />
+        </group>
+        <group name="NoLegs" required="N">
+          <component name="InstrumentLeg" required="N" />
+        </group>
+        <field name="PrevClosePx" required="N" />
+        <field name="QuoteRequestType" required="N" />
+        <field name="QuoteType" required="N" />
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+      </group>
+      <field name="SubscriptionRequestType" required="N" />
+    </message>
+    <message name="Quote" msgtype="S" msgcat="app">
+      <field name="QuoteReqID" required="N" />
+      <field name="QuoteID" required="Y" />
+      <field name="QuoteRespID" required="N" />
+      <field name="QuoteType" required="N" />
+      <group name="NoQuoteQualifiers" required="N">
+        <field name="QuoteQualifier" required="N" />
+      </group>
+      <field name="QuoteResponseLevel" required="N" />
+      <component name="Parties" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <component name="Instrument" required="Y" />
+      <component name="FinancingDetails" required="N" />
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="N" />
+      </group>
+      <field name="Side" required="N" />
+      <component name="OrderQtyData" required="N" />
+      <field name="SettlType" required="N" />
+      <field name="SettlDate" required="N" />
+      <field name="SettlDate2" required="N" />
+      <field name="OrderQty2" required="N" />
+      <field name="Currency" required="N" />
+      <component name="Stipulations" required="N" />
+      <field name="Account" required="N" />
+      <field name="AcctIDSource" required="N" />
+      <field name="AccountType" required="N" />
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+        <field name="LegQty" required="N" />
+        <field name="LegSwapType" required="N" />
+        <field name="LegSettlType" required="N" />
+        <field name="LegSettlDate" required="N" />
+        <component name="LegStipulations" required="N" />
+        <component name="NestedParties" required="N" />
+        <field name="LegPriceType" required="N" />
+        <field name="LegBidPx" required="N" />
+        <field name="LegOfferPx" required="N" />
+        <component name="LegBenchmarkCurveData" required="N" />
+      </group>
+      <field name="BidPx" required="N" />
+      <field name="OfferPx" required="N" />
+      <field name="MktBidPx" required="N" />
+      <field name="MktOfferPx" required="N" />
+      <field name="MinBidSize" required="N" />
+      <field name="BidSize" required="N" />
+      <field name="MinOfferSize" required="N" />
+      <field name="OfferSize" required="N" />
+      <field name="ValidUntilTime" required="N" />
+      <field name="BidSpotRate" required="N" />
+      <field name="OfferSpotRate" required="N" />
+      <field name="BidForwardPoints" required="N" />
+      <field name="OfferForwardPoints" required="N" />
+      <field name="MidPx" required="N" />
+      <field name="BidYield" required="N" />
+      <field name="MidYield" required="N" />
+      <field name="OfferYield" required="N" />
+      <field name="TransactTime" required="N" />
+      <field name="OrdType" required="N" />
+      <field name="BidForwardPoints2" required="N" />
+      <field name="OfferForwardPoints2" required="N" />
+      <field name="SettlCurrBidFxRate" required="N" />
+      <field name="SettlCurrOfferFxRate" required="N" />
+      <field name="SettlCurrFxRateCalc" required="N" />
+      <field name="CommType" required="N" />
+      <field name="Commission" required="N" />
+      <field name="CustOrderCapacity" required="N" />
+      <field name="ExDestination" required="N" />
+      <field name="OrderCapacity" required="N" />
+      <field name="PriceType" required="N" />
+      <component name="SpreadOrBenchmarkCurveData" required="N" />
+      <component name="YieldData" required="N" />          
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="QuoteCancel" msgtype="Z" msgcat="app">
+      <field name="QuoteReqID" required="N" />
+      <field name="QuoteID" required="Y" />
+      <field name="QuoteCancelType" required="Y" />
+      <field name="QuoteResponseLevel" required="N" />
+      <component name="Parties" required="N" />
+      <field name="Account" required="N" />
+      <field name="AcctIDSource" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <group name="NoQuoteEntries" required="N">
+        <component name="Instrument" required="N" />
+        <component name="FinancingDetails" required="N" />
+        <group name="NoUnderlyings" required="N">
+          <component name="UnderlyingInstrument" required="N" />
+        </group>
+        <group name="NoLegs" required="N">
+          <component name="InstrumentLeg" required="N" />
+        </group>
+      </group>
+    </message>
+    <message name="QuoteStatusRequest" msgtype="a" msgcat="app">
+      <field name="QuoteStatusReqID" required="N" />
+      <field name="QuoteID" required="N" />
+      <component name="Instrument" required="Y" />
+      <component name="FinancingDetails" required="N" />
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="N" />
+      </group>
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+      </group>
+      <component name="Parties" required="N" />
+      <field name="Account" required="N" />
+      <field name="AcctIDSource" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="SubscriptionRequestType" required="N" />
+    </message>
+    <message name="QuoteStatusReport" msgtype="AI" msgcat="app">
+      <field name="QuoteStatusReqID" required="N" />
+      <field name="QuoteReqID" required="N" />
+      <field name="QuoteID" required="Y" />
+      <field name="QuoteRespID" required="N" />
+      <field name="QuoteType" required="N" />
+      <component name="Parties" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <component name="Instrument" required="Y" />
+      <component name="FinancingDetails" required="N" />
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="N" />
+      </group>
+      <field name="Side" required="N" />
+      <component name="OrderQtyData" required="N" />
+      <field name="SettlType" required="N" />
+      <field name="SettlDate" required="N" />
+      <field name="SettlDate2" required="N" />
+      <field name="OrderQty2" required="N" />
+      <field name="Currency" required="N" />
+      <component name="Stipulations" required="N" />
+      <field name="Account" required="N" />
+      <field name="AcctIDSource" required="N" />
+      <field name="AccountType" required="N" />
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+        <field name="LegQty" required="N" />
+        <field name="LegSwapType" required="N" />
+        <field name="LegSettlType" required="N" />
+        <field name="LegSettlDate" required="N" />
+        <component name="LegStipulations" required="N" />
+        <component name="NestedParties" required="N" />
+      </group>
+      <group name="NoQuoteQualifiers" required="N">
+        <field name="QuoteQualifier" required="N" />
+      </group>
+      <field name="ExpireTime" required="N" />
+      <field name="Price" required="N" />
+      <field name="PriceType" required="N" />
+      <component name="SpreadOrBenchmarkCurveData" required="N" />
+      <component name="YieldData" required="N" />
+      <field name="BidPx" required="N" />
+      <field name="OfferPx" required="N" />
+      <field name="MktBidPx" required="N" />
+      <field name="MktOfferPx" required="N" />
+      <field name="MinBidSize" required="N" />
+      <field name="BidSize" required="N" />
+      <field name="MinOfferSize" required="N" />
+      <field name="OfferSize" required="N" />
+      <field name="ValidUntilTime" required="N" />
+      <field name="BidSpotRate" required="N" />
+      <field name="OfferSpotRate" required="N" />
+      <field name="BidForwardPoints" required="N" />
+      <field name="OfferForwardPoints" required="N" />
+      <field name="MidPx" required="N" />
+      <field name="BidYield" required="N" />
+      <field name="MidYield" required="N" />
+      <field name="OfferYield" required="N" />
+      <field name="TransactTime" required="N" />
+      <field name="OrdType" required="N" />
+      <field name="BidForwardPoints2" required="N" />
+      <field name="OfferForwardPoints2" required="N" />
+      <field name="SettlCurrBidFxRate" required="N" />
+      <field name="SettlCurrOfferFxRate" required="N" />
+      <field name="SettlCurrFxRateCalc" required="N" />
+      <field name="CommType" required="N" />
+      <field name="Commission" required="N" />
+      <field name="CustOrderCapacity" required="N" />
+      <field name="ExDestination" required="N" />
+      <field name="QuoteStatus" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </message>
+    <message name="MassQuote" msgtype="i" msgcat="app">
+      <field name="QuoteReqID" required="N" />
+      <field name="QuoteID" required="Y" />
+      <field name="QuoteType" required="N" />
+      <field name="QuoteResponseLevel" required="N" />
+      <component name="Parties" required="N" />
+      <field name="Account" required="N" />
+      <field name="AcctIDSource" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="DefBidSize" required="N" />
+      <field name="DefOfferSize" required="N" />
+      <group name="NoQuoteSets" required="Y">
+        <field name="QuoteSetID" required="Y" />
+        <component name="UnderlyingInstrument" required="N" />
+        <field name="QuoteSetValidUntilTime" required="N" />
+        <field name="TotNoQuoteEntries" required="Y" />
+        <field name="LastFragment" required="N" />
+        <group name="NoQuoteEntries" required="Y">
+          <field name="QuoteEntryID" required="Y" />
+          <component name="Instrument" required="N" />
+          <group name="NoLegs" required="N">
+            <component name="InstrumentLeg" required="N" />
+          </group>
+          <field name="BidPx" required="N" />
+          <field name="OfferPx" required="N" />
+          <field name="BidSize" required="N" />
+          <field name="OfferSize" required="N" />
+          <field name="ValidUntilTime" required="N" />
+          <field name="BidSpotRate" required="N" />
+          <field name="OfferSpotRate" required="N" />
+          <field name="BidForwardPoints" required="N" />
+          <field name="OfferForwardPoints" required="N" />
+          <field name="MidPx" required="N" />
+          <field name="BidYield" required="N" />
+          <field name="MidYield" required="N" />
+          <field name="OfferYield" required="N" />
+          <field name="TransactTime" required="N" />
+          <field name="TradingSessionID" required="N" />
+          <field name="TradingSessionSubID" required="N" />
+          <field name="SettlDate" required="N" />
+          <field name="OrdType" required="N" />
+          <field name="SettlDate2" required="N" />
+          <field name="OrderQty2" required="N" />
+          <field name="BidForwardPoints2" required="N" />
+          <field name="OfferForwardPoints2" required="N" />
+          <field name="Currency" required="N" />
+        </group>
+      </group>
+    </message>
+  <message name="MassQuoteAcknowledgement" msgtype="b" msgcat="app">
+    <field name="QuoteReqID" required="N" />
+    <field name="QuoteID" required="N" />
+    <field name="QuoteStatus" required="Y" />
+    <field name="QuoteRejectReason" required="N" />
+    <field name="QuoteResponseLevel" required="N" />
+    <field name="QuoteType" required="N" />
+    <component name="Parties" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <group name="NoQuoteSets" required="N">
+      <field name="QuoteSetID" required="N" />
+      <component name="UnderlyingInstrument" required="N" />
+      <field name="TotNoQuoteEntries" required="N" />
+      <field name="LastFragment" required="N" />
+      <group name="NoQuoteEntries" required="N">
+        <field name="QuoteEntryID" required="N" />
+        <component name="Instrument" required="N" />
+        <group name="NoLegs" required="N">
+          <component name="InstrumentLeg" required="N" />
+         </group>
+        <field name="BidPx" required="N" />
+        <field name="OfferPx" required="N" />
+        <field name="BidSize" required="N" />
+        <field name="OfferSize" required="N" />
+        <field name="ValidUntilTime" required="N" />
+        <field name="BidSpotRate" required="N" />
+        <field name="OfferSpotRate" required="N" />
+        <field name="BidForwardPoints" required="N" />
+        <field name="OfferForwardPoints" required="N" />
+        <field name="MidPx" required="N" />
+        <field name="BidYield" required="N" />
+        <field name="MidYield" required="N" />
+        <field name="OfferYield" required="N" />
+        <field name="TransactTime" required="N" />
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+        <field name="SettlDate" required="N" />
+        <field name="OrdType" required="N" />
+        <field name="SettlDate2" required="N" />
+        <field name="OrderQty2" required="N" />
+        <field name="BidForwardPoints2" required="N" />
+        <field name="OfferForwardPoints2" required="N" />
+        <field name="Currency" required="N" />
+        <field name="QuoteEntryRejectReason" required="N" />
+      </group>
+    </group>
+  </message>
+  <message name="MarketDataRequest" msgtype="V" msgcat="app">
+    <field name="MDReqID" required="Y" />
+    <field name="SubscriptionRequestType" required="Y" />
+    <field name="MarketDepth" required="Y" />
+    <field name="MDUpdateType" required="N" />
+    <field name="AggregatedBook" required="N" />
+    <field name="OpenCloseSettlFlag" required="N" />
+    <field name="Scope" required="N" />
+    <field name="MDImplicitDelete" required="N" />
+    <group name="NoMDEntryTypes" required="Y">
+      <field name="MDEntryType" required="Y" />
+    </group>
+    <group name="NoRelatedSym" required="Y">
+      <component name="Instrument" required="Y" />
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="N" />
+      </group>
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+      </group>
+    </group>
+    <group name="NoTradingSessions" required="N">
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </group>
+    <field name="ApplQueueAction" required="N" />
+    <field name="ApplQueueMax" required="N" />
+  </message>
+  <message name="MarketDataSnapshotFullRefresh" msgtype="W" msgcat="app">
+    <field name="MDReqID" required="N" />
+    <component name="Instrument" required="Y" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="FinancialStatus" required="N" />
+    <field name="CorporateAction" required="N" />
+    <field name="NetChgPrevDay" required="N" />
+    <group name="NoMDEntries" required="Y">
+      <field name="MDEntryType" required="Y" />
+      <field name="MDEntryPx" required="N" />
+      <field name="Currency" required="N" />
+      <field name="MDEntrySize" required="N" />
+      <field name="MDEntryDate" required="N" />
+      <field name="MDEntryTime" required="N" />
+      <field name="TickDirection" required="N" />
+      <field name="MDMkt" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="QuoteCondition" required="N" />
+      <field name="TradeCondition" required="N" />
+      <field name="MDEntryOriginator" required="N" />
+      <field name="LocationID" required="N" />
+      <field name="DeskID" required="N" />
+      <field name="OpenCloseSettlFlag" required="N" />
+      <field name="TimeInForce" required="N" />
+      <field name="ExpireDate" required="N" />
+      <field name="ExpireTime" required="N" />
+      <field name="MinQty" required="N" />
+      <field name="ExecInst" required="N" />
+      <field name="SellerDays" required="N" />
+      <field name="OrderID" required="N" />
+      <field name="QuoteEntryID" required="N" />
+      <field name="MDEntryBuyer" required="N" />
+      <field name="MDEntrySeller" required="N" />
+      <field name="NumberOfOrders" required="N" />
+      <field name="MDEntryPositionNo" required="N" />
+      <field name="Scope" required="N" />                
+      <field name="PriceDelta" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </group>
+    <field name="ApplQueueDepth" required="N" />
+    <field name="ApplQueueResolution" required="N" />
+  </message>
+  <message name="MarketDataIncrementalRefresh" msgtype="X" msgcat="app">
+    <field name="MDReqID" required="N" />
+    <group name="NoMDEntries" required="Y">
+      <field name="MDUpdateAction" required="Y" />
+      <field name="DeleteReason" required="N" />
+      <field name="MDEntryType" required="N" />
+      <field name="MDEntryID" required="N" />
+      <field name="MDEntryRefID" required="N" />
+      <component name="Instrument" required="N" />
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="N" />
+      </group>
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+      </group>
+      <field name="FinancialStatus" required="N" />
+      <field name="CorporateAction" required="N" />
+      <field name="MDEntryPx" required="N" />
+      <field name="Currency" required="N" />
+      <field name="MDEntrySize" required="N" />
+      <field name="MDEntryDate" required="N" />
+      <field name="MDEntryTime" required="N" />
+      <field name="TickDirection" required="N" />
+      <field name="MDMkt" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="QuoteCondition" required="N" />
+      <field name="TradeCondition" required="N" />
+      <field name="MDEntryOriginator" required="N" />
+      <field name="LocationID" required="N" />
+      <field name="DeskID" required="N" />
+      <field name="OpenCloseSettlFlag" required="N" />
+      <field name="TimeInForce" required="N" />
+      <field name="ExpireDate" required="N" />
+      <field name="ExpireTime" required="N" />
+      <field name="MinQty" required="N" />
+      <field name="ExecInst" required="N" />
+      <field name="SellerDays" required="N" />
+      <field name="OrderID" required="N" />
+      <field name="QuoteEntryID" required="N" />
+      <field name="MDEntryBuyer" required="N" />
+      <field name="MDEntrySeller" required="N" />
+      <field name="NumberOfOrders" required="N" />
+      <field name="MDEntryPositionNo" required="N" />
+      <field name="Scope" required="N" />
+      <field name="PriceDelta" required="N" />
+      <field name="NetChgPrevDay" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </group>
+    <field name="ApplQueueDepth" required="N" />
+    <field name="ApplQueueResolution" required="N" />
+  </message>
+  <message name="MarketDataRequestReject" msgtype="Y" msgcat="app">
+    <field name="MDReqID" required="Y" />
+    <field name="MDReqRejReason" required="N" />
+    <group name="NoAltMDSource" required="N">
+      <field name="AltMDSourceID" required="N" />
+    </group>
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />  
+  </message>
+  <message name="SecurityDefinitionRequest" msgtype="c" msgcat="app">
+    <field name="SecurityReqID" required="Y" />
+    <field name="SecurityRequestType" required="Y" />
+    <component name="Instrument" required="N" />
+    <component name="InstrumentExtension" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="Currency" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="ExpirationCycle" required="N" />
+    <field name="SubscriptionRequestType" required="N" />
+  </message>
+  <message name="SecurityDefinition" msgtype="d" msgcat="app">
+    <field name="SecurityReqID" required="Y" />
+    <field name="SecurityResponseID" required="Y" />
+    <field name="SecurityResponseType" required="Y" />
+    <component name="Instrument" required="N" />
+    <component name="InstrumentExtension" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="Currency" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="ExpirationCycle" required="N" />
+    <field name="RoundLot" required="N" />
+    <field name="MinTradeVol" required="N" />
+  </message>
+  <message name="SecurityTypeRequest" msgtype="v" msgcat="app">
+    <field name="SecurityReqID" required="Y" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="Product" required="N" />
+    <field name="SecurityType" required="N" />
+    <field name="SecuritySubType" required="N" />
+  </message>
+  <message name="SecurityTypes" msgtype="w" msgcat="app">
+    <field name="SecurityReqID" required="Y" />
+    <field name="SecurityResponseID" required="Y" />
+    <field name="SecurityResponseType" required="Y" />
+    <field name="TotNoSecurityTypes" required="N" />
+    <field name="LastFragment" required="N" />
+    <group name="NoSecurityTypes" required="N">
+      <field name="SecurityType" required="N" />
+      <field name="SecuritySubType" required="N" />
+      <field name="Product" required="N" />
+      <field name="CFICode" required="N" />
+    </group>
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="SubscriptionRequestType" required="N" />
+  </message>
+  <message name="SecurityListRequest" msgtype="x" msgcat="app">
+    <field name="SecurityReqID" required="Y" />
+    <field name="SecurityListRequestType" required="Y" />
+    <component name="Instrument" required="N" />
+    <component name="InstrumentExtension" required="N" />
+    <component name="FinancingDetails" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="Currency" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="SubscriptionRequestType" required="N" />
+  </message>
+  <message name="SecurityList" msgtype="y" msgcat="app">
+    <field name="SecurityReqID" required="Y" />
+    <field name="SecurityResponseID" required="Y" />
+    <field name="SecurityRequestResult" required="Y" />
+    <field name="TotNoRelatedSym" required="N" />
+    <field name="LastFragment" required="N" />
+    <group name="NoRelatedSym" required="N">
+      <component name="Instrument" required="N" />
+      <component name="InstrumentExtension" required="N" />
+      <component name="FinancingDetails" required="N" />
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="N" />
+      </group>
+      <field name="Currency" required="N" />
+      <component name="Stipulations" required="N" />
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+        <field name="LegSwapType" required="N" />
+        <field name="LegSettlType" required="N" />
+        <component name="LegStipulations" required="N" />
+        <component name="LegBenchmarkCurveData" required="N" />
+      </group>
+      <component name="SpreadOrBenchmarkCurveData" required="N" />
+      <component name="YieldData" required="N" />
+      <field name="RoundLot" required="N" />
+      <field name="MinTradeVol" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="ExpirationCycle" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </group>
+  </message>
+  <message name="DerivativeSecurityListRequest" msgtype="z" msgcat="app">
+    <field name="SecurityReqID" required="Y" />
+    <field name="SecurityListRequestType" required="Y" />
+    <component name="UnderlyingInstrument" required="N" />
+    <field name="SecuritySubType" required="N" />
+    <field name="Currency" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="SubscriptionRequestType" required="N" />
+  </message>
+  <message name="DerivativeSecurityList" msgtype="AA" msgcat="app">
+    <field name="SecurityReqID" required="Y" />
+    <field name="SecurityResponseID" required="Y" />
+    <field name="SecurityRequestResult" required="Y" />
+    <component name="UnderlyingInstrument" required="N" />
+    <field name="TotNoRelatedSym" required="N" />
+    <field name="LastFragment" required="N" />
+    <group name="NoRelatedSym" required="N">
+      <component name="Instrument" required="N" />
+      <field name="Currency" required="N" />
+      <field name="ExpirationCycle" required="N" />
+      <component name="InstrumentExtension" required="N" />
+      <group name="NoLegs" required="N">
+        <component name="InstrumentLeg" required="N" />
+      </group>
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </group>
+  </message>
+  <message name="SecurityStatusRequest" msgtype="e" msgcat="app">
+    <field name="SecurityStatusReqID" required="Y" />
+    <component name="Instrument" required="Y" />
+    <component name="InstrumentExtension" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="Currency" required="N" />
+    <field name="SubscriptionRequestType" required="Y" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+  </message>
+  <message name="SecurityStatus" msgtype="f" msgcat="app">
+    <field name="SecurityStatusReqID" required="N" />
+    <component name="Instrument" required="Y" />
+    <component name="InstrumentExtension" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="Currency" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="UnsolicitedIndicator" required="N" />
+    <field name="SecurityTradingStatus" required="N" />
+    <field name="FinancialStatus" required="N" />
+    <field name="CorporateAction" required="N" />
+    <field name="HaltReason" required="N" />
+    <field name="InViewOfCommon" required="N" />
+    <field name="DueToRelated" required="N" />
+    <field name="BuyVolume" required="N" />
+    <field name="SellVolume" required="N" />
+    <field name="HighPx" required="N" />
+    <field name="LowPx" required="N" />
+    <field name="LastPx" required="N" />
+    <field name="TransactTime" required="N" />
+    <field name="Adjustment" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="TradingSessionStatusRequest" msgtype="g" msgcat="app">
+    <field name="TradSesReqID" required="Y" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="TradSesMethod" required="N" />
+    <field name="TradSesMode" required="N" />
+    <field name="SubscriptionRequestType" required="Y" />
+  </message>
+  <message name="TradingSessionStatus" msgtype="h" msgcat="app">
+    <field name="TradSesReqID" required="N" />
+    <field name="TradingSessionID" required="Y" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="TradSesMethod" required="N" />
+    <field name="TradSesMode" required="N" />
+    <field name="UnsolicitedIndicator" required="N" />
+    <field name="TradSesStatus" required="Y" />
+    <field name="TradSesStatusRejReason" required="N" />
+    <field name="TradSesStartTime" required="N" />
+    <field name="TradSesOpenTime" required="N" />
+    <field name="TradSesPreCloseTime" required="N" />
+    <field name="TradSesCloseTime" required="N" />
+    <field name="TradSesEndTime" required="N" />
+    <field name="TotalVolumeTraded" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="NewOrderSingle" msgtype="D" msgcat="app">
+    <field name="ClOrdID" required="Y" />
+    <field name="SecondaryClOrdID" required="N" />
+    <field name="ClOrdLinkID" required="N" />
+    <component name="Parties" required="N" />
+    <field name="TradeOriginationDate" required="N" />
+    <field name="TradeDate" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="DayBookingInst" required="N" />
+    <field name="BookingUnit" required="N" />
+    <field name="PreallocMethod" required="N" />
+    <field name="AllocID" required="N" />
+    <group name="NoAllocs" required="N">
+      <field name="AllocAccount" required="N" />
+      <field name="AllocAcctIDSource" required="N" />
+      <field name="AllocSettlCurrency" required="N" />
+      <field name="IndividualAllocID" required="N" />
+      <component name="NestedParties" required="N" />
+      <field name="AllocQty" required="N" />
+    </group>
+    <field name="SettlType" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="CashMargin" required="N" />
+    <field name="ClearingFeeIndicator" required="N" />
+    <field name="HandlInst" required="N" />
+    <field name="ExecInst" required="N" />
+    <field name="MinQty" required="N" />
+    <field name="MaxFloor" required="N" />
+    <field name="ExDestination" required="N" />
+    <group name="NoTradingSessions" required="N">
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </group>
+    <field name="ProcessCode" required="N" />
+    <component name="Instrument" required="Y" />
+    <component name="FinancingDetails" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="PrevClosePx" required="N" />
+    <field name="Side" required="Y" />
+    <field name="LocateReqd" required="N" />
+    <field name="TransactTime" required="Y" />
+    <component name="Stipulations" required="N" />
+    <field name="QtyType" required="N" />
+    <component name="OrderQtyData" required="Y" />
+    <field name="OrdType" required="Y" />
+    <field name="PriceType" required="N" />
+    <field name="Price" required="N" />
+    <field name="StopPx" required="N" />
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <component name="YieldData" required="N" />
+    <field name="Currency" required="N" />
+    <field name="ComplianceID" required="N" />
+    <field name="SolicitedFlag" required="N" />
+    <field name="IOIid" required="N" />
+    <field name="QuoteID" required="N" />
+    <field name="TimeInForce" required="N" />
+    <field name="EffectiveTime" required="N" />
+    <field name="ExpireDate" required="N" />
+    <field name="ExpireTime" required="N" />
+    <field name="GTBookingInst" required="N" />
+    <component name="CommissionData" required="N" />
+    <field name="OrderCapacity" required="N" />
+    <field name="OrderRestrictions" required="N" />
+    <field name="CustOrderCapacity" required="N" />
+    <field name="ForexReq" required="N" />
+    <field name="SettlCurrency" required="N" />
+    <field name="BookingType" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="SettlDate2" required="N" />
+    <field name="OrderQty2" required="N" />
+    <field name="Price2" required="N" />
+    <field name="PositionEffect" required="N" />
+    <field name="CoveredOrUncovered" required="N" />
+    <field name="MaxShow" required="N" />
+    <component name="PegInstructions" required="N" />
+    <component name="DiscretionInstructions" required="N" />
+    <field name="TargetStrategy" required="N" />
+    <field name="TargetStrategyParameters" required="N" />
+    <field name="ParticipationRate" required="N" />
+    <field name="CancellationRights" required="N" />
+    <field name="MoneyLaunderingStatus" required="N" />
+    <field name="RegistID" required="N" />
+    <field name="Designation" required="N" />
+  </message>
+  <message name="ExecutionReport" msgtype="8" msgcat="app">
+    <field name="OrderID" required="Y" />
+    <field name="SecondaryOrderID" required="N" />
+    <field name="SecondaryClOrdID" required="N" />
+    <field name="SecondaryExecID" required="N" />
+    <field name="ClOrdID" required="N" />
+    <field name="OrigClOrdID" required="N" />
+    <field name="ClOrdLinkID" required="N" />
+    <field name="QuoteRespID" required="N" />
+    <field name="OrdStatusReqID" required="N" />
+    <field name="MassStatusReqID" required="N" />
+    <field name="TotNumReports" required="N" />
+    <field name="LastRptRequested" required="N" />
+    <component name="Parties" required="N" />
+    <field name="TradeOriginationDate" required="N" />
+    <group name="NoContraBrokers" required="N">
+      <field name="ContraBroker" required="N" />
+      <field name="ContraTrader" required="N" />
+      <field name="ContraTradeQty" required="N" />
+      <field name="ContraTradeTime" required="N" />
+      <field name="ContraLegRefID" required="N" />
+    </group>
+    <field name="ListID" required="N" />
+    <field name="CrossID" required="N" />
+    <field name="OrigCrossID" required="N" />
+    <field name="CrossType" required="N" />
+    <field name="ExecID" required="Y" />
+    <field name="ExecRefID" required="N" />
+    <field name="ExecType" required="Y" />
+    <field name="OrdStatus" required="Y" />
+    <field name="WorkingIndicator" required="N" />
+    <field name="OrdRejReason" required="N" />
+    <field name="ExecRestatementReason" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="DayBookingInst" required="N" />
+    <field name="BookingUnit" required="N" />
+    <field name="PreallocMethod" required="N" />
+    <field name="SettlType" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="CashMargin" required="N" />
+    <field name="ClearingFeeIndicator" required="N" />
+    <component name="Instrument" required="Y" />
+    <component name="FinancingDetails" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="Side" required="Y" />
+    <component name="Stipulations" required="N" />
+    <field name="QtyType" required="N" />
+    <component name="OrderQtyData" required="N" />
+    <field name="OrdType" required="N" />
+    <field name="PriceType" required="N" />
+    <field name="Price" required="N" />
+    <field name="StopPx" required="N" />
+    <component name="PegInstructions" required="N" />
+    <component name="DiscretionInstructions" required="N" />
+    <field name="PeggedPrice" required="N" />
+    <field name="DiscretionPrice" required="N" />
+    <field name="TargetStrategy" required="N" />
+    <field name="TargetStrategyParameters" required="N" />
+    <field name="ParticipationRate" required="N" />
+    <field name="TargetStrategyPerformance" required="N" />
+    <field name="Currency" required="N" />
+    <field name="ComplianceID" required="N" />
+    <field name="SolicitedFlag" required="N" />
+    <field name="TimeInForce" required="N" />
+    <field name="EffectiveTime" required="N" />
+    <field name="ExpireDate" required="N" />
+    <field name="ExpireTime" required="N" />
+    <field name="ExecInst" required="N" />
+    <field name="OrderCapacity" required="N" />
+    <field name="OrderRestrictions" required="N" />
+    <field name="CustOrderCapacity" required="N" />
+    <field name="LastQty" required="N" />
+    <field name="UnderlyingLastQty" required="N" />
+    <field name="LastPx" required="N" />
+    <field name="UnderlyingLastPx" required="N" />
+    <field name="LastParPx" required="N" />
+    <field name="LastSpotRate" required="N" />
+    <field name="LastForwardPoints" required="N" />
+    <field name="LastMkt" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="TimeBracket" required="N" />
+    <field name="LastCapacity" required="N" />
+    <field name="LeavesQty" required="Y" />
+    <field name="CumQty" required="Y" />
+    <field name="AvgPx" required="Y" />
+    <field name="DayOrderQty" required="N" />
+    <field name="DayCumQty" required="N" />
+    <field name="DayAvgPx" required="N" />
+    <field name="GTBookingInst" required="N" />
+    <field name="TradeDate" required="N" />
+    <field name="TransactTime" required="N" />
+    <field name="ReportToExch" required="N" />
+    <component name="CommissionData" required="N" />
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <component name="YieldData" required="N" />
+    <field name="GrossTradeAmt" required="N" />
+    <field name="NumDaysInterest" required="N" />
+    <field name="ExDate" required="N" />
+    <field name="AccruedInterestRate" required="N" />
+    <field name="AccruedInterestAmt" required="N" />
+    <field name="InterestAtMaturity" required="N" />
+    <field name="EndAccruedInterestAmt" required="N" />
+    <field name="StartCash" required="N" />
+    <field name="EndCash" required="N" />
+    <field name="TradedFlatSwitch" required="N" />
+    <field name="BasisFeatureDate" required="N" />
+    <field name="BasisFeaturePrice" required="N" />
+    <field name="Concession" required="N" />
+    <field name="TotalTakedown" required="N" />
+    <field name="NetMoney" required="N" />
+    <field name="SettlCurrAmt" required="N" />
+    <field name="SettlCurrency" required="N" />
+    <field name="SettlCurrFxRate" required="N" />
+    <field name="SettlCurrFxRateCalc" required="N" />
+    <field name="HandlInst" required="N" />
+    <field name="MinQty" required="N" />
+    <field name="MaxFloor" required="N" />
+    <field name="PositionEffect" required="N" />
+    <field name="MaxShow" required="N" />
+    <field name="BookingType" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="SettlDate2" required="N" />
+    <field name="OrderQty2" required="N" />
+    <field name="LastForwardPoints2" required="N" />
+    <field name="MultiLegReportingType" required="N" />
+    <field name="CancellationRights" required="N" />
+    <field name="MoneyLaunderingStatus" required="N" />
+    <field name="RegistID" required="N" />
+    <field name="Designation" required="N" />
+    <field name="TransBkdTime" required="N" />
+    <field name="ExecValuationPoint" required="N" />
+    <field name="ExecPriceType" required="N" />
+    <field name="ExecPriceAdjustment" required="N" />
+    <field name="PriorityIndicator" required="N" />
+    <field name="PriceImprovement" required="N" />
+    <field name="LastLiquidityInd" required="N" />
+    <group name="NoContAmts" required="N">
+      <field name="ContAmtType" required="N" />
+      <field name="ContAmtValue" required="N" />
+      <field name="ContAmtCurr" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+      <field name="LegQty" required="N" />
+      <field name="LegSwapType" required="N" />
+      <component name="LegStipulations" required="N" />
+      <field name="LegPositionEffect" required="N" />
+      <field name="LegCoveredOrUncovered" required="N" />
+      <component name="NestedParties" required="N" />
+      <field name="LegRefID" required="N" />
+      <field name="LegPrice" required="N" />
+      <field name="LegSettlType" required="N" />
+      <field name="LegSettlDate" required="N" />
+      <field name="LegLastPx" required="N" />
+    </group>
+    <field name="CopyMsgIndicator" required="N" />
+    <group name="NoMiscFees" required="N">
+      <field name="MiscFeeAmt" required="N" />
+      <field name="MiscFeeCurr" required="N" />
+      <field name="MiscFeeType" required="N" />
+      <field name="MiscFeeBasis" required="N" />
+    </group>
+  </message>
+  <message name="DontKnowTrade" msgtype="Q" msgcat="app">
+    <field name="OrderID" required="Y" />
+    <field name="SecondaryOrderID" required="N" />
+    <field name="ExecID" required="Y" />
+    <field name="DKReason" required="Y" />
+    <component name="Instrument" required="Y" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="Side" required="Y" />
+    <component name="OrderQtyData" required="Y" />
+    <field name="LastQty" required="N" />
+    <field name="LastPx" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="OrderCancelReplaceRequest" msgtype="G" msgcat="app">
+    <field name="OrderID" required="N" />
+    <component name="Parties" required="N" />
+    <field name="TradeOriginationDate" required="N" />
+    <field name="TradeDate" required="N" />
+    <field name="OrigClOrdID" required="Y" />
+    <field name="ClOrdID" required="Y" />
+    <field name="SecondaryClOrdID" required="N" />
+    <field name="ClOrdLinkID" required="N" />
+    <field name="ListID" required="N" />
+    <field name="OrigOrdModTime" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="DayBookingInst" required="N" />
+    <field name="BookingUnit" required="N" />
+    <field name="PreallocMethod" required="N" />
+    <field name="AllocID" required="N" />
+    <group name="NoAllocs" required="N">
+      <field name="AllocAccount" required="N" />
+      <field name="AllocAcctIDSource" required="N" />
+      <field name="AllocSettlCurrency" required="N" />
+      <field name="IndividualAllocID" required="N" />
+      <component name="NestedParties" required="N" />
+      <field name="AllocQty" required="N" />
+    </group>
+    <field name="SettlType" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="CashMargin" required="N" />
+    <field name="ClearingFeeIndicator" required="N" />
+    <field name="HandlInst" required="N" />
+    <field name="ExecInst" required="N" />
+    <field name="MinQty" required="N" />
+    <field name="MaxFloor" required="N" />
+    <field name="ExDestination" required="N" />
+    <group name="NoTradingSessions" required="N">
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </group>
+    <component name="Instrument" required="Y" />
+    <component name="FinancingDetails" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="Side" required="Y" />
+    <field name="TransactTime" required="Y" />
+    <field name="QtyType" required="N" />
+    <component name="OrderQtyData" required="Y" />
+    <field name="OrdType" required="Y" />
+    <field name="PriceType" required="N" />
+    <field name="Price" required="N" />
+    <field name="StopPx" required="N" />
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <component name="YieldData" required="N" />
+    <component name="PegInstructions" required="N" />
+    <component name="DiscretionInstructions" required="N" />
+    <field name="TargetStrategy" required="N" />
+    <field name="TargetStrategyParameters" required="N" />
+    <field name="ParticipationRate" required="N" />
+    <field name="ComplianceID" required="N" />
+    <field name="SolicitedFlag" required="N" />
+    <field name="Currency" required="N" />
+    <field name="TimeInForce" required="N" />
+    <field name="EffectiveTime" required="N" />
+    <field name="ExpireDate" required="N" />
+    <field name="ExpireTime" required="N" />
+    <field name="GTBookingInst" required="N" />
+    <component name="CommissionData" required="N" />
+    <field name="OrderCapacity" required="N" />
+    <field name="OrderRestrictions" required="N" />
+    <field name="CustOrderCapacity" required="N" />
+    <field name="ForexReq" required="N" />
+    <field name="SettlCurrency" required="N" />
+    <field name="BookingType" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="SettlDate2" required="N" />
+    <field name="OrderQty2" required="N" />
+    <field name="Price2" required="N" />
+    <field name="PositionEffect" required="N" />
+    <field name="CoveredOrUncovered" required="N" />
+    <field name="MaxShow" required="N" />
+    <field name="LocateReqd" required="N" />
+    <field name="CancellationRights" required="N" />
+    <field name="MoneyLaunderingStatus" required="N" />
+    <field name="RegistID" required="N" />
+    <field name="Designation" required="N" />
+  </message>
+  <message name="OrderCancelRequest" msgtype="F" msgcat="app">
+    <field name="OrigClOrdID" required="Y" />
+    <field name="OrderID" required="N" />
+    <field name="ClOrdID" required="Y" />
+    <field name="SecondaryClOrdID" required="N" />
+    <field name="ClOrdLinkID" required="N" />
+    <field name="ListID" required="N" />
+    <field name="OrigOrdModTime" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="N" />
+    <component name="Parties" required="N" />
+    <component name="Instrument" required="Y" />
+    <component name="FinancingDetails" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="Side" required="Y" />
+    <field name="TransactTime" required="Y" />
+    <component name="OrderQtyData" required="Y" />
+    <field name="ComplianceID" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="OrderCancelReject" msgtype="9" msgcat="app">
+    <field name="OrderID" required="Y" />
+    <field name="SecondaryOrderID" required="N" />
+    <field name="SecondaryClOrdID" required="N" />
+    <field name="ClOrdID" required="Y" />
+    <field name="ClOrdLinkID" required="N" />
+    <field name="OrigClOrdID" required="Y" />
+    <field name="OrdStatus" required="Y" />
+    <field name="WorkingIndicator" required="N" />
+    <field name="OrigOrdModTime" required="N" />
+    <field name="ListID" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="TradeOriginationDate" required="N" />
+    <field name="TradeDate" required="N" />
+    <field name="TransactTime" required="N" />
+    <field name="CxlRejResponseTo" required="Y" />
+    <field name="CxlRejReason" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="OrderStatusRequest" msgtype="H" msgcat="app">
+    <field name="OrderID" required="N" />
+    <field name="ClOrdID" required="Y" />
+    <field name="SecondaryClOrdID" required="N" />
+    <field name="ClOrdLinkID" required="N" />
+    <component name="Parties" required="N" />
+    <field name="OrdStatusReqID" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <component name="Instrument" required="Y" />
+    <component name="FinancingDetails" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="Side" required="Y" />
+  </message>
+  <message name="OrderMassCancelRequest" msgtype="q" msgcat="app">
+    <field name="ClOrdID" required="Y" />
+    <field name="SecondaryClOrdID" required="N" />
+    <field name="MassCancelRequestType" required="Y" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <component name="Instrument" required="N" />
+    <component name="UnderlyingInstrument" required="N" />
+    <field name="Side" required="N" />
+    <field name="TransactTime" required="Y" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="OrderMassCancelReport" msgtype="r" msgcat="app">
+    <field name="ClOrdID" required="N" />
+    <field name="SecondaryClOrdID" required="N" />
+    <field name="OrderID" required="Y" />
+    <field name="SecondaryOrderID" required="N" />
+    <field name="MassCancelRequestType" required="Y" />
+    <field name="MassCancelResponse" required="Y" />
+    <field name="MassCancelRejectReason" required="N" />
+    <field name="TotalAffectedOrders" required="N" />
+    <group name="NoAffectedOrders" required="N">
+      <field name="OrigClOrdID" required="N" />
+      <field name="AffectedOrderID" required="N" />
+      <field name="AffectedSecondaryOrderID" required="N" />
+    </group>
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <component name="Instrument" required="N" />
+    <component name="UnderlyingInstrument" required="N" />
+    <field name="Side" required="N" />
+    <field name="TransactTime" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="OrderMassStatusRequest" msgtype="AF" msgcat="app">
+    <field name="MassStatusReqID" required="Y" />
+    <field name="MassStatusReqType" required="Y" />
+    <component name="Parties" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <component name="Instrument" required="N" />
+    <component name="UnderlyingInstrument" required="N" />
+    <field name="Side" required="N" />
+  </message>
+  <message name="NewOrderCross" msgtype="s" msgcat="app">
+    <field name="CrossID" required="Y" />
+    <field name="CrossType" required="Y" />
+    <field name="CrossPrioritization" required="Y" />
+    <group name="NoSides" required="Y">
+      <field name="Side" required="Y" />
+      <field name="ClOrdID" required="Y" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ClOrdLinkID" required="N" />
+      <component name="Parties" required="N" />
+      <field name="TradeOriginationDate" required="N" />
+      <field name="TradeDate" required="N" />
+      <field name="Account" required="N" />
+      <field name="AcctIDSource" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="DayBookingInst" required="N" />
+      <field name="BookingUnit" required="N" />
+      <field name="PreallocMethod" required="N" />
+      <field name="AllocID" required="N" />
+      <group name="NoAllocs" required="N">
+        <field name="AllocAccount" required="N" />
+        <field name="AllocAcctIDSource" required="N" />
+        <field name="AllocSettlCurrency" required="N" />
+        <field name="IndividualAllocID" required="N" />
+        <component name="NestedParties" required="N" />
+        <field name="AllocQty" required="N" />
+      </group>
+      <field name="QtyType" required="N" />
+      <component name="OrderQtyData" required="Y" />
+      <component name="CommissionData" required="N" />
+      <field name="OrderCapacity" required="N" />
+      <field name="OrderRestrictions" required="N" />
+      <field name="CustOrderCapacity" required="N" />
+      <field name="ForexReq" required="N" />
+      <field name="SettlCurrency" required="N" />
+      <field name="BookingType" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="PositionEffect" required="N" />
+      <field name="CoveredOrUncovered" required="N" />
+      <field name="CashMargin" required="N" />
+      <field name="ClearingFeeIndicator" required="N" />
+      <field name="SolicitedFlag" required="N" />
+      <field name="SideComplianceID" required="N" />
+    </group>
+    <component name="Instrument" required="Y" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="SettlType" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="HandlInst" required="N" />
+    <field name="ExecInst" required="N" />
+    <field name="MinQty" required="N" />
+    <field name="MaxFloor" required="N" />
+    <field name="ExDestination" required="N" />
+    <group name="NoTradingSessions" required="N">
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </group>
+    <field name="ProcessCode" required="N" />
+    <field name="PrevClosePx" required="N" />
+    <field name="LocateReqd" required="N" />
+    <field name="TransactTime" required="Y" />
+    <component name="Stipulations" required="N" />
+    <field name="OrdType" required="Y" />
+    <field name="PriceType" required="N" />
+    <field name="Price" required="N" />
+    <field name="StopPx" required="N" />
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <component name="YieldData" required="N" />
+    <field name="Currency" required="N" />
+    <field name="ComplianceID" required="N" />
+    <field name="IOIid" required="N" />
+    <field name="QuoteID" required="N" />
+    <field name="TimeInForce" required="N" />
+    <field name="EffectiveTime" required="N" />
+    <field name="ExpireDate" required="N" />
+    <field name="ExpireTime" required="N" />
+    <field name="GTBookingInst" required="N" />
+    <field name="MaxShow" required="N" />
+    <component name="PegInstructions" required="N" />
+    <component name="DiscretionInstructions" required="N" />
+    <field name="TargetStrategy" required="N" />
+    <field name="TargetStrategyParameters" required="N" />
+    <field name="ParticipationRate" required="N" />
+    <field name="CancellationRights" required="N" />
+    <field name="MoneyLaunderingStatus" required="N" />
+    <field name="RegistID" required="N" />
+    <field name="Designation" required="N" />
+  </message>
+  <message name="CrossOrderCancelReplaceRequest" msgtype="t" msgcat="app">
+    <field name="OrderID" required="N" />
+    <field name="CrossID" required="Y" />
+    <field name="OrigCrossID" required="Y" />
+    <field name="CrossType" required="Y" />
+    <field name="CrossPrioritization" required="Y" />
+    <group name="NoSides" required="Y">
+      <field name="Side" required="Y" />
+      <field name="OrigClOrdID" required="Y" />
+      <field name="ClOrdID" required="Y" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ClOrdLinkID" required="N" />
+      <field name="OrigOrdModTime" required="N" />
+      <component name="Parties" required="N" />
+      <field name="TradeOriginationDate" required="N" />
+      <field name="TradeDate" required="N" />
+      <field name="Account" required="N" />
+      <field name="AcctIDSource" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="DayBookingInst" required="N" />
+      <field name="BookingUnit" required="N" />
+      <field name="PreallocMethod" required="N" />
+      <field name="AllocID" required="N" />
+      <group name="NoAllocs" required="N">
+        <field name="AllocAccount" required="N" />
+        <field name="AllocAcctIDSource" required="N" />
+        <field name="AllocSettlCurrency" required="N" />
+        <field name="IndividualAllocID" required="N" />
+        <component name="NestedParties" required="N" />
+        <field name="AllocQty" required="N" />
+      </group>
+      <field name="QtyType" required="N" />
+      <component name="OrderQtyData" required="Y" />
+      <component name="CommissionData" required="N" />
+      <field name="OrderCapacity" required="N" />
+      <field name="OrderRestrictions" required="N" />
+      <field name="CustOrderCapacity" required="N" />
+      <field name="ForexReq" required="N" />
+      <field name="SettlCurrency" required="N" />
+      <field name="BookingType" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="PositionEffect" required="N" />
+      <field name="CoveredOrUncovered" required="N" />
+      <field name="CashMargin" required="N" />
+      <field name="ClearingFeeIndicator" required="N" />
+      <field name="SolicitedFlag" required="N" />
+      <field name="SideComplianceID" required="N" />
+    </group>
+    <component name="Instrument" required="Y" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="SettlType" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="HandlInst" required="N" />
+    <field name="ExecInst" required="N" />
+    <field name="MinQty" required="N" />
+    <field name="MaxFloor" required="N" />
+    <field name="ExDestination" required="N" />
+    <group name="NoTradingSessions" required="N">
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </group>
+    <field name="ProcessCode" required="N" />
+    <field name="PrevClosePx" required="N" />
+    <field name="LocateReqd" required="N" />
+    <field name="TransactTime" required="Y" />
+    <component name="Stipulations" required="N" />
+    <field name="OrdType" required="Y" />
+    <field name="PriceType" required="N" />
+    <field name="Price" required="N" />
+    <field name="StopPx" required="N" />
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <component name="YieldData" required="N" />
+    <field name="Currency" required="N" />
+    <field name="ComplianceID" required="N" />
+    <field name="IOIid" required="N" />
+    <field name="QuoteID" required="N" />
+    <field name="TimeInForce" required="N" />
+    <field name="EffectiveTime" required="N" />
+    <field name="ExpireDate" required="N" />
+    <field name="ExpireTime" required="N" />
+    <field name="GTBookingInst" required="N" />
+    <field name="MaxShow" required="N" />
+    <component name="PegInstructions" required="N" />
+    <component name="DiscretionInstructions" required="N" />
+    <field name="TargetStrategy" required="N" />
+    <field name="TargetStrategyParameters" required="N" />
+    <field name="ParticipationRate" required="N" />
+    <field name="CancellationRights" required="N" />
+    <field name="MoneyLaunderingStatus" required="N" />
+    <field name="RegistID" required="N" />
+    <field name="Designation" required="N" />
+  </message>
+  <message name="CrossOrderCancelRequest" msgtype="u" msgcat="app">
+    <field name="OrderID" required="N" />
+    <field name="CrossID" required="Y" />
+    <field name="OrigCrossID" required="Y" />
+    <field name="CrossType" required="Y" />
+    <field name="CrossPrioritization" required="Y" />
+    <group name="NoSides" required="Y">
+      <field name="Side" required="Y" />
+      <field name="OrigClOrdID" required="Y" />
+      <field name="ClOrdID" required="Y" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ClOrdLinkID" required="N" />
+      <field name="OrigOrdModTime" required="N" />
+      <component name="Parties" required="N" />
+      <field name="TradeOriginationDate" required="N" />
+      <field name="TradeDate" required="N" />
+      <component name="OrderQtyData" required="Y" />
+      <field name="ComplianceID" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </group>
+    <component name="Instrument" required="Y" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="TransactTime" required="Y" />
+  </message>
+  <message name="NewOrderMultileg" msgtype="AB" msgcat="app">
+    <field name="ClOrdID" required="Y" />
+    <field name="SecondaryClOrdID" required="N" />
+    <field name="ClOrdLinkID" required="N" />
+    <component name="Parties" required="N" />
+    <field name="TradeOriginationDate" required="N" />
+    <field name="TradeDate" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="DayBookingInst" required="N" />
+    <field name="BookingUnit" required="N" />
+    <field name="PreallocMethod" required="N" />
+    <field name="AllocID" required="N" />
+    <group name="NoAllocs" required="N">
+      <field name="AllocAccount" required="N" />
+      <field name="AllocAcctIDSource" required="N" />
+      <field name="AllocSettlCurrency" required="N" />
+      <field name="IndividualAllocID" required="N" />
+      <component name="NestedParties3" required="N" />
+      <field name="AllocQty" required="N" />
+    </group>
+    <field name="SettlType" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="CashMargin" required="N" />
+    <field name="ClearingFeeIndicator" required="N" />
+    <field name="HandlInst" required="N" />
+    <field name="ExecInst" required="N" />
+    <field name="MinQty" required="N" />
+    <field name="MaxFloor" required="N" />
+    <field name="ExDestination" required="N" />
+    <group name="NoTradingSessions" required="N">
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </group>
+    <field name="ProcessCode" required="N" />
+    <field name="Side" required="Y" />
+    <component name="Instrument" required="Y" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="PrevClosePx" required="N" />
+    <group name="NoLegs" required="Y">
+      <component name="InstrumentLeg" required="N" />
+      <field name="LegQty" required="N" />
+      <field name="LegSwapType" required="N" />
+      <component name="LegStipulations" required="N" />
+      <group name="NoLegAllocs" required="N">
+        <field name="LegAllocAccount" required="N" />
+        <field name="LegIndividualAllocID" required="N" />
+        <component name="NestedParties2" required="N" />
+        <field name="LegAllocQty" required="N" />
+        <field name="LegAllocAcctIDSource" required="N" />
+        <field name="LegSettlCurrency" required="N" />
+      </group>
+      <field name="LegPositionEffect" required="N" />
+      <field name="LegCoveredOrUncovered" required="N" />
+      <component name="NestedParties" required="N" />
+      <field name="LegRefID" required="N" />
+      <field name="LegPrice" required="N" />
+      <field name="LegSettlType" required="N" />
+      <field name="LegSettlDate" required="N" />
+    </group>
+    <field name="LocateReqd" required="N" />
+    <field name="TransactTime" required="Y" />
+    <field name="QtyType" required="N" />
+    <component name="OrderQtyData" required="Y" />
+    <field name="OrdType" required="Y" />
+    <field name="PriceType" required="N" />
+    <field name="Price" required="N" />
+    <field name="StopPx" required="N" />
+    <field name="Currency" required="N" />
+    <field name="ComplianceID" required="N" />
+    <field name="SolicitedFlag" required="N" />
+    <field name="IOIid" required="N" />
+    <field name="QuoteID" required="N" />
+    <field name="TimeInForce" required="N" />
+    <field name="EffectiveTime" required="N" />
+    <field name="ExpireDate" required="N" />
+    <field name="ExpireTime" required="N" />
+    <field name="GTBookingInst" required="N" />
+    <component name="CommissionData" required="N" />
+    <field name="OrderCapacity" required="N" />
+    <field name="OrderRestrictions" required="N" />
+    <field name="CustOrderCapacity" required="N" />
+    <field name="ForexReq" required="N" />
+    <field name="SettlCurrency" required="N" />
+    <field name="BookingType" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="PositionEffect" required="N" />
+    <field name="CoveredOrUncovered" required="N" />
+    <field name="MaxShow" required="N" />
+    <component name="PegInstructions" required="N" />
+    <component name="DiscretionInstructions" required="N" />
+    <field name="TargetStrategy" required="N" />
+    <field name="TargetStrategyParameters" required="N" />
+    <field name="ParticipationRate" required="N" />
+    <field name="CancellationRights" required="N" />
+    <field name="MoneyLaunderingStatus" required="N" />
+    <field name="RegistID" required="N" />
+    <field name="Designation" required="N" />
+    <field name="MultiLegRptTypeReq" required="N" />
+  </message>
+  <message name="MultilegOrderCancelReplaceRequest" msgtype="AC" msgcat="app">
+    <field name="OrderID" required="N" />
+    <field name="OrigClOrdID" required="Y" />
+    <field name="ClOrdID" required="Y" />
+    <field name="SecondaryClOrdID" required="N" />
+    <field name="ClOrdLinkID" required="N" />
+    <field name="OrigOrdModTime" required="N" />
+    <component name="Parties" required="N" />
+    <field name="TradeOriginationDate" required="N" />
+    <field name="TradeDate" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="DayBookingInst" required="N" />
+    <field name="BookingUnit" required="N" />
+    <field name="PreallocMethod" required="N" />
+    <field name="AllocID" required="N" />
+    <group name="NoAllocs" required="N">
+      <field name="AllocAccount" required="N" />
+      <field name="AllocAcctIDSource" required="N" />
+      <field name="AllocSettlCurrency" required="N" />
+      <field name="IndividualAllocID" required="N" />
+      <component name="NestedParties3" required="N" />
+      <field name="AllocQty" required="N" />
+    </group>
+    <field name="SettlType" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="CashMargin" required="N" />
+    <field name="ClearingFeeIndicator" required="N" />
+    <field name="HandlInst" required="N" />
+    <field name="ExecInst" required="N" />
+    <field name="MinQty" required="N" />
+    <field name="MaxFloor" required="N" />
+    <field name="ExDestination" required="N" />
+    <group name="NoTradingSessions" required="N">
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </group>
+    <field name="ProcessCode" required="N" />
+    <field name="Side" required="Y" />
+    <component name="Instrument" required="Y" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="PrevClosePx" required="N" />
+    <group name="NoLegs" required="Y">
+      <component name="InstrumentLeg" required="N" />
+      <field name="LegQty" required="N" />
+      <field name="LegSwapType" required="N" />
+      <component name="LegStipulations" required="N" />
+      <group name="NoLegAllocs" required="N">
+        <field name="LegAllocAccount" required="N" />
+        <field name="LegIndividualAllocID" required="N" />
+        <component name="NestedParties2" required="N" />
+        <field name="LegAllocQty" required="N" />
+        <field name="LegAllocAcctIDSource" required="N" />
+        <field name="LegSettlCurrency" required="N" />
+      </group>
+      <field name="LegPositionEffect" required="N" />
+      <field name="LegCoveredOrUncovered" required="N" />
+      <component name="NestedParties" required="N" />
+      <field name="LegRefID" required="N" />
+      <field name="LegPrice" required="N" />
+      <field name="LegSettlType" required="N" />
+      <field name="LegSettlDate" required="N" />
+    </group>
+    <field name="LocateReqd" required="N" />
+    <field name="TransactTime" required="Y" />
+    <field name="QtyType" required="N" />
+    <component name="OrderQtyData" required="Y" />
+    <field name="OrdType" required="Y" />
+    <field name="PriceType" required="N" />
+    <field name="Price" required="N" />
+    <field name="StopPx" required="N" />
+    <field name="Currency" required="N" />
+    <field name="ComplianceID" required="N" />
+    <field name="SolicitedFlag" required="N" />
+    <field name="IOIid" required="N" />
+    <field name="QuoteID" required="N" />
+    <field name="TimeInForce" required="N" />
+    <field name="EffectiveTime" required="N" />
+    <field name="ExpireDate" required="N" />
+    <field name="ExpireTime" required="N" />
+    <field name="GTBookingInst" required="N" />
+    <component name="CommissionData" required="N" />
+    <field name="OrderCapacity" required="N" />
+    <field name="OrderRestrictions" required="N" />
+    <field name="CustOrderCapacity" required="N" />
+    <field name="ForexReq" required="N" />
+    <field name="SettlCurrency" required="N" />
+    <field name="BookingType" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="PositionEffect" required="N" />
+    <field name="CoveredOrUncovered" required="N" />
+    <field name="MaxShow" required="N" />
+    <component name="PegInstructions" required="N" />
+    <component name="DiscretionInstructions" required="N" />
+    <field name="TargetStrategy" required="N" />
+    <field name="TargetStrategyParameters" required="N" />
+    <field name="ParticipationRate" required="N" />
+    <field name="CancellationRights" required="N" />
+    <field name="MoneyLaunderingStatus" required="N" />
+    <field name="RegistID" required="N" />
+    <field name="Designation" required="N" />
+    <field name="MultiLegRptTypeReq" required="N" />
+  </message>
+  <message name="BidRequest" msgtype="k" msgcat="app">
+    <field name="BidID" required="N" />
+    <field name="ClientBidID" required="Y" />
+    <field name="BidRequestTransType" required="Y" />
+    <field name="ListName" required="N" />
+    <field name="TotNoRelatedSym" required="Y" />
+    <field name="BidType" required="Y" />
+    <field name="NumTickets" required="N" />
+    <field name="Currency" required="N" />
+    <field name="SideValue1" required="N" />
+    <field name="SideValue2" required="N" />
+    <group name="NoBidDescriptors" required="N">
+      <field name="BidDescriptorType" required="N" />
+      <field name="BidDescriptor" required="N" />
+      <field name="SideValueInd" required="N" />
+      <field name="LiquidityValue" required="N" />
+      <field name="LiquidityNumSecurities" required="N" />
+      <field name="LiquidityPctLow" required="N" />
+      <field name="LiquidityPctHigh" required="N" />
+      <field name="EFPTrackingError" required="N" />
+      <field name="FairValue" required="N" />
+      <field name="OutsideIndexPct" required="N" />
+      <field name="ValueOfFutures" required="N" />
+    </group>
+    <group name="NoBidComponents" required="N">
+      <field name="ListID" required="N" />
+      <field name="Side" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="NetGrossInd" required="N" />
+      <field name="SettlType" required="N" />
+      <field name="SettlDate" required="N" />
+      <field name="Account" required="N" />
+      <field name="AcctIDSource" required="N" />
+    </group>
+    <field name="LiquidityIndType" required="N" />
+    <field name="WtAverageLiquidity" required="N" />
+    <field name="ExchangeForPhysical" required="N" />
+    <field name="OutMainCntryUIndex" required="N" />
+    <field name="CrossPercent" required="N" />
+    <field name="ProgRptReqs" required="N" />
+    <field name="ProgPeriodInterval" required="N" />
+    <field name="IncTaxInd" required="N" />
+    <field name="ForexReq" required="N" />
+    <field name="NumBidders" required="N" />
+    <field name="TradeDate" required="N" />
+    <field name="BidTradeType" required="Y" />
+    <field name="BasisPxType" required="Y" />
+    <field name="StrikeTime" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="BidResponse" msgtype="l" msgcat="app">
+    <field name="BidID" required="N" />
+    <field name="ClientBidID" required="N" />
+    <group name="NoBidComponents" required="Y">
+      <component name="CommissionData" required="Y" />
+      <field name="ListID" required="N" />
+      <field name="Country" required="N" />
+      <field name="Side" required="N" />
+      <field name="Price" required="N" />
+      <field name="PriceType" required="N" />
+      <field name="FairValue" required="N" />
+      <field name="NetGrossInd" required="N" />
+      <field name="SettlType" required="N" />
+      <field name="SettlDate" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </group>
+  </message>
+  <message name="NewOrderList" msgtype="E" msgcat="app">
+    <field name="ListID" required="Y" />
+    <field name="BidID" required="N" />
+    <field name="ClientBidID" required="N" />
+    <field name="ProgRptReqs" required="N" />
+    <field name="BidType" required="Y" />
+    <field name="ProgPeriodInterval" required="N" />
+    <field name="CancellationRights" required="N" />
+    <field name="MoneyLaunderingStatus" required="N" />
+    <field name="RegistID" required="N" />
+    <field name="ListExecInstType" required="N" />
+    <field name="ListExecInst" required="N" />
+    <field name="EncodedListExecInstLen" required="N" />
+    <field name="EncodedListExecInst" required="N" />
+    <field name="AllowableOneSidednessPct" required="N" />
+    <field name="AllowableOneSidednessValue" required="N" />
+    <field name="AllowableOneSidednessCurr" required="N" />
+    <field name="TotNoOrders" required="Y" />
+    <field name="LastFragment" required="N" />
+    <group name="NoOrders" required="Y">
+      <field name="ClOrdID" required="Y" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ListSeqNo" required="Y" />
+      <field name="ClOrdLinkID" required="N" />
+      <field name="SettlInstMode" required="N" />
+      <component name="Parties" required="N" />
+      <field name="TradeOriginationDate" required="N" />
+      <field name="TradeDate" required="N" />
+      <field name="Account" required="N" />
+      <field name="AcctIDSource" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="DayBookingInst" required="N" />
+      <field name="BookingUnit" required="N" />
+      <field name="AllocID" required="N" />
+      <field name="PreallocMethod" required="N" />
+      <group name="NoAllocs" required="N">
+        <field name="AllocAccount" required="N" />
+        <field name="AllocAcctIDSource" required="N" />
+        <field name="AllocSettlCurrency" required="N" />
+        <field name="IndividualAllocID" required="N" />
+        <component name="NestedParties" required="N" />
+        <field name="AllocQty" required="N" />
+      </group>
+      <field name="SettlType" required="N" />
+      <field name="SettlDate" required="N" />
+      <field name="CashMargin" required="N" />
+      <field name="ClearingFeeIndicator" required="N" />
+      <field name="HandlInst" required="N" />
+      <field name="ExecInst" required="N" />
+      <field name="MinQty" required="N" />
+      <field name="MaxFloor" required="N" />
+      <field name="ExDestination" required="N" />
+      <group name="NoTradingSessions" required="N">
+        <field name="TradingSessionID" required="N" />
+        <field name="TradingSessionSubID" required="N" />
+      </group>
+      <field name="ProcessCode" required="N" />
+      <component name="Instrument" required="Y" />
+      <group name="NoUnderlyings" required="N">
+        <component name="UnderlyingInstrument" required="N" />
+      </group>
+      <field name="PrevClosePx" required="N" />
+      <field name="Side" required="Y" />
+      <field name="SideValueInd" required="N" />
+      <field name="LocateReqd" required="N" />
+      <field name="TransactTime" required="N" />
+      <component name="Stipulations" required="N" />
+      <field name="QtyType" required="N" />
+      <component name="OrderQtyData" required="Y" />
+      <field name="OrdType" required="N" />
+      <field name="PriceType" required="N" />
+      <field name="Price" required="N" />
+      <field name="StopPx" required="N" />
+      <component name="SpreadOrBenchmarkCurveData" required="N" />
+      <component name="YieldData" required="N" />
+      <field name="Currency" required="N" />
+      <field name="ComplianceID" required="N" />
+      <field name="SolicitedFlag" required="N" />
+      <field name="IOIid" required="N" />
+      <field name="QuoteID" required="N" />
+      <field name="TimeInForce" required="N" />
+      <field name="EffectiveTime" required="N" />
+      <field name="ExpireDate" required="N" />
+      <field name="ExpireTime" required="N" />
+      <field name="GTBookingInst" required="N" />
+      <component name="CommissionData" required="N" />
+      <field name="OrderCapacity" required="N" />
+      <field name="OrderRestrictions" required="N" />
+      <field name="CustOrderCapacity" required="N" />
+      <field name="ForexReq" required="N" />
+      <field name="SettlCurrency" required="N" />
+      <field name="BookingType" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="SettlDate2" required="N" />
+      <field name="OrderQty2" required="N" />
+      <field name="Price2" required="N" />
+      <field name="PositionEffect" required="N" />
+      <field name="CoveredOrUncovered" required="N" />
+      <field name="MaxShow" required="N" />
+      <component name="PegInstructions" required="N" />
+      <component name="DiscretionInstructions" required="N" />
+      <field name="TargetStrategy" required="N" />
+      <field name="TargetStrategyParameters" required="N" />
+      <field name="ParticipationRate" required="N" />
+      <field name="Designation" required="N" />
+    </group>
+  </message>
+  <message name="ListStrikePrice" msgtype="m" msgcat="app">
+    <field name="ListID" required="Y" />
+    <field name="TotNoStrikes" required="Y" />
+    <field name="LastFragment" required="N" />
+    <group name="NoStrikes" required="Y">
+      <component name="Instrument" required="Y" />
+    </group>
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+      <field name="PrevClosePx" required="N" />
+      <field name="ClOrdID" required="N" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="Side" required="N" />
+      <field name="Price" required="Y" />
+      <field name="Currency" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </group>
+  </message>
+  <message name="ListStatus" msgtype="N" msgcat="app">
+    <field name="ListID" required="Y" />
+    <field name="ListStatusType" required="Y" />
+    <field name="NoRpts" required="Y" />
+    <field name="ListOrderStatus" required="Y" />
+    <field name="RptSeq" required="Y" />
+    <field name="ListStatusText" required="N" />
+    <field name="EncodedListStatusTextLen" required="N" />
+    <field name="EncodedListStatusText" required="N" />
+    <field name="TransactTime" required="N" />
+    <field name="TotNoOrders" required="Y" />
+    <field name="LastFragment" required="N" />
+    <group name="NoOrders" required="Y">
+      <field name="ClOrdID" required="Y" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="CumQty" required="Y" />
+      <field name="OrdStatus" required="Y" />
+      <field name="WorkingIndicator" required="N" />
+      <field name="LeavesQty" required="Y" />
+      <field name="CxlQty" required="Y" />
+      <field name="AvgPx" required="Y" />
+      <field name="OrdRejReason" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+    </group>
+  </message>
+  <message name="ListExecute" msgtype="L" msgcat="app">
+    <field name="ListID" required="Y" />
+    <field name="ClientBidID" required="N" />
+    <field name="BidID" required="N" />
+    <field name="TransactTime" required="Y" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="ListCancelRequest" msgtype="K" msgcat="app">
+    <field name="ListID" required="Y" />
+    <field name="TransactTime" required="Y" />
+    <field name="TradeOriginationDate" required="N" />
+    <field name="TradeDate" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="ListStatusRequest" msgtype="M" msgcat="app">
+    <field name="ListID" required="Y" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="AllocationInstruction" msgtype="J" msgcat="app">
+    <field name="AllocID" required="Y" />
+    <field name="AllocTransType" required="Y" />
+    <field name="AllocType" required="Y" />
+    <field name="SecondaryAllocID" required="N" />
+    <field name="RefAllocID" required="N" />
+    <field name="AllocCancReplaceReason" required="N" />
+    <field name="AllocIntermedReqType" required="N" />
+    <field name="AllocLinkID" required="N" />
+    <field name="AllocLinkType" required="N" />
+    <field name="BookingRefID" required="N" />
+    <field name="AllocNoOrdersType" required="Y" />
+    <group name="NoOrders" required="N">
+      <field name="ClOrdID" required="N" />
+      <field name="OrderID" required="N" />
+      <field name="SecondaryOrderID" required="N" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ListID" required="N" />
+      <component name="NestedParties2" required="N" />
+      <field name="OrderQty" required="N" />
+      <field name="OrderAvgPx" required="N" />
+      <field name="OrderBookingQty" required="N" />
+    </group>
+    <group name="NoExecs" required="N">
+      <field name="LastQty" required="N" />
+      <field name="ExecID" required="N" />
+      <field name="SecondaryExecID" required="N" />
+      <field name="LastPx" required="N" />
+      <field name="LastParPx" required="N" />
+      <field name="LastCapacity" required="N" />
+    </group>
+    <field name="PreviouslyReported" required="N" />
+    <field name="ReversalIndicator" required="N" />
+    <field name="MatchType" required="N" />
+    <field name="Side" required="Y" />
+    <component name="Instrument" required="Y" />
+    <component name="InstrumentExtension" required="N" />
+    <component name="FinancingDetails" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="Quantity" required="Y" />
+    <field name="QtyType" required="N" />
+    <field name="LastMkt" required="N" />
+    <field name="TradeOriginationDate" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="PriceType" required="N" />
+    <field name="AvgPx" required="Y" />
+    <field name="AvgParPx" required="N" />
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <field name="Currency" required="N" />
+    <field name="AvgPxPrecision" required="N" />
+    <component name="Parties" required="N" />
+    <field name="TradeDate" required="Y" />
+    <field name="TransactTime" required="N" />
+    <field name="SettlType" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="BookingType" required="N" />
+    <field name="GrossTradeAmt" required="N" />
+    <field name="Concession" required="N" />
+    <field name="TotalTakedown" required="N" />
+    <field name="NetMoney" required="N" />
+    <field name="PositionEffect" required="N" />
+    <field name="AutoAcceptIndicator" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="NumDaysInterest" required="N" />
+    <field name="AccruedInterestRate" required="N" />
+    <field name="AccruedInterestAmt" required="N" />
+    <field name="TotalAccruedInterestAmt" required="N" />
+    <field name="InterestAtMaturity" required="N" />
+    <field name="EndAccruedInterestAmt" required="N" />
+    <field name="StartCash" required="N" />
+    <field name="EndCash" required="N" />
+    <field name="LegalConfirm" required="N" />
+    <component name="Stipulations" required="N" />
+    <component name="YieldData" required="N" />
+    <field name="TotNoAllocs" required="N" />
+    <field name="LastFragment" required="N" />
+    <group name="NoAllocs" required="Y">
+      <field name="AllocAccount" required="Y" />
+      <field name="AllocAcctIDSource" required="N" />
+      <field name="MatchStatus" required="N" />
+      <field name="AllocPrice" required="N" />
+      <field name="AllocQty" required="Y" />
+      <field name="IndividualAllocID" required="N" />
+      <field name="ProcessCode" required="N" />
+      <component name="NestedParties" required="N" />
+      <field name="NotifyBrokerOfCredit" required="N" />
+      <field name="AllocHandlInst" required="N" />
+      <field name="AllocText" required="N" />
+      <field name="EncodedAllocTextLen" required="N" />
+      <field name="EncodedAllocText" required="N" />
+      <component name="CommissionData" required="N" />
+      <field name="AllocAvgPx" required="N" />
+      <field name="AllocNetMoney" required="N" />
+      <field name="SettlCurrAmt" required="N" />
+      <field name="AllocSettlCurrAmt" required="N" />
+      <field name="SettlCurrency" required="N" />
+      <field name="AllocSettlCurrency" required="N" />
+      <field name="SettlCurrFxRate" required="N" />
+      <field name="SettlCurrFxRateCalc" required="N" />
+      <field name="AccruedInterestAmt" required="N" />
+      <field name="AllocAccruedInterestAmt" required="N" />
+      <field name="AllocInterestAtMaturity" required="N" />
+      <field name="SettlInstMode" required="N" />
+      <group name="NoMiscFees" required="N">
+        <field name="MiscFeeAmt" required="N" />
+        <field name="MiscFeeCurr" required="N" />
+        <field name="MiscFeeType" required="N" />
+        <field name="MiscFeeBasis" required="N" />
+      </group>
+      <field name="NoClearingInstructions" required="N" />
+      <field name="ClearingInstruction" required="N" />
+      <field name="ClearingFeeIndicator" required="N" />
+      <field name="AllocSettlInstType" required="N" />
+      <component name="SettlInstructionsData" required="N" />
+    </group>
+  </message>
+  <message name="AllocationInstructionAck" msgtype="P" msgcat="app">
+    <field name="AllocID" required="Y" />
+    <component name="Parties" required="N" />
+    <field name="SecondaryAllocID" required="N" />
+    <field name="TradeDate" required="N" />
+    <field name="TransactTime" required="Y" />
+    <field name="AllocStatus" required="Y" />
+    <field name="AllocRejCode" required="N" />
+    <field name="AllocType" required="N" />
+    <field name="AllocIntermedReqType" required="N" />
+    <field name="MatchStatus" required="N" />
+    <field name="Product" required="N" />
+    <field name="SecurityType" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <group name="NoAllocs" required="N">
+      <field name="AllocAccount" required="N" />
+      <field name="AllocAcctIDSource" required="N" />
+      <field name="AllocPrice" required="N" />
+      <field name="IndividualAllocID" required="N" />
+      <field name="IndividualAllocRejCode" required="N" />
+      <field name="AllocText" required="N" />
+      <field name="EncodedAllocTextLen" required="N" />
+      <field name="EncodedAllocText" required="N" />
+    </group>
+  </message>
+  <message name="AllocationReport" msgtype="AS" msgcat="app">
+    <field name="AllocReportID" required="Y" />
+    <field name="AllocID" required="N" />
+    <field name="AllocTransType" required="Y" />
+    <field name="AllocReportRefID" required="N" />
+    <field name="AllocCancReplaceReason" required="N" />
+    <field name="SecondaryAllocID" required="N" />
+    <field name="AllocReportType" required="Y" />
+    <field name="AllocStatus" required="Y" />
+    <field name="AllocRejCode" required="N" />
+    <field name="RefAllocID" required="N" />
+    <field name="AllocIntermedReqType" required="N" />
+    <field name="AllocLinkID" required="N" />
+    <field name="AllocLinkType" required="N" />
+    <field name="BookingRefID" required="N" />
+    <field name="AllocNoOrdersType" required="Y" />
+    <group name="NoOrders" required="N">
+      <field name="ClOrdID" required="N" />
+      <field name="OrderID" required="N" />
+      <field name="SecondaryOrderID" required="N" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ListID" required="N" />
+      <component name="NestedParties2" required="N" />
+      <field name="OrderQty" required="N" />
+      <field name="OrderAvgPx" required="N" />
+      <field name="OrderBookingQty" required="N" />
+    </group>
+    <group name="NoExecs" required="N">
+      <field name="LastQty" required="N" />
+      <field name="ExecID" required="N" />
+      <field name="SecondaryExecID" required="N" />
+      <field name="LastPx" required="N" />
+      <field name="LastParPx" required="N" />
+      <field name="LastCapacity" required="N" />
+    </group>
+    <field name="PreviouslyReported" required="N" />
+    <field name="ReversalIndicator" required="N" />
+    <field name="MatchType" required="N" />
+    <field name="Side" required="Y" />
+      <component name="Instrument" required="Y" />
+      <component name="InstrumentExtension" required="N" />
+      <component name="FinancingDetails" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="Quantity" required="Y" />
+    <field name="QtyType" required="N" />
+    <field name="LastMkt" required="N" />
+    <field name="TradeOriginationDate" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="PriceType" required="N" />
+    <field name="AvgPx" required="Y" />
+    <field name="AvgParPx" required="N" />
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <field name="Currency" required="N" />
+    <field name="AvgPxPrecision" required="N" />
+    <component name="Parties" required="N" />
+    <field name="TradeDate" required="Y" />
+    <field name="TransactTime" required="N" />
+    <field name="SettlType" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="BookingType" required="N" />
+    <field name="GrossTradeAmt" required="N" />
+    <field name="Concession" required="N" />
+    <field name="TotalTakedown" required="N" />
+    <field name="NetMoney" required="N" />
+    <field name="PositionEffect" required="N" />
+    <field name="AutoAcceptIndicator" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="NumDaysInterest" required="N" />
+    <field name="AccruedInterestRate" required="N" />
+    <field name="AccruedInterestAmt" required="N" />
+    <field name="TotalAccruedInterestAmt" required="N" />
+    <field name="InterestAtMaturity" required="N" />
+    <field name="EndAccruedInterestAmt" required="N" />
+    <field name="StartCash" required="N" />
+    <field name="EndCash" required="N" />
+    <field name="LegalConfirm" required="N" />
+    <component name="Stipulations" required="N" />
+    <component name="YieldData" required="N" />
+    <field name="TotNoAllocs" required="N" />
+    <field name="LastFragment" required="N" />
+    <group name="NoAllocs" required="Y">
+      <field name="AllocAccount" required="Y" />
+      <field name="AllocAcctIDSource" required="N" />
+      <field name="MatchStatus" required="N" />
+      <field name="AllocPrice" required="N" />
+      <field name="AllocQty" required="Y" />
+      <field name="IndividualAllocID" required="N" />
+      <field name="ProcessCode" required="N" />
+      <component name="NestedParties" required="N" />
+      <field name="NotifyBrokerOfCredit" required="N" />
+      <field name="AllocHandlInst" required="N" />
+      <field name="AllocText" required="N" />
+      <field name="EncodedAllocTextLen" required="N" />
+      <field name="EncodedAllocText" required="N" />
+      <component name="CommissionData" required="N" />
+      <field name="AllocAvgPx" required="N" />
+      <field name="AllocNetMoney" required="N" />
+      <field name="SettlCurrAmt" required="N" />
+      <field name="AllocSettlCurrAmt" required="N" />
+      <field name="SettlCurrency" required="N" />
+      <field name="AllocSettlCurrency" required="N" />
+      <field name="SettlCurrFxRate" required="N" />
+      <field name="SettlCurrFxRateCalc" required="N" />
+      <field name="AllocAccruedInterestAmt" required="N" />
+      <field name="AllocInterestAtMaturity" required="N" />
+      <group name="NoMiscFees" required="N">
+        <field name="MiscFeeAmt" required="N" />
+        <field name="MiscFeeCurr" required="N" />
+        <field name="MiscFeeType" required="N" />
+        <field name="MiscFeeBasis" required="N" />
+      </group>
+      <group name="NoClearingInstructions" required="N">
+        <field name="ClearingInstruction" required="N" />
+      </group>
+      <field name="ClearingFeeIndicator" required="N" />
+      <field name="AllocSettlInstType" required="N" />
+      <component name="SettlInstructionsData" required="N" />
+    </group>
+  </message>
+  <message name="AllocationReportAck" msgtype="AT" msgcat="app">
+    <field name="AllocReportID" required="Y" />
+    <field name="AllocID" required="Y" />
+    <component name="Parties" required="N" />
+    <field name="SecondaryAllocID" required="N" />
+    <field name="TradeDate" required="N" />
+    <field name="TransactTime" required="Y" />
+    <field name="AllocStatus" required="Y" />
+    <field name="AllocRejCode" required="N" />
+    <field name="AllocReportType" required="N" />
+    <field name="AllocIntermedReqType" required="N" />
+    <field name="MatchStatus" required="N" />
+    <field name="Product" required="N" />
+    <field name="SecurityType" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <group name="NoAllocs" required="N">
+      <field name="AllocAccount" required="N" />
+      <field name="AllocAcctIDSource" required="N" />
+      <field name="AllocPrice" required="N" />
+      <field name="IndividualAllocID" required="N" />
+      <field name="IndividualAllocRejCode" required="N" />
+      <field name="AllocText" required="N" />
+      <field name="EncodedAllocTextLen" required="N" />
+      <field name="EncodedAllocText" required="N" />
+    </group>
+  </message>
+  <message name="Confirmation" msgtype="AK" msgcat="app">
+    <field name="ConfirmID" required="Y" />
+    <field name="ConfirmRefID" required="N" />
+    <field name="ConfirmReqID" required="N" />
+    <field name="ConfirmTransType" required="Y" />
+    <field name="ConfirmType" required="Y" />
+    <field name="CopyMsgIndicator" required="N" />
+    <field name="LegalConfirm" required="N" />
+    <field name="ConfirmStatus" required="Y" />
+    <component name="Parties" required="N" />
+    <group name="NoOrders" required="N">
+      <field name="ClOrdID" required="N" />
+      <field name="OrderID" required="N" />
+      <field name="SecondaryOrderID" required="N" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ListID" required="N" />
+      <component name="NestedParties2" required="N" />
+      <field name="OrderQty" required="N" />
+      <field name="OrderAvgPx" required="N" />
+      <field name="OrderBookingQty" required="N" />
+    </group>
+    <field name="AllocID" required="N" />
+    <field name="SecondaryAllocID" required="N" />
+    <field name="IndividualAllocID" required="N" />
+    <field name="TransactTime" required="Y" />
+    <field name="TradeDate" required="Y" />
+    <component name="TrdRegTimestamps" required="N" />
+    <component name="Instrument" required="Y" />
+    <component name="InstrumentExtension" required="N" />
+    <component name="FinancingDetails" required="N" />
+    <group name="NoUnderlyings" required="Y">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="Y">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <component name="YieldData" required="N" />
+    <field name="AllocQty" required="Y" />
+    <field name="QtyType" required="N" />
+    <field name="Side" required="Y" />
+    <field name="Currency" required="N" />
+    <field name="LastMkt" required="N" />
+    <group name="NoCapacities" required="Y">
+      <field name="OrderCapacity" required="Y" />
+      <field name="OrderRestrictions" required="N" />
+      <field name="OrderCapacityQty" required="Y" />
+    </group>
+    <field name="AllocAccount" required="Y" />
+    <field name="AllocAcctIDSource" required="N" />
+    <field name="AllocAccountType" required="N" />
+    <field name="AvgPx" required="Y" />
+    <field name="AvgPxPrecision" required="N" />
+    <field name="PriceType" required="N" />
+    <field name="AvgParPx" required="N" />
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <field name="ReportedPx" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="ProcessCode" required="N" />
+    <field name="GrossTradeAmt" required="Y" />
+    <field name="NumDaysInterest" required="N" />
+    <field name="ExDate" required="N" />
+    <field name="AccruedInterestRate" required="N" />
+    <field name="AccruedInterestAmt" required="N" />
+    <field name="InterestAtMaturity" required="N" />
+    <field name="EndAccruedInterestAmt" required="N" />
+    <field name="StartCash" required="N" />
+    <field name="EndCash" required="N" />
+    <field name="Concession" required="N" />
+    <field name="TotalTakedown" required="N" />
+    <field name="NetMoney" required="Y" />
+    <field name="MaturityNetMoney" required="N" />
+    <field name="SettlCurrAmt" required="N" />
+    <field name="SettlCurrency" required="N" />
+    <field name="SettlCurrFxRate" required="N" />
+    <field name="SettlCurrFxRateCalc" required="N" />
+    <field name="SettlType" required="N" />
+    <field name="SettlDate" required="N" />
+    <component name="SettlInstructionsData" required="N" />
+    <component name="CommissionData" required="N" />
+    <field name="SharedCommission" required="N" />
+    <component name="Stipulations" required="N" />
+    <group name="NoMiscFees" required="N">
+      <field name="MiscFeeAmt" required="N" />
+      <field name="MiscFeeCurr" required="N" />
+      <field name="MiscFeeType" required="N" />
+      <field name="MiscFeeBasis" required="N" />
+    </group>
+  </message>
+  <message name="ConfirmationAck" msgtype="AU" msgcat="app">
+    <field name="ConfirmID" required="Y" />
+    <field name="TradeDate" required="Y" />
+    <field name="TransactTime" required="Y" />
+    <field name="AffirmStatus" required="Y" />
+    <field name="ConfirmRejReason" required="N" />
+    <field name="MatchStatus" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="ConfirmationRequest" msgtype="BH" msgcat="app">
+    <field name="ConfirmReqID" required="Y" />
+    <field name="ConfirmType" required="Y" />
+    <group name="NoOrders" required="N">
+      <field name="ClOrdID" required="N" />
+      <field name="OrderID" required="N" />
+      <field name="SecondaryOrderID" required="N" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ListID" required="N" />
+      <component name="NestedParties2" required="N" />
+      <field name="OrderQty" required="N" />
+      <field name="OrderAvgPx" required="N" />
+      <field name="OrderBookingQty" required="N" />
+    </group>
+    <field name="AllocID" required="N" />
+    <field name="SecondaryAllocID" required="N" />
+    <field name="IndividualAllocID" required="N" />
+    <field name="TransactTime" required="Y" />
+    <field name="AllocAccount" required="N" />
+    <field name="AllocAcctIDSource" required="N" />
+    <field name="AllocAccountType" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="SettlementInstructions" msgtype="T" msgcat="app">
+    <field name="SettlInstMsgID" required="Y" />
+    <field name="SettlInstReqID" required="N" />
+    <field name="SettlInstMode" required="Y" />
+    <field name="SettlInstReqRejCode" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <field name="SettlInstSource" required="N" />
+    <field name="ClOrdID" required="N" />
+    <field name="TransactTime" required="Y" />
+    <group name="NoSettlInst" required="N">
+      <field name="SettlInstID" required="N" />
+      <field name="SettlInstTransType" required="N" />
+      <field name="SettlInstRefID" required="N" />
+      <component name="Parties" required="N" />
+      <field name="Side" required="N" />
+      <field name="Product" required="N" />
+      <field name="SecurityType" required="N" />
+      <field name="CFICode" required="N" />
+      <field name="EffectiveTime" required="N" />
+      <field name="ExpireTime" required="N" />
+      <field name="LastUpdateTime" required="N" />
+      <component name="SettlInstructionsData" required="N" />
+      <field name="PaymentMethod" required="N" />
+      <field name="PaymentRef" required="N" />
+      <field name="CardHolderName" required="N" />
+      <field name="CardNumber" required="N" />
+      <field name="CardStartDate" required="N" />
+      <field name="CardExpDate" required="N" />
+      <field name="CardIssNum" required="N" />
+      <field name="PaymentDate" required="N" />
+      <field name="PaymentRemitterID" required="N" />
+    </group>
+  </message>
+  <message name="SettlementInstructionRequest" msgtype="AV" msgcat="app">
+    <field name="SettlInstReqID" required="Y" />
+    <field name="TransactTime" required="Y" />
+    <component name="Parties" required="N" />
+    <field name="AllocAccount" required="N" />
+    <field name="AllocAcctIDSource" required="N" />
+    <field name="Side" required="N" />
+    <field name="Product" required="N" />
+    <field name="SecurityType" required="N" />
+    <field name="CFICode" required="N" />
+    <field name="EffectiveTime" required="N" />
+    <field name="ExpireTime" required="N" />
+    <field name="LastUpdateTime" required="N" />
+    <field name="StandInstDbType" required="N" />
+    <field name="StandInstDbName" required="N" />
+    <field name="StandInstDbID" required="N" />
+  </message>
+  <message name="TradeCaptureReportRequest" msgtype="AD" msgcat="app">
+    <field name="TradeRequestID" required="Y" />
+    <field name="TradeRequestType" required="Y" />
+    <field name="SubscriptionRequestType" required="N" />
+    <field name="TradeReportID" required="N" />
+    <field name="SecondaryTradeReportID" required="N" />
+    <field name="ExecID" required="N" />
+    <field name="ExecType" required="N" />
+    <field name="OrderID" required="N" />
+    <field name="ClOrdID" required="N" />
+    <field name="MatchStatus" required="N" />
+    <field name="TrdType" required="N" />
+    <field name="TrdSubType" required="N" />
+    <field name="TransferReason" required="N" />
+    <field name="SecondaryTrdType" required="N" />
+    <field name="TradeLinkID" required="N" />
+    <field name="TrdMatchID" required="N" />
+    <component name="Parties" required="N" />
+    <component name="Instrument" required="N" />
+    <component name="InstrumentExtension" required="N" />
+    <component name="FinancingDetails" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <group name="NoDates" required="N">
+      <field name="TradeDate" required="N" />
+      <field name="TransactTime" required="N" />
+    </group>
+    <field name="ClearingBusinessDate" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="TimeBracket" required="N" />
+    <field name="Side" required="N" />
+    <field name="MultiLegReportingType" required="N" />
+    <field name="TradeInputSource" required="N" />
+    <field name="TradeInputDevice" required="N" />
+    <field name="ResponseTransportType" required="N" />
+    <field name="ResponseDestination" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="TradeCaptureReportRequestAck" msgtype="AQ" msgcat="app">
+    <field name="TradeRequestID" required="Y" />
+    <field name="TradeRequestType" required="Y" />
+    <field name="SubscriptionRequestType" required="N" />
+    <field name="TotNumTradeReports" required="N" />
+    <field name="TradeRequestResult" required="Y" />
+    <field name="TradeRequestStatus" required="Y" />
+    <component name="Instrument" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <field name="MultiLegReportingType" required="N" />
+    <field name="ResponseTransportType" required="N" />
+    <field name="ResponseDestination" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="TradeCaptureReport" msgtype="AE" msgcat="app">
+    <field name="TradeReportID" required="Y" />
+    <field name="TradeReportTransType" required="N" />
+    <field name="TradeReportType" required="N" />
+    <field name="TradeRequestID" required="N" />
+    <field name="TrdType" required="N" />
+    <field name="TrdSubType" required="N" />
+    <field name="SecondaryTrdType" required="N" />
+    <field name="TransferReason" required="N" />
+    <field name="ExecType" required="N" />
+    <field name="TotNumTradeReports" required="N" />
+    <field name="LastRptRequested" required="N" />
+    <field name="UnsolicitedIndicator" required="N" />
+    <field name="SubscriptionRequestType" required="N" />
+    <field name="TradeReportRefID" required="N" />
+    <field name="SecondaryTradeReportRefID" required="N" />
+    <field name="SecondaryTradeReportID" required="N" />
+    <field name="TradeLinkID" required="N" />
+    <field name="TrdMatchID" required="N" />
+    <field name="ExecID" required="N" />
+    <field name="OrdStatus" required="N" />
+    <field name="SecondaryExecID" required="N" />
+    <field name="ExecRestatementReason" required="N" />
+    <field name="PreviouslyReported" required="Y" />
+    <field name="PriceType" required="N" />
+    <component name="Instrument" required="Y" />
+    <component name="FinancingDetails" required="N" />
+    <component name="OrderQtyData" required="N" />
+    <field name="QtyType" required="N" />
+    <component name="YieldData" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="UnderlyingTradingSessionID" required="N" />
+    <field name="UnderlyingTradingSessionSubID" required="N" />
+    <field name="LastQty" required="Y" />
+    <field name="LastPx" required="Y" />
+    <field name="LastParPx" required="N" />
+    <field name="LastSpotRate" required="N" />
+    <field name="LastForwardPoints" required="N" />
+    <field name="LastMkt" required="N" />
+    <field name="TradeDate" required="Y" />
+    <field name="ClearingBusinessDate" required="N" />
+    <field name="AvgPx" required="N" />
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <field name="AvgPxIndicator" required="N" />
+    <component name="PositionAmountData" required="N" />
+    <field name="MultiLegReportingType" required="N" />
+    <field name="TradeLegRefID" required="N" />
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+      <field name="LegQty" required="N" />
+      <field name="LegSwapType" required="N" />
+      <component name="LegStipulations" required="N" />
+      <field name="LegPositionEffect" required="N" />
+      <field name="LegCoveredOrUncovered" required="N" />
+      <component name="NestedParties" required="N" />
+      <field name="LegRefID" required="N" />
+      <field name="LegPrice" required="N" />
+      <field name="LegSettlType" required="N" />
+      <field name="LegSettlDate" required="N" />
+      <field name="LegLastPx" required="N" />
+    </group>
+    <field name="TransactTime" required="Y" />
+    <component name="TrdRegTimestamps" required="N" />
+    <field name="SettlType" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="MatchStatus" required="N" />
+    <field name="MatchType" required="N" />
+    <group name="NoSides" required="Y">
+      <field name="Side" required="Y" />
+      <field name="OrderID" required="Y" />
+      <field name="SecondaryOrderID" required="N" />
+      <field name="ClOrdID" required="N" />
+      <field name="SecondaryClOrdID" required="N" />
+      <field name="ListID" required="N" />
+      <component name="Parties" required="N" />
+      <field name="Account" required="N" />
+      <field name="AcctIDSource" required="N" />
+      <field name="AccountType" required="N" />
+      <field name="ProcessCode" required="N" />
+      <field name="OddLot" required="N" />
+      <group name="NoClearingInstructions" required="N">
+        <field name="ClearingInstruction" required="N" />
+      </group>
+      <field name="ClearingFeeIndicator" required="N" />
+      <field name="TradeInputSource" required="N" />
+      <field name="TradeInputDevice" required="N" />
+      <field name="OrderInputDevice" required="N" />
+      <field name="Currency" required="N" />
+      <field name="ComplianceID" required="N" />
+      <field name="SolicitedFlag" required="N" />
+      <field name="OrderCapacity" required="N" />
+      <field name="OrderRestrictions" required="N" />
+      <field name="CustOrderCapacity" required="N" />
+      <field name="OrdType" required="N" />
+      <field name="ExecInst" required="N" />
+      <field name="TransBkdTime" required="N" />
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+      <field name="TimeBracket" required="N" />
+      <component name="CommissionData" required="N" />
+      <field name="GrossTradeAmt" required="N" />
+      <field name="NumDaysInterest" required="N" />
+      <field name="ExDate" required="N" />
+      <field name="AccruedInterestRate" required="N" />
+      <field name="AccruedInterestAmt" required="N" />
+      <field name="InterestAtMaturity" required="N" />
+      <field name="EndAccruedInterestAmt" required="N" />
+      <field name="StartCash" required="N" />
+      <field name="EndCash" required="N" />
+      <field name="Concession" required="N" />
+      <field name="TotalTakedown" required="N" />
+      <field name="NetMoney" required="N" />
+      <field name="SettlCurrAmt" required="N" />
+      <field name="SettlCurrency" required="N" />
+      <field name="SettlCurrFxRate" required="N" />
+      <field name="SettlCurrFxRateCalc" required="N" />
+      <field name="PositionEffect" required="N" />
+      <field name="Text" required="N" />
+      <field name="EncodedTextLen" required="N" />
+      <field name="EncodedText" required="N" />
+      <field name="SideMultiLegReportingType" required="N" />
+      <group name="NoContAmts" required="N">
+        <field name="ContAmtType" required="N" />
+        <field name="ContAmtValue" required="N" />
+        <field name="ContAmtCurr" required="N" />
+      </group>
+      <component name="Stipulations" required="N" />
+      <group name="NoMiscFees" required="N">
+        <field name="MiscFeeAmt" required="N" />
+        <field name="MiscFeeCurr" required="N" />
+        <field name="MiscFeeType" required="N" />
+        <field name="MiscFeeBasis" required="N" />
+      </group>
+      <field name="ExchangeRule" required="N" />
+      <field name="TradeAllocIndicator" required="N" />
+      <field name="PreallocMethod" required="N" />
+      <field name="AllocID" required="N" />
+      <group name="NoAllocs" required="N">
+        <field name="AllocAccount" required="N" />
+        <field name="AllocAcctIDSource" required="N" />
+        <field name="AllocSettlCurrency" required="N" />
+        <field name="IndividualAllocID" required="N" />
+        <component name="NestedParties2" required="N" />
+        <field name="AllocQty" required="N" />
+      </group>
+    </group>
+    <field name="CopyMsgIndicator" required="N" />
+    <field name="PublishTrdIndicator" required="N" />
+    <field name="ShortSaleReason" required="N" />
+  </message>
+  <message name="TradeCaptureReportAck" msgtype="AR" msgcat="app">
+    <field name="TradeReportID" required="Y" />
+    <field name="TradeReportTransType" required="N" />
+    <field name="TradeReportType" required="N" />
+    <field name="TrdType" required="N" />
+    <field name="TrdSubType" required="N" />
+    <field name="SecondaryTrdType" required="N" />
+    <field name="TransferReason" required="N" />
+    <field name="ExecType" required="Y" />
+    <field name="TradeReportRefID" required="N" />
+    <field name="SecondaryTradeReportRefID" required="N" />
+    <field name="TrdRptStatus" required="N" />
+    <field name="TradeReportRejectReason" required="N" />
+    <field name="SecondaryTradeReportID" required="N" />
+    <field name="SubscriptionRequestType" required="N" />
+    <field name="TradeLinkID" required="N" />
+    <field name="TrdMatchID" required="N" />
+    <field name="ExecID" required="N" />
+    <field name="SecondaryExecID" required="N" />
+  <component name="Instrument" required="Y" />
+    <field name="TransactTime" required="N" />
+    <component name="TrdRegTimestamps" required="N" />
+    <field name="ResponseTransportType" required="N" />
+    <field name="ResponseDestination" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+      <field name="LegQty" required="N" />
+      <field name="LegSwapType" required="N" />
+      <component name="LegStipulations" required="N" />
+      <field name="LegPositionEffect" required="N" />
+      <field name="LegCoveredOrUncovered" required="N" />
+      <component name="NestedParties" required="N" />
+      <field name="LegRefID" required="N" />
+      <field name="LegPrice" required="N" />
+      <field name="LegSettlType" required="N" />
+      <field name="LegSettlDate" required="N" />
+      <field name="LegLastPx" required="N" />
+    </group>
+    <field name="ClearingFeeIndicator" required="N" />
+    <field name="OrderCapacity" required="N" />
+    <field name="OrderRestrictions" required="N" />
+    <field name="CustOrderCapacity" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="PositionEffect" required="N" />
+    <field name="PreallocMethod" required="N" />
+    <group name="NoAllocs" required="N">
+      <field name="AllocAccount" required="N" />
+      <field name="AllocAcctIDSource" required="N" />
+      <field name="AllocSettlCurrency" required="N" />
+      <field name="IndividualAllocID" required="N" />
+      <component name="NestedParties2" required="N" />
+      <field name="AllocQty" required="N" />
+    </group>
+  </message>
+  <message name="RegistrationInstructions" msgtype="o" msgcat="app">
+    <field name="RegistID" required="Y" />
+    <field name="RegistTransType" required="Y" />
+    <field name="RegistRefID" required="Y" />
+    <field name="ClOrdID" required="N" />
+    <component name="Parties" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="RegistAcctType" required="N" />
+    <field name="TaxAdvantageType" required="N" />
+    <field name="OwnershipType" required="N" />
+    <group name="NoRegistDtls" required="N">
+      <field name="RegistDtls" required="N" />
+      <field name="RegistEmail" required="N" />
+      <field name="MailingDtls" required="N" />
+      <field name="MailingInst" required="N" />
+      <component name="NestedParties" required="N" />
+      <field name="OwnerType" required="N" />
+      <field name="DateOfBirth" required="N" />
+      <field name="InvestorCountryOfResidence" required="N" />
+    </group>
+    <group name="NoDistribInsts" required="N">
+      <field name="DistribPaymentMethod" required="N" />
+      <field name="DistribPercentage" required="N" />
+      <field name="CashDistribCurr" required="N" />
+      <field name="CashDistribAgentName" required="N" />
+      <field name="CashDistribAgentCode" required="N" />
+      <field name="CashDistribAgentAcctNumber" required="N" />
+      <field name="CashDistribPayRef" required="N" />
+      <field name="CashDistribAgentAcctName" required="N" />
+    </group>
+  </message>
+  <message name="RegistrationInstructionsResponse" msgtype="p" msgcat="app">
+    <field name="RegistID" required="Y" />
+    <field name="RegistTransType" required="Y" />
+    <field name="RegistRefID" required="Y" />
+    <field name="ClOrdID" required="N" />
+    <component name="Parties" required="N" />
+    <field name="Account" required="N" />
+    <field name="AcctIDSource" required="N" />
+    <field name="RegistStatus" required="Y" />
+    <field name="RegistRejReasonCode" required="N" />
+    <field name="RegistRejReasonText" required="N" />
+  </message>
+  <message name="PositionMaintenanceRequest" msgtype="AL" msgcat="app">
+    <field name="PosReqID" required="Y" />
+    <field name="PosTransType" required="Y" />
+    <field name="PosMaintAction" required="Y" />
+    <field name="OrigPosReqRefID" required="N" />
+    <field name="PosMaintRptRefID" required="N" />
+    <field name="ClearingBusinessDate" required="Y" />
+    <field name="SettlSessID" required="N" />
+    <field name="SettlSessSubID" required="N" />
+    <component name="Parties" required="Y" />
+    <field name="Account" required="Y" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="Y" />
+    <component name="Instrument" required="Y" />
+    <field name="Currency" required="N" />
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoTradingSessions" required="N">
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </group>
+    <field name="TransactTime" required="Y" />
+    <component name="PositionQty" required="Y" />
+    <field name="AdjustmentType" required="N" />
+    <field name="ContraryInstructionIndicator" required="N" />
+    <field name="PriorSpreadIndicator" required="N" />
+    <field name="ThresholdAmount" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="PositionMaintenanceReport" msgtype="AM" msgcat="app">
+    <field name="PosMaintRptID" required="Y" />
+    <field name="PosTransType" required="Y" />
+    <field name="PosReqID" required="N" />
+    <field name="PosMaintAction" required="Y" />
+    <field name="OrigPosReqRefID" required="Y" />            
+    <field name="PosMaintStatus" required="Y" />
+    <field name="PosMaintResult" required="N" />
+    <field name="ClearingBusinessDate" required="Y" />
+    <field name="SettlSessID" required="N" />
+    <field name="SettlSessSubID" required="N" />
+    <component name="Parties" required="N" />
+    <field name="Account" required="Y" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="Y" />
+    <component name="Instrument" required="Y" />
+    <field name="Currency" required="N" />
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <group name="NoTradingSessions" required="N">
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </group>
+    <field name="TransactTime" required="Y" />
+    <component name="PositionQty" required="Y" />
+    <component name="PositionAmountData" required="Y" />
+    <field name="AdjustmentType" required="N" />
+    <field name="ThresholdAmount" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="RequestForPositions" msgtype="AN" msgcat="app">
+    <field name="PosReqID" required="Y" />
+    <field name="PosReqType" required="Y" />
+    <field name="MatchStatus" required="N" />
+    <field name="SubscriptionRequestType" required="N" />
+    <component name="Parties" required="Y" />
+    <field name="Account" required="Y" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="Y" />
+    <component name="Instrument" required="N" />
+    <field name="Currency" required="N" />
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="ClearingBusinessDate" required="Y" />
+    <field name="SettlSessID" required="N" />
+    <field name="SettlSessSubID" required="N" />
+    <group name="NoTradingSessions" required="N">
+      <field name="TradingSessionID" required="N" />
+      <field name="TradingSessionSubID" required="N" />
+    </group>
+    <field name="TransactTime" required="Y" />
+    <field name="ResponseTransportType" required="N" />
+    <field name="ResponseDestination" required="N" />
+    <field name="Text" required="N" />   
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="RequestForPositionsAck" msgtype="AO" msgcat="app">
+    <field name="PosMaintRptID" required="Y" />
+    <field name="PosReqID" required="N" />
+    <field name="TotalNumPosReports" required="N" />
+    <field name="UnsolicitedIndicator" required="N" />
+    <field name="PosReqResult" required="Y" />
+    <field name="PosReqStatus" required="Y" />
+    <component name="Parties" required="Y" />
+    <field name="Account" required="Y" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="Y" />
+    <component name="Instrument" required="N" />
+    <field name="Currency" required="N" />
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="ResponseTransportType" required="N" />
+    <field name="ResponseDestination" required="N" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="PositionReport" msgtype="AP" msgcat="app">
+    <field name="PosMaintRptID" required="Y" />
+    <field name="PosReqID" required="N" />
+    <field name="PosReqType" required="N" />
+    <field name="SubscriptionRequestType" required="N" />
+    <field name="TotalNumPosReports" required="N" />
+    <field name="UnsolicitedIndicator" required="N" />
+    <field name="PosReqResult" required="Y" />
+    <field name="ClearingBusinessDate" required="Y" />
+    <field name="SettlSessID" required="N" />
+    <field name="SettlSessSubID" required="N" />
+    <component name="Parties" required="Y" />
+    <field name="Account" required="Y" />
+    <field name="AcctIDSource" required="N" />
+    <field name="AccountType" required="Y" />
+    <component name="Instrument" required="N" />
+    <field name="Currency" required="N" />
+    <field name="SettlPrice" required="Y" />   
+    <field name="SettlPriceType" required="Y" />
+    <field name="PriorSettlPrice" required="Y" />   
+    <group name="NoLegs" required="N">
+      <component name="InstrumentLeg" required="N" />
+    </group>
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+      <field name="UnderlyingSettlPrice" required="Y" />
+      <field name="UnderlyingSettlPriceType" required="Y" />
+    </group>
+    <component name="PositionQty" required="Y" />
+    <component name="PositionAmountData" required="Y" />
+    <field name="RegistStatus" required="N" />   RegNonRegInd
+    <field name="DeliveryDate" required="N" />   
+    <field name="Text" required="N" />   
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="AssignmentReport" msgtype="AW" msgcat="app">
+    <field name="AsgnRptID" required="Y" />
+    <field name="TotNumAssignmentReports" required="N" />
+    <field name="LastRptRequested" required="N" />
+    <component name="Parties" required="Y" />
+    <field name="Account" required="N" />
+    <field name="AccountType" required="Y" />
+    <component name="Instrument" required="N" />
+    <field name="Currency" required="N" />
+    <field name="NoLegs" required="N" />
+    <component name="InstrumentLeg" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <component name="PositionQty" required="Y" />
+    <component name="PositionAmountData" required="Y" />
+    <field name="ThresholdAmount" required="N" />
+    <field name="SettlPrice" required="Y" />
+    <field name="SettlPriceType" required="Y" />
+    <field name="UnderlyingSettlPrice" required="Y" />
+    <field name="ExpireDate" required="N" />
+    <field name="AssignmentMethod" required="Y" />
+    <field name="AssignmentUnit" required="N" />
+    <field name="OpenInterest" required="Y" />
+    <field name="ExerciseMethod" required="Y" />
+    <field name="SettlSessID" required="Y" />
+    <field name="SettlSessSubID" required="Y" />
+    <field name="ClearingBusinessDate" required="Y" />
+    <field name="Text" required="N" />
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="CollateralRequest" msgtype="AX" msgcat="app">
+    <field name="CollReqID" required="Y" />
+    <field name="CollAsgnReason" required="Y" />
+    <field name="TransactTime" required="Y" />
+    <field name="ExpireTime" required="N" />
+    <component name="Parties" required="N" />
+    <field name="Account" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="ClOrdID" required="N" />
+    <field name="OrderID" required="N" />
+    <field name="SecondaryOrderID" required="N" />
+    <field name="SecondaryClOrdID" required="N" />
+    <group name="NoExecs" required="N">
+      <field name="ExecID" required="N" />
+    </group>
+    <group name="NoTrades" required="N">
+      <field name="TradeReportID" required="N" />
+      <field name="SecondaryTradeReportID" required="N" /> 
+    </group>
+    <component name="Instrument" required="N" />
+    <component name="FinancingDetails" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="Quantity" required="N" />
+    <field name="QtyType" required="N" />
+    <field name="Currency" required="N" />
+    <field name="NoLegs" required="N" />
+    <component name="InstrumentLeg" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+      <field name="CollAction" required="N" />
+    </group>
+    <field name="MarginExcess" required="N" />   
+    <field name="TotalNetValue" required="N" />   
+    <field name="CashOutstanding" required="N" />   
+    <component name="TrdRegTimestamps" required="N" />
+    <field name="Side" required="N" />   
+    <group name="NoMiscFees" required="N">
+      <field name="MiscFeeAmt" required="N" />
+      <field name="MiscFeeCurr" required="N" /> 
+      <field name="MiscFeeType" required="N" />
+      <field name="MiscFeeBasis" required="N" /> 
+    </group>
+    <field name="Price" required="N" />   
+    <field name="PriceType" required="N" />   
+    <field name="AccruedInterestAmt" required="N" />   
+    <field name="EndAccruedInterestAmt" required="N" />   
+    <field name="StartCash" required="N" />   
+    <field name="EndCash" required="N" />   
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <component name="Stipulations" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="SettlSessID" required="N" />   
+    <field name="SettlSessSubID" required="N" />   
+    <field name="ClearingBusinessDate" required="N" />   
+    <field name="Text" required="N" />   
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="CollateralAssignment" msgtype="AY" msgcat="app">
+    <field name="CollAsgnID" required="Y" />
+    <field name="CollReqID" required="N" />
+    <field name="CollAsgnReason" required="Y" />
+    <field name="CollAsgnTransType" required="Y" />
+    <field name="CollAsgnRefID" required="N" />
+    <field name="TransactTime" required="Y" />
+    <field name="ExpireTime" required="N" />
+    <component name="Parties" required="N" />
+    <field name="Account" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="ClOrdID" required="N" />
+    <field name="OrderID" required="N" />
+    <field name="SecondaryOrderID" required="N" />
+    <field name="SecondaryClOrdID" required="N" />
+    <group name="NoExecs" required="N">
+      <field name="ExecID" required="N" />
+    </group>
+    <group name="NoTrades" required="N">
+      <field name="TradeReportID" required="N" />
+      <field name="SecondaryTradeReportID" required="N" /> 
+    </group>
+    <component name="Instrument" required="N" />
+    <component name="FinancingDetails" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="Quantity" required="N" />
+    <field name="QtyType" required="N" />
+    <field name="Currency" required="N" />
+    <field name="NoLegs" required="N" />
+    <component name="InstrumentLeg" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+      <field name="CollAction" required="N" />
+    </group>
+    <field name="MarginExcess" required="N" />   
+    <field name="TotalNetValue" required="N" />   
+    <field name="CashOutstanding" required="N" />   
+    <component name="TrdRegTimestamps" required="N" />
+    <field name="Side" required="N" />               
+    <group name="NoMiscFees" required="N">
+      <field name="MiscFeeAmt" required="N" />
+      <field name="MiscFeeCurr" required="N" /> 
+      <field name="MiscFeeType" required="N" />
+      <field name="MiscFeeBasis" required="N" /> 
+    </group>
+    <field name="Price" required="N" />   
+    <field name="PriceType" required="N" />   
+    <field name="AccruedInterestAmt" required="N" />   
+    <field name="EndAccruedInterestAmt" required="N" />   
+    <field name="StartCash" required="N" />   
+    <field name="EndCash" required="N" />   
+  <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <component name="Stipulations" required="N" />
+    <component name="SettlInstructionsData" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="SettlSessID" required="N" />   
+    <field name="SettlSessSubID" required="N" />   
+    <field name="ClearingBusinessDate" required="N" />   
+    <field name="Text" required="N" />   
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="CollateralResponse" msgtype="AZ" msgcat="app">
+    <field name="CollRespID" required="Y" />
+    <field name="CollAsgnID" required="Y" />
+    <field name="CollReqID" required="N" />
+    <field name="CollAsgnReason" required="Y" />
+    <field name="CollAsgnTransType" required="N" />
+    <field name="CollAsgnRespType" required="Y" />
+    <field name="CollAsgnRejectReason" required="N" />
+    <field name="TransactTime" required="Y" />
+    <component name="Parties" required="N" />
+    <field name="Account" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="ClOrdID" required="N" />
+    <field name="OrderID" required="N" />
+    <field name="SecondaryOrderID" required="N" />
+    <field name="SecondaryClOrdID" required="N" />
+    <group name="NoExecs" required="N">
+      <field name="ExecID" required="N" />
+    </group>
+    <group name="NoTrades" required="N">
+      <field name="TradeReportID" required="N" />
+      <field name="SecondaryTradeReportID" required="N" /> 
+    </group>
+    <component name="Instrument" required="N" />
+    <component name="FinancingDetails" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="Quantity" required="N" />
+    <field name="QtyType" required="N" />
+    <field name="Currency" required="N" />
+    <field name="NoLegs" required="N" />
+    <component name="InstrumentLeg" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+      <field name="CollAction" required="N" />
+    </group>
+    <field name="MarginExcess" required="N" />   
+    <field name="TotalNetValue" required="N" />   
+    <field name="CashOutstanding" required="N" />   
+    <component name="TrdRegTimestamps" required="N" />            
+    <field name="Side" required="N" />               
+    <group name="NoMiscFees" required="N">
+      <field name="MiscFeeAmt" required="N" />
+      <field name="MiscFeeCurr" required="N" /> 
+      <field name="MiscFeeType" required="N" />
+      <field name="MiscFeeBasis" required="N" /> 
+    </group>
+    <field name="Price" required="N" />   
+    <field name="PriceType" required="N" />   
+    <field name="AccruedInterestAmt" required="N" />   
+    <field name="EndAccruedInterestAmt" required="N" />   
+    <field name="StartCash" required="N" />   
+    <field name="EndCash" required="N" />   
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <component name="Stipulations" required="N" />
+    <field name="Text" required="N" />   
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="CollateralReport" msgtype="BA" msgcat="app">
+    <field name="CollRptID" required="Y" />
+    <field name="CollInquiryID" required="N" />
+    <field name="CollStatus" required="Y" />
+    <field name="TotNumReports" required="N" />
+    <field name="LastRptRequested" required="N" />
+    <component name="Parties" required="N" />
+    <field name="Account" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="ClOrdID" required="N" />
+    <field name="OrderID" required="N" />
+    <field name="SecondaryOrderID" required="N" />
+    <field name="SecondaryClOrdID" required="N" />
+    <group name="NoExecs" required="N">
+      <field name="ExecID" required="N" />
+    </group>
+    <group name="NoTrades" required="N">
+      <field name="TradeReportID" required="N" />
+      <field name="SecondaryTradeReportID" required="N" /> 
+    </group>
+    <component name="Instrument" required="N" />
+    <component name="FinancingDetails" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="Quantity" required="N" />
+    <field name="QtyType" required="N" />
+    <field name="Currency" required="N" />
+    <field name="NoLegs" required="N" />
+    <component name="InstrumentLeg" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="MarginExcess" required="N" />   
+    <field name="TotalNetValue" required="N" />   
+    <field name="CashOutstanding" required="N" />   
+    <component name="TrdRegTimestamps" required="N" />
+    <field name="Side" required="N" />   
+    <group name="NoMiscFees" required="N">
+      <field name="MiscFeeAmt" required="N" />
+      <field name="MiscFeeCurr" required="N" /> 
+      <field name="MiscFeeType" required="N" />
+      <field name="MiscFeeBasis" required="N" /> 
+    </group>
+    <field name="Price" required="N" />   
+    <field name="PriceType" required="N" />   
+    <field name="AccruedInterestAmt" required="N" />   
+    <field name="EndAccruedInterestAmt" required="N" />   
+    <field name="StartCash" required="N" />   
+    <field name="EndCash" required="N" />   
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <component name="Stipulations" required="N" />
+    <component name="SettlInstructionsData" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="SettlSessID" required="N" />   
+    <field name="SettlSessSubID" required="N" />   
+    <field name="ClearingBusinessDate" required="N" />   
+    <field name="Text" required="N" />   
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="CollateralInquiry" msgtype="BB" msgcat="app">
+    <field name="CollInquiryID" required="N" />
+    <group name="NoCollInquiryQualifier" required="N">
+      <field name="CollInquiryQualifier" required="N" />
+    </group>
+    <field name="SubscriptionRequestType" required="N" />
+    <field name="ResponseTransportType" required="N" />
+    <field name="ResponseDestination" required="N" />
+    <component name="Parties" required="N" />
+    <field name="Account" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="ClOrdID" required="N" />
+    <field name="OrderID" required="N" />
+    <field name="SecondaryOrderID" required="N" />
+    <field name="SecondaryClOrdID" required="N" />
+    <group name="NoExecs" required="N">
+      <field name="ExecID" required="N" />
+    </group>
+    <group name="NoTrades" required="N">
+      <field name="TradeReportID" required="N" />
+      <field name="SecondaryTradeReportID" required="N" /> 
+    </group>
+    <component name="Instrument" required="N" />
+    <component name="FinancingDetails" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="Quantity" required="N" />
+    <field name="QtyType" required="N" />
+    <field name="Currency" required="N" />
+    <field name="NoLegs" required="N" />
+    <component name="InstrumentLeg" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="MarginExcess" required="N" />   
+    <field name="TotalNetValue" required="N" />   
+    <field name="CashOutstanding" required="N" />   
+    <component name="TrdRegTimestamps" required="N" />
+    <field name="Side" required="N" />               
+    <field name="Price" required="N" />   
+    <field name="PriceType" required="N" />   
+    <field name="AccruedInterestAmt" required="N" />   
+    <field name="EndAccruedInterestAmt" required="N" />   
+    <field name="StartCash" required="N" />   
+    <field name="EndCash" required="N" />   
+    <component name="SpreadOrBenchmarkCurveData" required="N" />
+    <component name="Stipulations" required="N" />
+    <component name="SettlInstructionsData" required="N" />
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="SettlSessID" required="N" />   
+    <field name="SettlSessSubID" required="N" />   
+    <field name="ClearingBusinessDate" required="N" />   
+    <field name="Text" required="N" />   
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  <message name="NetworkStatusRequest" msgtype="BC" msgcat="app">
+    <field name="NetworkRequestType" required="Y" />
+    <field name="NetworkRequestID" required="Y" />
+    <group name="NoCompIDs" required="N">
+      <field name="RefCompID" required="N" />
+      <field name="RefSubID" required="N" />
+      <field name="LocationID" required="N" />
+      <field name="DeskID" required="N" />
+    </group>
+  </message>
+  <message name="NetworkStatusRequest" msgtype="BD" msgcat="app">
+    <field name="NetworkStatusResponseType" required="Y" />
+    <field name="NetworkRequestID" required="N" />
+    <field name="NetworkResponseID" required="N" />
+    <field name="LastNetworkResponseID" required="N" />
+    <group name="NoCompIDs" required="Y">
+      <field name="RefCompID" required="N" />
+      <field name="RefSubID" required="N" />
+      <field name="LocationID" required="N" />
+      <field name="DeskID" required="N" />
+      <field name="StatusValue" required="N" />
+      <field name="StatusText" required="N" />
+    </group>
+  </message>
+  <message name="CollateralInquiryAck" msgtype="BG" msgcat="app">
+    <field name="CollInquiryID" required="Y" />
+    <field name="CollInquiryStatus" required="Y" />
+    <field name="CollInquiryResult" required="N" />
+    <group name="NoCollInquiryQualifier" required="N">
+      <field name="CollInquiryQualifier" required="N" />
+    </group>
+    <field name="TotNumReports" required="N" />
+    <component name="Parties" required="N" />
+    <field name="Account" required="N" />
+    <field name="AccountType" required="N" />
+    <field name="ClOrdID" required="N" />
+    <field name="OrderID" required="N" />
+    <field name="SecondaryOrderID" required="N" />
+    <field name="SecondaryClOrdID" required="N" />
+    <group name="NoExecs" required="N">
+      <field name="ExecID" required="N" />
+    </group>
+    <group name="NoTrades" required="N">
+      <field name="TradeReportID" required="N" />
+      <field name="SecondaryTradeReportID" required="N" /> 
+    </group>
+    <component name="Instrument" required="N" />
+    <component name="FinancingDetails" required="N" />
+    <field name="SettlDate" required="N" />
+    <field name="Quantity" required="N" />
+    <field name="QtyType" required="N" />
+    <field name="Currency" required="N" />
+    <field name="NoLegs" required="N" />
+    <component name="InstrumentLeg" required="N" />
+    <group name="NoUnderlyings" required="N">
+      <component name="UnderlyingInstrument" required="N" />
+    </group>
+    <field name="TradingSessionID" required="N" />
+    <field name="TradingSessionSubID" required="N" />
+    <field name="SettlSessID" required="N" />   
+    <field name="SettlSessSubID" required="N" />   
+    <field name="ClearingBusinessDate" required="N" />   
+    <field name="ResponseTransportType" required="N" />
+    <field name="ResponseDestination" required="N" />
+    <field name="Text" required="N" />   
+    <field name="EncodedTextLen" required="N" />
+    <field name="EncodedText" required="N" />
+  </message>
+  </messages>
+  <components>
+    <component name="Instrument">
+      <field name="Symbol" required="Y" />
+      <field name="SymbolSfx" required="N" />
+      <field name="SecurityID" required="N" />
+      <field name="SecurityIDSource" required="N" />
+      <group name="NoSecurityAltID" required="N">
+        <field name="SecurityAltID" required="N" />
+        <field name="SecurityAltIDSource" required="N" />
+      </group>
+      <field name="Product" required="N" />
+      <field name="CFICode" required="N" />
+      <field name="SecurityType" required="N" />
+      <field name="SecuritySubType" required="N" />
+      <field name="MaturityMonthYear" required="N" />
+      <field name="MaturityDate" required="N" />
+      <field name="CouponPaymentDate" required="N" />
+      <field name="IssueDate" required="N" />
+      <field name="RepoCollateralSecurityType" required="N" />
+      <field name="RepurchaseTerm" required="N" />
+      <field name="RepurchaseRate" required="N" />
+      <field name="Factor" required="N" />
+      <field name="CreditRating" required="N" />
+      <field name="InstrRegistry" required="N" />
+      <field name="CountryOfIssue" required="N" />
+      <field name="StateOrProvinceOfIssue" required="N" />
+      <field name="LocaleOfIssue" required="N" />
+      <field name="RedemptionDate" required="N" />
+      <field name="StrikePrice" required="N" />
+      <field name="StrikeCurrency" required="N" />
+      <field name="OptAttribute" required="N" />
+      <field name="ContractMultiplier" required="N" />
+      <field name="CouponRate" required="N" />
+      <field name="SecurityExchange" required="N" />
+      <field name="Issuer" required="N" />
+      <field name="EncodedIssuerLen" required="N" />
+      <field name="EncodedIssuer" required="N" />
+      <field name="SecurityDesc" required="N" />
+      <field name="EncodedSecurityDescLen" required="N" />
+      <field name="EncodedSecurityDesc" required="N" />
+      <field name="Pool" required="N" />
+      <field name="ContractSettlMonth" required="N" />
+      <field name="CPProgram" required="N" />
+      <field name="CPRegType" required="N" />
+      <group name="NoEvents" required="N">
+        <field name="EventType" required="N" />
+        <field name="EventDate" required="N" />
+        <field name="EventPx" required="N" />
+        <field name="EventText" required="N" />
+      </group>
+      <field name="DatedDate" required="N" />
+      <field name="InterestAccrualDate" required="N" />
+    </component>
+    <component name="UnderlyingInstrument">
+      <field name="UnderlyingSymbol" required="Y" />
+      <field name="UnderlyingSymbolSfx" required="N" />
+      <field name="UnderlyingSecurityID" required="N" />
+      <field name="UnderlyingSecurityIDSource" required="N" />
+      <group name="NoUnderlyingSecurityAltID" required="N">
+        <field name="UnderlyingSecurityAltID" required="N" />
+        <field name="UnderlyingSecurityAltIDSource" required="N" />
+      </group>
+      <field name="UnderlyingProduct" required="N" />
+      <field name="UnderlyingCFICode" required="N" />
+      <field name="UnderlyingSecurityType" required="N" />
+      <field name="UnderlyingSecuritySubType" required="N" />
+      <field name="UnderlyingMaturityMonthYear" required="N" />
+      <field name="UnderlyingMaturityDate" required="N" />
+      <field name="UnderlyingCouponPaymentDate" required="N" />
+      <field name="UnderlyingIssueDate" required="N" />
+      <field name="UnderlyingRepoCollateralSecurityType" required="N" />
+      <field name="UnderlyingRepurchaseTerm" required="N" />
+      <field name="UnderlyingRepurchaseRate" required="N" />
+      <field name="UnderlyingFactor" required="N" />
+      <field name="UnderlyingCreditRating" required="N" />
+      <field name="UnderlyingInstrRegistry" required="N" />
+      <field name="UnderlyingCountryOfIssue" required="N" />
+      <field name="UnderlyingStateOrProvinceOfIssue" required="N" />
+      <field name="UnderlyingLocaleOfIssue" required="N" />
+      <field name="UnderlyingRedemptionDate" required="N" />
+      <field name="UnderlyingStrikePrice" required="N" />
+      <field name="UnderlyingStrikeCurrency" required="N" />
+      <field name="UnderlyingOptAttribute" required="N" />
+      <field name="UnderlyingContractMultiplier" required="N" />
+      <field name="UnderlyingCouponRate" required="N" />
+      <field name="UnderlyingSecurityExchange" required="N" />
+      <field name="UnderlyingIssuer" required="N" />
+      <field name="EncodedUnderlyingIssuerLen" required="N" />
+      <field name="EncodedUnderlyingIssuer" required="N" />
+      <field name="UnderlyingSecurityDesc" required="N" />
+      <field name="EncodedUnderlyingSecurityDescLen" required="N" />
+      <field name="EncodedUnderlyingSecurityDesc" required="N" />
+      <field name="UnderlyingCPProgram" required="N" />
+      <field name="UnderlyingCPRegType" required="N" />
+      <field name="UnderlyingCurrency" required="N" />
+      <field name="UnderlyingQty" required="N" />
+      <field name="UnderlyingPx" required="N" />
+      <field name="UnderlyingDirtyPrice" required="N" />
+      <field name="UnderlyingEndPrice" required="N" />
+      <field name="UnderlyingStartValue" required="N" />
+      <field name="UnderlyingCurrentValue" required="N" />
+      <field name="UnderlyingEndValue" required="N" />
+      <component name="UnderlyingStipulations" required="N" />
+    </component>
+    <component name="InstrumentLeg">
+      <field name="LegSymbol" required="N" />
+      <field name="LegSymbolSfx" required="N" />
+      <field name="LegSecurityID" required="N" />
+      <field name="LegSecurityIDSource" required="N" />
+      <group name="NoLegSecurityAltID" required="N">
+        <field name="LegSecurityAltID" required="N" />
+        <field name="LegSecurityAltIDSource" required="N" />
+      </group>
+      <field name="LegProduct" required="N" />
+      <field name="LegCFICode" required="N" />
+      <field name="LegSecurityType" required="N" />
+      <field name="LegSecuritySubType" required="N" />
+      <field name="LegMaturityMonthYear" required="N" />
+      <field name="LegMaturityDate" required="N" />
+      <field name="LegCouponPaymentDate" required="N" />
+      <field name="LegIssueDate" required="N" />
+      <field name="LegRepoCollateralSecurityType" required="N" />
+      <field name="LegRepurchaseTerm" required="N" />
+      <field name="LegRepurchaseRate" required="N" />
+      <field name="LegFactor" required="N" />
+      <field name="LegCreditRating" required="N" />
+      <field name="LegInstrRegistry" required="N" />
+      <field name="LegCountryOfIssue" required="N" />
+      <field name="LegStateOrProvinceOfIssue" required="N" />
+      <field name="LegLocaleOfIssue" required="N" />
+      <field name="LegRedemptionDate" required="N" />
+      <field name="LegStrikePrice" required="N" />
+      <field name="LegStrikeCurrency" required="N" />
+      <field name="LegOptAttribute" required="N" />
+      <field name="LegContractMultiplier" required="N" />
+      <field name="LegCouponRate" required="N" />
+      <field name="LegSecurityExchange" required="N" />
+      <field name="LegIssuer" required="N" />
+      <field name="EncodedLegIssuerLen" required="N" />
+      <field name="EncodedLegIssuer" required="N" />
+      <field name="LegSecurityDesc" required="N" />
+      <field name="EncodedLegSecurityDescLen" required="N" />
+      <field name="EncodedLegSecurityDesc" required="N" />
+      <field name="LegRatioQty" required="N" />
+      <field name="LegSide" required="N" />
+      <field name="LegCurrency" required="N" />
+      <field name="LegPool" required="N" />
+      <field name="LegDatedDate" required="N" />
+      <field name="LegContractSettlMonth" required="N" />
+      <field name="LegInterestAccrualDate" required="N" />
+    </component>
+    <component name="InstrumentExtension">
+      <field name="DeliveryForm" required="N" />
+      <field name="PctAtRisk" required="N" />
+      <group name="NoInstrAttrib" required="N">
+        <field name="InstrAttribType" required="N" />
+        <field name="InstrAttribValue" required="N" />
+      </group>
+    </component>
+    <component name="OrderQtyData">
+      <field name="OrderQty" required="N" />
+      <field name="CashOrderQty" required="N" />
+      <field name="OrderPercent" required="N" />
+      <field name="RoundingDirection" required="N" />
+      <field name="RoundingModulus" required="N" />
+    </component>
+    <component name="CommissionData">
+      <field name="Commission" required="N" />
+      <field name="CommType" required="N" />
+      <field name="CommCurrency" required="N" />
+      <field name="FundRenewWaiv" required="N" />
+    </component>
+    <component name="Parties">
+      <group name="NoPartyIDs" required="N">
+        <field name="PartyID" required="N" />
+        <field name="PartyIDSource" required="N" />
+        <field name="PartyRole" required="N" />
+        <group name="NoPartySubIDs" required="N">
+          <field name="PartySubID" required="N" />
+          <field name="PartySubIDType" required="N" />
+        </group>
+      </group>
+    </component>
+    <component name="NestedParties">
+      <group name="NoNestedPartyIDs" required="N">
+        <field name="NestedPartyID" required="N" />
+        <field name="NestedPartyIDSource" required="N" />
+        <field name="NestedPartyRole" required="N" />
+        <group name="NoNestedPartySubIDs" required="N">
+          <field name="NestedPartySubID" required="N" />
+          <field name="NestedPartySubIDType" required="N" />
+        </group>
+      </group>
+    </component>
+    <component name="NestedParties2">
+      <group name="NoNested2PartyIDs" required="N">
+        <field name="Nested2PartyID" required="N" />
+        <field name="Nested2PartyIDSource" required="N" />
+        <field name="Nested2PartyRole" required="N" />
+        <group name="NoNested2PartySubIDs" required="N">
+          <field name="Nested2PartySubID" required="N" />
+          <field name="Nested2PartySubIDType" required="N" />
+        </group>
+      </group>
+    </component>
+    <component name="NestedParties3">
+      <group name="NoNested3PartyIDs" required="N">
+        <field name="Nested3PartyID" required="N" />
+        <field name="Nested3PartyIDSource" required="N" />
+        <field name="Nested3PartyRole" required="N" />
+        <group name="NoNested3PartySubIDs" required="N">
+          <field name="Nested3PartySubID" required="N" />
+          <field name="Nested3PartySubIDType" required="N" />
+          </group>
+      </group>
+    </component>
+    <component name="SettlParties">
+      <group name="NoSettlPartyIDs" required="N">
+        <field name="SettlPartyID" required="N" />
+        <field name="SettlPartyIDSource" required="N" />
+        <field name="SettlPartyRole" required="N" />
+        <group name="NoSettlPartySubIDs" required="N">
+          <field name="SettlPartySubID" required="N" />
+          <field name="SettlPartySubIDType" required="N" />
+        </group>
+      </group>
+    </component>
+    <component name="SpreadOrBenchmarkCurveData">
+      <field name="Spread" required="N" />
+      <field name="BenchmarkCurveCurrency" required="N" />
+      <field name="BenchmarkCurveName" required="N" />
+      <field name="BenchmarkCurvePoint" required="N" />
+      <field name="BenchmarkPrice" required="N" />
+      <field name="BenchmarkPriceType" required="N" />
+      <field name="BenchmarkSecurityID" required="N" />
+      <field name="BenchmarkSecurityIDSource" required="N" />
+    </component>
+    <component name="LegBenchmarkCurveData">
+      <field name="LegBenchmarkCurveCurrency" required="N" />
+      <field name="LegBenchmarkCurveName" required="N" />
+      <field name="LegBenchmarkCurvePoint" required="N" />
+      <field name="LegBenchmarkPrice" required="N" />
+      <field name="LegBenchmarkPriceType" required="N" />
+    </component>
+    <component name="Stipulations">
+      <group name="NoStipulations" required="N">
+        <field name="StipulationType" required="N" />
+        <field name="StipulationValue" required="N" />
+      </group>
+    </component>
+    <component name="UnderlyingStipulations">
+      <group name="NoUnderlyingStips" required="N">
+        <field name="UnderlyingStipType" required="N" />
+        <field name="UnderlyingStipValue" required="N" />
+      </group>
+    </component>
+    <component name="LegStipulations">
+      <group name="NoLegStipulations" required="N">
+        <field name="LegStipulationType" required="N" />
+        <field name="LegStipulationValue" required="N" />
+      </group>
+    </component>
+    <component name="YieldData">
+      <field name="YieldType" required="N" />
+      <field name="Yield" required="N" />
+      <field name="YieldCalcDate" required="N" />
+      <field name="YieldRedemptionDate" required="N" />
+      <field name="YieldRedemptionPrice" required="N" />
+      <field name="YieldRedemptionPriceType" required="N" />
+    </component>
+    <component name="PositionQty">
+      <group name="NoPositions" required="Y">
+        <field name="PosType" required="N" />
+        <field name="LongQty" required="N" />   
+        <field name="ShortQty" required="N" />   
+        <field name="PosQtyStatus" required="N" />   
+        <component name="NestedParties" required="N" />
+      </group>
+    </component>
+    <component name="PositionAmountData">
+      <group name="NoPosAmt" required="Y">
+        <field name="PosAmtType" required="Y" />
+        <field name="PosAmt" required="Y" />
+      </group>
+    </component>
+    <component name="TrdRegTimestamps">
+      <group name="NoTrdRegTimestamps" required="Y">
+        <field name="TrdRegTimestamp" required="N" />
+        <field name="TrdRegTimestampType" required="N" />
+        <field name="TrdRegTimestampOrigin" required="N" />
+      </group>
+    </component>
+    <component name="SettlInstructionsData">
+      <field name="SettlDeliveryType" required="N" />
+      <field name="StandInstDbType" required="N" />
+      <field name="StandInstDbName" required="N" />
+      <field name="StandInstDbID" required="N" />
+      <group name="NoDlvyInst" required="N">
+        <field name="SettlInstSource" required="N" />
+        <field name="DlvyInstType" required="N" />
+        <component name="SettlParties" required="N" />
+      </group>
+    </component>
+    <component name="PegInstructions">
+      <field name="PegOffsetValue" required="N" />
+      <field name="PegMoveType" required="N" />
+      <field name="PegOffsetType" required="N" />
+      <field name="PegLimitType" required="N" />
+      <field name="PegRoundDirection" required="N" />
+      <field name="PegScope" required="N" />
+    </component>
+    <component name="DiscretionInstructions">
+      <field name="DiscretionInst" required="N" />
+      <field name="DiscretionOffsetValue" required="N" />
+      <field name="DiscretionMoveType" required="N" />
+      <field name="DiscretionOffsetType" required="N" />
+      <field name="DiscretionLimitType" required="N" />
+      <field name="DiscretionRoundDirection" required="N" />
+      <field name="DiscretionScope" required="N" />
+    </component>
+    <component name="FinancingDetails">
+      <field name="AgreementDesc" required="N" />
+      <field name="AgreementID" required="N" />
+      <field name="AgreementDate" required="N" />
+      <field name="AgreementCurrency" required="N" />
+      <field name="TerminationType" required="N" />
+      <field name="StartDate" required="N" />
+      <field name="EndDate" required="N" />
+      <field name="DeliveryType" required="N" />
+      <field name="MarginRatio" required="N" />
+    </component>
+  </components>
+  <fields>
+    <field number="1" name="Account" type="STRING" />
+    <field number="2" name="AdvId" type="STRING" />
+    <field number="3" name="AdvRefID" type="STRING" />
+    <field number="4" name="AdvSide" type="CHAR">
+      <value enum="B" description="BUY" />
+      <value enum="S" description="SELL" />
+      <value enum="X" description="CROSS" />
+      <value enum="T" description="TRADE" />
+    </field>
+    <field number="5" name="AdvTransType" type="STRING">
+      <value enum="N" description="NEW" />
+      <value enum="C" description="CANCEL" />
+      <value enum="R" description="REPLACE" />
+    </field>
+    <field number="6" name="AvgPx" type="PRICE" />
+    <field number="7" name="BeginSeqNo" type="SEQNUM" />
+    <field number="8" name="BeginString" type="STRING" />
+    <field number="9" name="BodyLength" type="LENGTH" />
+    <field number="10" name="CheckSum" type="STRING" />
+    <field number="11" name="ClOrdID" type="STRING" />
+    <field number="12" name="Commission" type="AMT" />
+    <field number="13" name="CommType" type="CHAR">
+      <value enum="1" description="PER_UNIT" />
+      <value enum="2" description="PERCENTAGE" />
+      <value enum="3" description="ABSOLUTE" />
+      <value enum="4" description="PERCENTAGE_WAIVED_CASH_DISCOUNT" />
+      <value enum="5" description="PERCENTAGE_WAIVED_ENHANCED_UNITS" />
+      <value enum="6" description="POINTS_PER_BOND_OR_OR_CONTRACT" />
+    </field>
+    <field number="14" name="CumQty" type="QTY" />
+    <field number="15" name="Currency" type="CURRENCY" />
+    <field number="16" name="EndSeqNo" type="SEQNUM" />
+    <field number="17" name="ExecID" type="STRING" />
+    <field number="18" name="ExecInst" type="MULTIPLEVALUESTRING">
+      <value enum="1" description="NOT_HELD" />
+      <value enum="2" description="WORK" />
+      <value enum="3" description="GO_ALONG" />
+      <value enum="4" description="OVER_THE_DAY" />
+      <value enum="5" description="HELD" />
+      <value enum="6" description="PARTICIPATE_DONT_INITIATE" />
+      <value enum="7" description="STRICT_SCALE" />
+      <value enum="8" description="TRY_TO_SCALE" />
+      <value enum="9" description="STAY_ON_BIDSIDE" />
+      <value enum="0" description="STAY_ON_OFFERSIDE" />
+      <value enum="A" description="NO_CROSS" />
+      <value enum="B" description="OK_TO_CROSS" />
+      <value enum="C" description="CALL_FIRST" />
+      <value enum="D" description="PERCENT_OF_VOLUME" />
+      <value enum="E" description="DO_NOT_INCREASE" />
+      <value enum="F" description="DO_NOT_REDUCE" />
+      <value enum="G" description="ALL_OR_NONE" />
+      <value enum="H" description="REINSTATE_ON_SYSTEM_FAILURE" />
+      <value enum="I" description="INSTITUTIONS_ONLY" />
+      <value enum="J" description="REINSTATE_ON_TRADING_HALT" />
+      <value enum="K" description="CANCEL_ON_TRADING_HALT" />
+      <value enum="L" description="LAST_PEG" />
+      <value enum="M" description="MID_PRICE" />
+      <value enum="N" description="NON_NEGOTIABLE" />
+      <value enum="O" description="OPENING_PEG" />
+      <value enum="P" description="MARKET_PEG" />
+      <value enum="Q" description="CANCEL_ON_SYSTEM_FAILURE" />
+      <value enum="R" description="PRIMARY_PEG" />
+      <value enum="S" description="SUSPEND" />
+      <value enum="T" description="FIXED_PEG_TO_LOCAL_BEST_BID_OR_OFFER_AT_TIME_OF_ORDER" />
+      <value enum="U" description="CUSTOMER_DISPLAY_INSTRUCTION" />
+      <value enum="V" description="NETTING" />
+      <value enum="W" description="PEG_TO_VWAP" />
+      <value enum="X" description="TRADE_ALONG" />
+      <value enum="Y" description="TRY_TO_STOP" />
+      <value enum="Z" description="CANCEL_IF_NOT_BEST" />
+      <value enum="a" description="TRAILING_STOP_PEG" />
+      <value enum="b" description="STRICT_LIMIT" />
+      <value enum="c" description="IGNORE_PRICE_VALIDITY_CHECKS" />
+      <value enum="d" description="PEG_TO_LIMIT_PRICE" />
+      <value enum="e" description="WORK_TO_TARGET_STRATEGY" />
+    </field>
+    <field number="19" name="ExecRefID" type="STRING" />
+    <field number="21" name="HandlInst" type="CHAR">
+      <value enum="1" description="AUTOMATED_EXECUTION_ORDER_PRIVATE" />
+      <value enum="2" description="AUTOMATED_EXECUTION_ORDER_PUBLIC" />
+      <value enum="3" description="MANUAL_ORDER" />
+    </field>
+    <field number="22" name="SecurityIDSource" type="STRING">
+      <value enum="1" description="CUSIP" />
+      <value enum="2" description="SEDOL" />
+      <value enum="3" description="QUIK" />
+      <value enum="4" description="ISIN_NUMBER" />
+      <value enum="5" description="RIC_CODE" />
+      <value enum="6" description="ISO_CURRENCY_CODE" />
+      <value enum="7" description="ISO_COUNTRY_CODE" />
+      <value enum="8" description="EXCHANGE_SYMBOL" />
+      <value enum="9" description="CONSOLIDATED_TAPE_ASSOCIATION" />
+      <value enum="A" description="BLOOMBERG_SYMBOL" />
+      <value enum="B" description="WERTPAPIER" />
+      <value enum="C" description="DUTCH" />
+      <value enum="D" description="VALOREN" />
+      <value enum="E" description="SICOVAM" />
+      <value enum="F" description="BELGIAN" />
+      <value enum="G" description="COMMON" />
+      <value enum="H" description="CLEARING_HOUSE_CLEARING_ORGANIZATION" />
+      <value enum="I" description="ISDA_FPML_PRODUCT_SPECIFICATION" />
+      <value enum="J" description="OPTIONS_PRICE_REPORTING_AUTHORITY" />
+    </field>
+    <field number="23" name="IOIid" type="STRING" />
+    <field number="25" name="IOIQltyInd" type="CHAR">
+      <value enum="L" description="LOW" />
+      <value enum="M" description="MEDIUM" />
+      <value enum="H" description="HIGH" />
+    </field>
+    <field number="26" name="IOIRefID" type="STRING" />
+    <field number="27" name="IOIQty" type="STRING" />
+    <field number="28" name="IOITransType" type="CHAR">
+      <value enum="N" description="NEW" />
+      <value enum="C" description="CANCEL" />
+      <value enum="R" description="REPLACE" />
+    </field>
+    <field number="29" name="LastCapacity" type="CHAR">
+      <value enum="1" description="AGENT" />
+      <value enum="2" description="CROSS_AS_AGENT" />
+      <value enum="3" description="CROSS_AS_PRINCIPAL" />
+      <value enum="4" description="PRINCIPAL" />
+    </field>
+    <field number="30" name="LastMkt" type="EXCHANGE" />
+    <field number="31" name="LastPx" type="PRICE" />
+    <field number="32" name="LastQty" type="QTY" />
+    <field number="33" name="LinesOfText" type="NUMINGROUP" />
+    <field number="34" name="MsgSeqNum" type="SEQNUM" />
+    <field number="35" name="MsgType" type="STRING">
+      <value enum="0" description="HEARTBEAT" />
+      <value enum="1" description="TEST_REQUEST" />
+      <value enum="2" description="RESEND_REQUEST" />
+      <value enum="3" description="REJECT" />
+      <value enum="4" description="SEQUENCE_RESET" />
+      <value enum="5" description="LOGOUT" />
+      <value enum="6" description="INDICATION_OF_INTEREST" />
+      <value enum="7" description="ADVERTISEMENT" />
+      <value enum="8" description="EXECUTION_REPORT" />
+      <value enum="9" description="ORDER_CANCEL_REJECT" />
+      <value enum="A" description="LOGON" />
+      <value enum="B" description="NEWS" />
+      <value enum="C" description="EMAIL" />
+      <value enum="D" description="ORDER_SINGLE" />
+      <value enum="E" description="ORDER_LIST" />
+      <value enum="F" description="ORDER_CANCEL_REQUEST" />
+      <value enum="G" description="ORDER_CANCEL_REPLACE_REQUEST" />
+      <value enum="H" description="ORDER_STATUS_REQUEST" />
+      <value enum="J" description="ALLOCATION_INSTRUCTION" />
+      <value enum="K" description="LIST_CANCEL_REQUEST" />
+      <value enum="L" description="LIST_EXECUTE" />
+      <value enum="M" description="LIST_STATUS_REQUEST" />
+      <value enum="N" description="LIST_STATUS" />
+      <value enum="P" description="ALLOCATION_INSTRUCTION_ACK" />
+      <value enum="Q" description="DONT_KNOW_TRADE" />
+      <value enum="R" description="QUOTE_REQUEST" />
+      <value enum="S" description="QUOTE" />
+      <value enum="T" description="SETTLEMENT_INSTRUCTIONS" />
+      <value enum="V" description="MARKET_DATA_REQUEST" />
+      <value enum="W" description="MARKET_DATA_SNAPSHOT_FULL_REFRESH" />
+      <value enum="X" description="MARKET_DATA_INCREMENTAL_REFRESH" />
+      <value enum="Y" description="MARKET_DATA_REQUEST_REJECT" />
+      <value enum="Z" description="QUOTE_CANCEL" />
+      <value enum="a" description="QUOTE_STATUS_REQUEST" />
+      <value enum="b" description="MASS_QUOTE_ACKNOWLEDGEMENT" />
+      <value enum="c" description="SECURITY_DEFINITION_REQUEST" />
+      <value enum="d" description="SECURITY_DEFINITION" />
+      <value enum="e" description="SECURITY_STATUS_REQUEST" />
+      <value enum="f" description="SECURITY_STATUS" />
+      <value enum="g" description="TRADING_SESSION_STATUS_REQUEST" />
+      <value enum="h" description="TRADING_SESSION_STATUS" />
+      <value enum="i" description="MASS_QUOTE" />
+      <value enum="j" description="BUSINESS_MESSAGE_REJECT" />
+      <value enum="k" description="BID_REQUEST" />
+      <value enum="l" description="BID_RESPONSE" />
+      <value enum="m" description="LIST_STRIKE_PRICE" />
+      <value enum="n" description="XML_MESSAGE" />
+      <value enum="o" description="REGISTRATION_INSTRUCTIONS" />
+      <value enum="p" description="REGISTRATION_INSTRUCTIONS_RESPONSE" />
+      <value enum="q" description="ORDER_MASS_CANCEL_REQUEST" />
+      <value enum="r" description="ORDER_MASS_CANCEL_REPORT" />
+      <value enum="s" description="NEW_ORDER_CROSS" />
+      <value enum="t" description="CROSS_ORDER_CANCEL_REPLACE_REQUEST" />
+      <value enum="u" description="CROSS_ORDER_CANCEL_REQUEST" />
+      <value enum="v" description="SECURITY_TYPE_REQUEST" />
+      <value enum="w" description="SECURITY_TYPES" />
+      <value enum="x" description="SECURITY_LIST_REQUEST" />
+      <value enum="y" description="SECURITY_LIST" />
+      <value enum="z" description="DERIVATIVE_SECURITY_LIST_REQUEST" />
+      <value enum="AA" description="DERIVATIVE_SECURITY_LIST" />
+      <value enum="AB" description="NEW_ORDER_MULTILEG" />
+      <value enum="AC" description="MULTILEG_ORDER_CANCEL_REPLACE" />
+      <value enum="AD" description="TRADE_CAPTURE_REPORT_REQUEST" />
+      <value enum="AE" description="TRADE_CAPTURE_REPORT" />
+      <value enum="AF" description="ORDER_MASS_STATUS_REQUEST" />
+      <value enum="AG" description="QUOTE_REQUEST_REJECT" />
+      <value enum="AH" description="RFQ_REQUEST" />
+      <value enum="AI" description="QUOTE_STATUS_REPORT" />
+      <value enum="AJ" description="QUOTE_RESPONSE" />
+      <value enum="AK" description="CONFIRMATION" />
+      <value enum="AL" description="POSITION_MAINTENANCE_REQUEST" />
+      <value enum="AM" description="POSITION_MAINTENANCE_REPORT" />
+      <value enum="AN" description="REQUEST_FOR_POSITIONS" />
+      <value enum="AO" description="REQUEST_FOR_POSITIONS_ACK" />
+      <value enum="AP" description="POSITION_REPORT" />
+      <value enum="AQ" description="TRADE_CAPTURE_REPORT_REQUEST_ACK" />
+      <value enum="AR" description="TRADE_CAPTURE_REPORT_ACK" />
+      <value enum="AS" description="ALLOCATION_REPORT" />
+      <value enum="AT" description="ALLOCATION_REPORT_ACK" />
+      <value enum="AU" description="CONFIRMATION_ACK" />
+      <value enum="AV" description="SETTLEMENT_INSTRUCTION_REQUEST" />
+      <value enum="AW" description="ASSIGNMENT_REPORT" />
+      <value enum="AX" description="COLLATERAL_REQUEST" />
+      <value enum="AY" description="COLLATERAL_ASSIGNMENT" />
+      <value enum="AZ" description="COLLATERAL_RESPONSE" />
+      <value enum="BA" description="COLLATERAL_REPORT" />
+      <value enum="BB" description="COLLATERAL_INQUIRY" />
+      <value enum="BC" description="NETWORK_STATUS_REQUEST" />
+      <value enum="BD" description="NETWORK_STATUS_RESPONSE" />
+      <value enum="BE" description="USER_REQUEST" />
+      <value enum="BF" description="USER_RESPONSE" />
+      <value enum="BG" description="COLLATERAL_INQUIRY_ACK" />
+      <value enum="BH" description="CONFIRMATION_REQUEST" />
+    </field>
+    <field number="36" name="NewSeqNo" type="SEQNUM" />
+    <field number="37" name="OrderID" type="STRING" />
+    <field number="38" name="OrderQty" type="QTY" />
+    <field number="39" name="OrdStatus" type="CHAR">  
+      <value enum="0" description="NEW" />
+      <value enum="1" description="PARTIALLY_FILLED" />
+      <value enum="2" description="FILLED" />
+      <value enum="3" description="DONE_FOR_DAY" />
+      <value enum="4" description="CANCELED" />
+      <value enum="5" description="REPLACED" />
+      <value enum="6" description="PENDING_CANCEL" />
+      <value enum="7" description="STOPPED" />
+      <value enum="8" description="REJECTED" />
+      <value enum="9" description="SUSPENDED" />
+      <value enum="A" description="PENDING_NEW" />
+      <value enum="B" description="CALCULATED" />
+      <value enum="C" description="EXPIRED" />
+      <value enum="D" description="ACCEPTED_FOR_BIDDING" />
+      <value enum="E" description="PENDING_REPLACE" />
+    </field>
+    <field number="40" name="OrdType" type="CHAR">  
+      <value enum="1" description="MARKET" />
+      <value enum="2" description="LIMIT" />
+      <value enum="3" description="STOP" />
+      <value enum="4" description="STOP_LIMIT" />
+      <value enum="5" description="MARKET_ON_CLOSE" />
+      <value enum="6" description="WITH_OR_WITHOUT" />
+      <value enum="7" description="LIMIT_OR_BETTER" />
+      <value enum="8" description="LIMIT_WITH_OR_WITHOUT" />
+      <value enum="9" description="ON_BASIS" />
+      <value enum="A" description="ON_CLOSE" />
+      <value enum="B" description="LIMIT_ON_CLOSE" />
+      <value enum="C" description="FOREX_MARKET" />
+      <value enum="D" description="PREVIOUSLY_QUOTED" />
+      <value enum="E" description="PREVIOUSLY_INDICATED" />
+      <value enum="F" description="FOREX_LIMIT" />
+      <value enum="G" description="FOREX_SWAP" />
+      <value enum="H" description="FOREX_PREVIOUSLY_QUOTED" />
+      <value enum="I" description="FUNARI" />
+      <value enum="J" description="MARKET_IF_TOUCHED" />
+      <value enum="K" description="MARKET_WITH_LEFTOVER_AS_LIMIT" />
+      <value enum="L" description="PREVIOUS_FUND_VALUATION_POINT" />
+      <value enum="M" description="NEXT_FUND_VALUATION_POINT" />
+      <value enum="P" description="PEGGED" />
+    </field>
+    <field number="41" name="OrigClOrdID" type="STRING" />
+    <field number="42" name="OrigTime" type="UTCTIMESTAMP" />
+    <field number="43" name="PossDupFlag" type="BOOLEAN" />
+    <field number="44" name="Price" type="PRICE" />
+    <field number="45" name="RefSeqNum" type="SEQNUM" />
+    <field number="48" name="SecurityID" type="STRING" />
+    <field number="49" name="SenderCompID" type="STRING" />
+    <field number="50" name="SenderSubID" type="STRING" />
+    <field number="52" name="SendingTime" type="UTCTIMESTAMP" />
+    <field number="53" name="Quantity" type="QTY" />
+    <field number="54" name="Side" type="CHAR">  
+      <value enum="1" description="BUY" />
+      <value enum="2" description="SELL" />
+      <value enum="3" description="BUY_MINUS" />
+      <value enum="4" description="SELL_PLUS" />
+      <value enum="5" description="SELL_SHORT" />
+      <value enum="6" description="SELL_SHORT_EXEMPT" />
+      <value enum="7" description="UNDISCLOSED" />
+      <value enum="8" description="CROSS" />
+      <value enum="9" description="CROSS_SHORT" />
+      <value enum="A" description="CROSS_SHORT_EXEMPT" />
+      <value enum="B" description="AS_DEFINED" />
+      <value enum="C" description="OPPOSITE" />
+      <value enum="D" description="SUBSCRIBE" />
+      <value enum="E" description="REDEEM" />
+      <value enum="F" description="LEND" />
+      <value enum="G" description="BORROW" />
+    </field>
+    <field number="55" name="Symbol" type="STRING" />
+    <field number="56" name="TargetCompID" type="STRING" />
+    <field number="57" name="TargetSubID" type="STRING" />
+    <field number="58" name="Text" type="STRING" />
+    <field number="59" name="TimeInForce" type="CHAR">  
+      <value enum="0" description="DAY" />
+      <value enum="1" description="GOOD_TILL_CANCEL" />
+      <value enum="2" description="AT_THE_OPENING" />
+      <value enum="3" description="IMMEDIATE_OR_CANCEL" />
+      <value enum="4" description="FILL_OR_KILL" />
+      <value enum="5" description="GOOD_TILL_CROSSING" />
+      <value enum="6" description="GOOD_TILL_DATE" />
+      <value enum="7" description="AT_THE_CLOSE" />
+    </field>
+    <field number="60" name="TransactTime" type="UTCTIMESTAMP" />
+    <field number="61" name="Urgency" type="CHAR">
+      <value enum="0" description="NORMAL" />
+      <value enum="1" description="FLASH" />
+      <value enum="2" description="BACKGROUND" />
+    </field>
+    <field number="62" name="ValidUntilTime" type="UTCTIMESTAMP" />
+    <field number="63" name="SettlType" type="CHAR">
+      <value enum="0" description="REGULAR" />
+      <value enum="1" description="CASH" />
+      <value enum="2" description="NEXT_DAY" />
+      <value enum="3" description="T_PLUS_2" />
+      <value enum="4" description="T_PLUS_3" />
+      <value enum="5" description="T_PLUS_4" />
+      <value enum="6" description="FUTURE" />
+      <value enum="7" description="WHEN_AND_IF_ISSUED" />
+      <value enum="8" description="SELLERS_OPTION" />
+      <value enum="9" description="T_PLUS_5" />
+    </field>
+    <field number="64" name="SettlDate" type="LOCALMKTDATE" />
+    <field number="65" name="SymbolSfx" type="STRING">
+      <value enum="WI" description="WHEN_ISSUED" />
+      <value enum="CD" description="A_EUCP_WITH_LUMP_SUM_INTEREST" />
+    </field>
+    <field number="66" name="ListID" type="STRING" />
+    <field number="67" name="ListSeqNo" type="INT" />
+    <field number="68" name="TotNoOrders" type="INT" />
+    <field number="69" name="ListExecInst" type="STRING" />
+    <field number="70" name="AllocID" type="STRING" />
+    <field number="71" name="AllocTransType" type="CHAR">
+      <value enum="0" description="NEW" />
+      <value enum="1" description="REPLACE" />
+      <value enum="2" description="CANCEL" />
+    </field>
+    <field number="72" name="RefAllocID" type="STRING" />
+    <field number="73" name="NoOrders" type="NUMINGROUP" />
+    <field number="74" name="AvgPxPrecision" type="INT" />
+    <field number="75" name="TradeDate" type="LOCALMKTDATE" />
+    <field number="77" name="PositionEffect" type="CHAR">
+      <value enum="O" description="OPEN" />
+      <value enum="C" description="CLOSE" />
+      <value enum="R" description="ROLLED" />
+      <value enum="F" description="FIFO" />
+    </field>
+    <field number="78" name="NoAllocs" type="NUMINGROUP" />
+    <field number="79" name="AllocAccount" type="STRING" />
+    <field number="80" name="AllocQty" type="QTY" />
+    <field number="81" name="ProcessCode" type="CHAR">
+      <value enum="0" description="REGULAR" />
+      <value enum="1" description="SOFT_DOLLAR" />
+      <value enum="2" description="STEP_IN" />
+      <value enum="3" description="STEP_OUT" />
+      <value enum="4" description="SOFT_DOLLAR_STEP_IN" />
+      <value enum="5" description="SOFT_DOLLAR_STEP_OUT" />
+      <value enum="6" description="PLAN_SPONSOR" />
+    </field>
+    <field number="82" name="NoRpts" type="NUMINGROUP" />
+    <field number="83" name="RptSeq" type="INT" />
+    <field number="84" name="CxlQty" type="QTY" />
+    <field number="85" name="NoDlvyInst" type="NUMINGROUP" />
+    <field number="87" name="AllocStatus" type="INT">
+      <value enum="0" description="ACCEPTED" />
+      <value enum="1" description="BLOCK_LEVEL_REJECT" />
+      <value enum="2" description="ACCOUNT_LEVEL_REJECT" />
+      <value enum="3" description="RECEIVED" />
+      <value enum="4" description="INCOMPLETE" />
+      <value enum="5" description="REJECTED_BY_INTERMEDIARY" />
+    </field>
+    <field number="88" name="AllocRejCode" type="INT">
+      <value enum="0" description="UNKNOWN_ACCOUNT" />
+      <value enum="1" description="INCORRECT_QUANTITY" />
+      <value enum="2" description="INCORRECT_AVERAGE_PRICE" />
+      <value enum="3" description="UNKNOWN_EXECUTING_BROKER_MNEMONIC" />
+      <value enum="4" description="COMMISSION_DIFFERENCE" />
+      <value enum="5" description="UNKNOWN_ORDERID" />
+      <value enum="6" description="UNKNOWN_LISTID" />
+      <value enum="7" description="OTHER" />
+      <value enum="8" description="INCORRECT_ALLOCATED_QUANTITY" />
+      <value enum="9" description="CALCULATION_DIFFERENCE" />
+    </field>
+    <field number="89" name="Signature" type="DATA" />
+    <field number="90" name="SecureDataLen" type="LENGTH" />
+    <field number="91" name="SecureData" type="DATA" />
+    <field number="93" name="SignatureLength" type="LENGTH" />
+    <field number="94" name="EmailType" type="CHAR">
+      <value enum="0" description="NEW" />
+      <value enum="1" description="REPLY" />
+      <value enum="2" description="ADMIN_REPLY" />
+    </field>
+    <field number="95" name="RawDataLength" type="LENGTH" />
+    <field number="96" name="RawData" type="DATA" />
+    <field number="97" name="PossResend" type="BOOLEAN" />
+    <field number="98" name="EncryptMethod" type="INT">
+      <value enum="0" description="NONE_OTHER" />
+      <value enum="1" description="PKCS" />
+      <value enum="2" description="DES" />
+      <value enum="3" description="PKCS_DES" />
+      <value enum="4" description="PGP_DES" />
+      <value enum="5" description="PGP_DES_MD5" />
+      <value enum="6" description="PEM_DES_MD5" />
+    </field>
+    <field number="99" name="StopPx" type="PRICE" />
+    <field number="100" name="ExDestination" type="EXCHANGE" />
+    <field number="102" name="CxlRejReason" type="INT">
+      <value enum="0" description="TOO_LATE_TO_CANCEL" />
+      <value enum="1" description="UNKNOWN_ORDER" />
+      <value enum="2" description="BROKER_EXCHANGE_OPTION" />
+      <value enum="3" description="ORDER_ALREADY_IN_PENDING_CANCEL_OR_PENDING_REPLACE_STATUS" />
+      <value enum="4" description="UNABLE_TO_PROCESS_ORDER_MASS_CANCEL_REQUEST" />
+      <value enum="5" description="ORIGORDMODTIME_DID_NOT_MATCH_LAST_TRANSACTTIME_OF_ORDER" />
+      <value enum="6" description="DUPLICATE_CLORDID_RECEIVED" />
+      <value enum="99" description="OTHER" />
+    </field>
+    <field number="103" name="OrdRejReason" type="INT">
+      <value enum="0" description="BROKER_EXCHANGE_OPTION" />
+      <value enum="1" description="UNKNOWN_SYMBOL" />
+      <value enum="2" description="EXCHANGE_CLOSED" />
+      <value enum="3" description="ORDER_EXCEEDS_LIMIT" />
+      <value enum="4" description="TOO_LATE_TO_ENTER" />
+      <value enum="5" description="UNKNOWN_ORDER" />
+      <value enum="6" description="DUPLICATE_ORDER" />
+      <value enum="7" description="DUPLICATE_OF_A_VERBALLY_COMMUNICATED_ORDER" />
+      <value enum="8" description="STALE_ORDER" />
+      <value enum="9" description="TRADE_ALONG_REQUIRED" />
+      <value enum="10" description="INVALID_INVESTOR_ID" />
+      <value enum="11" description="UNSUPPORTED_ORDER_CHARACTERISTIC" />
+      <value enum="12" description="SURVEILLENCE_OPTION" />
+      <value enum="13" description="INCORRECT_QUANTITY" />
+      <value enum="14" description="INCORRECT_ALLOCATED_QUANTITY" />
+      <value enum="15" description="UNKNOWN_ACCOUNT" />
+      <value enum="99" description="OTHER" />
+    </field>
+    <field number="104" name="IOIQualifier" type="CHAR">
+      <value enum="A" description="ALL_OR_NONE" />
+      <value enum="B" description="MARKET_ON_CLOSE" />
+      <value enum="C" description="AT_THE_CLOSE" />
+      <value enum="D" description="VWAP" />
+      <value enum="I" description="IN_TOUCH_WITH" />
+      <value enum="L" description="LIMIT" />
+      <value enum="M" description="MORE_BEHIND" />
+      <value enum="O" description="AT_THE_OPEN" />
+      <value enum="P" description="TAKING_A_POSITION" />
+      <value enum="Q" description="AT_THE_MARKET" />
+      <value enum="R" description="READY_TO_TRADE" />
+      <value enum="S" description="PORTFOLIO_SHOWN" />
+      <value enum="T" description="THROUGH_THE_DAY" />
+      <value enum="V" description="VERSUS" />
+      <value enum="W" description="INDICATION_WORKING_AWAY" />
+      <value enum="X" description="CROSSING_OPPORTUNITY" />
+      <value enum="Y" description="AT_THE_MIDPOINT" />
+      <value enum="Z" description="PRE_OPEN" />
+    </field>
+    <field number="105" name="WaveNo" type="STRING" />
+    <field number="106" name="Issuer" type="STRING" />
+    <field number="107" name="SecurityDesc" type="STRING" />
+    <field number="108" name="HeartBtInt" type="INT" />
+    <field number="110" name="MinQty" type="QTY" />
+    <field number="111" name="MaxFloor" type="QTY" />
+    <field number="112" name="TestReqID" type="STRING" />
+    <field number="113" name="ReportToExch" type="BOOLEAN" />
+    <field number="114" name="LocateReqd" type="BOOLEAN" />
+    <field number="115" name="OnBehalfOfCompID" type="STRING" />
+    <field number="116" name="OnBehalfOfSubID" type="STRING" />
+    <field number="117" name="QuoteID" type="STRING" />
+    <field number="118" name="NetMoney" type="AMT" />
+    <field number="119" name="SettlCurrAmt" type="AMT" />
+    <field number="120" name="SettlCurrency" type="CURRENCY" />
+    <field number="121" name="ForexReq" type="BOOLEAN" />
+    <field number="122" name="OrigSendingTime" type="UTCTIMESTAMP" />
+    <field number="123" name="GapFillFlag" type="BOOLEAN" />
+    <field number="124" name="NoExecs" type="NUMINGROUP" />
+    <field number="126" name="ExpireTime" type="UTCTIMESTAMP" />
+    <field number="127" name="DKReason" type="CHAR">
+      <value enum="A" description="UNKNOWN_SYMBOL" />
+      <value enum="B" description="WRONG_SIDE" />
+      <value enum="C" description="QUANTITY_EXCEEDS_ORDER" />
+      <value enum="D" description="NO_MATCHING_ORDER" />
+      <value enum="E" description="PRICE_EXCEEDS_LIMIT" />
+      <value enum="F" description="CALCULATION_DIFFERENCE" />
+      <value enum="Z" description="OTHER" />
+    </field>
+    <field number="128" name="DeliverToCompID" type="STRING" />
+    <field number="129" name="DeliverToSubID" type="STRING" />
+    <field number="130" name="IOINaturalFlag" type="BOOLEAN" />
+    <field number="131" name="QuoteReqID" type="STRING" />
+    <field number="132" name="BidPx" type="PRICE" />
+    <field number="133" name="OfferPx" type="PRICE" />
+    <field number="134" name="BidSize" type="QTY" />
+    <field number="135" name="OfferSize" type="QTY" />
+    <field number="136" name="NoMiscFees" type="NUMINGROUP" />
+    <field number="137" name="MiscFeeAmt" type="AMT" />
+    <field number="138" name="MiscFeeCurr" type="CURRENCY" />
+    <field number="139" name="MiscFeeType" type="CHAR">
+      <value enum="1" description="REGULATORY" />
+      <value enum="2" description="TAX" />
+      <value enum="3" description="LOCAL_COMMISSION" />
+      <value enum="4" description="EXCHANGE_FEES" />
+      <value enum="5" description="STAMP" />
+      <value enum="6" description="LEVY" />
+      <value enum="7" description="OTHER" />
+      <value enum="8" description="MARKUP" />
+      <value enum="9" description="CONSUMPTION_TAX" />
+    </field>
+    <field number="140" name="PrevClosePx" type="PRICE" />
+    <field number="141" name="ResetSeqNumFlag" type="BOOLEAN" />
+    <field number="142" name="SenderLocationID" type="STRING" />
+    <field number="143" name="TargetLocationID" type="STRING" />
+    <field number="144" name="OnBehalfOfLocationID" type="STRING" />
+    <field number="145" name="DeliverToLocationID" type="STRING" />
+    <field number="146" name="NoRelatedSym" type="NUMINGROUP" />
+    <field number="147" name="Subject" type="STRING" />
+    <field number="148" name="Headline" type="STRING" />
+    <field number="149" name="URLLink" type="STRING" />
+    <field number="150" name="ExecType" type="CHAR">
+      <value enum="0" description="NEW" />
+      <value enum="1" description="PARTIAL_FILL" />
+      <value enum="2" description="FILL" />
+      <value enum="3" description="DONE_FOR_DAY" />
+      <value enum="4" description="CANCELED" />
+      <value enum="5" description="REPLACE" />
+      <value enum="6" description="PENDING_CANCEL" />
+      <value enum="7" description="STOPPED" />
+      <value enum="8" description="REJECTED" />
+      <value enum="9" description="SUSPENDED" />
+      <value enum="A" description="PENDING_NEW" />
+      <value enum="B" description="CALCULATED" />
+      <value enum="C" description="EXPIRED" />
+      <value enum="D" description="RESTATED" />
+      <value enum="E" description="PENDING_REPLACE" />
+      <value enum="F" description="TRADE" />
+      <value enum="G" description="TRADE_CORRECT" />
+      <value enum="H" description="TRADE_CANCEL" />
+      <value enum="I" description="ORDER_STATUS" />
+    </field>
+    <field number="151" name="LeavesQty" type="QTY" />
+    <field number="152" name="CashOrderQty" type="QTY" />
+    <field number="153" name="AllocAvgPx" type="PRICE" />
+    <field number="154" name="AllocNetMoney" type="AMT" />
+    <field number="155" name="SettlCurrFxRate" type="FLOAT" />
+    <field number="156" name="SettlCurrFxRateCalc" type="CHAR">
+      <value enum="M" description="MULTIPLY" />
+      <value enum="D" description="DIVIDE" />
+    </field>
+    <field number="157" name="NumDaysInterest" type="INT" />
+    <field number="158" name="AccruedInterestRate" type="PERCENTAGE" />
+    <field number="159" name="AccruedInterestAmt" type="AMT" />
+    <field number="160" name="SettlInstMode" type="CHAR">
+      <value enum="0" description="DEFAULT" />
+      <value enum="1" description="STANDING_INSTRUCTIONS_PROVIDED" />
+      <value enum="4" description="SPECIFIC_ORDER_FOR_A_SINGLE_ACCOUNT" />
+      <value enum="5" description="REQUEST_REJECT" />
+    </field>
+    <field number="161" name="AllocText" type="STRING" />
+    <field number="162" name="SettlInstID" type="STRING" />
+    <field number="163" name="SettlInstTransType" type="CHAR">
+      <value enum="N" description="NEW" />
+      <value enum="C" description="CANCEL" />
+      <value enum="R" description="REPLACE" />
+      <value enum="T" description="RESTATE" />
+    </field>
+    <field number="164" name="EmailThreadID" type="STRING" />
+    <field number="165" name="SettlInstSource" type="CHAR">
+      <value enum="1" description="BROKERS_INSTRUCTIONS" />
+      <value enum="2" description="INSTITUTIONS_INSTRUCTIONS" />
+      <value enum="3" description="INVESTOR" />
+    </field>
+    <field number="167" name="SecurityType" type="STRING">
+      <value enum="EUSUPRA" description="EURO_SUPRANATIONAL_COUPONS" />
+      <value enum="FAC" description="FEDERAL_AGENCY_COUPON" />
+      <value enum="FADN" description="FEDERAL_AGENCY_DISCOUNT_NOTE" />
+      <value enum="PEF" description="PRIVATE_EXPORT_FUNDING" />
+      <value enum="SUPRA" description="USD_SUPRANATIONAL_COUPONS" />
+      <value enum="FUT" description="FUTURE" />
+      <value enum="OPT" description="OPTION" />
+      <value enum="CORP" description="CORPORATE_BOND" />
+      <value enum="CPP" description="CORPORATE_PRIVATE_PLACEMENT" />
+      <value enum="CB" description="CONVERTIBLE_BOND" />
+      <value enum="DUAL" description="DUAL_CURRENCY" />
+      <value enum="EUCORP" description="EURO_CORPORATE_BOND" />
+      <value enum="XLINKD" description="INDEXED_LINKED" />
+      <value enum="STRUCT" description="STRUCTURED_NOTES" />
+      <value enum="YANK" description="YANKEE_CORPORATE_BOND" />
+      <value enum="FOR" description="FOREIGN_EXCHANGE_CONTRACT" />
+      <value enum="CS" description="COMMON_STOCK" />
+      <value enum="PS" description="PREFERRED_STOCK" />
+      <value enum="BRADY" description="BRADY_BOND" />
+      <value enum="EUSOV" description="EURO_SOVEREIGNS" />
+      <value enum="TBOND" description="US_TREASURY_BOND" />
+      <value enum="TINT" description="INTEREST_STRIP_FROM_ANY_BOND_OR_NOTE" />
+      <value enum="TIPS" description="TREASURY_INFLATION_PROTECTED_SECURITIES" />
+      <value enum="TCAL" description="PRINCIPAL_STRIP_OF_A_CALLABLE_BOND_OR_NOTE" />
+      <value enum="TPRN" description="PRINCIPAL_STRIP_FROM_A_NON_CALLABLE_BOND_OR_NOTE" />
+      <value enum="TNOTE" description="US_TREASURY_NOTE" />
+      <value enum="TBILL" description="US_TREASURY_BILL" />
+      <value enum="REPO" description="REPURCHASE" />
+      <value enum="FORWARD" description="FORWARD" />
+      <value enum="BUYSELL" description="BUY_SELLBACK" />
+      <value enum="SECLOAN" description="SECURITIES_LOAN" />
+      <value enum="SECPLEDGE" description="SECURITIES_PLEDGE" />
+      <value enum="TERM" description="TERM_LOAN" />
+      <value enum="RVLV" description="REVOLVER_LOAN" />
+      <value enum="RVLVTRM" description="REVOLVER_TERM_LOAN" />
+      <value enum="BRIDGE" description="BRIDGE_LOAN" />
+      <value enum="LOFC" description="LETTER_OF_CREDIT" />
+      <value enum="SWING" description="SWING_LINE_FACILITY" />
+      <value enum="DINP" description="DEBTOR_IN_POSSESSION" />
+      <value enum="DEFLTED" description="DEFAULTED" />
+      <value enum="WITHDRN" description="WITHDRAWN" />
+      <value enum="REPLACD" description="REPLACED" />
+      <value enum="MATURED" description="MATURED" />
+      <value enum="AMENDED" description="AMENDED_AND_RESTATED" />
+      <value enum="RETIRED" description="RETIRED" />
+      <value enum="BA" description="BANKERS_ACCEPTANCE" />
+      <value enum="BN" description="BANK_NOTES" />
+      <value enum="BOX" description="BILL_OF_EXCHANGES" />
+      <value enum="CD" description="CERTIFICATE_OF_DEPOSIT" />
+      <value enum="CL" description="CALL_LOANS" />
+      <value enum="CP" description="COMMERCIAL_PAPER" />
+      <value enum="DN" description="DEPOSIT_NOTES" />
+      <value enum="EUCD" description="EURO_CERTIFICATE_OF_DEPOSIT" />
+      <value enum="EUCP" description="EURO_COMMERCIAL_PAPER" />
+      <value enum="LQN" description="LIQUIDITY_NOTE" />
+      <value enum="MTN" description="MEDIUM_TERM_NOTES" />
+      <value enum="ONITE" description="OVERNIGHT" />
+      <value enum="PN" description="PROMISSORY_NOTE" />
+      <value enum="PZFJ" description="PLAZOS_FIJOS" />
+      <value enum="STN" description="SHORT_TERM_LOAN_NOTE" />
+      <value enum="TD" description="TIME_DEPOSIT" />
+      <value enum="XCN" description="EXTENDED_COMM_NOTE" />
+      <value enum="YCD" description="YANKEE_CERTIFICATE_OF_DEPOSIT" />
+      <value enum="ABS" description="ASSET_BACKED_SECURITIES" />
+      <value enum="CMBS" description="CORP_MORTGAGE_BACKED_SECURITIES" />
+      <value enum="CMO" description="COLLATERALIZED_MORTGAGE_OBLIGATION" />
+      <value enum="IET" description="IOETTE_MORTGAGE" />
+      <value enum="MBS" description="MORTGAGE_BACKED_SECURITIES" />
+      <value enum="MIO" description="MORTGAGE_INTEREST_ONLY" />
+      <value enum="MPO" description="MORTGAGE_PRINCIPAL_ONLY" />
+      <value enum="MPP" description="MORTGAGE_PRIVATE_PLACEMENT" />
+      <value enum="MPT" description="MISCELLANEOUS_PASS_THROUGH" />
+      <value enum="PFAND" description="PFANDBRIEFE" />
+      <value enum="TBA" description="TO_BE_ANNOUNCED" />
+      <value enum="AN" description="OTHER_ANTICIPATION_NOTES" />
+      <value enum="COFO" description="CERTIFICATE_OF_OBLIGATION" />
+      <value enum="COFP" description="CERTIFICATE_OF_PARTICIPATION" />
+      <value enum="GO" description="GENERAL_OBLIGATION_BONDS" />
+      <value enum="MT" description="MANDATORY_TENDER" />
+      <value enum="RAN" description="REVENUE_ANTICIPATION_NOTE" />
+      <value enum="REV" description="REVENUE_BONDS" />
+      <value enum="SPCLA" description="SPECIAL_ASSESSMENT" />
+      <value enum="SPCLO" description="SPECIAL_OBLIGATION" />
+      <value enum="SPCLT" description="SPECIAL_TAX" />
+      <value enum="TAN" description="TAX_ANTICIPATION_NOTE" />
+      <value enum="TAXA" description="TAX_ALLOCATION" />
+      <value enum="TECP" description="TAX_EXEMPT_COMMERCIAL_PAPER" />
+      <value enum="TRAN" description="TAX_AND_REVENUE_ANTICIPATION_NOTE" />
+      <value enum="VRDN" description="VARIABLE_RATE_DEMAND_NOTE" />
+      <value enum="WAR" description="WARRANT" />
+      <value enum="MF" description="MUTUAL_FUND" />
+      <value enum="MLEG" description="MULTI_LEG_INSTRUMENT" />
+      <value enum="NONE" description="NO_SECURITY_TYPE" />
+      <value enum="?" description="WILDCARD" />
+    </field>
+    <field number="168" name="EffectiveTime" type="UTCTIMESTAMP" />
+    <field number="169" name="StandInstDbType" type="INT">
+      <value enum="0" description="OTHER" />
+      <value enum="1" description="DTC_SID" />
+      <value enum="2" description="THOMSON_ALERT" />
+      <value enum="3" description="A_GLOBAL_CUSTODIAN" />
+      <value enum="4" description="ACCOUNTNET" />
+    </field>
+    <field number="170" name="StandInstDbName" type="STRING" />
+    <field number="171" name="StandInstDbID" type="STRING" />
+    <field number="172" name="SettlDeliveryType" type="INT">
+      <value enum="0" description="VERSUS_PAYMENT" />
+      <value enum="1" description="FREE" />
+      <value enum="2" description="TRI_PARTY" />
+      <value enum="3" description="HOLD_IN_CUSTODY" />
+    </field>
+    <field number="188" name="BidSpotRate" type="PRICE" />
+    <field number="189" name="BidForwardPoints" type="PRICEOFFSET" />
+    <field number="190" name="OfferSpotRate" type="PRICE" />
+    <field number="191" name="OfferForwardPoints" type="PRICEOFFSET" />
+    <field number="192" name="OrderQty2" type="QTY" />
+    <field number="193" name="SettlDate2" type="LOCALMKTDATE" />
+    <field number="194" name="LastSpotRate" type="PRICE" />
+    <field number="195" name="LastForwardPoints" type="PRICEOFFSET" />
+    <field number="196" name="AllocLinkID" type="STRING" />
+    <field number="197" name="AllocLinkType" type="INT">
+      <value enum="0" description="F_X_NETTING" />
+      <value enum="1" description="F_X_SWAP" />
+    </field>
+    <field number="198" name="SecondaryOrderID" type="STRING" />
+    <field number="199" name="NoIOIQualifiers" type="NUMINGROUP" />
+    <field number="200" name="MaturityMonthYear" type="MONTHYEAR" />
+    <field number="202" name="StrikePrice" type="PRICE" />
+    <field number="203" name="CoveredOrUncovered" type="INT">
+      <value enum="0" description="COVERED" />
+      <value enum="1" description="UNCOVERED" />
+    </field>
+    <field number="206" name="OptAttribute" type="CHAR" />
+    <field number="207" name="SecurityExchange" type="EXCHANGE" />
+    <field number="208" name="NotifyBrokerOfCredit" type="BOOLEAN" />
+    <field number="209" name="AllocHandlInst" type="INT">
+      <value enum="1" description="MATCH" />
+      <value enum="2" description="FORWARD" />
+      <value enum="3" description="FORWARD_AND_MATCH" />
+    </field>
+    <field number="210" name="MaxShow" type="QTY" />
+    <field number="211" name="PegOffsetValue" type="FLOAT" />
+    <field number="212" name="XmlDataLen" type="LENGTH" />
+    <field number="213" name="XmlData" type="DATA" />
+    <field number="214" name="SettlInstRefID" type="STRING" />
+    <field number="215" name="NoRoutingIDs" type="NUMINGROUP" />
+    <field number="216" name="RoutingType" type="INT">
+      <value enum="1" description="TARGET_FIRM" />
+      <value enum="2" description="TARGET_LIST" />
+      <value enum="3" description="BLOCK_FIRM" />
+      <value enum="4" description="BLOCK_LIST" />
+    </field>
+    <field number="217" name="RoutingID" type="STRING" />
+    <field number="218" name="Spread" type="PRICEOFFSET" />
+    <field number="220" name="BenchmarkCurveCurrency" type="CURRENCY" />
+    <field number="221" name="BenchmarkCurveName" type="STRING">
+      <value enum="MuniAAA" description="MUNIAAA" />
+      <value enum="FutureSWAP" description="FUTURESWAP" />
+      <value enum="LIBID" description="LIBID" />
+      <value enum="LIBOR" description="LIBOR" />
+      <value enum="OTHER" description="OTHER" />
+      <value enum="SWAP" description="SWAP" />
+      <value enum="Treasury" description="TREASURY" />
+      <value enum="Euribor" description="EURIBOR" />
+      <value enum="Pfandbriefe" description="PFANDBRIEFE" />
+      <value enum="EONIA" description="EONIA" />
+      <value enum="SONIA" description="SONIA" />
+      <value enum="EUREPO" description="EUREPO" />
+    </field>
+    <field number="222" name="BenchmarkCurvePoint" type="STRING" />
+    <field number="223" name="CouponRate" type="PERCENTAGE" />
+    <field number="224" name="CouponPaymentDate" type="LOCALMKTDATE" />
+    <field number="225" name="IssueDate" type="LOCALMKTDATE" />
+    <field number="226" name="RepurchaseTerm" type="INT" />
+    <field number="227" name="RepurchaseRate" type="PERCENTAGE" />
+    <field number="228" name="Factor" type="FLOAT" />
+    <field number="229" name="TradeOriginationDate" type="LOCALMKTDATE" />
+    <field number="230" name="ExDate" type="LOCALMKTDATE" />
+    <field number="231" name="ContractMultiplier" type="FLOAT" />
+    <field number="232" name="NoStipulations" type="NUMINGROUP" />
+    <field number="233" name="StipulationType" type="STRING">
+      <value enum="AMT" description="AMT" />
+      <value enum="AUTOREINV" description="AUTO_REINVESTMENT_AT_OR_BETTER" />
+      <value enum="BANKQUAL" description="BANK_QUALIFIED" />
+      <value enum="BGNCON" description="BARGAIN_CONDITIONS" />
+      <value enum="COUPON" description="COUPON_RANGE" />
+      <value enum="CURRENCY" description="ISO_CURRENCY_CODE" />
+      <value enum="CUSTOMDATE" description="CUSTOM_START_END_DATE" />
+      <value enum="GEOG" description="GEOGRAPHICS_AND_PERCENT_RANGE" />
+      <value enum="HAIRCUT" description="VALUATION_DISCOUNT" />
+      <value enum="INSURED" description="INSURED" />
+      <value enum="ISSUE" description="YEAR_OR_YEAR_MONTH_OF_ISSUE" />
+      <value enum="ISSUER" description="ISSUERS_TICKER" />
+      <value enum="ISSUESIZE" description="ISSUE_SIZE_RANGE" />
+      <value enum="LOOKBACK" description="LOOKBACK_DAYS" />
+      <value enum="LOT" description="EXPLICIT_LOT_IDENTIFIER" />
+      <value enum="LOTVAR" description="LOT_VARIANCE" />
+      <value enum="MAT" description="MATURITY_YEAR_AND_MONTH" />
+      <value enum="MATURITY" description="MATURITY_RANGE" />
+      <value enum="MAXSUBS" description="MAXIMUM_SUBSTITUTIONS" />
+      <value enum="MINQTY" description="MINIMUM_QUANTITY" />
+      <value enum="MININCR" description="MINIMUM_INCREMENT" />
+      <value enum="MINDNOM" description="MINIMUM_DENOMINATION" />
+      <value enum="PAYFREQ" description="PAYMENT_FREQUENCY_CALENDAR" />
+      <value enum="PIECES" description="NUMBER_OF_PIECES" />
+      <value enum="PMAX" description="POOLS_MAXIMUM" />
+      <value enum="PPM" description="POOLS_PER_MILLION" />
+      <value enum="PPL" description="POOLS_PER_LOT" />
+      <value enum="PPT" description="POOLS_PER_TRADE" />
+      <value enum="PRICE" description="PRICE_RANGE" />
+      <value enum="PRICEFREQ" description="PRICING_FREQUENCY" />
+      <value enum="PROD" description="PRODUCTION_YEAR" />
+      <value enum="PROTECT" description="CALL_PROTECTION" />
+      <value enum="PURPOSE" description="PURPOSE" />
+      <value enum="PXSOURCE" description="BENCHMARK_PRICE_SOURCE" />
+      <value enum="RATING" description="RATING_SOURCE_AND_RANGE" />
+      <value enum="RESTRICTED" description="RESTRICTED" />
+      <value enum="SECTOR" description="MARKET_SECTOR" />
+      <value enum="SECTYPE" description="SECURITYTYPE_INCLUDED_OR_EXCLUDED" />
+      <value enum="STRUCT" description="STRUCTURE" />
+      <value enum="SUBSFREQ" description="SUBSTITUTIONS_FREQUENCY" />
+      <value enum="SUBSLEFT" description="SUBSTITUTIONS_LEFT" />
+      <value enum="TEXT" description="FREEFORM_TEXT" />
+      <value enum="TRDVAR" description="TRADE_VARIANCE" />
+      <value enum="WAC" description="WEIGHTED_AVERAGE_COUPON" />
+      <value enum="WAL" description="WEIGHTED_AVERAGE_LIFE_COUPON" />
+      <value enum="WALA" description="WEIGHTED_AVERAGE_LOAN_AGE" />
+      <value enum="WAM" description="WEIGHTED_AVERAGE_MATURITY" />
+      <value enum="WHOLE" description="WHOLE_POOL" />
+      <value enum="YIELD" description="YIELD_RANGE" />
+      <value enum="SMM" description="SINGLE_MONTHLY_MORTALITY" />
+      <value enum="CPR" description="CONSTANT_PREPAYMENT_RATE" />
+      <value enum="CPY" description="CONSTANT_PREPAYMENT_YIELD" />
+      <value enum="CPP" description="CONSTANT_PREPAYMENT_PENALTY" />
+      <value enum="ABS" description="ABSOLUTE_PREPAYMENT_SPEED" />
+      <value enum="MPR" description="MONTHLY_PREPAYMENT_RATE" />
+      <value enum="PSA" description="PERCENT_OF_BMA_PREPAYMENT_CURVE" />
+      <value enum="PPC" description="PERCENT_OF_PROSPECTUS_PREPAYMENT_CURVE" />
+      <value enum="MHP" description="PERCENT_OF_MANUFACTURED_HOUSING_PREPAYMENT_CURVE" />
+      <value enum="HEP" description="FINAL_CPR_OF_HOME_EQUITY_PREPAYMENT_CURVE" />
+    </field>
+    <field number="234" name="StipulationValue" type="STRING">
+      <value enum="CD" description="SPECIAL_CUM_DIVIDEND" />
+      <value enum="XD" description="SPECIAL_EX_DIVIDEND" />
+      <value enum="CC" description="SPECIAL_CUM_COUPON" />
+      <value enum="XC" description="SPECIAL_EX_COUPON" />
+      <value enum="CB" description="SPECIAL_CUM_BONUS" />
+      <value enum="XB" description="SPECIAL_EX_BONUS" />
+      <value enum="CR" description="SPECIAL_CUM_RIGHTS" />
+      <value enum="XR" description="SPECIAL_EX_RIGHTS" />
+      <value enum="CP" description="SPECIAL_CUM_CAPITAL_REPAYMENTS" />
+      <value enum="XP" description="SPECIAL_EX_CAPITAL_REPAYMENTS" />
+      <value enum="CS" description="CASH_SETTLEMENT" />
+      <value enum="SP" description="SPECIAL_PRICE" />
+      <value enum="TR" description="REPORT_FOR_EUROPEAN_EQUITY_MARKET_SECURITIES" />
+      <value enum="GD" description="GUARANTEED_DELIVERY" />
+    </field>
+    <field number="235" name="YieldType" type="STRING">
+      <value enum="AFTERTAX" description="AFTER_TAX_YIELD" />
+      <value enum="ANNUAL" description="ANNUAL_YIELD" />
+      <value enum="ATISSUE" description="YIELD_AT_ISSUE" />
+      <value enum="AVGMATURITY" description="YIELD_TO_AVERAGE_MATURITY" />
+      <value enum="BOOK" description="BOOK_YIELD" />
+      <value enum="CALL" description="YIELD_TO_NEXT_CALL" />
+      <value enum="CHANGE" description="YIELD_CHANGE_SINCE_CLOSE" />
+      <value enum="CLOSE" description="CLOSING_YIELD" />
+      <value enum="COMPOUND" description="COMPOUND_YIELD" />
+      <value enum="CURRENT" description="CURRENT_YIELD" />
+      <value enum="GROSS" description="TRUE_GROSS_YIELD" />
+      <value enum="GOVTEQUIV" description="GOVERNMENT_EQUIVALENT_YIELD" />
+      <value enum="INFLATION" description="YIELD_WITH_INFLATION_ASSUMPTION" />
+      <value enum="INVERSEFLOATER" description="INVERSE_FLOATER_BOND_YIELD" />
+      <value enum="LASTCLOSE" description="MOST_RECENT_CLOSING_YIELD" />
+      <value enum="LASTMONTH" description="CLOSING_YIELD_MOST_RECENT_MONTH" />
+      <value enum="LASTQUARTER" description="CLOSING_YIELD_MOST_RECENT_QUARTER" />
+      <value enum="LASTYEAR" description="CLOSING_YIELD_MOST_RECENT_YEAR" />
+      <value enum="LONGAVGLIFE" description="YIELD_TO_LONGEST_AVERAGE_LIFE" />
+      <value enum="MARK" description="MARK_TO_MARKET_YIELD" />
+      <value enum="MATURITY" description="YIELD_TO_MATURITY" />
+      <value enum="NEXTREFUND" description="YIELD_TO_NEXT_REFUND" />
+      <value enum="OPENAVG" description="OPEN_AVERAGE_YIELD" />
+      <value enum="PUT" description="YIELD_TO_NEXT_PUT" />
+      <value enum="PREVCLOSE" description="PREVIOUS_CLOSE_YIELD" />
+      <value enum="PROCEEDS" description="PROCEEDS_YIELD" />
+      <value enum="SEMIANNUAL" description="SEMI_ANNUAL_YIELD" />
+      <value enum="SHORTAVGLIFE" description="YIELD_TO_SHORTEST_AVERAGE_LIFE" />
+      <value enum="SIMPLE" description="SIMPLE_YIELD" />
+      <value enum="TAXEQUIV" description="TAX_EQUIVALENT_YIELD" />
+      <value enum="TENDER" description="YIELD_TO_TENDER_DATE" />
+      <value enum="TRUE" description="TRUE_YIELD" />
+      <value enum="VALUE1_32" description="YIELD_VALUE_OF_1_32" />
+      <value enum="WORST" description="YIELD_TO_WORST" />
+    </field>
+    <field number="236" name="Yield" type="PERCENTAGE" />
+    <field number="237" name="TotalTakedown" type="AMT" />
+    <field number="238" name="Concession" type="AMT" />
+    <field number="239" name="RepoCollateralSecurityType" type="INT" />
+    <field number="240" name="RedemptionDate" type="LOCALMKTDATE" />
+    <field number="241" name="UnderlyingCouponPaymentDate" type="LOCALMKTDATE" />
+    <field number="242" name="UnderlyingIssueDate" type="LOCALMKTDATE" />
+    <field number="243" name="UnderlyingRepoCollateralSecurityType" type="INT" />
+    <field number="244" name="UnderlyingRepurchaseTerm" type="INT" />
+    <field number="245" name="UnderlyingRepurchaseRate" type="PERCENTAGE" />
+    <field number="246" name="UnderlyingFactor" type="FLOAT" />
+    <field number="247" name="UnderlyingRedemptionDate" type="LOCALMKTDATE" />
+    <field number="248" name="LegCouponPaymentDate" type="LOCALMKTDATE" />
+    <field number="249" name="LegIssueDate" type="LOCALMKTDATE" />
+    <field number="250" name="LegRepoCollateralSecurityType" type="INT" />
+    <field number="251" name="LegRepurchaseTerm" type="INT" />
+    <field number="252" name="LegRepurchaseRate" type="PERCENTAGE" />
+    <field number="253" name="LegFactor" type="FLOAT" />
+    <field number="254" name="LegRedemptionDate" type="LOCALMKTDATE" />
+    <field number="255" name="CreditRating" type="STRING" />
+    <field number="256" name="UnderlyingCreditRating" type="STRING" />
+    <field number="257" name="LegCreditRating" type="STRING" />
+    <field number="258" name="TradedFlatSwitch" type="BOOLEAN" />
+    <field number="259" name="BasisFeatureDate" type="LOCALMKTDATE" />
+    <field number="260" name="BasisFeaturePrice" type="PRICE" />
+    <field number="262" name="MDReqID" type="STRING" />
+    <field number="263" name="SubscriptionRequestType" type="CHAR">
+      <value enum="0" description="SNAPSHOT" />
+      <value enum="1" description="SNAPSHOT_PLUS_UPDATES" />
+      <value enum="2" description="DISABLE_PREVIOUS_SNAPSHOT_PLUS_UPDATE_REQUEST" />
+    </field>
+    <field number="264" name="MarketDepth" type="INT">
+<!--
+      Temporarily commented out until we can handle
+      N>1 scenario
+
+      <value enum="0" description="FULL_BOOK"/>
+      <value enum="1" description="TOP_OF_BOOK"/>
+-->
+    </field>
+    <field number="265" name="MDUpdateType" type="INT">
+      <value enum="0" description="FULL_REFRESH" />
+      <value enum="1" description="INCREMENTAL_REFRESH" />
+    </field>
+    <field number="266" name="AggregatedBook" type="BOOLEAN" />
+    <field number="267" name="NoMDEntryTypes" type="NUMINGROUP" />
+    <field number="268" name="NoMDEntries" type="NUMINGROUP" />
+    <field number="269" name="MDEntryType" type="CHAR">
+      <value enum="0" description="BID" />
+      <value enum="1" description="OFFER" />
+      <value enum="2" description="TRADE" />
+      <value enum="3" description="INDEX_VALUE" />
+      <value enum="4" description="OPENING_PRICE" />
+      <value enum="5" description="CLOSING_PRICE" />
+      <value enum="6" description="SETTLEMENT_PRICE" />
+      <value enum="7" description="TRADING_SESSION_HIGH_PRICE" />
+      <value enum="8" description="TRADING_SESSION_LOW_PRICE" />
+      <value enum="9" description="TRADING_SESSION_VWAP_PRICE" />
+      <value enum="A" description="IMBALANCE" />
+      <value enum="B" description="TRADE_VOLUME" />
+      <value enum="C" description="OPEN_INTEREST" />
+    </field>
+    <field number="270" name="MDEntryPx" type="PRICE" />
+    <field number="271" name="MDEntrySize" type="QTY" />
+    <field number="272" name="MDEntryDate" type="UTCDATEONLY" />
+    <field number="273" name="MDEntryTime" type="UTCTIMEONLY" />
+    <field number="274" name="TickDirection" type="CHAR">
+      <value enum="0" description="PLUS_TICK" />
+      <value enum="1" description="ZERO_PLUS_TICK" />
+      <value enum="2" description="MINUS_TICK" />
+      <value enum="3" description="ZERO_MINUS_TICK" />
+    </field>
+    <field number="275" name="MDMkt" type="EXCHANGE" />
+    <field number="276" name="QuoteCondition" type="MULTIPLEVALUESTRING">
+      <value enum="A" description="OPEN_ACTIVE" />
+      <value enum="B" description="CLOSED_INACTIVE" />
+      <value enum="C" description="EXCHANGE_BEST" />
+      <value enum="D" description="CONSOLIDATED_BEST" />
+      <value enum="E" description="LOCKED" />
+      <value enum="F" description="CROSSED" />
+      <value enum="G" description="DEPTH" />
+      <value enum="H" description="FAST_TRADING" />
+      <value enum="I" description="NON_FIRM" />
+    </field>
+    <field number="277" name="TradeCondition" type="MULTIPLEVALUESTRING">
+      <value enum="A" description="CASH_MARKET" />
+      <value enum="B" description="AVERAGE_PRICE_TRADE" />
+      <value enum="C" description="CASH_TRADE" />
+      <value enum="D" description="NEXT_DAY_MARKET" />
+      <value enum="E" description="OPENING_REOPENING_TRADE_DETAIL" />
+      <value enum="F" description="INTRADAY_TRADE_DETAIL" />
+      <value enum="G" description="RULE127" />
+      <value enum="H" description="RULE155" />
+      <value enum="I" description="SOLD_LAST" />
+      <value enum="J" description="NEXT_DAY_TRADE" />
+      <value enum="K" description="OPENED" />
+      <value enum="L" description="SELLER" />
+      <value enum="M" description="SOLD" />
+      <value enum="N" description="STOPPED_STOCK" />
+      <value enum="P" description="IMBALANCE_MORE_BUYERS" />
+      <value enum="Q" description="IMBALANCE_MORE_SELLERS" />
+      <value enum="R" description="OPENING_PRICE" />
+    </field>
+    <field number="278" name="MDEntryID" type="STRING" />
+    <field number="279" name="MDUpdateAction" type="CHAR">
+      <value enum="0" description="NEW" />
+      <value enum="1" description="CHANGE" />
+      <value enum="2" description="DELETE" />
+    </field>
+    <field number="280" name="MDEntryRefID" type="STRING" />
+    <field number="281" name="MDReqRejReason" type="CHAR">
+      <value enum="0" description="UNKNOWN_SYMBOL" />
+      <value enum="1" description="DUPLICATE_MDREQID" />
+      <value enum="2" description="INSUFFICIENT_BANDWIDTH" />
+      <value enum="3" description="INSUFFICIENT_PERMISSIONS" />
+      <value enum="4" description="UNSUPPORTED_SUBSCRIPTIONREQUESTTYPE" />
+      <value enum="5" description="UNSUPPORTED_MARKETDEPTH" />
+      <value enum="6" description="UNSUPPORTED_MDUPDATETYPE" />
+      <value enum="7" description="UNSUPPORTED_AGGREGATEDBOOK" />
+      <value enum="8" description="UNSUPPORTED_MDENTRYTYPE" />
+      <value enum="9" description="UNSUPPORTED_TRADINGSESSIONID" />
+      <value enum="A" description="UNSUPPORTED_SCOPE" />
+      <value enum="B" description="UNSUPPORTED_OPENCLOSESETTLEFLAG" />
+      <value enum="C" description="UNSUPPORTED_MDIMPLICITDELETE" />
+    </field>
+    <field number="282" name="MDEntryOriginator" type="STRING" />
+    <field number="283" name="LocationID" type="STRING" />
+    <field number="284" name="DeskID" type="STRING" />
+    <field number="285" name="DeleteReason" type="CHAR">
+      <value enum="0" description="CANCELATION_TRADE_BUST" />
+      <value enum="1" description="ERROR" />
+    </field>
+    <field number="286" name="OpenCloseSettlFlag" type="MULTIPLEVALUESTRING">
+      <value enum="0" description="DAILY_OPEN_CLOSE_SETTLEMENT_ENTRY" />
+      <value enum="1" description="SESSION_OPEN_CLOSE_SETTLEMENT_ENTRY" />
+      <value enum="2" description="DELIVERY_SETTLEMENT_ENTRY" />
+      <value enum="3" description="EXPECTED_ENTRY" />
+      <value enum="4" description="ENTRY_FROM_PREVIOUS_BUSINESS_DAY" />
+      <value enum="5" description="THEORETICAL_PRICE_VALUE" />
+    </field>
+    <field number="287" name="SellerDays" type="INT" />
+    <field number="288" name="MDEntryBuyer" type="STRING" />
+    <field number="289" name="MDEntrySeller" type="STRING" />
+    <field number="290" name="MDEntryPositionNo" type="INT" />
+    <field number="291" name="FinancialStatus" type="MULTIPLEVALUESTRING">
+      <value enum="1" description="BANKRUPT" />
+      <value enum="2" description="PENDING_DELISTING" />
+    </field>
+    <field number="292" name="CorporateAction" type="MULTIPLEVALUESTRING">
+      <value enum="A" description="EX_DIVIDEND" />
+      <value enum="B" description="EX_DISTRIBUTION" />
+      <value enum="C" description="EX_RIGHTS" />
+      <value enum="D" description="NEW" />
+      <value enum="E" description="EX_INTEREST" />
+    </field>
+    <field number="293" name="DefBidSize" type="QTY" />
+    <field number="294" name="DefOfferSize" type="QTY" />
+    <field number="295" name="NoQuoteEntries" type="NUMINGROUP" />
+    <field number="296" name="NoQuoteSets" type="NUMINGROUP" />
+    <field number="297" name="QuoteStatus" type="INT">
+      <value enum="0" description="ACCEPTED" />
+      <value enum="1" description="CANCELED_FOR_SYMBOL" />
+      <value enum="2" description="CANCELED_FOR_SECURITY_TYPE" />
+      <value enum="3" description="CANCELED_FOR_UNDERLYING" />
+      <value enum="4" description="CANCELED_ALL" />
+      <value enum="5" description="REJECTED" />
+      <value enum="6" description="REMOVED_FROM_MARKET" />
+      <value enum="7" description="EXPIRED" />
+      <value enum="8" description="QUERY" />
+      <value enum="9" description="QUOTE_NOT_FOUND" />
+      <value enum="10" description="PENDING" />
+      <value enum="11" description="PASS" />
+      <value enum="12" description="LOCKED_MARKET_WARNING" />
+      <value enum="13" description="CROSS_MARKET_WARNING" />
+      <value enum="14" description="CANCELED_DUE_TO_LOCK_MARKET" />
+      <value enum="15" description="CANCELED_DUE_TO_CROSS_MARKET" />
+    </field>
+    <field number="298" name="QuoteCancelType" type="INT">
+      <value enum="1" description="CANCEL_FOR_SYMBOL" />
+      <value enum="2" description="CANCEL_FOR_SECURITY_TYPE" />
+      <value enum="3" description="CANCEL_FOR_UNDERLYING_SYMBOL" />
+      <value enum="4" description="CANCEL_ALL_QUOTES" />
+    </field>
+    <field number="299" name="QuoteEntryID" type="STRING" />
+    <field number="300" name="QuoteRejectReason" type="INT">
+      <value enum="1" description="UNKNOWN_SYMBOL" />
+      <value enum="2" description="EXCHANGE_CLOSED" />
+      <value enum="3" description="QUOTE_REQUEST_EXCEEDS_LIMIT" />
+      <value enum="4" description="TOO_LATE_TO_ENTER" />
+      <value enum="5" description="UNKNOWN_QUOTE" />
+      <value enum="6" description="DUPLICATE_QUOTE" />
+      <value enum="7" description="INVALID_BID_ASK_SPREAD" />
+      <value enum="8" description="INVALID_PRICE" />
+      <value enum="9" description="NOT_AUTHORIZED_TO_QUOTE_SECURITY" />
+    </field>
+    <field number="301" name="QuoteResponseLevel" type="INT">
+      <value enum="0" description="NO_ACKNOWLEDGEMENT" />
+      <value enum="1" description="ACKNOWLEDGE_ONLY_NEGATIVE_OR_ERRONEOUS_QUOTES" />
+      <value enum="2" description="ACKNOWLEDGE_EACH_QUOTE_MESSAGES" />
+    </field>
+    <field number="302" name="QuoteSetID" type="STRING" />
+    <field number="303" name="QuoteRequestType" type="INT">
+      <value enum="1" description="MANUAL" />
+      <value enum="2" description="AUTOMATIC" />
+    </field>
+    <field number="304" name="TotNoQuoteEntries" type="INT" />
+    <field number="305" name="UnderlyingSecurityIDSource" type="STRING" />
+    <field number="306" name="UnderlyingIssuer" type="STRING" />
+    <field number="307" name="UnderlyingSecurityDesc" type="STRING" />
+    <field number="308" name="UnderlyingSecurityExchange" type="EXCHANGE" />
+    <field number="309" name="UnderlyingSecurityID" type="STRING" />
+    <field number="310" name="UnderlyingSecurityType" type="STRING" />
+    <field number="311" name="UnderlyingSymbol" type="STRING" />
+    <field number="312" name="UnderlyingSymbolSfx" type="STRING" />
+    <field number="313" name="UnderlyingMaturityMonthYear" type="MONTHYEAR" />
+    <field number="316" name="UnderlyingStrikePrice" type="PRICE" />
+    <field number="317" name="UnderlyingOptAttribute" type="CHAR" />
+    <field number="318" name="UnderlyingCurrency" type="CURRENCY" />
+    <field number="320" name="SecurityReqID" type="STRING" />
+    <field number="321" name="SecurityRequestType" type="INT">
+      <value enum="0" description="REQUEST_SECURITY_IDENTITY_AND_SPECIFICATIONS" />
+      <value enum="1" description="REQUEST_SECURITY_IDENTITY_FOR_THE_SPECIFICATIONS_PROVIDED" />
+      <value enum="2" description="REQUEST_LIST_SECURITY_TYPES" />
+      <value enum="3" description="REQUEST_LIST_SECURITIES" />
+    </field>
+    <field number="322" name="SecurityResponseID" type="STRING" />
+    <field number="323" name="SecurityResponseType" type="INT">
+      <value enum="1" description="ACCEPT_SECURITY_PROPOSAL_AS_IS" />
+      <value enum="2" description="ACCEPT_SECURITY_PROPOSAL_WITH_REVISIONS_AS_INDICATED_IN_THE_MESSAGE" />
+      <value enum="3" description="LIST_OF_SECURITY_TYPES_RETURNED_PER_REQUEST" />
+      <value enum="4" description="LIST_OF_SECURITIES_RETURNED_PER_REQUEST" />
+      <value enum="5" description="REJECT_SECURITY_PROPOSAL" />
+      <value enum="6" description="CAN_NOT_MATCH_SELECTION_CRITERIA" />
+    </field>
+    <field number="324" name="SecurityStatusReqID" type="STRING" />
+    <field number="325" name="UnsolicitedIndicator" type="BOOLEAN" />
+    <field number="326" name="SecurityTradingStatus" type="INT">
+      <value enum="1" description="OPENING_DELAY" />
+      <value enum="2" description="TRADING_HALT" />
+      <value enum="3" description="RESUME" />
+      <value enum="4" description="NO_OPEN_NO_RESUME" />
+      <value enum="5" description="PRICE_INDICATION" />
+      <value enum="6" description="TRADING_RANGE_INDICATION" />
+      <value enum="7" description="MARKET_IMBALANCE_BUY" />
+      <value enum="8" description="MARKET_IMBALANCE_SELL" />
+      <value enum="9" description="MARKET_ON_CLOSE_IMBALANCE_BUY" />
+      <value enum="10" description="MARKET_ON_CLOSE_IMBALANCE_SELL" />
+      <value enum="11" description="NOT_ASSIGNED" />
+      <value enum="12" description="NO_MARKET_IMBALANCE" />
+      <value enum="13" description="NO_MARKET_ON_CLOSE_IMBALANCE" />
+      <value enum="14" description="ITS_PRE_OPENING" />
+      <value enum="15" description="NEW_PRICE_INDICATION" />
+      <value enum="16" description="TRADE_DISSEMINATION_TIME" />
+      <value enum="17" description="READY_TO_TRADE_START_OF_SESSION" />
+      <value enum="18" description="NOT_AVAILABLE_FOR_TRADING_END_OF_SESSION" />
+      <value enum="19" description="NOT_TRADED_ON_THIS_MARKET" />
+      <value enum="20" description="UNKNOWN_OR_INVALID" />
+      <value enum="21" description="PRE_OPEN" />
+      <value enum="22" description="OPENING_ROTATION" />
+      <value enum="23" description="FAST_MARKET" />
+    </field>
+    <field number="327" name="HaltReason" type="CHAR">
+      <value enum="I" description="ORDER_IMBALANCE" />
+      <value enum="X" description="EQUIPMENT_CHANGEOVER" />
+      <value enum="P" description="NEWS_PENDING" />
+      <value enum="D" description="NEWS_DISSEMINATION" />
+      <value enum="E" description="ORDER_INFLUX" />
+      <value enum="M" description="ADDITIONAL_INFORMATION" />
+    </field>
+    <field number="328" name="InViewOfCommon" type="BOOLEAN" />
+    <field number="329" name="DueToRelated" type="BOOLEAN" />
+    <field number="330" name="BuyVolume" type="QTY" />
+    <field number="331" name="SellVolume" type="QTY" />
+    <field number="332" name="HighPx" type="PRICE" />
+    <field number="333" name="LowPx" type="PRICE" />
+    <field number="334" name="Adjustment" type="INT">
+      <value enum="1" description="CANCEL" />
+      <value enum="2" description="ERROR" />
+      <value enum="3" description="CORRECTION" />
+    </field>
+    <field number="335" name="TradSesReqID" type="STRING" />
+    <field number="336" name="TradingSessionID" type="STRING" />
+    <field number="337" name="ContraTrader" type="STRING" />
+    <field number="338" name="TradSesMethod" type="INT">
+      <value enum="1" description="ELECTRONIC" />
+      <value enum="2" description="OPEN_OUTCRY" />
+      <value enum="3" description="TWO_PARTY" />
+    </field>
+    <field number="339" name="TradSesMode" type="INT">
+      <value enum="1" description="TESTING" />
+      <value enum="2" description="SIMULATED" />
+      <value enum="3" description="PRODUCTION" />
+    </field>
+    <field number="340" name="TradSesStatus" type="INT">
+      <value enum="0" description="UNKNOWN" />
+      <value enum="1" description="HALTED" />
+      <value enum="2" description="OPEN" />
+      <value enum="3" description="CLOSED" />
+      <value enum="4" description="PRE_OPEN" />
+      <value enum="5" description="PRE_CLOSE" />
+      <value enum="6" description="REQUEST_REJECTED" />
+    </field>
+    <field number="341" name="TradSesStartTime" type="UTCTIMESTAMP" />
+    <field number="342" name="TradSesOpenTime" type="UTCTIMESTAMP" />
+    <field number="343" name="TradSesPreCloseTime" type="UTCTIMESTAMP" />
+    <field number="344" name="TradSesCloseTime" type="UTCTIMESTAMP" />
+    <field number="345" name="TradSesEndTime" type="UTCTIMESTAMP" />
+    <field number="346" name="NumberOfOrders" type="INT" />
+    <field number="347" name="MessageEncoding" type="STRING">
+      <value enum="ISO-2022-JP" description="ISO_2022_JP" />
+      <value enum="EUC-JP" description="EUC_JP" />
+      <value enum="SHIFT_JIS" description="SHIFT_JIS" />
+      <value enum="UTF-8" description="UTF_8" />
+    </field>
+    <field number="348" name="EncodedIssuerLen" type="LENGTH" />
+    <field number="349" name="EncodedIssuer" type="DATA" />
+    <field number="350" name="EncodedSecurityDescLen" type="LENGTH" />
+    <field number="351" name="EncodedSecurityDesc" type="DATA" />
+    <field number="352" name="EncodedListExecInstLen" type="LENGTH" />
+    <field number="353" name="EncodedListExecInst" type="DATA" />
+    <field number="354" name="EncodedTextLen" type="LENGTH" />
+    <field number="355" name="EncodedText" type="DATA" />
+    <field number="356" name="EncodedSubjectLen" type="LENGTH" />
+    <field number="357" name="EncodedSubject" type="DATA" />
+    <field number="358" name="EncodedHeadlineLen" type="LENGTH" />
+    <field number="359" name="EncodedHeadline" type="DATA" />
+    <field number="360" name="EncodedAllocTextLen" type="LENGTH" />
+    <field number="361" name="EncodedAllocText" type="DATA" />
+    <field number="362" name="EncodedUnderlyingIssuerLen" type="LENGTH" />
+    <field number="363" name="EncodedUnderlyingIssuer" type="DATA" />
+    <field number="364" name="EncodedUnderlyingSecurityDescLen" type="LENGTH" />
+    <field number="365" name="EncodedUnderlyingSecurityDesc" type="DATA" />
+    <field number="366" name="AllocPrice" type="PRICE" />
+    <field number="367" name="QuoteSetValidUntilTime" type="UTCTIMESTAMP" />
+    <field number="368" name="QuoteEntryRejectReason" type="INT">
+      <value enum="1" description="UNKNOWN_SYMBOL" />
+      <value enum="2" description="EXCHANGE_CLOSED" />
+      <value enum="3" description="QUOTE_EXCEEDS_LIMIT" />
+      <value enum="4" description="TOO_LATE_TO_ENTER" />
+      <value enum="5" description="UNKNOWN_QUOTE" />
+      <value enum="6" description="DUPLICATE_QUOTE" />
+      <value enum="7" description="INVALID_BID_ASK_SPREAD" />
+      <value enum="8" description="INVALID_PRICE" />
+      <value enum="9" description="NOT_AUTHORIZED_TO_QUOTE_SECURITY" />
+    </field>
+    <field number="369" name="LastMsgSeqNumProcessed" type="SEQNUM" />
+    <field number="371" name="RefTagID" type="INT" />
+    <field number="372" name="RefMsgType" type="STRING" />
+    <field number="373" name="SessionRejectReason" type="INT">
+      <value enum="0" description="INVALID_TAG_NUMBER" />
+      <value enum="1" description="REQUIRED_TAG_MISSING" />
+      <value enum="2" description="TAG_NOT_DEFINED_FOR_THIS_MESSAGE_TYPE" />
+      <value enum="3" description="UNDEFINED_TAG" />
+      <value enum="4" description="TAG_SPECIFIED_WITHOUT_A_VALUE" />
+      <value enum="5" description="VALUE_IS_INCORRECT" />
+      <value enum="6" description="INCORRECT_DATA_FORMAT_FOR_VALUE" />
+      <value enum="7" description="DECRYPTION_PROBLEM" />
+      <value enum="8" description="SIGNATURE_PROBLEM" />
+      <value enum="9" description="COMPID_PROBLEM" />
+      <value enum="10" description="SENDINGTIME_ACCURACY_PROBLEM" />
+      <value enum="11" description="INVALID_MSGTYPE" />
+      <value enum="12" description="XML_VALIDATION_ERROR" />
+      <value enum="13" description="TAG_APPEARS_MORE_THAN_ONCE" />
+      <value enum="14" description="TAG_SPECIFIED_OUT_OF_REQUIRED_ORDER" />
+      <value enum="15" description="REPEATING_GROUP_FIELDS_OUT_OF_ORDER" />
+      <value enum="16" description="INCORRECT_NUMINGROUP_COUNT_FOR_REPEATING_GROUP" />
+      <value enum="17" description="NON_DATA_VALUE_INCLUDES_FIELD_DELIMITER" />
+      <value enum="99" description="OTHER" />
+    </field>
+    <field number="374" name="BidRequestTransType" type="CHAR">
+      <value enum="N" description="NEW" />
+      <value enum="C" description="CANCEL" />
+    </field>
+    <field number="375" name="ContraBroker" type="STRING" />
+    <field number="376" name="ComplianceID" type="STRING" />
+    <field number="377" name="SolicitedFlag" type="BOOLEAN" />
+    <field number="378" name="ExecRestatementReason" type="INT">
+      <value enum="0" description="GT_CORPORATE_ACTION" />
+      <value enum="1" description="GT_RENEWAL_RESTATEMENT" />
+      <value enum="2" description="VERBAL_CHANGE" />
+      <value enum="3" description="REPRICING_OF_ORDER" />
+      <value enum="4" description="BROKER_OPTION" />
+      <value enum="5" description="PARTIAL_DECLINE_OF_ORDERQTY" />
+      <value enum="6" description="CANCEL_ON_TRADING_HALT" />
+      <value enum="7" description="CANCEL_ON_SYSTEM_FAILURE" />
+      <value enum="8" description="MARKET_OPTION" />
+      <value enum="9" description="CANCELED_NOT_BEST" />
+    </field>
+    <field number="379" name="BusinessRejectRefID" type="STRING" />
+    <field number="380" name="BusinessRejectReason" type="INT">
+      <value enum="0" description="OTHER" />
+      <value enum="1" description="UNKOWN_ID" />
+      <value enum="2" description="UNKNOWN_SECURITY" />
+      <value enum="3" description="UNSUPPORTED_MESSAGE_TYPE" />
+      <value enum="4" description="APPLICATION_NOT_AVAILABLE" />
+      <value enum="5" description="CONDITIONALLY_REQUIRED_FIELD_MISSING" />
+      <value enum="6" description="NOT_AUTHORIZED" />
+      <value enum="7" description="DELIVERTO_FIRM_NOT_AVAILABLE_AT_THIS_TIME" />
+    </field>
+    <field number="381" name="GrossTradeAmt" type="AMT" />
+    <field number="382" name="NoContraBrokers" type="NUMINGROUP" />
+    <field number="383" name="MaxMessageSize" type="LENGTH" />
+    <field number="384" name="NoMsgTypes" type="NUMINGROUP" />
+    <field number="385" name="MsgDirection" type="CHAR">
+      <value enum="S" description="SEND" />
+      <value enum="R" description="RECEIVE" />
+    </field>
+    <field number="386" name="NoTradingSessions" type="NUMINGROUP" />
+    <field number="387" name="TotalVolumeTraded" type="QTY" />
+    <field number="388" name="DiscretionInst" type="CHAR">
+      <value enum="0" description="RELATED_TO_DISPLAYED_PRICE" />
+      <value enum="1" description="RELATED_TO_MARKET_PRICE" />
+      <value enum="2" description="RELATED_TO_PRIMARY_PRICE" />
+      <value enum="3" description="RELATED_TO_LOCAL_PRIMARY_PRICE" />
+      <value enum="4" description="RELATED_TO_MIDPOINT_PRICE" />
+      <value enum="5" description="RELATED_TO_LAST_TRADE_PRICE" />
+      <value enum="6" description="RELATED_TO_VWAP" />
+    </field>
+    <field number="389" name="DiscretionOffsetValue" type="FLOAT" />
+    <field number="390" name="BidID" type="STRING" />
+    <field number="391" name="ClientBidID" type="STRING" />
+    <field number="392" name="ListName" type="STRING" />
+    <field number="393" name="TotNoRelatedSym" type="INT" />
+    <field number="394" name="BidType" type="INT">
+      <value enum="1" description="NON_DISCLOSED" />
+      <value enum="2" description="DISCLOSED_STYLE" />
+      <value enum="3" description="NO_BIDDING_PROCESS" />
+    </field>
+    <field number="395" name="NumTickets" type="INT" />
+    <field number="396" name="SideValue1" type="AMT" />
+    <field number="397" name="SideValue2" type="AMT" />
+    <field number="398" name="NoBidDescriptors" type="NUMINGROUP" />
+    <field number="399" name="BidDescriptorType" type="INT">
+      <value enum="1" description="SECTOR" />
+      <value enum="2" description="COUNTRY" />
+      <value enum="3" description="INDEX" />
+    </field>
+    <field number="400" name="BidDescriptor" type="STRING" />
+    <field number="401" name="SideValueInd" type="INT">
+      <value enum="1" description="SIDEVALUE1" />
+      <value enum="2" description="SIDEVALUE2" />
+    </field>
+    <field number="402" name="LiquidityPctLow" type="PERCENTAGE" />
+    <field number="403" name="LiquidityPctHigh" type="PERCENTAGE" />
+    <field number="404" name="LiquidityValue" type="AMT" />
+    <field number="405" name="EFPTrackingError" type="PERCENTAGE" />
+    <field number="406" name="FairValue" type="AMT" />
+    <field number="407" name="OutsideIndexPct" type="PERCENTAGE" />
+    <field number="408" name="ValueOfFutures" type="AMT" />
+    <field number="409" name="LiquidityIndType" type="INT">
+      <value enum="1" description="FIVEDAY_MOVING_AVERAGE" />
+      <value enum="2" description="TWENTYDAY_MOVING_AVERAGE" />
+      <value enum="3" description="NORMAL_MARKET_SIZE" />
+      <value enum="4" description="OTHER" />
+    </field>
+    <field number="410" name="WtAverageLiquidity" type="PERCENTAGE" />
+    <field number="411" name="ExchangeForPhysical" type="BOOLEAN" />
+    <field number="412" name="OutMainCntryUIndex" type="AMT" />
+    <field number="413" name="CrossPercent" type="PERCENTAGE" />
+    <field number="414" name="ProgRptReqs" type="INT">
+      <value enum="1" description="BUYSIDE_EXPLICITLY_REQUESTS_STATUS_USING_STATUSREQUEST" />
+      <value enum="2" description="SELLSIDE_PERIODICALLY_SENDS_STATUS_USING_LISTSTATUS" />
+      <value enum="3" description="REAL_TIME_EXECUTION_REPORTS" />
+    </field>
+    <field number="415" name="ProgPeriodInterval" type="INT" />
+    <field number="416" name="IncTaxInd" type="INT">
+      <value enum="1" description="NET" />
+      <value enum="2" description="GROSS" />
+    </field>
+    <field number="417" name="NumBidders" type="INT" />
+    <field number="418" name="BidTradeType" type="CHAR">
+      <value enum="R" description="RISK_TRADE" />
+      <value enum="G" description="VWAP_GUARANTEE" />
+      <value enum="A" description="AGENCY" />
+      <value enum="J" description="GUARANTEED_CLOSE" />
+    </field>
+    <field number="419" name="BasisPxType" type="CHAR">
+      <value enum="2" description="CLOSING_PRICE_AT_MORNING_SESSION" />
+      <value enum="3" description="CLOSING_PRICE" />
+      <value enum="4" description="CURRENT_PRICE" />
+      <value enum="5" description="SQ" />
+      <value enum="6" description="VWAP_THROUGH_A_DAY" />
+      <value enum="7" description="VWAP_THROUGH_A_MORNING_SESSION" />
+      <value enum="8" description="VWAP_THROUGH_AN_AFTERNOON_SESSION" />
+      <value enum="9" description="VWAP_THROUGH_A_DAY_EXCEPT_YORI" />
+      <value enum="A" description="VWAP_THROUGH_A_MORNING_SESSION_EXCEPT_YORI" />
+      <value enum="B" description="VWAP_THROUGH_AN_AFTERNOON_SESSION_EXCEPT_YORI" />
+      <value enum="C" description="STRIKE" />
+      <value enum="D" description="OPEN" />
+      <value enum="Z" description="OTHERS" />
+    </field>
+    <field number="420" name="NoBidComponents" type="NUMINGROUP" />
+    <field number="421" name="Country" type="COUNTRY" />
+    <field number="422" name="TotNoStrikes" type="INT" />
+    <field number="423" name="PriceType" type="INT">
+      <value enum="1" description="PERCENTAGE" />
+      <value enum="2" description="PER_UNIT" />
+      <value enum="3" description="FIXED_AMOUNT" />
+      <value enum="4" description="DISCOUNT" />
+      <value enum="5" description="PREMIUM" />
+      <value enum="6" description="SPREAD" />
+      <value enum="7" description="TED_PRICE" />
+      <value enum="8" description="TED_YIELD" />
+      <value enum="9" description="YIELD" />
+    </field>
+    <field number="424" name="DayOrderQty" type="QTY" />
+    <field number="425" name="DayCumQty" type="QTY" />
+    <field number="426" name="DayAvgPx" type="PRICE" />
+    <field number="427" name="GTBookingInst" type="INT">
+      <value enum="0" description="BOOK_OUT_ALL_TRADES_ON_DAY_OF_EXECUTION" />
+      <value enum="1" description="ACCUMULATE_EXECUTIONS_UNTIL_ORDER_IS_FILLED_OR_EXPIRES" />
+      <value enum="2" description="ACCUMULATE_UNTIL_VERBALLY_NOTIFIED_OTHERWISE" />
+    </field>
+    <field number="428" name="NoStrikes" type="NUMINGROUP" />
+    <field number="429" name="ListStatusType" type="INT">
+      <value enum="1" description="ACK" />
+      <value enum="2" description="RESPONSE" />
+      <value enum="3" description="TIMED" />
+      <value enum="4" description="EXECSTARTED" />
+      <value enum="5" description="ALLDONE" />
+      <value enum="6" description="ALERT" />
+    </field>
+    <field number="430" name="NetGrossInd" type="INT">
+      <value enum="1" description="NET" />
+      <value enum="2" description="GROSS" />
+    </field>
+    <field number="431" name="ListOrderStatus" type="INT">
+      <value enum="1" description="INBIDDINGPROCESS" />
+      <value enum="2" description="RECEIVEDFOREXECUTION" />
+      <value enum="3" description="EXECUTING" />
+      <value enum="4" description="CANCELING" />
+      <value enum="5" description="ALERT" />
+      <value enum="6" description="ALL_DONE" />
+      <value enum="7" description="REJECT" />
+    </field>
+    <field number="432" name="ExpireDate" type="LOCALMKTDATE" />
+    <field number="433" name="ListExecInstType" type="CHAR">
+      <value enum="1" description="IMMEDIATE" />
+      <value enum="2" description="WAIT_FOR_EXECUTE_INSTRUCTION" />
+      <value enum="3" description="EXCHANGE_SWITCH_CIV_ORDER_SELL_DRIVEN" />
+      <value enum="4" description="EXCHANGE_SWITCH_CIV_ORDER_BUY_DRIVEN_CASH_TOP_UP" />
+      <value enum="5" description="EXCHANGE_SWITCH_CIV_ORDER_BUY_DRIVEN_CASH_WITHDRAW" />
+    </field>
+    <field number="434" name="CxlRejResponseTo" type="CHAR">
+      <value enum="1" description="ORDER_CANCEL_REQUEST" />
+      <value enum="2" description="ORDER_CANCEL_REPLACE_REQUEST" />
+    </field>
+    <field number="435" name="UnderlyingCouponRate" type="PERCENTAGE" />
+    <field number="436" name="UnderlyingContractMultiplier" type="FLOAT" />
+    <field number="437" name="ContraTradeQty" type="QTY" />
+    <field number="438" name="ContraTradeTime" type="UTCTIMESTAMP" />
+    <field number="441" name="LiquidityNumSecurities" type="INT" />
+    <field number="442" name="MultiLegReportingType" type="CHAR">
+      <value enum="1" description="SINGLE_SECURITY" />
+      <value enum="2" description="INDIVIDUAL_LEG_OF_A_MULTI_LEG_SECURITY" />
+      <value enum="3" description="MULTI_LEG_SECURITY" />
+    </field>
+    <field number="443" name="StrikeTime" type="UTCTIMESTAMP" />
+    <field number="444" name="ListStatusText" type="STRING" />
+    <field number="445" name="EncodedListStatusTextLen" type="LENGTH" />
+    <field number="446" name="EncodedListStatusText" type="DATA" />
+    <field number="447" name="PartyIDSource" type="CHAR">
+      <value enum="B" description="BIC" />
+      <value enum="C" description="GENERALLY_ACCEPTED_MARKET_PARTICIPANT_IDENTIFIER" />
+      <value enum="D" description="PROPRIETARY_CUSTOM_CODE" />
+      <value enum="E" description="ISO_COUNTRY_CODE" />
+      <value enum="F" description="SETTLEMENT_ENTITY_LOCATION" />
+      <value enum="G" description="MIC" />
+      <value enum="H" description="CSD_PARTICIPANT_MEMBER_CODE" />
+      <value enum="1" description="KOREAN_INVESTOR_ID" />
+      <value enum="2" description="TAIWANESE_QUALIFIED_FOREIGN_INVESTOR_ID_QFII_FID" />
+      <value enum="3" description="TAIWANESE_TRADING_ACCOUNT" />
+      <value enum="4" description="MALAYSIAN_CENTRAL_DEPOSITORY_NUMBER" />
+      <value enum="5" description="CHINESE_B_SHARE" />
+      <value enum="6" description="UK_NATIONAL_INSURANCE_OR_PENSION_NUMBER" />
+      <value enum="7" description="US_SOCIAL_SECURITY_NUMBER" />
+      <value enum="8" description="US_EMPLOYER_IDENTIFICATION_NUMBER" />
+      <value enum="9" description="AUSTRALIAN_BUSINESS_NUMBER" />
+      <value enum="A" description="AUSTRALIAN_TAX_FILE_NUMBER" />
+      <value enum="I" description="DIRECTED_BROKER" />
+    </field>
+    <field number="448" name="PartyID" type="STRING" />
+    <field number="451" name="NetChgPrevDay" type="PRICEOFFSET" />
+    <field number="452" name="PartyRole" type="INT">
+      <value enum="1" description="EXECUTING_FIRM" />
+      <value enum="2" description="BROKER_OF_CREDIT" />
+      <value enum="3" description="CLIENT_ID" />
+      <value enum="4" description="CLEARING_FIRM" />
+      <value enum="5" description="INVESTOR_ID" />
+      <value enum="6" description="INTRODUCING_FIRM" />
+      <value enum="7" description="ENTERING_FIRM" />
+      <value enum="8" description="LOCATE_LENDING_FIRM" />
+      <value enum="9" description="FUND_MANAGER_CLIENT_ID" />
+    </field>
+    <field number="453" name="NoPartyIDs" type="NUMINGROUP" />
+    <field number="454" name="NoSecurityAltID" type="NUMINGROUP" />
+    <field number="455" name="SecurityAltID" type="STRING" />
+    <field number="456" name="SecurityAltIDSource" type="STRING" />
+    <field number="457" name="NoUnderlyingSecurityAltID" type="NUMINGROUP" />
+    <field number="458" name="UnderlyingSecurityAltID" type="STRING" />
+    <field number="459" name="UnderlyingSecurityAltIDSource" type="STRING" />
+    <field number="460" name="Product" type="INT">
+      <value enum="1" description="AGENCY" />
+      <value enum="2" description="COMMODITY" />
+      <value enum="3" description="CORPORATE" />
+      <value enum="4" description="CURRENCY" />
+      <value enum="5" description="EQUITY" />
+      <value enum="6" description="GOVERNMENT" />
+      <value enum="7" description="INDEX" />
+      <value enum="8" description="LOAN" />
+      <value enum="9" description="MONEYMARKET" />
+      <value enum="10" description="MORTGAGE" />
+      <value enum="11" description="MUNICIPAL" />
+      <value enum="12" description="OTHER" />
+      <value enum="13" description="FINANCING" />
+    </field>
+    <field number="461" name="CFICode" type="STRING" />
+    <field number="462" name="UnderlyingProduct" type="INT" />
+    <field number="463" name="UnderlyingCFICode" type="STRING" />
+    <field number="464" name="TestMessageIndicator" type="BOOLEAN" />
+    <field number="465" name="QuantityType" type="INT">
+      <value enum="1" description="SHARES" />
+      <value enum="2" description="BONDS" />
+      <value enum="3" description="CURRENTFACE" />
+      <value enum="4" description="ORIGINALFACE" />
+      <value enum="5" description="CURRENCY" />
+      <value enum="6" description="CONTRACTS" />
+      <value enum="7" description="OTHER" />
+      <value enum="8" description="PAR" />
+    </field>
+    <field number="466" name="BookingRefID" type="STRING" />
+    <field number="467" name="IndividualAllocID" type="STRING" />
+    <field number="468" name="RoundingDirection" type="CHAR">
+      <value enum="0" description="ROUND_TO_NEAREST" />
+      <value enum="1" description="ROUND_DOWN" />
+      <value enum="2" description="ROUND_UP" />
+    </field>
+    <field number="469" name="RoundingModulus" type="FLOAT" />
+    <field number="470" name="CountryOfIssue" type="COUNTRY" />
+    <field number="471" name="StateOrProvinceOfIssue" type="STRING" />
+    <field number="472" name="LocaleOfIssue" type="STRING" />
+    <field number="473" name="NoRegistDtls" type="NUMINGROUP" />
+    <field number="474" name="MailingDtls" type="STRING" />
+    <field number="475" name="InvestorCountryOfResidence" type="COUNTRY" />
+    <field number="476" name="PaymentRef" type="STRING" />
+    <field number="477" name="DistribPaymentMethod" type="INT">
+      <value enum="1" description="CREST" />
+      <value enum="2" description="NSCC" />
+      <value enum="3" description="EUROCLEAR" />
+      <value enum="4" description="CLEARSTREAM" />
+      <value enum="5" description="CHEQUE" />
+      <value enum="6" description="TELEGRAPHIC_TRANSFER" />
+      <value enum="7" description="FEDWIRE" />
+      <value enum="8" description="DIRECT_CREDIT" />
+      <value enum="9" description="ACH_CREDIT" />
+    </field>
+    <field number="478" name="CashDistribCurr" type="CURRENCY" />
+    <field number="479" name="CommCurrency" type="CURRENCY" />
+    <field number="480" name="CancellationRights" type="CHAR">
+      <value enum="N" description="NO_EXECUTION_ONLY" />
+      <value enum="M" description="NO_WAIVER_AGREEMENT" />
+      <value enum="O" description="NO_INSTITUTIONAL" />
+    </field>
+    <field number="481" name="MoneyLaunderingStatus" type="CHAR">
+      <value enum="Y" description="PASSED" />
+      <value enum="N" description="NOT_CHECKED" />
+      <value enum="1" description="EXEMPT_BELOW_THE_LIMIT" />
+      <value enum="2" description="EXEMPT_CLIENT_MONEY_TYPE_EXEMPTION" />
+      <value enum="3" description="EXEMPT_AUTHORISED_CREDIT_OR_FINANCIAL_INSTITUTION" />
+    </field>
+    <field number="482" name="MailingInst" type="STRING" />
+    <field number="483" name="TransBkdTime" type="UTCTIMESTAMP" />
+    <field number="484" name="ExecPriceType" type="CHAR">
+      <value enum="B" description="BID_PRICE" />
+      <value enum="C" description="CREATION_PRICE" />
+      <value enum="D" description="CREATION_PRICE_PLUS_ADJUSTMENT_PERCENT" />
+      <value enum="E" description="CREATION_PRICE_PLUS_ADJUSTMENT_AMOUNT" />
+      <value enum="O" description="OFFER_PRICE" />
+      <value enum="P" description="OFFER_PRICE_MINUS_ADJUSTMENT_PERCENT" />
+      <value enum="Q" description="OFFER_PRICE_MINUS_ADJUSTMENT_AMOUNT" />
+      <value enum="S" description="SINGLE_PRICE" />
+    </field>
+    <field number="485" name="ExecPriceAdjustment" type="FLOAT" />
+    <field number="486" name="DateOfBirth" type="LOCALMKTDATE" />
+    <field number="487" name="TradeReportTransType" type="INT">
+      <value enum="0" description="NEW" />
+      <value enum="1" description="CANCEL" />
+      <value enum="2" description="REPLACE" />
+      <value enum="3" description="RELEASE" />
+      <value enum="4" description="REVERSE" />
+    </field>
+    <field number="488" name="CardHolderName" type="STRING" />
+    <field number="489" name="CardNumber" type="STRING" />
+    <field number="490" name="CardExpDate" type="LOCALMKTDATE" />
+    <field number="491" name="CardIssNum" type="STRING" />
+    <field number="492" name="PaymentMethod" type="INT">
+      <value enum="1" description="CREST" />
+      <value enum="2" description="NSCC" />
+      <value enum="3" description="EUROCLEAR" />
+      <value enum="4" description="CLEARSTREAM" />
+      <value enum="5" description="CHEQUE" />
+      <value enum="6" description="TELEGRAPHIC_TRANSFER" />
+      <value enum="7" description="FEDWIRE" />
+      <value enum="8" description="DEBIT_CARD" />
+      <value enum="9" description="DIRECT_DEBIT" />
+    </field>
+    <field number="493" name="RegistAcctType" type="STRING" />
+    <field number="494" name="Designation" type="STRING" />
+    <field number="495" name="TaxAdvantageType" type="INT">
+      <value enum="0" description="NONE" />
+      <value enum="1" description="MAXI_ISA" />
+      <value enum="2" description="TESSA" />
+      <value enum="3" description="MINI_CASH_ISA" />
+      <value enum="4" description="MINI_STOCKS_AND_SHARES_ISA" />
+      <value enum="5" description="MINI_INSURANCE_ISA" />
+      <value enum="6" description="CURRENT_YEAR_PAYMENT" />
+      <value enum="7" description="PRIOR_YEAR_PAYMENT" />
+      <value enum="8" description="ASSET_TRANSFER" />
+      <value enum="9" description="EMPLOYEE_PRIOR_YEAR" />
+      <value enum="999" description="OTHER" />
+    </field>
+    <field number="496" name="RegistRejReasonText" type="STRING" />
+    <field number="497" name="FundRenewWaiv" type="CHAR">
+      <value enum="Y" description="YES" />
+      <value enum="N" description="NO" />
+    </field>
+    <field number="498" name="CashDistribAgentName" type="STRING" />
+    <field number="499" name="CashDistribAgentCode" type="STRING" />
+    <field number="500" name="CashDistribAgentAcctNumber" type="STRING" />
+    <field number="501" name="CashDistribPayRef" type="STRING" />
+    <field number="502" name="CashDistribAgentAcctName" type="STRING" />
+    <field number="503" name="CardStartDate" type="LOCALMKTDATE" />
+    <field number="504" name="PaymentDate" type="LOCALMKTDATE" />
+    <field number="505" name="PaymentRemitterID" type="STRING" />
+    <field number="506" name="RegistStatus" type="CHAR">
+      <value enum="A" description="ACCEPTED" />
+      <value enum="R" description="REJECTED" />
+      <value enum="H" description="HELD" />
+      <value enum="N" description="REMINDER" />
+    </field>
+    <field number="507" name="RegistRejReasonCode" type="INT">
+      <value enum="1" description="INVALID_UNACCEPTABLE_ACCOUNT_TYPE" />
+      <value enum="2" description="INVALID_UNACCEPTABLE_TAX_EXEMPT_TYPE" />
+      <value enum="3" description="INVALID_UNACCEPTABLE_OWNERSHIP_TYPE" />
+      <value enum="4" description="INVALID_UNACCEPTABLE_NO_REG_DETLS" />
+      <value enum="5" description="INVALID_UNACCEPTABLE_REG_SEQ_NO" />
+      <value enum="6" description="INVALID_UNACCEPTABLE_REG_DTLS" />
+      <value enum="7" description="INVALID_UNACCEPTABLE_MAILING_DTLS" />
+      <value enum="8" description="INVALID_UNACCEPTABLE_MAILING_INST" />
+      <value enum="9" description="INVALID_UNACCEPTABLE_INVESTOR_ID" />
+      <value enum="10" description="INVALID_UNACCEPTABLE_INVESTOR_ID_SOURCE" />
+      <value enum="11" description="INVALID_UNACCEPTABLE_DATE_OF_BIRTH" />
+      <value enum="12" description="INVALID_UNACCEPTABLE_INVESTOR_COUNTRY_OF_RESIDENCE" />
+      <value enum="13" description="INVALID_UNACCEPTABLE_NODISTRIBINSTNS" />
+      <value enum="14" description="INVALID_UNACCEPTABLE_DISTRIB_PERCENTAGE" />
+      <value enum="15" description="INVALID_UNACCEPTABLE_DISTRIB_PAYMENT_METHOD" />
+      <value enum="16" description="INVALID_UNACCEPTABLE_CASH_DISTRIB_AGENT_ACCT_NAME" />
+      <value enum="17" description="INVALID_UNACCEPTABLE_CASH_DISTRIB_AGENT_CODE" />
+      <value enum="18" description="INVALID_UNACCEPTABLE_CASH_DISTRIB_AGENT_ACCT_NUM" />
+      <value enum="99" description="OTHER" />
+    </field>
+    <field number="508" name="RegistRefID" type="STRING" />
+    <field number="509" name="RegistDtls" type="STRING" />
+    <field number="510" name="NoDistribInsts" type="NUMINGROUP" />
+    <field number="511" name="RegistEmail" type="STRING" />
+    <field number="512" name="DistribPercentage" type="PERCENTAGE" />
+    <field number="513" name="RegistID" type="STRING" />
+    <field number="514" name="RegistTransType" type="CHAR">
+      <value enum="0" description="NEW" />
+      <value enum="1" description="REPLACE" />
+      <value enum="2" description="CANCEL" />
+    </field>
+    <field number="515" name="ExecValuationPoint" type="UTCTIMESTAMP" />
+    <field number="516" name="OrderPercent" type="PERCENTAGE" />
+    <field number="517" name="OwnershipType" type="CHAR">
+      <value enum="J" description="JOINT_INVESTORS" />
+      <value enum="T" description="TENANTS_IN_COMMON" />
+      <value enum="2" description="JOINT_TRUSTEES" />
+    </field>
+    <field number="518" name="NoContAmts" type="NUMINGROUP" />
+    <field number="519" name="ContAmtType" type="INT">
+      <value enum="1" description="COMMISSION_AMOUNT" />
+      <value enum="2" description="COMMISSION_PERCENT" />
+      <value enum="3" description="INITIAL_CHARGE_AMOUNT" />
+      <value enum="4" description="INITIAL_CHARGE_PERCENT" />
+      <value enum="5" description="DISCOUNT_AMOUNT" />
+      <value enum="6" description="DISCOUNT_PERCENT" />
+      <value enum="7" description="DILUTION_LEVY_AMOUNT" />
+      <value enum="8" description="DILUTION_LEVY_PERCENT" />
+      <value enum="9" description="EXIT_CHARGE_AMOUNT" />
+    </field>
+    <field number="520" name="ContAmtValue" type="FLOAT" />
+    <field number="521" name="ContAmtCurr" type="CURRENCY" />
+    <field number="522" name="OwnerType" type="INT">
+      <value enum="1" description="INDIVIDUAL_INVESTOR" />
+      <value enum="2" description="PUBLIC_COMPANY" />
+      <value enum="3" description="PRIVATE_COMPANY" />
+      <value enum="4" description="INDIVIDUAL_TRUSTEE" />
+      <value enum="5" description="COMPANY_TRUSTEE" />
+      <value enum="6" description="PENSION_PLAN" />
+      <value enum="7" description="CUSTODIAN_UNDER_GIFTS_TO_MINORS_ACT" />
+      <value enum="8" description="TRUSTS" />
+      <value enum="9" description="FIDUCIARIES" />
+    </field>
+    <field number="523" name="PartySubID" type="STRING" />
+    <field number="524" name="NestedPartyID" type="STRING" />
+    <field number="525" name="NestedPartyIDSource" type="CHAR" />
+    <field number="526" name="SecondaryClOrdID" type="STRING" />
+    <field number="527" name="SecondaryExecID" type="STRING" />
+    <field number="528" name="OrderCapacity" type="CHAR">
+      <value enum="A" description="AGENCY" />
+      <value enum="G" description="PROPRIETARY" />
+      <value enum="I" description="INDIVIDUAL" />
+      <value enum="P" description="PRINCIPAL" />
+      <value enum="R" description="RISKLESS_PRINCIPAL" />
+      <value enum="W" description="AGENT_FOR_OTHER_MEMBER" />
+    </field>
+    <field number="529" name="OrderRestrictions" type="MULTIPLEVALUESTRING">
+      <value enum="1" description="PROGRAM_TRADE" />
+      <value enum="2" description="INDEX_ARBITRAGE" />
+      <value enum="3" description="NON_INDEX_ARBITRAGE" />
+      <value enum="4" description="COMPETING_MARKET_MAKER" />
+      <value enum="5" description="ACTING_AS_MARKET_MAKER_OR_SPECIALIST_IN_THE_SECURITY" />
+      <value enum="6" description="ACTING_AS_MARKET_MAKER_OR_SPECIALIST_IN_THE_UNDERLYING_SECURITY_OF_A_DERIVATIVE_SECURITY" />
+      <value enum="7" description="FOREIGN_ENTITY" />
+      <value enum="8" description="EXTERNAL_MARKET_PARTICIPANT" />
+      <value enum="9" description="EXTERNAL_INTER_CONNECTED_MARKET_LINKAGE" />
+      <value enum="A" description="RISKLESS_ARBITRAGE" />
+    </field>
+    <field number="530" name="MassCancelRequestType" type="CHAR">
+      <value enum="1" description="CANCEL_ORDERS_FOR_A_SECURITY" />
+      <value enum="2" description="CANCEL_ORDERS_FOR_AN_UNDERLYING_SECURITY" />
+      <value enum="3" description="CANCEL_ORDERS_FOR_A_PRODUCT" />
+      <value enum="4" description="CANCEL_ORDERS_FOR_A_CFICODE" />
+      <value enum="5" description="CANCEL_ORDERS_FOR_A_SECURITYTYPE" />
+      <value enum="6" description="CANCEL_ORDERS_FOR_A_TRADING_SESSION" />
+      <value enum="7" description="CANCEL_ALL_ORDERS" />
+    </field>
+    <field number="531" name="MassCancelResponse" type="CHAR">
+      <value enum="0" description="CANCEL_REQUEST_REJECTED" />
+      <value enum="1" description="CANCEL_ORDERS_FOR_A_SECURITY" />
+      <value enum="2" description="CANCEL_ORDERS_FOR_AN_UNDERLYING_SECURITY" />
+      <value enum="3" description="CANCEL_ORDERS_FOR_A_PRODUCT" />
+      <value enum="4" description="CANCEL_ORDERS_FOR_A_CFICODE" />
+      <value enum="5" description="CANCEL_ORDERS_FOR_A_SECURITYTYPE" />
+      <value enum="6" description="CANCEL_ORDERS_FOR_A_TRADING_SESSION" />
+      <value enum="7" description="CANCEL_ALL_ORDERS" />
+    </field>
+    <field number="532" name="MassCancelRejectReason" type="CHAR">
+      <value enum="0" description="MASS_CANCEL_NOT_SUPPORTED" />
+      <value enum="1" description="INVALID_OR_UNKNOWN_SECURITY" />
+      <value enum="2" description="INVALID_OR_UNKNOWN_UNDERLYING" />
+      <value enum="3" description="INVALID_OR_UNKNOWN_PRODUCT" />
+      <value enum="4" description="INVALID_OR_UNKNOWN_CFICODE" />
+      <value enum="5" description="INVALID_OR_UNKNOWN_SECURITY_TYPE" />
+      <value enum="6" description="INVALID_OR_UNKNOWN_TRADING_SESSION" />
+    </field>
+    <field number="533" name="TotalAffectedOrders" type="INT" />
+    <field number="534" name="NoAffectedOrders" type="INT" />
+    <field number="535" name="AffectedOrderID" type="STRING" />
+    <field number="536" name="AffectedSecondaryOrderID" type="STRING" />
+    <field number="537" name="QuoteType" type="INT">
+      <value enum="0" description="INDICATIVE" />
+      <value enum="1" description="TRADEABLE" />
+      <value enum="2" description="RESTRICTED_TRADEABLE" />
+      <value enum="3" description="COUNTER" />
+    </field>
+    <field number="538" name="NestedPartyRole" type="INT" />
+    <field number="539" name="NoNestedPartyIDs" type="NUMINGROUP" />
+    <field number="540" name="TotalAccruedInterestAmt" type="AMT" />
+    <field number="541" name="MaturityDate" type="LOCALMKTDATE" />
+    <field number="542" name="UnderlyingMaturityDate" type="LOCALMKTDATE" />
+    <field number="543" name="InstrRegistry" type="STRING" />
+    <field number="544" name="CashMargin" type="CHAR">
+      <value enum="1" description="CASH" />
+      <value enum="2" description="MARGIN_OPEN" />
+      <value enum="3" description="MARGIN_CLOSE" />
+    </field>
+    <field number="545" name="NestedPartySubID" type="STRING" />
+    <field number="546" name="Scope" type="MULTIPLEVALUESTRING">
+      <value enum="1" description="LOCAL" />
+      <value enum="2" description="NATIONAL" />
+      <value enum="3" description="GLOBAL" />
+    </field>
+    <field number="547" name="MDImplicitDelete" type="BOOLEAN" />
+    <field number="548" name="CrossID" type="STRING" />
+    <field number="549" name="CrossType" type="INT">
+      <value enum="1" description="CROSS_TRADE_WHICH_IS_EXECUTED_COMPLETELY_OR_NOT" />
+      <value enum="2" description="CROSS_TRADE_WHICH_IS_EXECUTED_PARTIALLY_AND_THE_REST_IS_CANCELLED" />
+      <value enum="3" description="CROSS_TRADE_WHICH_IS_PARTIALLY_EXECUTED_WITH_THE_UNFILLED_PORTIONS_REMAINING_ACTIVE" />
+      <value enum="4" description="CROSS_TRADE_IS_EXECUTED_WITH_EXISTING_ORDERS_WITH_THE_SAME_PRICE" />
+    </field>
+    <field number="550" name="CrossPrioritization" type="INT">
+      <value enum="0" description="NONE" />
+      <value enum="1" description="BUY_SIDE_IS_PRIORITIZED" />
+      <value enum="2" description="SELL_SIDE_IS_PRIORITIZED" />
+    </field>
+    <field number="551" name="OrigCrossID" type="STRING" />
+    <field number="552" name="NoSides" type="NUMINGROUP">
+      <value enum="1" description="ONE_SIDE" />
+      <value enum="2" description="BOTH_SIDES" />
+    </field>
+    <field number="553" name="Username" type="STRING" />
+    <field number="554" name="Password" type="STRING" />
+    <field number="555" name="NoLegs" type="NUMINGROUP" />
+    <field number="556" name="LegCurrency" type="CURRENCY" />
+    <field number="557" name="TotNoSecurityTypes" type="INT" />
+    <field number="558" name="NoSecurityTypes" type="NUMINGROUP" />
+    <field number="559" name="SecurityListRequestType" type="INT">
+      <value enum="0" description="SYMBOL" />
+      <value enum="1" description="SECURITYTYPE_AND_OR_CFICODE" />
+      <value enum="2" description="PRODUCT" />
+      <value enum="3" description="TRADINGSESSIONID" />
+      <value enum="4" description="ALL_SECURITIES" />
+    </field>
+    <field number="560" name="SecurityRequestResult" type="INT">
+      <value enum="0" description="VALID_REQUEST" />
+      <value enum="1" description="INVALID_OR_UNSUPPORTED_REQUEST" />
+      <value enum="2" description="NO_INSTRUMENTS_FOUND_THAT_MATCH_SELECTION_CRITERIA" />
+      <value enum="3" description="NOT_AUTHORIZED_TO_RETRIEVE_INSTRUMENT_DATA" />
+      <value enum="4" description="INSTRUMENT_DATA_TEMPORARILY_UNAVAILABLE" />
+      <value enum="5" description="REQUEST_FOR_INSTRUMENT_DATA_NOT_SUPPORTED" />
+    </field>
+    <field number="561" name="RoundLot" type="QTY" />
+    <field number="562" name="MinTradeVol" type="QTY" />
+    <field number="563" name="MultiLegRptTypeReq" type="INT">
+      <value enum="0" description="REPORT_BY_MULITLEG_SECURITY_ONLY" />
+      <value enum="1" description="REPORT_BY_MULTILEG_SECURITY_AND_BY_INSTRUMENT_LEGS_BELONGING_TO_THE_MULTILEG_SECURITY" />
+      <value enum="2" description="REPORT_BY_INSTRUMENT_LEGS_BELONGING_TO_THE_MULTILEG_SECURITY_ONLY" />
+    </field>
+    <field number="564" name="LegPositionEffect" type="CHAR" />
+    <field number="565" name="LegCoveredOrUncovered" type="INT" />
+    <field number="566" name="LegPrice" type="PRICE" />
+    <field number="567" name="TradSesStatusRejReason" type="INT">
+      <value enum="1" description="UNKNOWN_OR_INVALID_TRADINGSESSIONID" />
+    </field>
+    <field number="568" name="TradeRequestID" type="STRING" />
+    <field number="569" name="TradeRequestType" type="INT">
+      <value enum="0" description="ALL_TRADES" />
+      <value enum="1" description="MATCHED_TRADES_MATCHING_CRITERIA_PROVIDED_ON_REQUEST" />
+      <value enum="2" description="UNMATCHED_TRADES_THAT_MATCH_CRITERIA" />
+      <value enum="3" description="UNREPORTED_TRADES_THAT_MATCH_CRITERIA" />
+      <value enum="4" description="ADVISORIES_THAT_MATCH_CRITERIA" />
+    </field>
+    <field number="570" name="PreviouslyReported" type="BOOLEAN" />
+    <field number="571" name="TradeReportID" type="STRING" />
+    <field number="572" name="TradeReportRefID" type="STRING" />
+    <field number="573" name="MatchStatus" type="CHAR">
+      <value enum="0" description="COMPARED_MATCHED_OR_AFFIRMED" />
+      <value enum="1" description="UNCOMPARED_UNMATCHED_OR_UNAFFIRMED" />
+      <value enum="2" description="ADVISORY_OR_ALERT" />
+    </field>
+    <field number="574" name="MatchType" type="STRING" />
+    <field number="575" name="OddLot" type="BOOLEAN" />
+    <field number="576" name="NoClearingInstructions" type="INT" />
+    <field number="577" name="ClearingInstruction" type="INT">
+      <value enum="0" description="PROCESS_NORMALLY" />
+      <value enum="1" description="EXCLUDE_FROM_ALL_NETTING" />
+      <value enum="2" description="BILATERAL_NETTING_ONLY" />
+      <value enum="3" description="EX_CLEARING" />
+      <value enum="4" description="SPECIAL_TRADE" />
+      <value enum="5" description="MULTILATERAL_NETTING" />
+      <value enum="6" description="CLEAR_AGAINST_CENTRAL_COUNTERPARTY" />
+      <value enum="7" description="EXCLUDE_FROM_CENTRAL_COUNTERPARTY" />
+      <value enum="8" description="MANUAL_MODE" />
+      <value enum="9" description="AUTOMATIC_POSTING_MODE" />
+    </field>
+    <field number="578" name="TradeInputSource" type="STRING" />
+    <field number="579" name="TradeInputDevice" type="STRING" />
+    <field number="580" name="NoDates" type="INT" />
+    <field number="581" name="AccountType" type="INT">
+      <value enum="1" description="ACCOUNT_IS_CARRIED_ON_CUSTOMER_SIDE_OF_BOOKS" />
+      <value enum="2" description="ACCOUNT_IS_CARRIED_ON_NON_CUSTOMER_SIDE_OF_BOOKS" />
+      <value enum="3" description="HOUSE_TRADER" />
+      <value enum="4" description="FLOOR_TRADER" />
+      <value enum="6" description="ACCOUNT_IS_CARRIED_ON_NON_CUSTOMER_SIDE_OF_BOOKS_AND_IS_CROSS_MARGINED" />
+      <value enum="7" description="ACCOUNT_IS_HOUSE_TRADER_AND_IS_CROSS_MARGINED" />
+      <value enum="8" description="JOINT_BACKOFFICE_ACCOUNT" />
+    </field>
+    <field number="582" name="CustOrderCapacity" type="INT">
+      <value enum="1" description="MEMBER_TRADING_FOR_THEIR_OWN_ACCOUNT" />
+      <value enum="2" description="CLEARING_FIRM_TRADING_FOR_ITS_PROPRIETARY_ACCOUNT" />
+      <value enum="3" description="MEMBER_TRADING_FOR_ANOTHER_MEMBER" />
+      <value enum="4" description="ALL_OTHER" />
+    </field>
+    <field number="583" name="ClOrdLinkID" type="STRING" />
+    <field number="584" name="MassStatusReqID" type="STRING" />
+    <field number="585" name="MassStatusReqType" type="INT">
+      <value enum="1" description="STATUS_FOR_ORDERS_FOR_A_SECURITY" />
+      <value enum="2" description="STATUS_FOR_ORDERS_FOR_AN_UNDERLYING_SECURITY" />
+      <value enum="3" description="STATUS_FOR_ORDERS_FOR_A_PRODUCT" />
+      <value enum="4" description="STATUS_FOR_ORDERS_FOR_A_CFICODE" />
+      <value enum="5" description="STATUS_FOR_ORDERS_FOR_A_SECURITYTYPE" />
+      <value enum="6" description="STATUS_FOR_ORDERS_FOR_A_TRADING_SESSION" />
+      <value enum="7" description="STATUS_FOR_ALL_ORDERS" />
+      <value enum="8" description="STATUS_FOR_ORDERS_FOR_A_PARTYID" />
+    </field>
+    <field number="586" name="OrigOrdModTime" type="UTCTIMESTAMP" />
+    <field number="587" name="LegSettlType" type="CHAR" />
+    <field number="588" name="LegSettlDate" type="LOCALMKTDATE" />
+    <field number="589" name="DayBookingInst" type="CHAR">
+      <value enum="0" description="CAN_TRIGGER_BOOKING_WITHOUT_REFERENCE_TO_THE_ORDER_INITIATOR" />
+      <value enum="1" description="SPEAK_WITH_ORDER_INITIATOR_BEFORE_BOOKING" />
+      <value enum="2" description="ACCUMULATE" />
+    </field>
+    <field number="590" name="BookingUnit" type="CHAR">
+      <value enum="0" description="EACH_PARTIAL_EXECUTION_IS_A_BOOKABLE_UNIT" />
+      <value enum="1" description="AGGREGATE_PARTIAL_EXECUTIONS_ON_THIS_ORDER_AND_BOOK_ONE_TRADE_PER_ORDER" />
+      <value enum="2" description="AGGREGATE_EXECUTIONS_FOR_THIS_SYMBOL_SIDE_AND_SETTLEMENT_DATE" />
+    </field>
+    <field number="591" name="PreallocMethod" type="CHAR">
+      <value enum="0" description="PRO_RATA" />
+      <value enum="1" description="DO_NOT_PRO_RATA" />
+    </field>
+    <field number="592" name="UnderlyingCountryOfIssue" type="COUNTRY" />
+    <field number="593" name="UnderlyingStateOrProvinceOfIssue" type="STRING" />
+    <field number="594" name="UnderlyingLocaleOfIssue" type="STRING" />
+    <field number="595" name="UnderlyingInstrRegistry" type="STRING" />
+    <field number="596" name="LegCountryOfIssue" type="COUNTRY" />
+    <field number="597" name="LegStateOrProvinceOfIssue" type="STRING" />
+    <field number="598" name="LegLocaleOfIssue" type="STRING" />
+    <field number="599" name="LegInstrRegistry" type="STRING" />
+    <field number="600" name="LegSymbol" type="STRING" />
+    <field number="601" name="LegSymbolSfx" type="STRING" />
+    <field number="602" name="LegSecurityID" type="STRING" />
+    <field number="603" name="LegSecurityIDSource" type="STRING" />
+    <field number="604" name="NoLegSecurityAltID" type="STRING" />
+    <field number="605" name="LegSecurityAltID" type="STRING" />
+    <field number="606" name="LegSecurityAltIDSource" type="STRING" />
+    <field number="607" name="LegProduct" type="INT" />
+    <field number="608" name="LegCFICode" type="STRING" />
+    <field number="609" name="LegSecurityType" type="STRING" />
+    <field number="610" name="LegMaturityMonthYear" type="MONTHYEAR" />
+    <field number="611" name="LegMaturityDate" type="LOCALMKTDATE" />
+    <field number="612" name="LegStrikePrice" type="PRICE" />
+    <field number="613" name="LegOptAttribute" type="CHAR" />
+    <field number="614" name="LegContractMultiplier" type="FLOAT" />
+    <field number="615" name="LegCouponRate" type="PERCENTAGE" />
+    <field number="616" name="LegSecurityExchange" type="EXCHANGE" />
+    <field number="617" name="LegIssuer" type="STRING" />
+    <field number="618" name="EncodedLegIssuerLen" type="LENGTH" />
+    <field number="619" name="EncodedLegIssuer" type="DATA" />
+    <field number="620" name="LegSecurityDesc" type="STRING" />
+    <field number="621" name="EncodedLegSecurityDescLen" type="LENGTH" />
+    <field number="622" name="EncodedLegSecurityDesc" type="DATA" />
+    <field number="623" name="LegRatioQty" type="FLOAT" />
+    <field number="624" name="LegSide" type="CHAR" />
+    <field number="625" name="TradingSessionSubID" type="STRING" />
+    <field number="626" name="AllocType" type="INT">
+      <value enum="1" description="CALCULATED" />
+      <value enum="2" description="PRELIMINARY" />
+      <value enum="5" description="READY_TO_BOOK_SINGLE_ORDER" />
+      <value enum="7" description="WAREHOUSE_INSTRUCTION" />
+      <value enum="8" description="REQUEST_TO_INTERMEDIARY" />
+    </field>
+    <field number="627" name="NoHops" type="NUMINGROUP" />
+    <field number="628" name="HopCompID" type="STRING" />
+    <field number="629" name="HopSendingTime" type="UTCTIMESTAMP" />
+    <field number="630" name="HopRefID" type="SEQNUM" />
+    <field number="631" name="MidPx" type="PRICE" />
+    <field number="632" name="BidYield" type="PERCENTAGE" />
+    <field number="633" name="MidYield" type="PERCENTAGE" />
+    <field number="634" name="OfferYield" type="PERCENTAGE" />
+    <field number="635" name="ClearingFeeIndicator" type="STRING">
+      <value enum="B" description="CBOE_MEMBER" />
+      <value enum="C" description="NON_MEMBER_AND_CUSTOMER" />
+      <value enum="E" description="EQUITY_MEMBER_AND_CLEARING_MEMBER" />
+      <value enum="F" description="FULL_AND_ASSOCIATE_MEMBER_TRADING_FOR_OWN_ACCOUNT_AND_AS_FLOOR_BROKERS" />
+      <value enum="H" description="FIRMS_106H_AND_106J" />
+      <value enum="I" description="GIM_IDEM_AND_COM_MEMBERSHIP_INTEREST_HOLDERS" />
+      <value enum="L" description="LESSEE_AND_106F_EMPLOYEES" />
+      <value enum="M" description="ALL_OTHER_OWNERSHIP_TYPES" />
+    </field>
+    <field number="636" name="WorkingIndicator" type="BOOLEAN" />
+    <field number="637" name="LegLastPx" type="PRICE" />
+    <field number="638" name="PriorityIndicator" type="INT">
+      <value enum="0" description="PRIORITY_UNCHANGED" />
+      <value enum="1" description="LOST_PRIORITY_AS_RESULT_OF_ORDER_CHANGE" />
+    </field>
+    <field number="639" name="PriceImprovement" type="PRICEOFFSET" />
+    <field number="640" name="Price2" type="PRICE" />
+    <field number="641" name="LastForwardPoints2" type="PRICEOFFSET" />
+    <field number="642" name="BidForwardPoints2" type="PRICEOFFSET" />
+    <field number="643" name="OfferForwardPoints2" type="PRICEOFFSET" />
+    <field number="644" name="RFQReqID" type="STRING" />
+    <field number="645" name="MktBidPx" type="PRICE" />
+    <field number="646" name="MktOfferPx" type="PRICE" />
+    <field number="647" name="MinBidSize" type="QTY" />
+    <field number="648" name="MinOfferSize" type="QTY" />
+    <field number="649" name="QuoteStatusReqID" type="STRING" />
+    <field number="650" name="LegalConfirm" type="BOOLEAN" />
+    <field number="651" name="UnderlyingLastPx" type="PRICE" />
+    <field number="652" name="UnderlyingLastQty" type="QTY" />
+    <field number="654" name="LegRefID" type="STRING" />
+    <field number="655" name="ContraLegRefID" type="STRING" />
+    <field number="656" name="SettlCurrBidFxRate" type="FLOAT" />
+    <field number="657" name="SettlCurrOfferFxRate" type="FLOAT" />
+    <field number="658" name="QuoteRequestRejectReason" type="INT">
+      <value enum="1" description="UNKNOWN_SYMBOL" />
+      <value enum="2" description="EXCHANGE_CLOSED" />
+      <value enum="3" description="QUOTE_REQUEST_EXCEEDS_LIMIT" />
+      <value enum="4" description="TOO_LATE_TO_ENTER" />
+      <value enum="5" description="INVALID_PRICE" />
+      <value enum="6" description="NOT_AUTHORIZED_TO_REQUEST_QUOTE" />
+      <value enum="7" description="NO_MATCH_FOR_INQUIRY" />
+      <value enum="8" description="NO_MARKET_FOR_INSTRUMENT" />
+      <value enum="9" description="NO_INVENTORY" />
+    </field>
+    <field number="659" name="SideComplianceID" type="STRING" />
+    <field number="660" name="AcctIDSource" type="INT">
+      <value enum="1" description="BIC" />
+      <value enum="2" description="SID_CODE" />
+      <value enum="3" description="TFM" />
+      <value enum="4" description="OMGEO" />
+      <value enum="5" description="DTCC_CODE" />
+    </field>
+    <field number="661" name="AllocAcctIDSource" type="INT" />
+    <field number="662" name="BenchmarkPrice" type="PRICE" />
+    <field number="663" name="BenchmarkPriceType" type="INT" />
+    <field number="664" name="ConfirmID" type="STRING" />
+    <field number="665" name="ConfirmStatus" type="INT">
+      <value enum="1" description="RECEIVED" />
+      <value enum="2" description="MISMATCHED_ACCOUNT" />
+      <value enum="3" description="MISSING_SETTLEMENT_INSTRUCTIONS" />
+      <value enum="4" description="CONFIRMED" />
+      <value enum="5" description="REQUEST_REJECTED" />
+    </field>
+    <field number="666" name="ConfirmTransType" type="INT">
+      <value enum="0" description="NEW" />
+      <value enum="1" description="REPLACE" />
+      <value enum="2" description="CANCEL" />
+    </field>
+    <field number="667" name="ContractSettlMonth" type="MONTHYEAR" />
+    <field number="668" name="DeliveryForm" type="INT">
+      <value enum="1" description="BOOKENTRY" />
+      <value enum="2" description="BEARER" />
+    </field>
+    <field number="669" name="LastParPx" type="PRICE" />
+    <field number="670" name="NoLegAllocs" type="NUMINGROUP" />
+    <field number="671" name="LegAllocAccount" type="STRING" />
+    <field number="672" name="LegIndividualAllocID" type="STRING" />
+    <field number="673" name="LegAllocQty" type="QTY" />
+    <field number="674" name="LegAllocAcctIDSource" type="STRING" />
+    <field number="675" name="LegSettlCurrency" type="CURRENCY" />
+    <field number="676" name="LegBenchmarkCurveCurrency" type="CURRENCY" />
+    <field number="677" name="LegBenchmarkCurveName" type="STRING" />
+    <field number="678" name="LegBenchmarkCurvePoint" type="STRING" />
+    <field number="679" name="LegBenchmarkPrice" type="PRICE" />
+    <field number="680" name="LegBenchmarkPriceType" type="INT" />
+    <field number="681" name="LegBidPx" type="PRICE" />
+    <field number="682" name="LegIOIQty" type="STRING" />
+    <field number="683" name="NoLegStipulations" type="NUMINGROUP" />
+    <field number="684" name="LegOfferPx" type="PRICE" />
+    <field number="685" name="LegOrderQty" type="QTY" />
+    <field number="686" name="LegPriceType" type="INT" />
+    <field number="687" name="LegQty" type="QTY" />
+    <field number="688" name="LegStipulationType" type="STRING" />
+    <field number="689" name="LegStipulationValue" type="STRING" />
+    <field number="690" name="LegSwapType" type="INT">
+      <value enum="1" description="PAR_FOR_PAR" />
+      <value enum="2" description="MODIFIED_DURATION" />
+      <value enum="4" description="RISK" />
+      <value enum="5" description="PROCEEDS" />
+    </field>
+    <field number="691" name="Pool" type="STRING" />
+    <field number="692" name="QuotePriceType" type="INT">
+      <value enum="1" description="PERCENT" />
+      <value enum="2" description="PER_SHARE" />
+      <value enum="3" description="FIXED_AMOUNT" />
+      <value enum="4" description="DISCOUNT" />
+      <value enum="5" description="PREMIUM" />
+      <value enum="6" description="BASIS_POINTS_RELATIVE_TO_BENCHMARK" />
+      <value enum="7" description="TED_PRICE" />
+      <value enum="8" description="TED_YIELD" />
+      <value enum="9" description="YIELD_SPREAD" />
+    </field>
+    <field number="693" name="QuoteRespID" type="STRING" />
+    <field number="694" name="QuoteRespType" type="INT">
+      <value enum="1" description="HIT_LIFT" />
+      <value enum="2" description="COUNTER" />
+      <value enum="3" description="EXPIRED" />
+      <value enum="4" description="COVER" />
+      <value enum="5" description="DONE_AWAY" />
+      <value enum="6" description="PASS" />
+    </field>
+    <field number="695" name="QuoteQualifier" type="CHAR" />
+    <field number="696" name="YieldRedemptionDate" type="LOCALMKTDATE" />
+    <field number="697" name="YieldRedemptionPrice" type="PRICE" />
+    <field number="698" name="YieldRedemptionPriceType" type="INT" />
+    <field number="699" name="BenchmarkSecurityID" type="STRING" />
+    <field number="700" name="ReversalIndicator" type="BOOLEAN" />
+    <field number="701" name="YieldCalcDate" type="LOCALMKTDATE" />
+    <field number="702" name="NoPositions" type="NUMINGROUP" />
+    <field number="703" name="PosType" type="STRING">
+      <value enum="TQ" description="TRANSACTION_QUANTITY" />
+      <value enum="IAS" description="INTRA_SPREAD_QTY" />
+      <value enum="IES" description="INTER_SPREAD_QTY" />
+      <value enum="FIN" description="END_OF_DAY_QTY" />
+      <value enum="SOD" description="START_OF_DAY_QTY" />
+      <value enum="EX" description="OPTION_EXERCISE_QTY" />
+      <value enum="AS" description="OPTION_ASSIGNMENT" />
+      <value enum="TX" description="TRANSACTION_FROM_EXERCISE" />
+      <value enum="TA" description="TRANSACTION_FROM_ASSIGNMENT" />
+      <value enum="PIT" description="PIT_TRADE_QTY" />
+      <value enum="TRF" description="TRANSFER_TRADE_QTY" />
+      <value enum="ETR" description="ELECTRONIC_TRADE_QTY" />
+      <value enum="ALC" description="ALLOCATION_TRADE_QTY" />
+      <value enum="PA" description="ADJUSTMENT_QTY" />
+      <value enum="ASF" description="AS_OF_TRADE_QTY" />
+      <value enum="DLV" description="DELIVERY_QTY" />
+      <value enum="TOT" description="TOTAL_TRANSACTION_QTY" />
+      <value enum="XM" description="CROSS_MARGIN_QTY" />
+      <value enum="SPL" description="INTEGRAL_SPLIT" />
+    </field>
+    <field number="704" name="LongQty" type="QTY" />
+    <field number="705" name="ShortQty" type="QTY" />
+    <field number="706" name="PosQtyStatus" type="INT">
+      <value enum="0" description="SUBMITTED" />
+      <value enum="1" description="ACCEPTED" />
+      <value enum="2" description="REJECTED" />
+    </field>
+    <field number="707" name="PosAmtType" type="STRING">
+      <value enum="FMTM" description="FINAL_MARK_TO_MARKET_AMOUNT" />
+      <value enum="IMTM" description="INCREMENTAL_MARK_TO_MARKET_AMOUNT" />
+      <value enum="TVAR" description="TRADE_VARIATION_AMOUNT" />
+      <value enum="SMTM" description="START_OF_DAY_MARK_TO_MARKET_AMOUNT" />
+      <value enum="PREM" description="PREMIUM_AMOUNT" />
+      <value enum="CRES" description="CASH_RESIDUAL_AMOUNT" />
+      <value enum="CASH" description="CASH_AMOUNT" />
+      <value enum="VADJ" description="VALUE_ADJUSTED_AMOUNT" />
+    </field>
+    <field number="708" name="PosAmt" type="AMT" />
+    <field number="709" name="PosTransType" type="INT">
+      <value enum="1" description="EXERCISE" />
+      <value enum="2" description="DO_NOT_EXERCISE" />
+      <value enum="3" description="POSITION_ADJUSTMENT" />
+      <value enum="4" description="POSITION_CHANGE_SUBMISSION_MARGIN_DISPOSITION" />
+      <value enum="5" description="PLEDGE" />
+    </field>
+    <field number="710" name="PosReqID" type="STRING" />
+    <field number="711" name="NoUnderlyings" type="NUMINGROUP" />
+    <field number="712" name="PosMaintAction" type="INT">
+      <value enum="1" description="NEW" />
+      <value enum="2" description="REPLACE" />
+      <value enum="3" description="CANCEL" />
+    </field>
+    <field number="713" name="OrigPosReqRefID" type="STRING" />
+    <field number="714" name="PosMaintRptRefID" type="STRING" />
+    <field number="715" name="ClearingBusinessDate" type="LOCALMKTDATE" />
+    <field number="716" name="SettlSessID" type="STRING" />
+    <field number="717" name="SettlSessSubID" type="STRING" />
+    <field number="718" name="AdjustmentType" type="INT">
+      <value enum="0" description="PROCESS_REQUEST_AS_MARGIN_DISPOSITION" />
+      <value enum="1" description="DELTA_PLUS" />
+      <value enum="2" description="DELTA_MINUS" />
+      <value enum="3" description="FINAL" />
+    </field>
+    <field number="719" name="ContraryInstructionIndicator" type="BOOLEAN" />
+    <field number="720" name="PriorSpreadIndicator" type="BOOLEAN" />
+    <field number="721" name="PosMaintRptID" type="STRING" />
+    <field number="722" name="PosMaintStatus" type="INT">
+      <value enum="0" description="ACCEPTED" />
+      <value enum="1" description="ACCEPTED_WITH_WARNINGS" />
+      <value enum="2" description="REJECTED" />
+      <value enum="3" description="COMPLETED" />
+      <value enum="4" description="COMPLETED_WITH_WARNINGS" />
+    </field>
+    <field number="723" name="PosMaintResult" type="INT">
+      <value enum="0" description="SUCCESSFUL_COMPLETION_NO_WARNINGS_OR_ERRORS" />
+      <value enum="1" description="REJECTED" />
+    </field>
+    <field number="724" name="PosReqType" type="INT">
+      <value enum="0" description="POSITIONS" />
+      <value enum="1" description="TRADES" />
+      <value enum="2" description="EXERCISES" />
+      <value enum="3" description="ASSIGNMENTS" />
+    </field>
+    <field number="725" name="ResponseTransportType" type="INT">
+      <value enum="0" description="INBAND" />
+      <value enum="1" description="OUT_OF_BAND" />
+    </field>
+    <field number="726" name="ResponseDestination" type="STRING" />
+    <field number="727" name="TotalNumPosReports" type="INT" />
+    <field number="728" name="PosReqResult" type="INT">
+      <value enum="0" description="VALID_REQUEST" />
+      <value enum="1" description="INVALID_OR_UNSUPPORTED_REQUEST" />
+      <value enum="2" description="NO_POSITIONS_FOUND_THAT_MATCH_CRITERIA" />
+      <value enum="3" description="NOT_AUTHORIZED_TO_REQUEST_POSITIONS" />
+      <value enum="4" description="REQUEST_FOR_POSITION_NOT_SUPPORTED" />
+      <value enum="99" description="OTHER" />
+    </field>
+    <field number="729" name="PosReqStatus" type="INT">
+      <value enum="0" description="COMPLETED" />
+      <value enum="1" description="COMPLETED_WITH_WARNINGS" />
+      <value enum="2" description="REJECTED" />
+    </field>
+    <field number="730" name="SettlPrice" type="PRICE" />
+    <field number="731" name="SettlPriceType" type="INT">
+      <value enum="1" description="FINAL" />
+      <value enum="2" description="THEORETICAL" />
+    </field>
+    <field number="732" name="UnderlyingSettlPrice" type="PRICE" />
+    <field number="733" name="UnderlyingSettlPriceType" type="INT" />
+    <field number="734" name="PriorSettlPrice" type="PRICE" />
+    <field number="735" name="NoQuoteQualifiers" type="NUMINGROUP" />
+    <field number="736" name="AllocSettlCurrency" type="CURRENCY" />
+    <field number="737" name="AllocSettlCurrAmt" type="AMT" />
+    <field number="738" name="InterestAtMaturity" type="AMT" />
+    <field number="739" name="LegDatedDate" type="LOCALMKTDATE" />
+    <field number="740" name="LegPool" type="STRING" />
+    <field number="741" name="AllocInterestAtMaturity" type="AMT" />
+    <field number="742" name="AllocAccruedInterestAmt" type="AMT" />
+    <field number="743" name="DeliveryDate" type="LOCALMKTDATE" />
+    <field number="744" name="AssignmentMethod" type="CHAR">
+      <value enum="R" description="RANDOM" />
+      <value enum="P" description="PRORATA" />
+    </field>
+    <field number="745" name="AssignmentUnit" type="QTY" />
+    <field number="746" name="OpenInterest" type="AMT" />
+    <field number="747" name="ExerciseMethod" type="CHAR">
+      <value enum="A" description="AUTOMATIC" />
+      <value enum="M" description="MANUAL" />
+    </field>
+    <field number="748" name="TotNumTradeReports" type="INT" />
+    <field number="749" name="TradeRequestResult" type="INT">
+      <value enum="0" description="SUCCESSFUL" />
+      <value enum="1" description="INVALID_OR_UNKNOWN_INSTRUMENT" />
+      <value enum="2" description="INVALID_TYPE_OF_TRADE_REQUESTED" />
+      <value enum="3" description="INVALID_PARTIES" />
+      <value enum="4" description="INVALID_TRANSPORT_TYPE_REQUESTED" />
+      <value enum="5" description="INVALID_DESTINATION_REQUESTED" />
+      <value enum="8" description="TRADEREQUESTTYPE_NOT_SUPPORTED" />
+      <value enum="9" description="UNAUTHORIZED_FOR_TRADE_CAPTURE_REPORT_REQUEST" />
+    </field>
+    <field number="750" name="TradeRequestStatus" type="INT">
+      <value enum="0" description="ACCEPTED" />
+      <value enum="1" description="COMPLETED" />
+      <value enum="2" description="REJECTED" />
+    </field>
+    <field number="751" name="TradeReportRejectReason" type="INT">
+      <value enum="0" description="SUCCESSFUL" />
+      <value enum="1" description="INVALID_PARTY_INFORMATION" />
+      <value enum="2" description="UNKNOWN_INSTRUMENT" />
+      <value enum="3" description="UNAUTHORIZED_TO_REPORT_TRADES" />
+      <value enum="4" description="INVALID_TRADE_TYPE" />
+    </field>
+    <field number="752" name="SideMultiLegReportingType" type="INT">
+      <value enum="1" description="SINGLE_SECURITY" />
+      <value enum="2" description="INDIVIDUAL_LEG_OF_A_MULTI_LEG_SECURITY" />
+      <value enum="3" description="MULTI_LEG_SECURITY" />
+    </field>
+    <field number="753" name="NoPosAmt" type="NUMINGROUP" />
+    <field number="754" name="AutoAcceptIndicator" type="BOOLEAN" />
+    <field number="755" name="AllocReportID" type="STRING" />
+    <field number="756" name="NoNested2PartyIDs" type="NUMINGROUP" />
+    <field number="757" name="Nested2PartyID" type="STRING" />
+    <field number="758" name="Nested2PartyIDSource" type="CHAR" />
+    <field number="759" name="Nested2PartyRole" type="INT" />
+    <field number="760" name="Nested2PartySubID" type="STRING" />
+    <field number="761" name="BenchmarkSecurityIDSource" type="STRING" />
+    <field number="762" name="SecuritySubType" type="STRING" />
+    <field number="763" name="UnderlyingSecuritySubType" type="STRING" />
+    <field number="764" name="LegSecuritySubType" type="STRING" />
+    <field number="765" name="AllowableOneSidednessPct" type="PERCENTAGE" />
+    <field number="766" name="AllowableOneSidednessValue" type="AMT" />
+    <field number="767" name="AllowableOneSidednessCurr" type="CURRENCY" />
+    <field number="768" name="NoTrdRegTimestamps" type="NUMINGROUP" />
+    <field number="769" name="TrdRegTimestamp" type="UTCTIMESTAMP" />
+    <field number="770" name="TrdRegTimestampType" type="INT">
+      <value enum="1" description="EXECUTION_TIME" />
+      <value enum="2" description="TIME_IN" />
+      <value enum="3" description="TIME_OUT" />
+      <value enum="4" description="BROKER_RECEIPT" />
+      <value enum="5" description="BROKER_EXECUTION" />
+    </field>
+    <field number="771" name="TrdRegTimestampOrigin" type="STRING" />
+    <field number="772" name="ConfirmRefID" type="STRING" />
+    <field number="773" name="ConfirmType" type="INT">
+      <value enum="1" description="STATUS" />
+      <value enum="2" description="CONFIRMATION" />
+      <value enum="3" description="CONFIRMATION_REQUEST_REJECTED" />
+    </field>
+    <field number="774" name="ConfirmRejReason" type="INT">
+      <value enum="1" description="MISMATCHED_ACCOUNT" />
+      <value enum="2" description="MISSING_SETTLEMENT_INSTRUCTIONS" />
+    </field>
+    <field number="775" name="BookingType" type="INT">
+      <value enum="0" description="REGULAR_BOOKING" />
+      <value enum="1" description="CFD" />
+      <value enum="2" description="TOTAL_RETURN_SWAP" />
+    </field>
+    <field number="776" name="IndividualAllocRejCode" type="INT" />
+    <field number="777" name="SettlInstMsgID" type="STRING" />
+    <field number="778" name="NoSettlInst" type="NUMINGROUP" />
+    <field number="779" name="LastUpdateTime" type="UTCTIMESTAMP" />
+    <field number="780" name="AllocSettlInstType" type="INT">
+      <value enum="0" description="USE_DEFAULT_INSTRUCTIONS" />
+      <value enum="1" description="DERIVE_FROM_PARAMETERS_PROVIDED" />
+      <value enum="2" description="FULL_DETAILS_PROVIDED" />
+      <value enum="3" description="SSI_DB_IDS_PROVIDED" />
+      <value enum="4" description="PHONE_FOR_INSTRUCTIONS" />
+    </field>
+    <field number="781" name="NoSettlPartyIDs" type="NUMINGROUP" />
+    <field number="782" name="SettlPartyID" type="STRING" />
+    <field number="783" name="SettlPartyIDSource" type="CHAR" />
+    <field number="784" name="SettlPartyRole" type="INT" />
+    <field number="785" name="SettlPartySubID" type="STRING" />
+    <field number="786" name="SettlPartySubIDType" type="INT" />
+    <field number="787" name="DlvyInstType" type="CHAR">
+      <value enum="S" description="SECURITIES" />
+      <value enum="C" description="CASH" />
+    </field>
+    <field number="788" name="TerminationType" type="INT">
+      <value enum="1" description="OVERNIGHT" />
+      <value enum="2" description="TERM" />
+      <value enum="3" description="FLEXIBLE" />
+      <value enum="4" description="OPEN" />
+    </field>
+    <field number="789" name="NextExpectedMsgSeqNum" type="SEQNUM" />
+    <field number="790" name="OrdStatusReqID" type="STRING" />
+    <field number="791" name="SettlInstReqID" type="STRING" />
+    <field number="792" name="SettlInstReqRejCode" type="INT">
+      <value enum="0" description="UNABLE_TO_PROCESS_REQUEST" />
+      <value enum="1" description="UNKNOWN_ACCOUNT" />
+      <value enum="2" description="NO_MATCHING_SETTLEMENT_INSTRUCTIONS_FOUND" />
+    </field>
+    <field number="793" name="SecondaryAllocID" type="STRING" />
+    <field number="794" name="AllocReportType" type="INT">
+      <value enum="3" description="SELLSIDE_CALCULATED_USING_PRELIMINARY" />
+      <value enum="4" description="SELLSIDE_CALCULATED_WITHOUT_PRELIMINARY" />
+      <value enum="5" description="WAREHOUSE_RECAP" />
+      <value enum="8" description="REQUEST_TO_INTERMEDIARY" />
+    </field>
+    <field number="795" name="AllocReportRefID" type="STRING" />
+    <field number="796" name="AllocCancReplaceReason" type="INT">
+      <value enum="1" description="ORIGINAL_DETAILS_INCOMPLETE_INCORRECT" />
+      <value enum="2" description="CHANGE_IN_UNDERLYING_ORDER_DETAILS" />
+    </field>
+    <field number="797" name="CopyMsgIndicator" type="BOOLEAN" />
+    <field number="798" name="AllocAccountType" type="INT">
+      <value enum="1" description="ACCOUNT_IS_CARRIED_ON_CUSTOMER_SIDE_OF_BOOKS" />
+      <value enum="2" description="ACCOUNT_IS_CARRIED_ON_NON_CUSTOMER_SIDE_OF_BOOKS" />
+      <value enum="3" description="HOUSE_TRADER" />
+      <value enum="4" description="FLOOR_TRADER" />
+      <value enum="6" description="ACCOUNT_IS_CARRIED_ON_NON_CUSTOMER_SIDE_OF_BOOKS_AND_IS_CROSS_MARGINED" />
+      <value enum="7" description="ACCOUNT_IS_HOUSE_TRADER_AND_IS_CROSS_MARGINED" />
+      <value enum="8" description="JOINT_BACKOFFICE_ACCOUNT" />
+    </field>
+    <field number="799" name="OrderAvgPx" type="PRICE" />
+    <field number="800" name="OrderBookingQty" type="QTY" />
+    <field number="801" name="NoSettlPartySubIDs" type="NUMINGROUP" />
+    <field number="802" name="NoPartySubIDs" type="NUMINGROUP" />
+    <field number="803" name="PartySubIDType" type="INT" />
+    <field number="804" name="NoNestedPartySubIDs" type="NUMINGROUP" />
+    <field number="805" name="NestedPartySubIDType" type="INT" />
+    <field number="806" name="NoNested2PartySubIDs" type="NUMINGROUP" />
+    <field number="807" name="Nested2PartySubIDType" type="INT" />
+    <field number="808" name="AllocIntermedReqType" type="INT">
+      <value enum="1" description="PENDING_ACCEPT" />
+      <value enum="2" description="PENDING_RELEASE" />
+      <value enum="3" description="PENDING_REVERSAL" />
+      <value enum="4" description="ACCEPT" />
+      <value enum="5" description="BLOCK_LEVEL_REJECT" />
+      <value enum="6" description="ACCOUNT_LEVEL_REJECT" />
+    </field>
+    <field number="810" name="UnderlyingPx" type="PRICE" />
+    <field number="811" name="PriceDelta" type="FLOAT" />
+    <field number="812" name="ApplQueueMax" type="INT" />
+    <field number="813" name="ApplQueueDepth" type="INT" />
+    <field number="814" name="ApplQueueResolution" type="INT">
+      <value enum="0" description="NO_ACTION_TAKEN" />
+      <value enum="1" description="QUEUE_FLUSHED" />
+      <value enum="2" description="OVERLAY_LAST" />
+      <value enum="3" description="END_SESSION" />
+    </field>
+    <field number="815" name="ApplQueueAction" type="INT">
+      <value enum="0" description="NO_ACTION_TAKEN" />
+      <value enum="1" description="QUEUE_FLUSHED" />
+      <value enum="2" description="OVERLAY_LAST" />
+      <value enum="3" description="END_SESSION" />
+    </field>
+    <field number="816" name="NoAltMDSource" type="NUMINGROUP" />
+    <field number="817" name="AltMDSourceID" type="STRING" />
+    <field number="818" name="SecondaryTradeReportID" type="STRING" />
+    <field number="819" name="AvgPxIndicator" type="INT">
+      <value enum="0" description="NO_AVERAGE_PRICING" />
+      <value enum="1" description="TRADE_IS_PART_OF_AN_AVERAGE_PRICE_GROUP_IDENTIFIED_BY_THE_TRADELINKID" />
+      <value enum="2" description="LAST_TRADE_IN_THE_AVERAGE_PRICE_GROUP_IDENTIFIED_BY_THE_TRADELINKID" />
+    </field>
+    <field number="820" name="TradeLinkID" type="STRING" />
+    <field number="821" name="OrderInputDevice" type="STRING" />
+    <field number="822" name="UnderlyingTradingSessionID" type="STRING" />
+    <field number="823" name="UnderlyingTradingSessionSubID" type="STRING" />
+    <field number="824" name="TradeLegRefID" type="STRING" />
+    <field number="825" name="ExchangeRule" type="STRING" />
+    <field number="826" name="TradeAllocIndicator" type="INT">
+      <value enum="0" description="ALLOCATION_NOT_REQUIRED" />
+      <value enum="1" description="ALLOCATION_REQUIRED" />
+      <value enum="2" description="USE_ALLOCATION_PROVIDED_WITH_THE_TRADE" />
+    </field>
+    <field number="827" name="ExpirationCycle" type="INT">
+      <value enum="0" description="EXPIRE_ON_TRADING_SESSION_CLOSE" />
+      <value enum="1" description="EXPIRE_ON_TRADING_SESSION_OPEN" />
+    </field>
+    <field number="828" name="TrdType" type="INT">
+      <value enum="0" description="REGULAR_TRADE" />
+      <value enum="1" description="BLOCK_TRADE" />
+      <value enum="2" description="EFP" />
+      <value enum="3" description="TRANSFER" />
+      <value enum="4" description="LATE_TRADE" />
+      <value enum="5" description="T_TRADE" />
+      <value enum="6" description="WEIGHTED_AVERAGE_PRICE_TRADE" />
+      <value enum="7" description="BUNCHED_TRADE" />
+      <value enum="8" description="LATE_BUNCHED_TRADE" />
+      <value enum="9" description="PRIOR_REFERENCE_PRICE_TRADE" />
+    </field>
+    <field number="829" name="TrdSubType" type="INT" />
+    <field number="830" name="TransferReason" type="STRING" />
+    <field number="831" name="AsgnReqID" type="STRING" />
+    <field number="832" name="TotNumAssignmentReports" type="INT" />
+    <field number="833" name="AsgnRptID" type="STRING" />
+    <field number="834" name="ThresholdAmount" type="PRICEOFFSET" />
+    <field number="835" name="PegMoveType" type="INT">
+      <value enum="0" description="FLOATING" />
+      <value enum="1" description="FIXED" />
+    </field>
+    <field number="836" name="PegOffsetType" type="INT">
+      <value enum="0" description="PRICE" />
+      <value enum="1" description="BASIS_POINTS" />
+      <value enum="2" description="TICKS" />
+      <value enum="3" description="PRICE_TIER_LEVEL" />
+    </field>
+    <field number="837" name="PegLimitType" type="INT">
+      <value enum="0" description="OR_BETTER" />
+      <value enum="1" description="STRICT" />
+      <value enum="2" description="OR_WORSE" />
+    </field>
+    <field number="838" name="PegRoundDirection" type="INT">
+      <value enum="1" description="MORE_AGGRESSIVE" />
+      <value enum="2" description="MORE_PASSIVE" />
+    </field>
+    <field number="839" name="PeggedPrice" type="PRICE" />
+    <field number="840" name="PegScope" type="INT">
+      <value enum="1" description="LOCAL" />
+      <value enum="2" description="NATIONAL" />
+      <value enum="3" description="GLOBAL" />
+      <value enum="4" description="NATIONAL_EXCLUDING_LOCAL" />
+    </field>
+    <field number="841" name="DiscretionMoveType" type="INT">
+      <value enum="0" description="FLOATING" />
+      <value enum="1" description="FIXED" />
+    </field>
+    <field number="842" name="DiscretionOffsetType" type="INT">
+      <value enum="0" description="PRICE" />
+      <value enum="1" description="BASIS_POINTS" />
+      <value enum="2" description="TICKS" />
+      <value enum="3" description="PRICE_TIER_LEVEL" />
+    </field>
+    <field number="843" name="DiscretionLimitType" type="INT">
+      <value enum="0" description="OR_BETTER" />
+      <value enum="1" description="STRICT" />
+      <value enum="2" description="OR_WORSE" />
+    </field>
+    <field number="844" name="DiscretionRoundDirection" type="INT">
+      <value enum="1" description="MORE_AGGRESSIVE" />
+      <value enum="2" description="MORE_PASSIVE" />
+    </field>
+    <field number="845" name="DiscretionPrice" type="PRICE" />
+    <field number="846" name="DiscretionScope" type="INT">
+      <value enum="1" description="LOCAL" />
+      <value enum="2" description="NATIONAL" />
+      <value enum="3" description="GLOBAL" />
+      <value enum="4" description="NATIONAL_EXCLUDING_LOCAL" />
+    </field>
+    <field number="847" name="TargetStrategy" type="INT" />
+    <field number="848" name="TargetStrategyParameters" type="STRING" />
+    <field number="849" name="ParticipationRate" type="PERCENTAGE" />
+    <field number="850" name="TargetStrategyPerformance" type="FLOAT" />
+    <field number="851" name="LastLiquidityInd" type="INT">
+      <value enum="1" description="ADDED_LIQUIDITY" />
+      <value enum="2" description="REMOVED_LIQUIDITY" />
+      <value enum="3" description="LIQUIDITY_ROUTED_OUT" />
+    </field>
+    <field number="852" name="PublishTrdIndicator" type="BOOLEAN" />
+    <field number="853" name="ShortSaleReason" type="INT">
+      <value enum="0" description="DEALER_SOLD_SHORT" />
+      <value enum="1" description="DEALER_SOLD_SHORT_EXEMPT" />
+      <value enum="2" description="SELLING_CUSTOMER_SOLD_SHORT" />
+      <value enum="3" description="SELLING_CUSTOMER_SOLD_SHORT_EXEMPT" />
+      <value enum="4" description="QUALIFED_SERVICE_REPRESENTATIVE_OR_AUTOMATIC_GIVEUP_CONTRA_SIDE_SOLD_SHORT" />
+      <value enum="5" description="QSR_OR_AGU_CONTRA_SIDE_SOLD_SHORT_EXEMPT" />
+    </field>
+    <field number="854" name="QtyType" type="INT">
+      <value enum="0" description="UNITS" />
+      <value enum="1" description="CONTRACTS" />
+    </field>
+    <field number="855" name="SecondaryTrdType" type="INT" />
+    <field number="856" name="TradeReportType" type="INT">
+      <value enum="0" description="SUBMIT" />
+      <value enum="1" description="ALLEGED" />
+      <value enum="2" description="ACCEPT" />
+      <value enum="3" description="DECLINE" />
+      <value enum="4" description="ADDENDUM" />
+      <value enum="5" description="NO_WAS" />
+      <value enum="6" description="TRADE_REPORT_CANCEL" />
+      <value enum="7" description="LOCKED_IN_TRADE_BREAK" />
+    </field>
+    <field number="857" name="AllocNoOrdersType" type="INT">
+      <value enum="0" description="NOT_SPECIFIED" />
+      <value enum="1" description="EXPLICIT_LIST_PROVIDED" />
+    </field>
+    <field number="858" name="SharedCommission" type="AMT" />
+    <field number="859" name="ConfirmReqID" type="STRING" />
+    <field number="860" name="AvgParPx" type="PRICE" />
+    <field number="861" name="ReportedPx" type="PRICE" />
+    <field number="862" name="NoCapacities" type="NUMINGROUP" />
+    <field number="863" name="OrderCapacityQty" type="QTY" />
+    <field number="864" name="NoEvents" type="NUMINGROUP" />
+    <field number="865" name="EventType" type="INT">
+      <value enum="1" description="PUT" />
+      <value enum="2" description="CALL" />
+      <value enum="3" description="TENDER" />
+      <value enum="4" description="SINKING_FUND_CALL" />
+    </field>
+    <field number="866" name="EventDate" type="LOCALMKTDATE" />
+    <field number="867" name="EventPx" type="PRICE" />
+    <field number="868" name="EventText" type="STRING" />
+    <field number="869" name="PctAtRisk" type="PERCENTAGE" />
+    <field number="870" name="NoInstrAttrib" type="NUMINGROUP" />
+    <field number="871" name="InstrAttribType" type="INT">
+      <value enum="1" description="FLAT" />
+      <value enum="2" description="ZERO_COUPON" />
+      <value enum="3" description="INTEREST_BEARING" />
+      <value enum="4" description="NO_PERIODIC_PAYMENTS" />
+      <value enum="5" description="VARIABLE_RATE" />
+      <value enum="6" description="LESS_FEE_FOR_PUT" />
+      <value enum="7" description="STEPPED_COUPON" />
+      <value enum="8" description="COUPON_PERIOD" />
+      <value enum="9" description="WHEN_AND_IF_ISSUED" />
+    </field>
+    <field number="872" name="InstrAttribValue" type="STRING" />
+    <field number="873" name="DatedDate" type="LOCALMKTDATE" />
+    <field number="874" name="InterestAccrualDate" type="LOCALMKTDATE" />
+    <field number="875" name="CPProgram" type="INT" />
+    <field number="876" name="CPRegType" type="STRING" />
+    <field number="877" name="UnderlyingCPProgram" type="STRING" />
+    <field number="878" name="UnderlyingCPRegType" type="STRING" />
+    <field number="879" name="UnderlyingQty" type="QTY" />
+    <field number="880" name="TrdMatchID" type="STRING" />
+    <field number="881" name="SecondaryTradeReportRefID" type="STRING" />
+    <field number="882" name="UnderlyingDirtyPrice" type="PRICE" />
+    <field number="883" name="UnderlyingEndPrice" type="PRICE" />
+    <field number="884" name="UnderlyingStartValue" type="AMT" />
+    <field number="885" name="UnderlyingCurrentValue" type="AMT" />
+    <field number="886" name="UnderlyingEndValue" type="AMT" />
+    <field number="887" name="NoUnderlyingStips" type="NUMINGROUP" />
+    <field number="888" name="UnderlyingStipType" type="STRING" />
+    <field number="889" name="UnderlyingStipValue" type="STRING" />
+    <field number="890" name="MaturityNetMoney" type="AMT" />
+    <field number="891" name="MiscFeeBasis" type="INT">
+      <value enum="0" description="ABSOLUTE" />
+      <value enum="1" description="PER_UNIT" />
+      <value enum="2" description="PERCENTAGE" />
+    </field>
+    <field number="892" name="TotNoAllocs" type="INT" />
+    <field number="893" name="LastFragment" type="BOOLEAN" />
+    <field number="894" name="CollReqID" type="STRING" />
+    <field number="895" name="CollAsgnReason" type="INT">
+      <value enum="0" description="INITIAL" />
+      <value enum="1" description="SCHEDULED" />
+      <value enum="2" description="TIME_WARNING" />
+      <value enum="3" description="MARGIN_DEFICIENCY" />
+      <value enum="4" description="MARGIN_EXCESS" />
+      <value enum="5" description="FORWARD_COLLATERAL_DEMAND" />
+      <value enum="6" description="EVENT_OF_DEFAULT" />
+      <value enum="7" description="ADVERSE_TAX_EVENT" />
+    </field>
+    <field number="896" name="CollInquiryQualifier" type="INT">
+      <value enum="0" description="TRADEDATE" />
+      <value enum="1" description="GC_INSTRUMENT" />
+      <value enum="2" description="COLLATERALINSTRUMENT" />
+      <value enum="3" description="SUBSTITUTION_ELIGIBLE" />
+      <value enum="4" description="NOT_ASSIGNED" />
+      <value enum="5" description="PARTIALLY_ASSIGNED" />
+      <value enum="6" description="FULLY_ASSIGNED" />
+      <value enum="7" description="OUTSTANDING_TRADES" />
+    </field>
+    <field number="897" name="NoTrades" type="NUMINGROUP" />
+    <field number="898" name="MarginRatio" type="PERCENTAGE" />
+    <field number="899" name="MarginExcess" type="AMT" />
+    <field number="900" name="TotalNetValue" type="AMT" />
+    <field number="901" name="CashOutstanding" type="AMT" />
+    <field number="902" name="CollAsgnID" type="STRING" />
+    <field number="903" name="CollAsgnTransType" type="INT">
+      <value enum="0" description="NEW" />
+      <value enum="1" description="REPLACE" />
+      <value enum="2" description="CANCEL" />
+      <value enum="3" description="RELEASE" />
+      <value enum="4" description="REVERSE" />
+    </field>
+    <field number="904" name="CollRespID" type="STRING" />
+    <field number="905" name="CollAsgnRespType" type="INT">
+      <value enum="0" description="RECEIVED" />
+      <value enum="1" description="ACCEPTED" />
+      <value enum="2" description="DECLINED" />
+      <value enum="3" description="REJECTED" />
+    </field>
+    <field number="906" name="CollAsgnRejectReason" type="INT">
+      <value enum="0" description="UNKNOWN_DEAL" />
+      <value enum="1" description="UNKNOWN_OR_INVALID_INSTRUMENT" />
+      <value enum="2" description="UNAUTHORIZED_TRANSACTION" />
+      <value enum="3" description="INSUFFICIENT_COLLATERAL" />
+      <value enum="4" description="INVALID_TYPE_OF_COLLATERAL" />
+      <value enum="5" description="EXCESSIVE_SUBSTITUTION" />
+    </field>
+    <field number="907" name="CollAsgnRefID" type="STRING" />
+    <field number="908" name="CollRptID" type="STRING" />
+    <field number="909" name="CollInquiryID" type="STRING" />
+    <field number="910" name="CollStatus" type="INT">
+      <value enum="0" description="UNASSIGNED" />
+      <value enum="1" description="PARTIALLY_ASSIGNED" />
+      <value enum="2" description="ASSIGNMENT_PROPOSED" />
+      <value enum="3" description="ASSIGNED" />
+      <value enum="4" description="CHALLENGED" />
+    </field>
+    <field number="911" name="TotNumReports" type="INT" />
+    <field number="912" name="LastRptRequested" type="BOOLEAN" />
+    <field number="913" name="AgreementDesc" type="STRING" />
+    <field number="914" name="AgreementID" type="STRING" />
+    <field number="915" name="AgreementDate" type="LOCALMKTDATE" />
+    <field number="916" name="StartDate" type="LOCALMKTDATE" />
+    <field number="917" name="EndDate" type="LOCALMKTDATE" />
+    <field number="918" name="AgreementCurrency" type="CURRENCY" />
+    <field number="919" name="DeliveryType" type="INT">
+      <value enum="0" description="VERSUS_PAYMENT" />
+      <value enum="1" description="FREE" />
+      <value enum="2" description="TRI_PARTY" />
+      <value enum="3" description="HOLD_IN_CUSTODY" />
+    </field>
+    <field number="920" name="EndAccruedInterestAmt" type="AMT" />
+    <field number="921" name="StartCash" type="AMT" />
+    <field number="922" name="EndCash" type="AMT" />
+    <field number="923" name="UserRequestID" type="STRING" />
+    <field number="924" name="UserRequestType" type="INT">
+      <value enum="1" description="LOGONUSER" />
+      <value enum="2" description="LOGOFFUSER" />
+      <value enum="3" description="CHANGEPASSWORDFORUSER" />
+      <value enum="4" description="REQUEST_INDIVIDUAL_USER_STATUS" />
+    </field>
+    <field number="925" name="NewPassword" type="STRING" />
+    <field number="926" name="UserStatus" type="INT">
+      <value enum="1" description="LOGGED_IN" />
+      <value enum="2" description="NOT_LOGGED_IN" />
+      <value enum="3" description="USER_NOT_RECOGNISED" />
+      <value enum="4" description="PASSWORD_INCORRECT" />
+      <value enum="5" description="PASSWORD_CHANGED" />
+      <value enum="6" description="OTHER" />
+    </field>
+    <field number="927" name="UserStatusText" type="STRING" />
+    <field number="928" name="StatusValue" type="INT">
+      <value enum="1" description="CONNECTED" />
+      <value enum="2" description="NOT_CONNECTED_DOWN_EXPECTED_UP" />
+      <value enum="3" description="NOT_CONNECTED_DOWN_EXPECTED_DOWN" />
+      <value enum="4" description="IN_PROCESS" />
+    </field>
+    <field number="929" name="StatusText" type="STRING" />
+    <field number="930" name="RefCompID" type="STRING" />
+    <field number="931" name="RefSubID" type="STRING" />
+    <field number="932" name="NetworkResponseID" type="STRING" />
+    <field number="933" name="NetworkRequestID" type="STRING" />
+    <field number="934" name="LastNetworkResponseID" type="STRING" />
+    <field number="935" name="NetworkRequestType" type="INT">
+      <value enum="1" description="SNAPSHOT" />
+      <value enum="2" description="SUBSCRIBE" />
+      <value enum="4" description="STOP_SUBSCRIBING" />
+      <value enum="8" description="LEVEL_OF_DETAIL" />
+    </field>
+    <field number="936" name="NoCompIDs" type="NUMINGROUP" />
+    <field number="937" name="NetworkStatusResponseType" type="INT">
+      <value enum="1" description="FULL" />
+      <value enum="2" description="INCREMENTAL_UPDATE" />
+    </field>
+    <field number="938" name="NoCollInquiryQualifier" type="NUMINGROUP" />
+    <field number="939" name="TrdRptStatus" type="INT">
+      <value enum="0" description="ACCEPTED" />
+      <value enum="1" description="REJECTED" />
+    </field>
+    <field number="940" name="AffirmStatus" type="INT">
+      <value enum="1" description="RECEIVED" />
+      <value enum="2" description="CONFIRM_REJECTED" />
+      <value enum="3" description="AFFIRMED" />
+    </field>
+    <field number="941" name="UnderlyingStrikeCurrency" type="CURRENCY" />
+    <field number="942" name="LegStrikeCurrency" type="CURRENCY" />
+    <field number="943" name="TimeBracket" type="STRING" />
+    <field number="944" name="CollAction" type="INT">
+      <value enum="0" description="RETAIN" />
+      <value enum="1" description="ADD" />
+      <value enum="2" description="REMOVE" />
+    </field>
+    <field number="945" name="CollInquiryStatus" type="INT">
+      <value enum="0" description="ACCEPTED" />
+      <value enum="1" description="ACCEPTED_WITH_WARNINGS" />
+      <value enum="2" description="COMPLETED" />
+      <value enum="3" description="COMPLETED_WITH_WARNINGS" />
+      <value enum="4" description="REJECTED" />
+    </field>
+    <field number="946" name="CollInquiryResult" type="INT">
+      <value enum="0" description="SUCCESSFUL" />
+      <value enum="1" description="INVALID_OR_UNKNOWN_INSTRUMENT" />
+      <value enum="2" description="INVALID_OR_UNKNOWN_COLLATERAL_TYPE" />
+      <value enum="3" description="INVALID_PARTIES" />
+      <value enum="4" description="INVALID_TRANSPORT_TYPE_REQUESTED" />
+      <value enum="5" description="INVALID_DESTINATION_REQUESTED" />
+      <value enum="6" description="NO_COLLATERAL_FOUND_FOR_THE_TRADE_SPECIFIED" />
+      <value enum="7" description="NO_COLLATERAL_FOUND_FOR_THE_ORDER_SPECIFIED" />
+      <value enum="8" description="COLLATERAL_INQUIRY_TYPE_NOT_SUPPORTED" />
+      <value enum="9" description="UNAUTHORIZED_FOR_COLLATERAL_INQUIRY" />
+      <value enum="99" description="OTHER" />
+    </field>
+    <field number="947" name="StrikeCurrency" type="CURRENCY" />
+    <field number="948" name="NoNested3PartyIDs" type="NUMINGROUP" />
+    <field number="949" name="Nested3PartyID" type="STRING" />
+    <field number="950" name="Nested3PartyIDSource" type="CHAR" />
+    <field number="951" name="Nested3PartyRole" type="INT" />
+    <field number="952" name="NoNested3PartySubIDs" type="NUMINGROUP" />
+    <field number="953" name="Nested3PartySubID" type="STRING" />
+    <field number="954" name="Nested3PartySubIDType" type="INT" />
+    <field number="955" name="LegContractSettlMonth" type="MONTHYEAR" />
+    <field number="956" name="LegInterestAccrualDate" type="LOCALMKTDATE" />
+  </fields>
+</fix>
diff --git a/fix/README b/fix/README
new file mode 100644 (file)
index 0000000..14e93e1
--- /dev/null
@@ -0,0 +1,20 @@
+FIX4x.xml from quickfixengine.org 
+
+FIX.xml is a modified FIX44.xml with fields from previous versions.
+cf new field attributes 'since' and 'until'.
+
+hfField.xsl: generate hf_register_info list.
+hfDecl.xsl : generate fix_field list.
+Values.xsl : generate value_string and string_string tables.
+hfList.xsl : find the last tag number.
+
+packet-fix.h: Values.xsl hfDecl.xsl hfField.xsl output on FIX.xml follow
+by output of hfList.xsl on FIX40.xml to FIX44.xml
+example
+(xsltproc Values.xsl FIX.xml ; xsltproc hfDecl.xsl FIX.xml; xsltproc hfField.xsl FIX.xml;\
+xsltproc hfList.xsl FIX40.xml; xsltproc hfList.xsl FIX41.xml; xsltproc hfList.xsl FIX42.xml;\
+xsltproc hfList.xsl FIX43.xml; xsltproc hfList.xsl FIX44.xml) > packet-fix.h
+
+NOTES:
+- fix_field structure should use 'since' and 'until' attributes for removed
+tags.
diff --git a/fix/Values.xsl b/fix/Values.xsl
new file mode 100644 (file)
index 0000000..01c6d5b
--- /dev/null
@@ -0,0 +1,54 @@
+<!--
+Syntax: xsltproc Values.xsl FIX44.xml
+-->
+
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
+ <xsl:output  method="text" encoding="UTF-8"/>
+
+ <xsl:template match="text()"/>
+ <xsl:template match="/">/* DO NOT EDIT
+ * This file is autogenerated
+ */
+
+  <xsl:apply-templates/>
+
+</xsl:template>
+<!--
+translate(@description,$uppercase,$smallcase)  
+-->
+
+<xsl:variable name="smallcase" select="'abcdefghijklmnopqrstuvwxyz'" />
+<xsl:variable name="uppercase" select="'ABCDEFGHIJKLMNOPQRSTUVWXYZ'" />
+
+<xsl:template match="fix/fields">
+<xsl:for-each select="field[value]">
+    <xsl:variable name="val_type"  >
+    <xsl:choose>   
+           <xsl:when test="@type='STRING'"> string_string </xsl:when>
+          <xsl:otherwise> value_string </xsl:otherwise>
+    </xsl:choose>
+    </xsl:variable>
+   static const <xsl:copy-of select="$val_type" /> <xsl:value-of select="@name"/>_val[] = { <xsl:for-each select="value"> <xsl:choose>
+             <xsl:when test="../@type='INT'">
+       { <xsl:value-of select="@enum"/>, "<xsl:value-of select="translate(@description,'_',' ')"/>" },</xsl:when>
+             <xsl:when test="../@type='STRING'">
+       { "<xsl:value-of select="@enum"/>", "<xsl:value-of select="translate(@description,'_',' ')"/>" },</xsl:when>
+            <xsl:otherwise>
+       { '<xsl:value-of select="@enum"/>', "<xsl:value-of select="translate(@description,'_',' ')"/>" },</xsl:otherwise>
+          </xsl:choose>
+       </xsl:for-each>
+       { 0, NULL }
+   };
+
+</xsl:for-each>
+</xsl:template>
+
+<xsl:template match="fix/messages">
+   static const string_string messages_val[] = { <xsl:for-each select="message">
+       { "<xsl:value-of select="@msgtype"/>", "<xsl:value-of select="@name"/>" }, </xsl:for-each>
+       { "", NULL }
+   };
+</xsl:template>
+
+</xsl:stylesheet>
diff --git a/fix/hfDecl.xsl b/fix/hfDecl.xsl
new file mode 100644 (file)
index 0000000..8edd6b7
--- /dev/null
@@ -0,0 +1,34 @@
+<!--
+-->
+
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
+ <xsl:output method="text" encoding="UTF-8"/>
+
+ <xsl:template match="text()"/>
+
+ <xsl:template match="/">
+static fix_field fix_fields[] = {
+      <xsl:apply-templates/> 
+  };
+ </xsl:template>
+
+
+<xsl:template match="fields">
+<xsl:for-each select="field">
+    <xsl:sort select="@number" data-type="number"/> 
+    <xsl:choose>   
+           <xsl:when test="count( value ) != 0">  
+               <xsl:variable name="val_type"  >
+                   <xsl:choose>   
+                       <xsl:when test="@type='INT'">0</xsl:when>
+                       <xsl:when test="@type='STRING'">1</xsl:when>
+                       <xsl:otherwise>2</xsl:otherwise>
+                   </xsl:choose>
+                </xsl:variable>
+               { <xsl:value-of select="@number"/>, -1, <xsl:copy-of select="$val_type" /> , <xsl:value-of select="@name"/>_val },  </xsl:when>
+          <xsl:otherwise> 
+               { <xsl:value-of select="@number"/>, -1, 0, NULL }, /* <xsl:value-of select="@name"/> */  </xsl:otherwise>
+    </xsl:choose> 
+</xsl:for-each>
+</xsl:template> 
+</xsl:stylesheet>
diff --git a/fix/hfField.xsl b/fix/hfField.xsl
new file mode 100644 (file)
index 0000000..af059e6
--- /dev/null
@@ -0,0 +1,25 @@
+<!--
+-->
+
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
+ <xsl:output method="text" encoding="UTF-8"/>
+
+ <xsl:template match="text()"/>
+
+ <xsl:template match="/">
+static hf_register_info hf_FIX[] = {
+      <xsl:apply-templates/>
+  };
+
+</xsl:template>
+
+
+<xsl:template match="fields">
+<xsl:for-each select="field">
+    <xsl:sort select="@number" data-type="number"/> 
+        { &amp;fix_fields[<xsl:value-of select="position( ) -1" />].hf_id, 
+            { "<xsl:value-of select="@name"/> (<xsl:value-of select="@number"/>)", "fix.<xsl:value-of select="@name"/>",
+            FT_STRING, BASE_NONE, NULL, 0x00,
+            "<xsl:value-of select="@name"/> (<xsl:value-of select="@number"/>)", HFILL }
+        },</xsl:for-each></xsl:template>
+</xsl:stylesheet>
diff --git a/fix/hfList.xsl b/fix/hfList.xsl
new file mode 100644 (file)
index 0000000..b3f3bea
--- /dev/null
@@ -0,0 +1,31 @@
+<!--
+-->
+
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
+ <xsl:output method="text" encoding="UTF-8"/>
+
+ <xsl:template match="text()"/>
+
+ <xsl:template match="/">
+      <xsl:apply-templates/>
+</xsl:template>
+
+<!--
+   <xsl:value-of select="@number" />, <xsl:value-of select="@name" />, 
+-->
+
+<xsl:template match="fix">
+<xsl:variable name="max_tag">
+  <xsl:for-each select="fields/field/@number">
+    <xsl:sort data-type="number" order="descending" />
+      <xsl:if test="position() = 1">
+      <xsl:value-of select="number(.)" />
+      </xsl:if>
+  </xsl:for-each>
+</xsl:variable>#define FIX_<xsl:value-of select="@major"/><xsl:value-of select="@minor"/> <xsl:text> </xsl:text> 
+<xsl:value-of select="$max_tag"/>
+<xsl:text>
+</xsl:text>
+</xsl:template>
+
+</xsl:stylesheet>