{
  "description": "CAT schemas for Industry Member reportable events",
  "version": "4.2.0",
  "dataTypes": [
    {
      "dataType": "Price",
      "JSONDataType": "NUMBER",
      "precision": 10,
      "scale": 8
    },
    {
      "dataType": "Date",
      "JSONDataType": "NUMBER",
      "precision": 8,
      "scale": 0
    },
    {
      "dataType": "Timestamp",
      "JSONDataType": [
        {
          "JSONDataType": "NUMBER",
          "precision": 20,
          "scale": 0
        },
        {
          "JSONDataType": "STRING",
          "maxLength": 25
        }
      ]
    },
    {
      "dataType": "Real Quantity",
      "JSONDataType": "NUMBER",
      "precision": 12,
      "scale": 6
    },
    {
      "dataType": "Whole Quantity",
      "JSONDataType": "NUMBER",
      "precision": 12,
      "scale": 0
    },
    {
      "dataType": "Symbol",
      "JSONDataType": "STRING",
      "maxLength": 22
    },
    {
      "dataType": "Message Type",
      "JSONDataType": "STRING",
      "maxLength": 5,
      "allowedValues": [
        "MENO",
        "MENOS",
        "MEOR",
        "MEMR",
        "MECR",
        "MEORS",
        "MEMRS",
        "MECRS",
        "MEOA",
        "MEIR",
        "MEIM",
        "MEIC",
        "MEIMR",
        "MEICR",
        "MECO",
        "MECOM",
        "MECOC",
        "MEOM",
        "MEOMS",
        "MEOMR",
        "MEOJ",
        "MEOC",
        "MEOCR",
        "MENQ",
        "MENQS",
        "MERQ",
        "MERQS",
        "MEQR",
        "MEQC",
        "MEQM",
        "MEQS",
        "MEOT",
        "MEOTS",
        "MEOF",
        "MEOFS",
        "MEFA",
        "MEPA",
        "MEAA",
        "MEOE",
        "MONO",
        "MONOS",
        "MOOR",
        "MOMR",
        "MOCR",
        "MOORS",
        "MOMRS",
        "MOCRS",
        "MOOA",
        "MOIR",
        "MOIM",
        "MOIC",
        "MOIMR",
        "MOICR",
        "MOCO",
        "MOCOM",
        "MOCOC",
        "MOOM",
        "MOOMS",
        "MOOMR",
        "MOOJ",
        "MOOC",
        "MOOCR",
        "MOOT",
        "MOOF",
        "MOOFS",
        "MOFA",
        "MOPA",
        "MOAA",
        "MOOE",
        "MLNO",
        "MLOR",
        "MLMR",
        "MLCR",
        "MLOA",
        "MLIR",
        "MLIM",
        "MLIC",
        "MLIMR",
        "MLICR",
        "MLCO",
        "MLCOM",
        "MLCOC",
        "MLOM",
        "MLOMR",
        "MLOC",
        "MLOCR",
        "MLOS",
        "MLOE"
      ]
    },
    {
      "dataType": "CAT Reporter IMID",
      "JSONDataType": "STRING",
      "maxLength": 7
    },
    {
      "dataType": "Industry Member ID",
      "JSONDataType": "STRING",
      "maxLength": 16
    },
    {
      "dataType": "Exchange ID",
      "JSONDataType": "STRING",
      "maxLength": 7,
      "allowedValues": [
        "24X",
        "AMER",
        "AMEROP",
        "ARCA",
        "ARCAOP",
        "BOX",
        "BSTX",
        "BX",
        "BYX",
        "BZX",
        "BZXOP",
        "C2",
        "CBOE",
        "CHX",
        "EDGA",
        "EDGX",
        "EDGXOP",
        "EMLD",
        "GEMX",
        "IEX",
        "IEXOP",
        "ISE",
        "LTSE",
        "MEMX",
        "MEMXOP",
        "MIAMI",
        "MRX",
        "MX2OP",
        "NOBO",
        "NOM",
        "NSDQ",
        "NSX",
        "NYSE",
        "PEARL",
        "PEARLEQ",
        "PHLX",
        "PSX",
        "SPHR",
        "TXSE"
      ]
    },
    {
      "dataType": "Integer",
      "JSONDataType": "NUMBER",
      "precision": 19,
      "scale": 0
    },
    {
      "dataType": "Unsigned",
      "JSONDataType": "NUMBER",
      "precision": 20,
      "scale": 0
    },
    {
      "dataType": "Boolean",
      "JSONDataType": "BOOLEAN",
      "allowedValues": [
        true,
        false
      ]
    }
  ],
  "eventDefinitions": [
    {
      "eventName": "MENO",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "9"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "10"
        },
        {
          "name": "electronicDupFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "manualOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "13"
        },
        {
          "name": "manualOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "deptType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "solicitationFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "RFQID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "21"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "22"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "23"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "24"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "25"
        },
        {
          "name": "custDspIntrFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "26"
        },
        {
          "name": "firmDesignatedID",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "27"
        },
        {
          "name": "accountHolderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "28"
        },
        {
          "name": "affiliateFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "29"
        },
        {
          "name": "infoBarrierID",
          "dataType": "Text (20)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "30"
        },
        {
          "name": "aggregatedOrders",
          "dataType": "Aggregated Orders",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "31",
          "arrayElements": [
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "31.n.1"
            },
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Required",
              "position": "31.n.2"
            },
            {
              "name": "quantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Conditional",
              "position": "31.n.3"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "31.n.4"
            }
          ]
        },
        {
          "name": "negotiatedTradeFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "32"
        },
        {
          "name": "representativeInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "33"
        },
        {
          "name": "seqNum",
          "dataType": "Alphanumeric (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "34"
        },
        {
          "name": "atsDisplayInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "35"
        },
        {
          "name": "displayPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "36"
        },
        {
          "name": "workingPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "37"
        },
        {
          "name": "displayQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "38"
        },
        {
          "name": "atsOrderType",
          "dataType": "Array",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "39"
        },
        {
          "name": "nbbPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "40"
        },
        {
          "name": "nbbQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "41"
        },
        {
          "name": "nboPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "42"
        },
        {
          "name": "nboQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "43"
        },
        {
          "name": "nbboSource",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "44"
        },
        {
          "name": "nbboTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "45"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "46"
        },
        {
          "name": "BFMMFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Conditional",
          "position": "47"
        }
      ]
    },
    {
      "eventName": "MENOS",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "aggregatedOrders",
          "dataType": "Aggregated Orders",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "11",
          "arrayElements": [
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "11.n.1"
            },
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Required",
              "position": "11.n.2"
            },
            {
              "name": "quantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Conditional",
              "position": "11.n.3"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "11.n.4"
            }
          ]
        },
        {
          "name": "firmDesignatedID",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "12"
        }
      ]
    },
    {
      "eventName": "MEOR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicDupFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "12"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "13"
        },
        {
          "name": "senderIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "destination",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "15"
        },
        {
          "name": "destinationType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "routedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "session",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "19"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "20"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "21"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "23"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "24"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "25"
        },
        {
          "name": "affiliateFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "26"
        },
        {
          "name": "isoInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "27"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "28"
        },
        {
          "name": "routeRejectedFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "29"
        },
        {
          "name": "dupROIDCond",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "30"
        },
        {
          "name": "seqNum",
          "dataType": "Alphanumeric (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "31"
        },
        {
          "name": "multiLegInd",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "32"
        },
        {
          "name": "pairedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "33"
        },
        {
          "name": "infoBarrierID",
          "dataType": "Text (20)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "34"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "35"
        },
        {
          "name": "quoteKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "36"
        },
        {
          "name": "quoteID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "37"
        }
      ]
    },
    {
      "eventName": "MEMR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "senderIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "13"
        },
        {
          "name": "destination",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "destinationType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "routedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "priorRoutedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "session",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "19"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "20"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "21"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "23"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "24"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "25"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "26"
        },
        {
          "name": "affiliateFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "27"
        },
        {
          "name": "isoInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "28"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "29"
        },
        {
          "name": "routeRejectedFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "30"
        },
        {
          "name": "dupROIDCond",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "31"
        },
        {
          "name": "seqNum",
          "dataType": "Alphanumeric (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "32"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "33"
        },
        {
          "name": "multiLegInd",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "34"
        }
      ]
    },
    {
      "eventName": "MECR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "cancelQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "14"
        },
        {
          "name": "senderIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "15"
        },
        {
          "name": "destination",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "destinationType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "routedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "session",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "routeRejectedFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "seqNum",
          "dataType": "Alphanumeric (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "21"
        },
        {
          "name": "multiLegInd",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "22"
        }
      ]
    },
    {
      "eventName": "MEORS",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "senderIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "destination",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "13"
        },
        {
          "name": "destinationType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "routedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "15"
        },
        {
          "name": "session",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "routeRejectedFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "17"
        }
      ]
    },
    {
      "eventName": "MEMRS",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "senderIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "destination",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "13"
        },
        {
          "name": "destinationType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "routedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "15"
        },
        {
          "name": "session",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "routeRejectedFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "multiLegInd",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "18"
        }
      ]
    },
    {
      "eventName": "MECRS",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "senderIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "destination",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "13"
        },
        {
          "name": "destinationType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "routedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "15"
        },
        {
          "name": "session",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "routeRejectedFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "multiLegInd",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "18"
        }
      ]
    },
    {
      "eventName": "MEOA",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "9"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "10"
        },
        {
          "name": "electronicDupFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "receiverIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "senderIMID",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "senderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "routedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "manualOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "manualOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "affiliateFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "19"
        },
        {
          "name": "deptType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "21"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "23"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "24"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "25"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "26"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "27"
        },
        {
          "name": "isoInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "28"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "29"
        },
        {
          "name": "custDspIntrFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "30"
        },
        {
          "name": "infoBarrierID",
          "dataType": "Text (20)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "31"
        },
        {
          "name": "seqNum",
          "dataType": "Alphanumeric (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "32"
        },
        {
          "name": "atsDisplayInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "33"
        },
        {
          "name": "displayPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "34"
        },
        {
          "name": "workingPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "35"
        },
        {
          "name": "displayQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "36"
        },
        {
          "name": "atsOrderType",
          "dataType": "Array",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "37"
        },
        {
          "name": "nbbPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "38"
        },
        {
          "name": "nbbQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "39"
        },
        {
          "name": "nboPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "40"
        },
        {
          "name": "nboQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "41"
        },
        {
          "name": "nbboSource",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "42"
        },
        {
          "name": "nbboTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "43"
        },
        {
          "name": "solicitationFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "44"
        },
        {
          "name": "pairedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "45"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "46"
        }
      ]
    },
    {
      "eventName": "MEIR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "parentOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "parentOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "10"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "12"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "deptType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "receivingDeskType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "infoBarrierID",
          "dataType": "Text (20)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "21"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "22"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "23"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "24"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "25"
        },
        {
          "name": "multiLegInd",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "26"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "27"
        },
        {
          "name": "deskOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "28"
        }
      ]
    },
    {
      "eventName": "MEIM",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "priorOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "priorOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "10"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "12"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "deptType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "receivingDeskType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "infoBarrierID",
          "dataType": "Text (20)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "initiator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "19"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "20"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "21"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "leavesQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "23"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "24"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "25"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "26"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "27"
        },
        {
          "name": "requestTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "28"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "29"
        },
        {
          "name": "deskOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "30"
        },
        {
          "name": "priorDeskOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "31"
        }
      ]
    },
    {
      "eventName": "MEIC",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "cancelQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "leavesQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "initiator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "requestTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "infoBarrierID",
          "dataType": "Text (20)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "deskOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "18"
        }
      ]
    },
    {
      "eventName": "MEIMR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "deptType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "receivingDeskType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "infoBarrierID",
          "dataType": "Text (20)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "15"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "20"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "21"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "23"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "24"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "25"
        },
        {
          "name": "deskOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "26"
        }
      ]
    },
    {
      "eventName": "MEICR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "cancelQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "deskOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "14"
        }
      ]
    },
    {
      "eventName": "MECO",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "parentOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "9"
        },
        {
          "name": "parentOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "10"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "12"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "19"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "20"
        },
        {
          "name": "seqNum",
          "dataType": "Alphanumeric (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "21"
        },
        {
          "name": "atsDisplayInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "displayPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "23"
        },
        {
          "name": "workingPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "24"
        },
        {
          "name": "displayQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "25"
        },
        {
          "name": "nbbPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "26"
        },
        {
          "name": "nbbQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "27"
        },
        {
          "name": "nboPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "28"
        },
        {
          "name": "nboQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "29"
        },
        {
          "name": "nbboSource",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "30"
        },
        {
          "name": "nbboTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "31"
        },
        {
          "name": "multiLegInd",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "32"
        },
        {
          "name": "infoBarrierID",
          "dataType": "Text (20)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "33"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "34"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional",
          "position": "35"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "36"
        }
      ]
    },
    {
      "eventName": "MECOM",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "priorOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "priorOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "10"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "12"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "leavesQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "19"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "21"
        },
        {
          "name": "seqNum",
          "dataType": "Alphanumeric (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "atsDisplayInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "23"
        },
        {
          "name": "displayPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "24"
        },
        {
          "name": "workingPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "25"
        },
        {
          "name": "displayQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "26"
        },
        {
          "name": "nbbPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "27"
        },
        {
          "name": "nbbQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "28"
        },
        {
          "name": "nboPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "29"
        },
        {
          "name": "nboQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "30"
        },
        {
          "name": "nbboSource",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "31"
        },
        {
          "name": "nbboTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "32"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "33"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional",
          "position": "34"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "35"
        }
      ]
    },
    {
      "eventName": "MECOC",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "cancelQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "12"
        },
        {
          "name": "leavesQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "reservedForFutureUse",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "14"
        },
        {
          "name": "seqNum",
          "dataType": "Alphanumeric (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "15"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional",
          "position": "16"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "17"
        }
      ]
    },
    {
      "eventName": "MEOM",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "priorOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "priorOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "10"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "12"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "manualOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "manualOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "15"
        },
        {
          "name": "electronicDupFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "receiverIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "senderIMID",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "senderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "20"
        },
        {
          "name": "routedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "21"
        },
        {
          "name": "requestTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "reservedForFutureUse",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "23"
        },
        {
          "name": "reservedForFutureUse",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "24"
        },
        {
          "name": "reservedForFutureUse",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "25"
        },
        {
          "name": "initiator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "26"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "27"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "28"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "29"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "30"
        },
        {
          "name": "leavesQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "31"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "32"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "33"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "34"
        },
        {
          "name": "isoInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "35"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "36"
        },
        {
          "name": "custDspIntrFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "37"
        },
        {
          "name": "infoBarrierID",
          "dataType": "Text (20)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "38"
        },
        {
          "name": "aggregatedOrders",
          "dataType": "Aggregated Orders",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "39",
          "arrayElements": [
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "39.n.1"
            },
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Required",
              "position": "39.n.2"
            },
            {
              "name": "quantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Conditional",
              "position": "39.n.3"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "39.n.4"
            }
          ]
        },
        {
          "name": "representativeInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "40"
        },
        {
          "name": "seqNum",
          "dataType": "Alphanumeric (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "41"
        },
        {
          "name": "atsDisplayInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "42"
        },
        {
          "name": "displayPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "43"
        },
        {
          "name": "workingPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "44"
        },
        {
          "name": "displayQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "45"
        },
        {
          "name": "atsOrderType",
          "dataType": "Array",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "46"
        },
        {
          "name": "nbbPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "47"
        },
        {
          "name": "nbbQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "48"
        },
        {
          "name": "nboPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "49"
        },
        {
          "name": "nboQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "50"
        },
        {
          "name": "nbboSource",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "51"
        },
        {
          "name": "nbboTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "52"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "53"
        },
        {
          "name": "BFMMFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Conditional",
          "position": "54"
        }
      ]
    },
    {
      "eventName": "MEOMS",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "aggregatedOrders",
          "dataType": "Aggregated Orders",
          "JSONDataType": "ARRAY",
          "required": "Required",
          "position": "11",
          "arrayElements": [
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "11.n.1"
            },
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Required",
              "position": "11.n.2"
            },
            {
              "name": "quantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Conditional",
              "position": "11.n.3"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "11.n.4"
            }
          ]
        }
      ]
    },
    {
      "eventName": "MEOMR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "receiverIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "13"
        },
        {
          "name": "senderIMID",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "senderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "15"
        },
        {
          "name": "reservedForFutureUse",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "16"
        },
        {
          "name": "reservedForFutureUse",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "17"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "21"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "22"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "23"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "24"
        },
        {
          "name": "isoInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "25"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "26"
        },
        {
          "name": "custDspIntrFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "27"
        },
        {
          "name": "infoBarrierID",
          "dataType": "Text (20)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "28"
        },
        {
          "name": "reservedForFutureUse",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "29"
        },
        {
          "name": "reservedForFutureUse",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "30"
        },
        {
          "name": "seqNum",
          "dataType": "Alphanumeric (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "31"
        },
        {
          "name": "atsDisplayInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "32"
        },
        {
          "name": "displayPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "33"
        },
        {
          "name": "workingPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "34"
        },
        {
          "name": "displayQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "35"
        },
        {
          "name": "atsOrderType",
          "dataType": "Array",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "36"
        },
        {
          "name": "nbbPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "37"
        },
        {
          "name": "nbbQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "38"
        },
        {
          "name": "nboPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "39"
        },
        {
          "name": "nboQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "40"
        },
        {
          "name": "nbboSource",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "41"
        },
        {
          "name": "nbboTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "42"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "43"
        }
      ]
    },
    {
      "eventName": "MEOJ",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "priorOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "priorOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "10"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "12"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "initiator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "leavesQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "seqNum",
          "dataType": "Alphanumeric (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "20"
        },
        {
          "name": "atsDisplayInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "21"
        },
        {
          "name": "displayPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "workingPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "23"
        },
        {
          "name": "displayQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "24"
        },
        {
          "name": "nbbPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "25"
        },
        {
          "name": "nbbQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "26"
        },
        {
          "name": "nboPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "27"
        },
        {
          "name": "nboQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "28"
        },
        {
          "name": "nbboSource",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "29"
        },
        {
          "name": "nbboTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "30"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "31"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "32"
        }
      ]
    },
    {
      "eventName": "MEOC",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "cancelQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "leavesQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "initiator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "seqNum",
          "dataType": "Alphanumeric (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "requestTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "infoBarrierID",
          "dataType": "Text (20)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "18"
        }
      ]
    },
    {
      "eventName": "MEOCR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "cancelQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "seqNum",
          "dataType": "Alphanumeric (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "infoBarrierID",
          "dataType": "Text (20)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "15"
        }
      ]
    },
    {
      "eventName": "MENQ",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "quoteKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "quoteID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "9"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "10"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "11"
        },
        {
          "name": "seqNum",
          "dataType": "Alphanumeric (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "13"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "14"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "15"
        },
        {
          "name": "onlyOneQuoteFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "bidPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "bidQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "askPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "askQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "20"
        },
        {
          "name": "firmDesignatedID",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "21"
        },
        {
          "name": "accountHolderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "unsolicitedInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "23"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "24"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "25"
        },
        {
          "name": "unpricedInd",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "26"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "27"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "28"
        },
        {
          "name": "representativeQuoteInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "29"
        },
        {
          "name": "askAggregatedOrders",
          "dataType": "Aggregated Orders",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "30",
          "arrayElements": [
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "30.1.1"
            },
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Required",
              "position": "30.1.2"
            },
            {
              "name": "quantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Conditional",
              "position": "30.1.3"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "30.1.4"
            }
          ]
        },
        {
          "name": "bidAggregatedOrders",
          "dataType": "Aggregated Orders",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "31",
          "arrayElements": [
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "31.1.1"
            },
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Required",
              "position": "31.1.2"
            },
            {
              "name": "quantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Conditional",
              "position": "31.1.3"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "31.1.4"
            }
          ]
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "32"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "33"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "34"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "35"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "36"
        }
      ]
    },
    {
      "eventName": "MENQS",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "quoteKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "quoteID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "9"
        },
        {
          "name": "representativeQuoteInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "10"
        },
        {
          "name": "askAggregatedOrders",
          "dataType": "Aggregated Order Details",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "11",
          "arrayElements": [
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "11.1.1"
            },
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Required",
              "position": "11.1.2"
            },
            {
              "name": "quantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Conditional",
              "position": "11.1.3"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "11.1.4"
            }
          ]
        },
        {
          "name": "bidAggregatedOrders",
          "dataType": "Aggregated Order Details",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "12",
          "arrayElements": [
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "12.1.1"
            },
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Required",
              "position": "12.1.2"
            },
            {
              "name": "quantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Conditional",
              "position": "12.1.3"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "12.1.4"
            }
          ]
        }
      ]
    },
    {
      "eventName": "MERQ",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "quoteKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "quoteID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "9"
        },
        {
          "name": "seqNum",
          "dataType": "Alphanumeric (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "10"
        },
        {
          "name": "senderIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "destination",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "12"
        },
        {
          "name": "routedQuoteID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "13"
        },
        {
          "name": "bidPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "bidQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "15"
        },
        {
          "name": "askPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "askQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "quoteRejectedFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "unpricedInd",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "19"
        },
        {
          "name": "dupROIDCond",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "21"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "destinationType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "23"
        },
        {
          "name": "session",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "24"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "25"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "26"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "27"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "28"
        }
      ]
    },
    {
      "eventName": "MERQS",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "quoteKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "quoteID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "9"
        },
        {
          "name": "senderIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "10"
        },
        {
          "name": "destination",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "routedQuoteID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "12"
        },
        {
          "name": "quoteRejectedFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "destinationType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "session",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "15"
        }
      ]
    },
    {
      "eventName": "MEQR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "quoteKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "quoteID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "receivedQuoteID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "seqNum",
          "dataType": "Alphanumeric (40)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "receiverIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "12"
        },
        {
          "name": "senderIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "onlyOneQuoteFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "15"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "16"
        },
        {
          "name": "bidPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "bidQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "askPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "askQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "20"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "21"
        },
        {
          "name": "unsolicitedInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "22"
        },
        {
          "name": "quoteWantedInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "23"
        },
        {
          "name": "unpricedInd",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "24"
        },
        {
          "name": "dupROIDCond",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "25"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "26"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "27"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "28"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "29"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "30"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "31"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "32"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "33"
        }
      ]
    },
    {
      "eventName": "MEQC",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "quoteKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "quoteID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "seqNum",
          "dataType": "Alphanumeric (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "reservedForFutureUse",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "12"
        },
        {
          "name": "initiator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "14"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "17"
        }
      ]
    },
    {
      "eventName": "MEQM",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "quoteKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "quoteID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "priorQuoteKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "priorQuoteID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "10"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "11"
        },
        {
          "name": "seqNum",
          "dataType": "Alphanumeric (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "bidPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "13"
        },
        {
          "name": "bidQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "askPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "15"
        },
        {
          "name": "askQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "unsolicitedInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "unpricedInd",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "19"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "20"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "21"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "22"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "23"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "24"
        }
      ]
    },
    {
      "eventName": "MEQS",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "quoteKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "quoteID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "seqNum",
          "dataType": "Alphanumeric (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "mpStatusCode",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "12"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "14"
        }
      ]
    },
    {
      "eventName": "MEOT",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "tradeKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "tradeID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "9"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "10"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Optional",
          "position": "11"
        },
        {
          "name": "cancelFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "12"
        },
        {
          "name": "cancelTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "13"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "14"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "15"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "capacity",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "tapeTradeID",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "marketCenterID",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "20"
        },
        {
          "name": "sideDetailsInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "21"
        },
        {
          "name": "buyDetails",
          "dataType": "Trade Side Details",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "22",
          "arrayElements": [
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Conditional",
              "position": "22.1.1"
            },
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "22.1.2"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "22.1.3"
            },
            {
              "name": "retiredFieldPosition",
              "dataType": "Text (0)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "22.1.4"
            },
            {
              "name": "firmDesignatedID",
              "dataType": "Text (40)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "22.1.5"
            },
            {
              "name": "accountHolderType",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "22.1.6"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "22.1.7"
            },
            {
              "name": "BFMMFlag",
              "dataType": "Boolean",
              "JSONDataType": "BOOLEAN",
              "required": "Conditional",
              "position": "22.1.8"
            }
          ]
        },
        {
          "name": "sellDetails",
          "dataType": "Trade Side Details",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "23",
          "arrayElements": [
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Conditional",
              "position": "23.1.1"
            },
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "23.1.2"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "23.1.3"
            },
            {
              "name": "retiredFieldPosition",
              "dataType": "Text (0)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "23.1.4"
            },
            {
              "name": "firmDesignatedID",
              "dataType": "Text (40)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "23.1.5"
            },
            {
              "name": "accountHolderType",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "23.1.6"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "23.1.7"
            },
            {
              "name": "BFMMFlag",
              "dataType": "Boolean",
              "JSONDataType": "BOOLEAN",
              "required": "Conditional",
              "position": "23.1.8"
            }
          ]
        },
        {
          "name": "reportingExceptionCode",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "24"
        },
        {
          "name": "seqNum",
          "dataType": "Alphanumeric (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "25"
        },
        {
          "name": "nbbPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "26"
        },
        {
          "name": "nbbQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "27"
        },
        {
          "name": "nboPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "28"
        },
        {
          "name": "nboQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "29"
        },
        {
          "name": "nbboSource",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "30"
        },
        {
          "name": "nbboTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "31"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "32"
        },
        {
          "name": "clearingFirm",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "33"
        },
        {
          "name": "counterparty",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "34"
        },
        {
          "name": "multiLegInd",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "35"
        },
        {
          "name": "infoBarrierID",
          "dataType": "Text (20)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "36"
        }
      ]
    },
    {
      "eventName": "MEOTS",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "tradeKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "tradeID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "9"
        },
        {
          "name": "buyDetails",
          "dataType": "Trade Side Details",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "10",
          "arrayElements": [
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Conditional",
              "position": "10.1.1"
            },
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "10.1.2"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "10.1.3"
            },
            {
              "name": "quantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Required",
              "position": "10.1.4"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "10.1.5"
            },
            {
              "name": "firmDesignatedID",
              "dataType": "Text (40)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "10.1.6"
            },
            {
              "name": "accountHolderType",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "10.1.7"
            },
            {
              "name": "BFMMFlag",
              "dataType": "Boolean",
              "JSONDataType": "BOOLEAN",
              "required": "Conditional",
              "position": "10.1.8"
            }
          ]
        },
        {
          "name": "sellDetails",
          "dataType": "Trade Side Details",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "11",
          "arrayElements": [
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Conditional",
              "position": "11.1.1"
            },
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "11.1.2"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "11.1.3"
            },
            {
              "name": "quantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Required",
              "position": "11.1.4"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "11.1.5"
            },
            {
              "name": "firmDesignatedID",
              "dataType": "Text (40)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "11.1.6"
            },
            {
              "name": "accountHolderType",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "11.1.7"
            },
            {
              "name": "BFMMFlag",
              "dataType": "Boolean",
              "JSONDataType": "BOOLEAN",
              "required": "Conditional",
              "position": "11.1.8"
            }
          ]
        },
        {
          "name": "multiLegInd",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "12"
        }
      ]
    },
    {
      "eventName": "MEOF",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "fillKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "fulfillmentID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "9"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "10"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "fulfillmentLinkType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "12"
        },
        {
          "name": "cancelFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "cancelTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "capacity",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "clientDetails",
          "dataType": "Fulfillment Side Details",
          "JSONDataType": "ARRAY",
          "required": "Required",
          "position": "18",
          "arrayElements": [
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Conditional",
              "position": "18.1.1"
            },
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "18.1.2"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "18.1.3"
            },
            {
              "name": "retiredFieldPosition",
              "dataType": "Text (0)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "18.1.4"
            },
            {
              "name": "firmDesignatedID",
              "dataType": "Text (40)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "18.1.5"
            },
            {
              "name": "accountHolderType",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "18.1.6"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "18.1.7"
            }
          ]
        },
        {
          "name": "firmDetails",
          "dataType": "Fulfillment Side Details",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "19",
          "arrayElements": [
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Conditional",
              "position": "19.1.1"
            },
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "19.1.2"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "19.1.3"
            },
            {
              "name": "retiredFieldPosition",
              "dataType": "Text (0)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "19.1.4"
            },
            {
              "name": "firmDesignatedID",
              "dataType": "Text (40)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "19.1.5"
            },
            {
              "name": "accountHolderType",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "19.1.6"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "19.1.7"
            }
          ]
        },
        {
          "name": "infoBarrierID",
          "dataType": "Text (20)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "20"
        }
      ]
    },
    {
      "eventName": "MEOFS",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "fillKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "fulfillmentID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "9"
        },
        {
          "name": "firmDetails",
          "dataType": "Fulfillment Side Details",
          "JSONDataType": "ARRAY",
          "required": "Required",
          "position": "10",
          "arrayElements": [
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Required",
              "position": "10.1.1"
            },
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "10.1.2"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "10.1.3"
            },
            {
              "name": "quantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Required",
              "position": "10.1.4"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "10.1.5"
            }
          ]
        }
      ]
    },
    {
      "eventName": "MEFA",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "fillKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "fulfillmentID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "priorFillKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "8"
        },
        {
          "name": "priorFulfillmentID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "10"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "12"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "capacity",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "fulfillmentLinkType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "clientDetails",
          "dataType": "Fulfillment Side Details",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "19",
          "arrayElements": [
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Conditional",
              "position": "19.1.1"
            },
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "19.1.2"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "19.1.3"
            },
            {
              "name": "retiredFieldPosition",
              "dataType": "Text (0)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "19.1.4"
            },
            {
              "name": "firmDesignatedID",
              "dataType": "Text (40)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "19.1.5"
            },
            {
              "name": "accountHolderType",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "19.1.6"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "19.1.7"
            }
          ]
        },
        {
          "name": "firmDetails",
          "dataType": "Fulfillment Side Details",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "20",
          "arrayElements": [
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Conditional",
              "position": "20.1.1"
            },
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "20.1.2"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "20.1.3"
            },
            {
              "name": "retiredFieldPosition",
              "dataType": "Text (0)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "20.1.4"
            },
            {
              "name": "firmDesignatedID",
              "dataType": "Text (40)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "20.1.5"
            },
            {
              "name": "accountHolderType",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "20.1.6"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "20.1.7"
            }
          ]
        }
      ]
    },
    {
      "eventName": "MEPA",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "allocationKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "allocationID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "9"
        },
        {
          "name": "cancelFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "10"
        },
        {
          "name": "cancelTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "12"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "firmDesignatedID",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "16"
        },
        {
          "name": "institutionFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "tradeDate",
          "dataType": "Date",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "settlementDate",
          "dataType": "Date",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "allocationType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "DVPCustodianID",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "21"
        },
        {
          "name": "correspondentCRD",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "newOrderFDID",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "23"
        },
        {
          "name": "allocationInstructionTime",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Optional",
          "position": "24"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "25"
        },
        {
          "name": "accountHolderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "26"
        }
      ]
    },
    {
      "eventName": "MEAA",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "allocationKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "allocationID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "priorAllocationKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "8"
        },
        {
          "name": "priorAllocationID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "10"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "11"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "12"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "firmDesignatedID",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "16"
        },
        {
          "name": "institutionFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "tradeDate",
          "dataType": "Date",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "settlementDate",
          "dataType": "Date",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "allocationType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "DVPCustodianID",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "21"
        },
        {
          "name": "correspondentCRD",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "newOrderFDID",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "23"
        },
        {
          "name": "allocationInstructionTime",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Optional",
          "position": "24"
        },
        {
          "name": "cancelFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "25"
        },
        {
          "name": "cancelTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "26"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "27"
        },
        {
          "name": "accountHolderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "28"
        }
      ]
    },
    {
      "eventName": "MEOE",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "symbol",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "priorOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "priorOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "10"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "12"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "reservedForFutureUse",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "15"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "seqNum",
          "dataType": "Alphanumeric (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "21"
        },
        {
          "name": "atsDisplayInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "displayPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "23"
        },
        {
          "name": "workingPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "24"
        },
        {
          "name": "displayQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "25"
        },
        {
          "name": "nbbPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "26"
        },
        {
          "name": "nbbQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "27"
        },
        {
          "name": "nboPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "28"
        },
        {
          "name": "nboQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "29"
        },
        {
          "name": "nbboSource",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "30"
        },
        {
          "name": "nbboTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "31"
        },
        {
          "name": "triggerPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "32"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "33"
        }
      ]
    },
    {
      "eventName": "MONO",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "9"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "manualOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "electronicDupFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "deptType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "21"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "22"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "23"
        },
        {
          "name": "firmDesignatedID",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "24"
        },
        {
          "name": "accountHolderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "25"
        },
        {
          "name": "affiliateFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "26"
        },
        {
          "name": "aggregatedOrders",
          "dataType": "Aggregated Orders",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "27",
          "arrayElements": [
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "27.n.1"
            },
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Required",
              "position": "27.n.2"
            },
            {
              "name": "quantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Conditional",
              "position": "27.n.3"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "27.n.4"
            }
          ]
        },
        {
          "name": "solicitationFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "28"
        },
        {
          "name": "openCloseIndicator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "29"
        },
        {
          "name": "representativeInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "30"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "31"
        },
        {
          "name": "RFQID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "32"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "33"
        }
      ]
    },
    {
      "eventName": "MONOS",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "aggregatedOrders",
          "dataType": "Aggregated Orders",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "11",
          "arrayElements": [
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "11.n.1"
            },
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Required",
              "position": "11.n.2"
            },
            {
              "name": "quantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Conditional",
              "position": "11.n.3"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "11.n.4"
            }
          ]
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "12"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "13"
        },
        {
          "name": "firmDesignatedID",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "14"
        }
      ]
    },
    {
      "eventName": "MOOR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicDupFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "12"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "13"
        },
        {
          "name": "senderIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "destination",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "15"
        },
        {
          "name": "destinationType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "routedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "session",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "19"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "20"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "21"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "23"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "24"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "25"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "26"
        },
        {
          "name": "routeRejectedFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "27"
        },
        {
          "name": "exchOriginCode",
          "dataType": "Text (4)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "28"
        },
        {
          "name": "affiliateFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "29"
        },
        {
          "name": "multiLegInd",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "30"
        },
        {
          "name": "openCloseIndicator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "31"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "32"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "33"
        },
        {
          "name": "pairedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "34"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "35"
        }
      ]
    },
    {
      "eventName": "MOMR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "senderIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "13"
        },
        {
          "name": "destination",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "destinationType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "routedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "priorRoutedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "session",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "19"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "20"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "21"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "23"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "24"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "25"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "26"
        },
        {
          "name": "affiliateFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "27"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "28"
        },
        {
          "name": "routeRejectedFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "29"
        },
        {
          "name": "dupROIDCond",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "30"
        },
        {
          "name": "exchOriginCode",
          "dataType": "Text (4)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "31"
        },
        {
          "name": "openCloseIndicator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "32"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "33"
        },
        {
          "name": "multiLegInd",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "34"
        }
      ]
    },
    {
      "eventName": "MOCR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "cancelQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "14"
        },
        {
          "name": "senderIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "15"
        },
        {
          "name": "destination",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "destinationType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "routedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "session",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "routeRejectedFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "multiLegInd",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "21"
        }
      ]
    },
    {
      "eventName": "MOORS",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "senderIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "destination",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "destinationType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "routedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "session",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "15"
        },
        {
          "name": "routeRejectedFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "17"
        }
      ]
    },
    {
      "eventName": "MOMRS",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "senderIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "destination",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "13"
        },
        {
          "name": "destinationType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "routedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "15"
        },
        {
          "name": "session",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "routeRejectedFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "multiLegInd",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "18"
        }
      ]
    },
    {
      "eventName": "MOCRS",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "senderIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "destination",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "13"
        },
        {
          "name": "destinationType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "routedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "15"
        },
        {
          "name": "session",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "routeRejectedFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "multiLegInd",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "18"
        }
      ]
    },
    {
      "eventName": "MOOA",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "9"
        },
        {
          "name": "manualOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "10"
        },
        {
          "name": "manualOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "12"
        },
        {
          "name": "electronicDupFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "receiverIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "senderIMID",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "senderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "routedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "deptType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "19"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "21"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "22"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "23"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "24"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "25"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "26"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "27"
        },
        {
          "name": "affiliateFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "28"
        },
        {
          "name": "solicitationFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "29"
        },
        {
          "name": "pairedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "30"
        },
        {
          "name": "openCloseIndicator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "31"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "32"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "33"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "34"
        }
      ]
    },
    {
      "eventName": "MOIR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "parentOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "parentOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "10"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "12"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "deptType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "receivingDeskType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "19"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "20"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "21"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "openCloseIndicator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "23"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "24"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "25"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "26"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "27"
        },
        {
          "name": "multiLegInd",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "28"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "29"
        },
        {
          "name": "deskOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "30"
        }
      ]
    },
    {
      "eventName": "MOIM",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "priorOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "priorOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "10"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "12"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "deptType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "receivingDeskType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "initiator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "21"
        },
        {
          "name": "leavesQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "22"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "23"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "24"
        },
        {
          "name": "openCloseIndicator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "25"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "26"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "27"
        },
        {
          "name": "requestTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "28"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "29"
        },
        {
          "name": "deskOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "30"
        },
        {
          "name": "priorDeskOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "31"
        }
      ]
    },
    {
      "eventName": "MOIC",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "cancelQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "leavesQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "initiator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "requestTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "deskOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "17"
        }
      ]
    },
    {
      "eventName": "MOIMR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "deptType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "receivingDeskType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "19"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "21"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "22"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "23"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "24"
        },
        {
          "name": "deskOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "25"
        }
      ]
    },
    {
      "eventName": "MOICR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "cancelQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "deskOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "14"
        }
      ]
    },
    {
      "eventName": "MOCO",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "parentOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "9"
        },
        {
          "name": "parentOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "10"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "12"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "19"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "20"
        },
        {
          "name": "openCloseIndicator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "21"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "22"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "23"
        },
        {
          "name": "multiLegInd",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "24"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "25"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional",
          "position": "26"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "27"
        }
      ]
    },
    {
      "eventName": "MOCOM",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "priorOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "priorOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "10"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "12"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "leavesQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "19"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "21"
        },
        {
          "name": "openCloseIndicator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "23"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "24"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "25"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional",
          "position": "26"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "27"
        }
      ]
    },
    {
      "eventName": "MOCOC",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "cancelQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "12"
        },
        {
          "name": "leavesQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "reservedForFutureUse",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "14"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "15"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional",
          "position": "16"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "17"
        }
      ]
    },
    {
      "eventName": "MOOM",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "priorOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "priorOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "10"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "12"
        },
        {
          "name": "manualOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "13"
        },
        {
          "name": "manualOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "electronicDupFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "receiverIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "senderIMID",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "senderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "20"
        },
        {
          "name": "routedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "21"
        },
        {
          "name": "initiator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "22"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "23"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "24"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "25"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "26"
        },
        {
          "name": "leavesQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "27"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "28"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "29"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "30"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "31"
        },
        {
          "name": "openCloseIndicator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "32"
        },
        {
          "name": "requestTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "33"
        },
        {
          "name": "reservedForFutureUse",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "34"
        },
        {
          "name": "aggregatedOrders",
          "dataType": "Aggregated Orders",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "35",
          "arrayElements": [
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "35.n.1"
            },
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Required",
              "position": "35.n.2"
            },
            {
              "name": "quantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Conditional",
              "position": "35.n.3"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "35.n.4"
            }
          ]
        },
        {
          "name": "representativeInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "36"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "37"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "38"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "39"
        }
      ]
    },
    {
      "eventName": "MOOMS",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "aggregatedOrders",
          "dataType": "Aggregated Orders",
          "JSONDataType": "ARRAY",
          "required": "Required",
          "position": "11",
          "arrayElements": [
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "11.n.1"
            },
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Required",
              "position": "11.n.2"
            },
            {
              "name": "quantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Conditional",
              "position": "11.n.3"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "11.n.4"
            }
          ]
        }
      ]
    },
    {
      "eventName": "MOOMR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "receiverIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "13"
        },
        {
          "name": "senderIMID",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "senderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "15"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "21"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "22"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "23"
        },
        {
          "name": "openCloseIndicator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "24"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "25"
        }
      ]
    },
    {
      "eventName": "MOOJ",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "priorOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "priorOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "10"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "12"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "initiator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "leavesQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "20"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "21"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "22"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "23"
        }
      ]
    },
    {
      "eventName": "MOOC",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "cancelQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "leavesQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "initiator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "16"
        },
        {
          "name": "requestTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "17"
        }
      ]
    },
    {
      "eventName": "MOOCR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "cancelQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        }
      ]
    },
    {
      "eventName": "MOOT",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "tradeKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "tradeID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "9"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "10"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Optional",
          "position": "11"
        },
        {
          "name": "cancelFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "12"
        },
        {
          "name": "cancelTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "13"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "capacity",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "tapeTradeID",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "sideDetailsInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "buyDetails",
          "dataType": "Trade Side Details",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "19",
          "arrayElements": [
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Conditional",
              "position": "19.1.1"
            },
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "19.1.2"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "19.1.3"
            },
            {
              "name": "reservedForFutureUse",
              "dataType": "Text (0)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "19.1.4"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "19.1.5"
            },
            {
              "name": "firmDesignatedID",
              "dataType": "Text (40)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "19.1.6"
            },
            {
              "name": "accountHolderType",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "19.1.7"
            }
          ]
        },
        {
          "name": "sellDetails",
          "dataType": "Trade Side Details",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "20",
          "arrayElements": [
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Conditional",
              "position": "20.1.1"
            },
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "20.1.2"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "20.1.3"
            },
            {
              "name": "reservedForFutureUse",
              "dataType": "Text (0)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "20.1.4"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "20.1.5"
            },
            {
              "name": "firmDesignatedID",
              "dataType": "Text (40)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "20.1.6"
            },
            {
              "name": "accountHolderType",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "20.1.7"
            }
          ]
        },
        {
          "name": "marketCenterID",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "21"
        },
        {
          "name": "multiLegInd",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "22"
        },
        {
          "name": "clearingFirm",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "23"
        }
      ]
    },
    {
      "eventName": "MOOF",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "fillKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "fulfillmentID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "9"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "10"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "12"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "fulfillmentLinkType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "clientDetails",
          "dataType": "Fulfillment Side Details",
          "JSONDataType": "ARRAY",
          "required": "Required",
          "position": "15",
          "arrayElements": [
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Conditional",
              "position": "15.1.1"
            },
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "15.1.2"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "15.1.3"
            },
            {
              "name": "retiredFieldPosition",
              "dataType": "Text (0)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "15.1.4"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "15.1.5"
            },
            {
              "name": "firmDesignatedID",
              "dataType": "Text (40)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "15.1.6"
            },
            {
              "name": "accountHolderType",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "15.1.7"
            }
          ]
        },
        {
          "name": "firmDetails",
          "dataType": "Fulfillment Side Details",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "16",
          "arrayElements": [
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Conditional",
              "position": "16.1.1"
            },
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "16.1.2"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "16.1.3"
            },
            {
              "name": "retiredFieldPosition",
              "dataType": "Text (0)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "16.1.4"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "16.1.5"
            },
            {
              "name": "firmDesignatedID",
              "dataType": "Text (40)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "16.1.6"
            },
            {
              "name": "accountHolderType",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "16.1.7"
            }
          ]
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "17"
        },
        {
          "name": "cancelFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "cancelTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "19"
        }
      ]
    },
    {
      "eventName": "MOOFS",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "fillKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "fulfillmentID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "9"
        },
        {
          "name": "firmDetails",
          "dataType": "Fulfillment Side Details",
          "JSONDataType": "ARRAY",
          "required": "Required",
          "position": "10",
          "arrayElements": [
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Required",
              "position": "10.1.1"
            },
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "10.1.2"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "10.1.3"
            },
            {
              "name": "quantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Required",
              "position": "10.1.4"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "10.1.5"
            }
          ]
        }
      ]
    },
    {
      "eventName": "MOFA",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "fillKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "fulfillmentID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "priorFillKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "priorFulfillmentID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "10"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "12"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "fulfillmentLinkType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "clientDetails",
          "dataType": "Fulfillment Side Details",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "18",
          "arrayElements": [
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Conditional",
              "position": "18.1.1"
            },
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "18.1.2"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "18.1.3"
            },
            {
              "name": "retiredFieldPosition",
              "dataType": "Text (0)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "18.1.4"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "18.1.5"
            },
            {
              "name": "firmDesignatedID",
              "dataType": "Text (40)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "18.1.6"
            },
            {
              "name": "accountHolderType",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "18.1.7"
            }
          ]
        },
        {
          "name": "firmDetails",
          "dataType": "Fulfillment Side Details",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "19",
          "arrayElements": [
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Conditional",
              "position": "19.1.1"
            },
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "19.1.2"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "19.1.3"
            },
            {
              "name": "retiredFieldPosition",
              "dataType": "Text (0)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "19.1.4"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "19.1.5"
            },
            {
              "name": "firmDesignatedID",
              "dataType": "Text (40)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "19.1.6"
            },
            {
              "name": "accountHolderType",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "19.1.7"
            }
          ]
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "20"
        }
      ]
    },
    {
      "eventName": "MOPA",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "allocationKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "allocationID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "9"
        },
        {
          "name": "cancelFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "10"
        },
        {
          "name": "cancelTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "12"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "firmDesignatedID",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "16"
        },
        {
          "name": "institutionFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "tradeDate",
          "dataType": "Date",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "settlementDate",
          "dataType": "Date",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "allocationType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "21"
        },
        {
          "name": "correspondentCRD",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "newOrderFDID",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "23"
        },
        {
          "name": "allocationInstructionTime",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Optional",
          "position": "24"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "25"
        },
        {
          "name": "occClearingMemberID",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "26"
        },
        {
          "name": "accountHolderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "27"
        }
      ]
    },
    {
      "eventName": "MOAA",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "allocationKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "allocationID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "priorAllocationKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "8"
        },
        {
          "name": "priorAllocationID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "10"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "11"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "12"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "firmDesignatedID",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "16"
        },
        {
          "name": "institutionFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "tradeDate",
          "dataType": "Date",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "settlementDate",
          "dataType": "Date",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "allocationType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "21"
        },
        {
          "name": "correspondentCRD",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "newOrderFDID",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "23"
        },
        {
          "name": "allocationInstructionTime",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Optional",
          "position": "24"
        },
        {
          "name": "cancelFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "25"
        },
        {
          "name": "cancelTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "26"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "27"
        },
        {
          "name": "occClearingMemberID",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "28"
        },
        {
          "name": "accountHolderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "29"
        }
      ]
    },
    {
      "eventName": "MOOE",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "optionID",
          "dataType": "Text (22)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "8"
        },
        {
          "name": "priorOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "priorOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "10"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "12"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "reservedForFutureUse",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "15"
        },
        {
          "name": "side",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "openCloseIndicator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "21"
        },
        {
          "name": "triggerPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "netPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "23"
        }
      ]
    },
    {
      "eventName": "MLNO",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "underlying",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "8"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "9"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "manualOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "electronicDupFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "deptType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "19"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "21"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "firmDesignatedID",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "23"
        },
        {
          "name": "accountHolderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "24"
        },
        {
          "name": "affiliateFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "25"
        },
        {
          "name": "aggregatedOrders",
          "dataType": "Aggregated Orders",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "26",
          "arrayElements": [
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "26.n.1"
            },
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Required",
              "position": "26.n.2"
            },
            {
              "name": "quantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Conditional",
              "position": "26.n.3"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "26.n.4"
            }
          ]
        },
        {
          "name": "representativeInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "27"
        },
        {
          "name": "solicitationFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "28"
        },
        {
          "name": "RFQID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "29"
        },
        {
          "name": "numberOfLegs",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "30"
        },
        {
          "name": "priceType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "31"
        },
        {
          "name": "legDetails",
          "dataType": "Leg Details",
          "JSONDataType": "ARRAY",
          "required": "Required",
          "position": "32",
          "arrayElements": [
            {
              "name": "legRefID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "32.n.1"
            },
            {
              "name": "symbol",
              "dataType": "Symbol",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "32.n.2"
            },
            {
              "name": "optionID",
              "dataType": "Text (22)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "32.n.3"
            },
            {
              "name": "openCloseIndicator",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "32.n.4"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "32.n.5"
            },
            {
              "name": "legRatioQuantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Required",
              "position": "32.n.6"
            }
          ]
        }
      ]
    },
    {
      "eventName": "MLOR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "underlying",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "8"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "9"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "10"
        },
        {
          "name": "electronicDupFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "senderIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "13"
        },
        {
          "name": "destination",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "destinationType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "routedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "session",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "19"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "20"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "21"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "22"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "23"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "24"
        },
        {
          "name": "affiliateFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "25"
        },
        {
          "name": "routeRejectedFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "26"
        },
        {
          "name": "exchOriginCode",
          "dataType": "Text (4)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "27"
        },
        {
          "name": "pairedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "28"
        },
        {
          "name": "numberOfLegs",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "29"
        },
        {
          "name": "priceType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "30"
        },
        {
          "name": "legDetails",
          "dataType": "Leg Details",
          "JSONDataType": "ARRAY",
          "required": "Required",
          "position": "31",
          "arrayElements": [
            {
              "name": "legRefID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "31.n.1"
            },
            {
              "name": "symbol",
              "dataType": "Symbol",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "31.n.2"
            },
            {
              "name": "optionID",
              "dataType": "Text (22)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "31.n.3"
            },
            {
              "name": "openCloseIndicator",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "31.n.4"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "31.n.5"
            },
            {
              "name": "legRatioQuantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Required",
              "position": "31.n.6"
            }
          ]
        }
      ]
    },
    {
      "eventName": "MLMR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "underlying",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "senderIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "13"
        },
        {
          "name": "destination",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "destinationType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "routedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "priorRoutedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "session",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "reservedForFutureUse",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "19"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "20"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "21"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "23"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "24"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "25"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "26"
        },
        {
          "name": "affiliateFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "27"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "28"
        },
        {
          "name": "routeRejectedFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "29"
        },
        {
          "name": "dupROIDCond",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "30"
        },
        {
          "name": "exchOriginCode",
          "dataType": "Text (4)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "31"
        },
        {
          "name": "numberOfLegs",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "32"
        },
        {
          "name": "priceType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "33"
        },
        {
          "name": "legDetails",
          "dataType": "Leg Details",
          "JSONDataType": "ARRAY",
          "required": "Required",
          "position": "34",
          "arrayElements": [
            {
              "name": "legRefID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "34.n.1"
            },
            {
              "name": "symbol",
              "dataType": "Symbol",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "34.n.2"
            },
            {
              "name": "optionID",
              "dataType": "Text (22)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "34.n.3"
            },
            {
              "name": "openCloseIndicator",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "34.n.4"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "34.n.5"
            },
            {
              "name": "legRatioQuantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Required",
              "position": "34.n.6"
            }
          ]
        }
      ]
    },
    {
      "eventName": "MLCR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "underlying",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "cancelQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "14"
        },
        {
          "name": "senderIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "15"
        },
        {
          "name": "destination",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "destinationType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "routedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "session",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "routeRejectedFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "numberOfLegs",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Optional",
          "position": "21"
        },
        {
          "name": "reservedForFutureUse",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "22"
        }
      ]
    },
    {
      "eventName": "MLOA",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "underlying",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "8"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "9"
        },
        {
          "name": "manualOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "10"
        },
        {
          "name": "manualOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "12"
        },
        {
          "name": "electronicDupFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "receiverIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "senderIMID",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "senderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "routedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "21"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "22"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "23"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "24"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "25"
        },
        {
          "name": "affiliateFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "26"
        },
        {
          "name": "solicitationFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "27"
        },
        {
          "name": "pairedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "28"
        },
        {
          "name": "numberOfLegs",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "29"
        },
        {
          "name": "priceType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "30"
        },
        {
          "name": "legDetails",
          "dataType": "Leg Details",
          "JSONDataType": "ARRAY",
          "required": "Required",
          "position": "31",
          "arrayElements": [
            {
              "name": "legRefID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "31.n.1"
            },
            {
              "name": "symbol",
              "dataType": "Symbol",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "31.n.2"
            },
            {
              "name": "optionID",
              "dataType": "Text (22)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "31.n.3"
            },
            {
              "name": "openCloseIndicator",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "31.n.4"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "31.n.5"
            },
            {
              "name": "legRatioQuantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Required",
              "position": "31.n.6"
            }
          ]
        },
        {
          "name": "deptType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "32"
        }
      ]
    },
    {
      "eventName": "MLIR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "parentOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "8"
        },
        {
          "name": "parentOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "underlying",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "10"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "11"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "12"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "13"
        },
        {
          "name": "deptType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "receivingDeskType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "19"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "21"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "numberOfLegs",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "23"
        },
        {
          "name": "priceType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "24"
        },
        {
          "name": "legDetails",
          "dataType": "Leg Details",
          "JSONDataType": "ARRAY",
          "required": "Required",
          "position": "25",
          "arrayElements": [
            {
              "name": "legRefID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "25.n.1"
            },
            {
              "name": "symbol",
              "dataType": "Symbol",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "25.n.2"
            },
            {
              "name": "optionID",
              "dataType": "Text (22)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "25.n.3"
            },
            {
              "name": "openCloseIndicator",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "25.n.4"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "25.n.5"
            },
            {
              "name": "legRatioQuantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Required",
              "position": "25.n.6"
            }
          ]
        },
        {
          "name": "deskOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "26"
        }
      ]
    },
    {
      "eventName": "MLIM",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "underlying",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "8"
        },
        {
          "name": "priorOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "priorOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "10"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "12"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "deptType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "receivingDeskType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "initiator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "reservedForFutureUse",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "18"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "21"
        },
        {
          "name": "leavesQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "22"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "23"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "24"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "25"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "26"
        },
        {
          "name": "requestTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "27"
        },
        {
          "name": "numberOfLegs",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "28"
        },
        {
          "name": "priceType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "29"
        },
        {
          "name": "legDetails",
          "dataType": "Leg Details",
          "JSONDataType": "ARRAY",
          "required": "Required",
          "position": "30",
          "arrayElements": [
            {
              "name": "legRefID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "30.n.1"
            },
            {
              "name": "symbol",
              "dataType": "Symbol",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "30.n.2"
            },
            {
              "name": "optionID",
              "dataType": "Text (22)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "30.n.3"
            },
            {
              "name": "openCloseIndicator",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "30.n.4"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "30.n.5"
            },
            {
              "name": "legRatioQuantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Required",
              "position": "30.n.6"
            }
          ]
        },
        {
          "name": "deskOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "31"
        },
        {
          "name": "priorDeskOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "32"
        }
      ]
    },
    {
      "eventName": "MLIC",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "underlying",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "cancelQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "leavesQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "initiator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "requestTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "numberOfLegs",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Optional",
          "position": "17"
        },
        {
          "name": "deskOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "18"
        }
      ]
    },
    {
      "eventName": "MLIMR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "underlying",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "deptType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "receivingDeskType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "reservedForFutureUse",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "15"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "retiredFieldPosition",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "19"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "21"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "22"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "23"
        },
        {
          "name": "numberOfLegs",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "24"
        },
        {
          "name": "priceType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "25"
        },
        {
          "name": "legDetails",
          "dataType": "Leg Details",
          "JSONDataType": "ARRAY",
          "required": "Required",
          "position": "26",
          "arrayElements": [
            {
              "name": "legRefID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "26.n.1"
            },
            {
              "name": "symbol",
              "dataType": "Symbol",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "26.n.2"
            },
            {
              "name": "optionID",
              "dataType": "Text (22)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "26.n.3"
            },
            {
              "name": "openCloseIndicator",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "26.n.4"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "26.n.5"
            },
            {
              "name": "legRatioQuantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Required",
              "position": "26.n.6"
            }
          ]
        },
        {
          "name": "deskOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "27"
        }
      ]
    },
    {
      "eventName": "MLICR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "underlying",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "cancelQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "numberOfLegs",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Optional",
          "position": "14"
        },
        {
          "name": "deskOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "15"
        }
      ]
    },
    {
      "eventName": "MLCO",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "parentOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "8"
        },
        {
          "name": "parentOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "9"
        },
        {
          "name": "underlying",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "10"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "11"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "numberOfLegs",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "19"
        },
        {
          "name": "priceType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "20"
        },
        {
          "name": "legDetails",
          "dataType": "Leg Details",
          "JSONDataType": "ARRAY",
          "required": "Required",
          "position": "21",
          "arrayElements": [
            {
              "name": "legRefID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "21.n.1"
            },
            {
              "name": "symbol",
              "dataType": "Symbol",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "21.n.2"
            },
            {
              "name": "optionID",
              "dataType": "Text (22)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "21.n.3"
            },
            {
              "name": "openCloseIndicator",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "21.n.4"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "21.n.5"
            },
            {
              "name": "legRatioQuantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Required",
              "position": "21.n.6"
            }
          ]
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional",
          "position": "22"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "23"
        }
      ]
    },
    {
      "eventName": "MLCOM",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "underlying",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "8"
        },
        {
          "name": "priorOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "priorOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "10"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "12"
        },
        {
          "name": "reservedForFutureUse",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "13"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "leavesQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "19"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "21"
        },
        {
          "name": "numberOfLegs",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "22"
        },
        {
          "name": "priceType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "23"
        },
        {
          "name": "legDetails",
          "dataType": "Leg Details",
          "JSONDataType": "ARRAY",
          "required": "Required",
          "position": "24",
          "arrayElements": [
            {
              "name": "legRefID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "24.n.1"
            },
            {
              "name": "symbol",
              "dataType": "Symbol",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "24.n.2"
            },
            {
              "name": "optionID",
              "dataType": "Text (22)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "24.n.3"
            },
            {
              "name": "openCloseIndicator",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "24.n.4"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "24.n.5"
            },
            {
              "name": "legRatioQuantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Required",
              "position": "24.n.6"
            }
          ]
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional",
          "position": "25"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "26"
        }
      ]
    },
    {
      "eventName": "MLCOC",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "underlying",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "reservedForFutureUse",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "11"
        },
        {
          "name": "cancelQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "12"
        },
        {
          "name": "leavesQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "numberOfLegs",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Optional",
          "position": "14"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional",
          "position": "15"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "16"
        }
      ]
    },
    {
      "eventName": "MLOM",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "priorOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "8"
        },
        {
          "name": "priorOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "underlying",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "10"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "11"
        },
        {
          "name": "manualOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "manualOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "13"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "electronicDupFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "receiverIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "senderIMID",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "18"
        },
        {
          "name": "senderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "routedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "20"
        },
        {
          "name": "initiator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "21"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "23"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "24"
        },
        {
          "name": "leavesQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "25"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "26"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "27"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "28"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "29"
        },
        {
          "name": "reservedForFutureUse",
          "dataType": "Text (0)",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "30"
        },
        {
          "name": "aggregatedOrders",
          "dataType": "Aggregated Orders",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "31",
          "arrayElements": [
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "31.n.1"
            },
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Required",
              "position": "31.n.2"
            },
            {
              "name": "quantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Conditional",
              "position": "31.n.3"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "31.n.4"
            }
          ]
        },
        {
          "name": "representativeInd",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "32"
        },
        {
          "name": "requestTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "33"
        },
        {
          "name": "numberOfLegs",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "34"
        },
        {
          "name": "priceType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "35"
        },
        {
          "name": "legDetails",
          "dataType": "Leg Details",
          "JSONDataType": "ARRAY",
          "required": "Required",
          "position": "36",
          "arrayElements": [
            {
              "name": "legRefID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "36.n.1"
            },
            {
              "name": "symbol",
              "dataType": "Symbol",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "36.n.2"
            },
            {
              "name": "optionID",
              "dataType": "Text (22)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "36.n.3"
            },
            {
              "name": "openCloseIndicator",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "36.n.4"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "36.n.5"
            },
            {
              "name": "legRatioQuantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Required",
              "position": "36.n.6"
            }
          ]
        }
      ]
    },
    {
      "eventName": "MLOMR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "underlying",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "receiverIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "13"
        },
        {
          "name": "senderIMID",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "senderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "15"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "20"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "21"
        },
        {
          "name": "handlingInstructions",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Conditional",
          "position": "22"
        },
        {
          "name": "numberOfLegs",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "23"
        },
        {
          "name": "priceType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "24"
        },
        {
          "name": "legDetails",
          "dataType": "Leg Details",
          "JSONDataType": "ARRAY",
          "required": "Required",
          "position": "25",
          "arrayElements": [
            {
              "name": "legRefID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "25.n.1"
            },
            {
              "name": "symbol",
              "dataType": "Symbol",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "25.n.2"
            },
            {
              "name": "optionID",
              "dataType": "Text (22)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "25.n.3"
            },
            {
              "name": "openCloseIndicator",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "25.n.4"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "25.n.5"
            },
            {
              "name": "legRatioQuantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Required",
              "position": "25.n.6"
            }
          ]
        }
      ]
    },
    {
      "eventName": "MLOC",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "underlying",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "8"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "9"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "10"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "11"
        },
        {
          "name": "cancelQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "12"
        },
        {
          "name": "leavesQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "initiator",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "14"
        },
        {
          "name": "requestTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "15"
        }
      ]
    },
    {
      "eventName": "MLOCR",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "underlying",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "8"
        },
        {
          "name": "originatingIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "10"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "11"
        },
        {
          "name": "electronicTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "cancelQty",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        }
      ]
    },
    {
      "eventName": "MLOS",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "underlying",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "8"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "9"
        },
        {
          "name": "manualFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "10"
        },
        {
          "name": "aggregatedOrders",
          "dataType": "Aggregated Orders",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "11",
          "arrayElements": [
            {
              "name": "orderID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "11.n.1"
            },
            {
              "name": "orderKeyDate",
              "dataType": "Timestamp",
              "JSONDataType": [
                "STRING",
                "NUMBER"
              ],
              "required": "Required",
              "position": "11.n.2"
            },
            {
              "name": "quantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Conditional",
              "position": "11.n.3"
            },
            {
              "name": "originatingIMID",
              "dataType": "CAT Reporter IMID",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "11.n.4"
            }
          ]
        },
        {
          "name": "firmDesignatedID",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "senderIMID",
          "dataType": "Industry Member ID",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "13"
        },
        {
          "name": "destination",
          "dataType": [
            "Industry Member ID",
            "Exchange ID"
          ],
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "destinationType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "15"
        },
        {
          "name": "routedOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "16"
        },
        {
          "name": "session",
          "dataType": "Text (40)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "17"
        },
        {
          "name": "routeRejectedFlag",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "legDetails",
          "dataType": "Leg Details",
          "JSONDataType": "ARRAY",
          "required": "Conditional",
          "position": "19",
          "arrayElements": [
            {
              "name": "legRefID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "19.n.1"
            },
            {
              "name": "symbol",
              "dataType": "Symbol",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "19.n.2"
            },
            {
              "name": "optionID",
              "dataType": "Text (22)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "19.n.3"
            },
            {
              "name": "openCloseIndicator",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "19.n.4"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "19.n.5"
            },
            {
              "name": "legRatioQuantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Required",
              "position": "19.n.6"
            }
          ]
        }
      ]
    },
    {
      "eventName": "MLOE",
      "fields": [
        {
          "name": "actionType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "1"
        },
        {
          "name": "errorROEID",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "2"
        },
        {
          "name": "firmROEID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "3"
        },
        {
          "name": "type",
          "dataType": "Message Type",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "4"
        },
        {
          "name": "CATReporterIMID",
          "dataType": "CAT Reporter IMID",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "5"
        },
        {
          "name": "orderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "6"
        },
        {
          "name": "orderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "7"
        },
        {
          "name": "priorOrderKeyDate",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Conditional",
          "position": "8"
        },
        {
          "name": "priorOrderID",
          "dataType": "Text (64)",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "9"
        },
        {
          "name": "underlying",
          "dataType": "Symbol",
          "JSONDataType": "STRING",
          "required": "Optional",
          "position": "10"
        },
        {
          "name": "eventTimestamp",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Required",
          "position": "11"
        },
        {
          "name": "price",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "12"
        },
        {
          "name": "quantity",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "13"
        },
        {
          "name": "minQty",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "14"
        },
        {
          "name": "orderType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "15"
        },
        {
          "name": "timeInForce",
          "dataType": "Name/Value Pairs",
          "JSONDataType": "OBJECT",
          "required": "Required",
          "position": "16"
        },
        {
          "name": "tradingSession",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Required",
          "position": "17"
        },
        {
          "name": "numberOfLegs",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Required",
          "position": "18"
        },
        {
          "name": "priceType",
          "dataType": "Choice",
          "JSONDataType": "STRING",
          "required": "Conditional",
          "position": "19"
        },
        {
          "name": "triggerPrice",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Conditional",
          "position": "20"
        },
        {
          "name": "legDetails",
          "dataType": "Leg Details",
          "JSONDataType": "ARRAY",
          "required": "Required",
          "position": "21",
          "arrayElements": [
            {
              "name": "legRefID",
              "dataType": "Text (64)",
              "JSONDataType": "STRING",
              "required": "Optional",
              "position": "21.n.1"
            },
            {
              "name": "symbol",
              "dataType": "Symbol",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "21.n.2"
            },
            {
              "name": "optionID",
              "dataType": "Text (22)",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "21.n.3"
            },
            {
              "name": "openCloseIndicator",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Conditional",
              "position": "21.n.4"
            },
            {
              "name": "side",
              "dataType": "Choice",
              "JSONDataType": "STRING",
              "required": "Required",
              "position": "21.n.5"
            },
            {
              "name": "legRatioQuantity",
              "dataType": "Real Quantity",
              "JSONDataType": "NUMBER",
              "required": "Required",
              "position": "21.n.6"
            }
          ]
        }
      ]
    }
  ],
  "choices": {
    "accountHolderType": [
      "A",
      "E",
      "F",
      "I",
      "O",
      "V",
      "P",
      "X"
    ],
    "actionType": [
      "NEW",
      "COR",
      "RPR",
      "DEL"
    ],
    "allocationType": [
      "CUS",
      "DVP",
      "CUSF",
      "DVPF",
      "CMTA",
      "FLP",
      "FRM",
      "STO",
      "OTH"
    ],
    "atsDisplayInd": [
      "S",
      "A",
      "Y",
      "N"
    ],
    "capacity": [
      "A",
      "P",
      "R"
    ],
    "deptType": [
      "A",
      "ATS",
      "DMA",
      "SA",
      "T",
      "O"
    ],
    "destinationType": [
      "F",
      "E",
      "N",
      "O",
      "D"
    ],
    "fulfillmentLinkType": [
      "FOR",
      "Y",
      "YE",
      "YP",
      "YS",
      "O",
      "OS",
      "OML",
      "OE",
      "OME"
    ],
    "initiator": [
      "C",
      "F"
    ],
    "isoInd": [
      "ISOD",
      "ISOI",
      "NA"
    ],
    "marketCenterID": [
      "D",
      "DC",
      "DN",
      "L",
      "O",
      "A",
      "B",
      "BF",
      "C",
      "F",
      "G",
      "H",
      "I",
      "J",
      "K",
      "LT",
      "M",
      "N",
      "P",
      "Q",
      "TXSE",  
      "U",
      "V",
      "W",
      "X",
      "Y",
      "Z",
      "ARCAOP",
      "AMEROP",
      "BOX",
      "BZXOP",
      "C2",
      "CBOE",
      "CHX",
      "EDGXOP",
      "EMLD",
      "GEMX",
      "IEXOP",      
      "ISE",
      "MEMXOP",     
      "MIAMI",
      "MRX",
      "MX2OP", 
      "NOBO",
      "NOM",
      "PEARL",
      "PHLX",
      "SPHR",   
    ],
    "mpStatusCode": [
      "O",
      "C"
    ],
    "nbboSource": [
      "D",
      "S",
      "H",
      "NA"
    ],
    "openCloseIndicator": [
      "Open",
      "Close"
    ],
    "orderType": [
      "CAB",
      "LMT",
      "MKT"
    ],
    "priceType": [
      "PU",
      "TC",
      "TS"
    ],
    "quoteWantedInd": [
      "A",
      "B"
    ],
    "receivingDeskType": [
      "A",
      "AR",
      "B",
      "C",
      "CR",
      "D",
      "EC",
      "FB",
      "IN",
      "IS",
      "O",
      "PF",
      "PR",
      "PT",
      "S",
      "SW",
      "T",
      "TR"
    ],
    "reportingExceptionCode": [
      "C",
      "F",
      "N",
      "P"
    ],
    "representativeInd": [
      "Y",
      "YE",
      "YP",
      "YS",
      "N",
      "O",
      "OS",
      "OML",
      "OMS",
      "OE",
      "OME"
    ],
    "representativeQuoteInd": [
      "A",
      "B",
      "C",
      "N",
      "S"
    ],
    "senderType": [
      "F",
      "E",
      "O"
    ],
    "side": [
      "B",
      "S",
      "SL",
      "SS",
      "SX"
    ],
    "sideDetailsInd": [
      "BUY",
      "SELL",
      "NA"
    ],
    "tradingSession": [
      "FOR",
      "PRE",
      "PREREG",
      "REG",
      "REGPOST",
      "POST",
      "PREPOST",
      "ALL"
    ],
    "unsolicitedInd": [
      "U",
      "A",
      "B",
      "N"
    ]
  },
  "nameValuePairDefinitions": [
    {
      "nameValuePair": "handlingInstructions",
      "fields": [
        {
          "name": "ADD",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "AIP",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "ALG",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "ALGMod",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "ALGS",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "ALO",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "AOK",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "AON",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "APCM",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "AUC",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "ATT",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "BIN",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "CAC",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "CMC",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "CMPX",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "CND",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "CPR",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "CTR",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "CSC",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "CSH",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "d",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "DAC",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "DIR",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "DIV",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "DNI",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "DNR",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "DNRT",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "ERP",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "EW",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "FB",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "FBA",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "FOK",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "FS",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "FUT",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "G",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "GP",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "IO",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "LOC",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "LOO",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "M",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "MAX",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "MOC",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "MOO",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "MRP",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "MTL",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "NAV",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "NCTR",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "NH",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "OCP",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "OFF",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "OPO",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "OPT",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "OVD",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "P",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "PBG",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "PCS",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "PCTPX",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "PEG",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "QCC",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "R",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "RAR",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "RLO",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "RSV",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "SCL",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "SLD",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "SLL",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "SLQ",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "SLR",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "SOQ",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "STOPF",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "STP",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "TS",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "TTF",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "TTO",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "TTS",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "TTSO",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "TTU",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "UNP",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "UNS",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "WDP",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "WRK",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "AucResp",
          "dataType": "Alphanumeric (40)",
          "JSONDataType": "STRING",
          "required": "Optional"
        },
        {
          "name": "APCL",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Optional"
        },
        {
          "name": "CASH",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Optional"
        },
        {
          "name": "DISP",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Optional"
        },
        {
          "name": "DISQ",
          "dataType": "Real Quantity",
          "JSONDataType": "NUMBER",
          "required": "Optional"
        },
        {
          "name": "DLVF",
          "dataType": "Text (16)",
          "JSONDataType": "STRING",
          "required": "Optional"
        },
        {
          "name": "DLVT",
          "dataType": "Array",
          "JSONDataType": "ARRAY",
          "required": "Optional"
        },
        {
          "name": "STOP",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Optional"
        },
        {
          "name": "SW",
          "dataType": "Price",
          "JSONDataType": "NUMBER",
          "required": "Optional"
        },
        {
          "name": "SWQ",
          "dataType": "Whole Quantity",
          "JSONDataType": "NUMBER",
          "required": "Optional"
        },
        {
          "name": "TMO",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Optional"
        }
      ]
    },
    {
      "nameValuePair": "timeInForce",
      "fields": [
        {
          "name": "DAY",
          "dataType": "Date",
          "JSONDataType": "NUMBER",
          "required": "Optional"
        },
        {
          "name": "GFD",
          "dataType": "Unsigned",
          "JSONDataType": "NUMBER",
          "required": "Optional"
        },
        {
          "name": "GTC",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "GTD",
          "dataType": "Date",
          "JSONDataType": "NUMBER",
          "required": "Optional"
        },
        {
          "name": "GTM",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "GTT",
          "dataType": "Timestamp",
          "JSONDataType": [
            "STRING",
            "NUMBER"
          ],
          "required": "Optional"
        },
        {
          "name": "GTX",
          "dataType": "Date",
          "JSONDataType": "NUMBER",
          "required": "Optional"
        },
        {
          "name": "IOC",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        },
        {
          "name": "IOR",
          "dataType": "Boolean",
          "JSONDataType": "BOOLEAN",
          "required": "Optional"
        }
      ]
    }
  ]
}