summaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-asterix.c
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-10 20:34:10 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-10 20:34:10 +0000
commite4ba6dbc3f1e76890b22773807ea37fe8fa2b1bc (patch)
tree68cb5ef9081156392f1dd62a00c6ccc1451b93df /epan/dissectors/packet-asterix.c
parentInitial commit. (diff)
downloadwireshark-e4ba6dbc3f1e76890b22773807ea37fe8fa2b1bc.tar.xz
wireshark-e4ba6dbc3f1e76890b22773807ea37fe8fa2b1bc.zip
Adding upstream version 4.2.2.upstream/4.2.2
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'epan/dissectors/packet-asterix.c')
-rw-r--r--epan/dissectors/packet-asterix.c61371
1 files changed, 61371 insertions, 0 deletions
diff --git a/epan/dissectors/packet-asterix.c b/epan/dissectors/packet-asterix.c
new file mode 100644
index 00000000..541b3b0d
--- /dev/null
+++ b/epan/dissectors/packet-asterix.c
@@ -0,0 +1,61371 @@
+/*
+
+Notice:
+
+
+This file is auto generated, do not edit!
+See tools/asterix/README.md for details.
+
+
+Data source:
+https://zoranbosnjak.github.io/asterix-specs
+git revision: 8364980e5e1a61c5b21517a56b6f966a296aba1c
+
+
+*/
+
+/* packet-asterix.c
+ * Routines for ASTERIX decoding
+ * By Marko Hrastovec <marko.hrastovec@sloveniacontrol.si>
+ *
+ * Wireshark - Network traffic analyzer
+ * By Gerald Combs <gerald@wireshark.org>
+ * Copyright 1998 Gerald Combs
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ */
+
+/*
+ * ASTERIX (All-purpose structured EUROCONTROL surveillances
+ * information exchange) is a protocol related to air traffic control.
+ *
+ * The specifications can be downloaded from
+ * http://www.eurocontrol.int/services/asterix
+ */
+
+#include <config.h>
+
+#include <wsutil/bits_ctz.h>
+
+#include <epan/packet.h>
+#include <epan/prefs.h>
+#include <epan/proto_data.h>
+
+void proto_register_asterix(void);
+void proto_reg_handoff_asterix(void);
+
+#define PROTO_TAG_ASTERIX "ASTERIX"
+#define ASTERIX_PORT 8600
+
+#define MAX_DISSECT_STR 1024
+#define MAX_BUFFER 256
+
+static int proto_asterix = -1;
+
+static int hf_asterix_category = -1;
+static int hf_asterix_length = -1;
+static int hf_asterix_message = -1;
+static int hf_asterix_fspec = -1;
+static int hf_re_field_len = -1;
+static int hf_spare = -1;
+static int hf_counter = -1;
+static int hf_XXX_FX = -1;
+
+static int ett_asterix = -1;
+static int ett_asterix_category = -1;
+static int ett_asterix_length = -1;
+static int ett_asterix_message = -1;
+static int ett_asterix_subtree = -1;
+
+static dissector_handle_t asterix_handle;
+/* The following defines tell us how to decode the length of
+ * fields and how to construct their display structure */
+#define FIXED 1
+#define REPETITIVE 2
+#define FX 3
+/*#define FX_1 4*/
+/*#define RE 5*/
+#define COMPOUND 6
+/*#define SP 7*/
+/*#define FX_UAP 8*/
+#define EXP 9 /* Explicit (RE or SP) */
+
+/* The following defines tell us how to
+ * decode and display individual fields. */
+#define FIELD_PART_INT 0
+#define FIELD_PART_UINT 1
+#define FIELD_PART_FLOAT 2
+#define FIELD_PART_UFLOAT 3
+#define FIELD_PART_SQUAWK 4
+#define FIELD_PART_CALLSIGN 5
+#define FIELD_PART_ASCII 6
+#define FIELD_PART_FX 7
+#define FIELD_PART_HEX 8
+#define FIELD_PART_IAS_IM 9
+#define FIELD_PART_IAS_ASPD 10
+
+typedef struct FieldPart_s FieldPart;
+struct FieldPart_s {
+ uint16_t bit_length; /* length of field in bits */
+ double scaling_factor; /* scaling factor of the field (for instance: 1/128) */
+ uint8_t type; /* Pre-defined type for proper presentation */
+ int *hf; /* Pointer to hf representing this kind of data */
+ const char *format_string; /* format string for showing float values */
+};
+
+DIAG_OFF_PEDANTIC
+typedef struct AsterixField_s AsterixField;
+struct AsterixField_s {
+ uint8_t type; /* type of field */
+ unsigned length; /* fixed length */
+ unsigned repetition_counter_size; /* size of repetition counter, length of one item is in length */
+ unsigned header_length; /* the size is in first header_length bytes of the field */
+ int *hf; /* pointer to Wireshark hf_register_info */
+ const FieldPart **part; /* Look declaration and description of FieldPart above. */
+ const AsterixField *field[]; /* subfields */
+};
+DIAG_ON_PEDANTIC
+
+static void dissect_asterix_packet (tvbuff_t *, packet_info *pinfo, proto_tree *);
+static void dissect_asterix_data_block (tvbuff_t *tvb, packet_info *pinfo, unsigned, proto_tree *, uint8_t, int);
+static int dissect_asterix_fields (tvbuff_t *, packet_info *pinfo, unsigned, proto_tree *, uint8_t, const AsterixField *[]);
+
+static void asterix_build_subtree (tvbuff_t *, packet_info *pinfo, unsigned, proto_tree *, const AsterixField *);
+static void twos_complement (int64_t *, int);
+static uint8_t asterix_bit (uint8_t, uint8_t);
+static unsigned asterix_fspec_len (tvbuff_t *, unsigned);
+static uint8_t asterix_field_exists (tvbuff_t *, unsigned, int);
+static uint8_t asterix_get_active_uap (tvbuff_t *, unsigned, uint8_t);
+static int asterix_field_length (tvbuff_t *, unsigned, const AsterixField *);
+static int asterix_field_offset (tvbuff_t *, unsigned, const AsterixField *[], int);
+static int asterix_message_length (tvbuff_t *, unsigned, uint8_t, uint8_t);
+
+static const char AISCode[] = { ' ', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O',
+ 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', ' ', ' ', ' ', ' ', ' ',
+ ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ',
+ '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', ' ', ' ', ' ', ' ', ' ', ' ' };
+
+static const value_string valstr_XXX_FX[] = {
+ { 0, "End of data item" },
+ { 1, "Extension into next extent" },
+ { 0, NULL }
+};
+static const FieldPart IXXX_FX = { 1, 1.0, FIELD_PART_FX, &hf_XXX_FX, NULL };
+static const FieldPart IXXX_1bit_spare = { 1, 1.0, FIELD_PART_UINT, NULL, NULL };
+static const FieldPart IXXX_2bit_spare = { 2, 1.0, FIELD_PART_UINT, NULL, NULL };
+static const FieldPart IXXX_3bit_spare = { 3, 1.0, FIELD_PART_UINT, NULL, NULL };
+static const FieldPart IXXX_4bit_spare = { 4, 1.0, FIELD_PART_UINT, NULL, NULL };
+static const FieldPart IXXX_5bit_spare = { 5, 1.0, FIELD_PART_UINT, NULL, NULL };
+static const FieldPart IXXX_6bit_spare = { 6, 1.0, FIELD_PART_UINT, NULL, NULL };
+static const FieldPart IXXX_7bit_spare = { 7, 1.0, FIELD_PART_UINT, NULL, NULL };
+
+/* Spare Item */
+DIAG_OFF_PEDANTIC
+static const AsterixField IX_SPARE = { FIXED, 0, 0, 0, &hf_spare, NULL, { NULL } };
+
+/* insert1 */
+/* Category 001, edition 1.2 */
+static int hf_001_V1_2_010 = -1;
+static int hf_001_V1_2_010_SAC = -1;
+static const FieldPart I001_V1_2_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_001_V1_2_010_SAC, NULL };
+static int hf_001_V1_2_010_SIC = -1;
+static const FieldPart I001_V1_2_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_001_V1_2_010_SIC, NULL };
+static const FieldPart *I001_V1_2_010_PARTS[] = {
+ &I001_V1_2_010_SAC,
+ &I001_V1_2_010_SIC,
+ NULL
+};
+static const AsterixField I001_V1_2_010 = { FIXED, 2, 0, 0, &hf_001_V1_2_010, I001_V1_2_010_PARTS, { NULL } };
+static int hf_001_V1_2_020 = -1;
+static int hf_001_V1_2_020_TYP = -1;
+static const value_string valstr_001_V1_2_020_TYP[] = {
+ { 0, "Plot" },
+ { 1, "Track" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_020_TYP = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_020_TYP, NULL };
+static int hf_001_V1_2_020_SIM = -1;
+static const value_string valstr_001_V1_2_020_SIM[] = {
+ { 0, "Actual plot or track" },
+ { 1, "Simulated plot or track" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_020_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_020_SIM, NULL };
+static int hf_001_V1_2_020_SSRPSR = -1;
+static const value_string valstr_001_V1_2_020_SSRPSR[] = {
+ { 0, "No detection" },
+ { 1, "Sole primary detection" },
+ { 2, "Sole secondary detection" },
+ { 3, "Combined primary and secondary detection" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_020_SSRPSR = { 2, 1.0, FIELD_PART_UINT, &hf_001_V1_2_020_SSRPSR, NULL };
+static int hf_001_V1_2_020_ANT = -1;
+static const value_string valstr_001_V1_2_020_ANT[] = {
+ { 0, "Target report from antenna 1" },
+ { 1, "Target report from antenna 2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_020_ANT = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_020_ANT, NULL };
+static int hf_001_V1_2_020_SPI = -1;
+static const value_string valstr_001_V1_2_020_SPI[] = {
+ { 0, "Default" },
+ { 1, "Special Position Identification" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_020_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_020_SPI, NULL };
+static int hf_001_V1_2_020_RAB = -1;
+static const value_string valstr_001_V1_2_020_RAB[] = {
+ { 0, "Default" },
+ { 1, "Plot or track from a fixed transponder" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_020_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_020_RAB, NULL };
+static int hf_001_V1_2_020_TST = -1;
+static const value_string valstr_001_V1_2_020_TST[] = {
+ { 0, "Default" },
+ { 1, "Test target indicator" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_020_TST = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_020_TST, NULL };
+static int hf_001_V1_2_020_DS1DS2 = -1;
+static const value_string valstr_001_V1_2_020_DS1DS2[] = {
+ { 0, "Default" },
+ { 1, "Unlawful interference (code 7500)" },
+ { 2, "Radio-communication failure (code 7600)" },
+ { 3, "Emergency (code 7700)" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_020_DS1DS2 = { 2, 1.0, FIELD_PART_UINT, &hf_001_V1_2_020_DS1DS2, NULL };
+static int hf_001_V1_2_020_ME = -1;
+static const value_string valstr_001_V1_2_020_ME[] = {
+ { 0, "Default" },
+ { 1, "Military emergency" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_020_ME = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_020_ME, NULL };
+static int hf_001_V1_2_020_MI = -1;
+static const value_string valstr_001_V1_2_020_MI[] = {
+ { 0, "Default" },
+ { 1, "Military identification" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_020_MI = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_020_MI, NULL };
+static const FieldPart *I001_V1_2_020_PARTS[] = {
+ &I001_V1_2_020_TYP,
+ &I001_V1_2_020_SIM,
+ &I001_V1_2_020_SSRPSR,
+ &I001_V1_2_020_ANT,
+ &I001_V1_2_020_SPI,
+ &I001_V1_2_020_RAB,
+ &IXXX_FX,
+ &I001_V1_2_020_TST,
+ &I001_V1_2_020_DS1DS2,
+ &I001_V1_2_020_ME,
+ &I001_V1_2_020_MI,
+ &IXXX_2bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I001_V1_2_020 = { FX, 1, 0, 0, &hf_001_V1_2_020, I001_V1_2_020_PARTS, { NULL } };
+static int hf_001_V1_2_030 = -1;
+static int hf_001_V1_2_030_Subitem = -1;
+static const value_string valstr_001_V1_2_030_Subitem[] = {
+ { 0, "No warning nor error condition" },
+ { 1, "Garbled reply" },
+ { 2, "Reflection" },
+ { 3, "Sidelobe reply" },
+ { 4, "Split plot" },
+ { 5, "Second time around reply" },
+ { 6, "Angels" },
+ { 7, "Terrestrial vehicles" },
+ { 64, "Possible wrong code in Mode-3/A" },
+ { 65, "Possible wrong altitude information, transmitted when the Code C credibility check fails together with the Mode-C code in binary notation" },
+ { 66, "Possible phantom MSSR plot" },
+ { 80, "Fixed PSR plot" },
+ { 81, "Slow PSR plot" },
+ { 82, "Low quality PSR plot" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_030_Subitem = { 7, 1.0, FIELD_PART_UINT, &hf_001_V1_2_030_Subitem, NULL };
+static const FieldPart *I001_V1_2_030_PARTS[] = {
+ &I001_V1_2_030_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I001_V1_2_030 = { FX, 1, 0, 0, &hf_001_V1_2_030, I001_V1_2_030_PARTS, { NULL } };
+static int hf_001_V1_2_040 = -1;
+static int hf_001_V1_2_040_RHO = -1;
+static const FieldPart I001_V1_2_040_RHO = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_001_V1_2_040_RHO, NULL };
+static int hf_001_V1_2_040_THETA = -1;
+static const FieldPart I001_V1_2_040_THETA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_001_V1_2_040_THETA, NULL };
+static const FieldPart *I001_V1_2_040_PARTS[] = {
+ &I001_V1_2_040_RHO,
+ &I001_V1_2_040_THETA,
+ NULL
+};
+static const AsterixField I001_V1_2_040 = { FIXED, 4, 0, 0, &hf_001_V1_2_040, I001_V1_2_040_PARTS, { NULL } };
+static int hf_001_V1_2_042 = -1;
+static int hf_001_V1_2_042_X = -1;
+static const FieldPart I001_V1_2_042_X = { 16, 0.015625, FIELD_PART_FLOAT, &hf_001_V1_2_042_X, NULL };
+static int hf_001_V1_2_042_Y = -1;
+static const FieldPart I001_V1_2_042_Y = { 16, 0.015625, FIELD_PART_FLOAT, &hf_001_V1_2_042_Y, NULL };
+static const FieldPart *I001_V1_2_042_PARTS[] = {
+ &I001_V1_2_042_X,
+ &I001_V1_2_042_Y,
+ NULL
+};
+static const AsterixField I001_V1_2_042 = { FIXED, 4, 0, 0, &hf_001_V1_2_042, I001_V1_2_042_PARTS, { NULL } };
+static int hf_001_V1_2_050 = -1;
+static int hf_001_V1_2_050_V = -1;
+static const value_string valstr_001_V1_2_050_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_050_V = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_050_V, NULL };
+static int hf_001_V1_2_050_G = -1;
+static const value_string valstr_001_V1_2_050_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_050_G = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_050_G, NULL };
+static int hf_001_V1_2_050_L = -1;
+static const value_string valstr_001_V1_2_050_L[] = {
+ { 0, "Mode-2 code as derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-2 code as provided by a local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_050_L = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_050_L, NULL };
+static int hf_001_V1_2_050_MODE2 = -1;
+static const FieldPart I001_V1_2_050_MODE2 = { 12, 1.0, FIELD_PART_SQUAWK, &hf_001_V1_2_050_MODE2, NULL };
+static const FieldPart *I001_V1_2_050_PARTS[] = {
+ &I001_V1_2_050_V,
+ &I001_V1_2_050_G,
+ &I001_V1_2_050_L,
+ &IXXX_1bit_spare,
+ &I001_V1_2_050_MODE2,
+ NULL
+};
+static const AsterixField I001_V1_2_050 = { FIXED, 2, 0, 0, &hf_001_V1_2_050, I001_V1_2_050_PARTS, { NULL } };
+static int hf_001_V1_2_060 = -1;
+static int hf_001_V1_2_060_QA4 = -1;
+static const value_string valstr_001_V1_2_060_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_060_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_060_QA4, NULL };
+static int hf_001_V1_2_060_QA2 = -1;
+static const value_string valstr_001_V1_2_060_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_060_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_060_QA2, NULL };
+static int hf_001_V1_2_060_QA1 = -1;
+static const value_string valstr_001_V1_2_060_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_060_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_060_QA1, NULL };
+static int hf_001_V1_2_060_QB4 = -1;
+static const value_string valstr_001_V1_2_060_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_060_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_060_QB4, NULL };
+static int hf_001_V1_2_060_QB2 = -1;
+static const value_string valstr_001_V1_2_060_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_060_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_060_QB2, NULL };
+static int hf_001_V1_2_060_QB1 = -1;
+static const value_string valstr_001_V1_2_060_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_060_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_060_QB1, NULL };
+static int hf_001_V1_2_060_QC4 = -1;
+static const value_string valstr_001_V1_2_060_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_060_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_060_QC4, NULL };
+static int hf_001_V1_2_060_QC2 = -1;
+static const value_string valstr_001_V1_2_060_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_060_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_060_QC2, NULL };
+static int hf_001_V1_2_060_QC1 = -1;
+static const value_string valstr_001_V1_2_060_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_060_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_060_QC1, NULL };
+static int hf_001_V1_2_060_QD4 = -1;
+static const value_string valstr_001_V1_2_060_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_060_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_060_QD4, NULL };
+static int hf_001_V1_2_060_QD2 = -1;
+static const value_string valstr_001_V1_2_060_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_060_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_060_QD2, NULL };
+static int hf_001_V1_2_060_QD1 = -1;
+static const value_string valstr_001_V1_2_060_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_060_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_060_QD1, NULL };
+static const FieldPart *I001_V1_2_060_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I001_V1_2_060_QA4,
+ &I001_V1_2_060_QA2,
+ &I001_V1_2_060_QA1,
+ &I001_V1_2_060_QB4,
+ &I001_V1_2_060_QB2,
+ &I001_V1_2_060_QB1,
+ &I001_V1_2_060_QC4,
+ &I001_V1_2_060_QC2,
+ &I001_V1_2_060_QC1,
+ &I001_V1_2_060_QD4,
+ &I001_V1_2_060_QD2,
+ &I001_V1_2_060_QD1,
+ NULL
+};
+static const AsterixField I001_V1_2_060 = { FIXED, 2, 0, 0, &hf_001_V1_2_060, I001_V1_2_060_PARTS, { NULL } };
+static int hf_001_V1_2_070 = -1;
+static int hf_001_V1_2_070_V = -1;
+static const value_string valstr_001_V1_2_070_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_070_V = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_070_V, NULL };
+static int hf_001_V1_2_070_G = -1;
+static const value_string valstr_001_V1_2_070_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_070_G = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_070_G, NULL };
+static int hf_001_V1_2_070_L = -1;
+static const value_string valstr_001_V1_2_070_L[] = {
+ { 0, "Mode-3/A code derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-3/A code as provided by a local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_070_L = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_070_L, NULL };
+static int hf_001_V1_2_070_MODE3A = -1;
+static const FieldPart I001_V1_2_070_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_001_V1_2_070_MODE3A, NULL };
+static const FieldPart *I001_V1_2_070_PARTS[] = {
+ &I001_V1_2_070_V,
+ &I001_V1_2_070_G,
+ &I001_V1_2_070_L,
+ &IXXX_1bit_spare,
+ &I001_V1_2_070_MODE3A,
+ NULL
+};
+static const AsterixField I001_V1_2_070 = { FIXED, 2, 0, 0, &hf_001_V1_2_070, I001_V1_2_070_PARTS, { NULL } };
+static int hf_001_V1_2_080 = -1;
+static int hf_001_V1_2_080_QA4 = -1;
+static const value_string valstr_001_V1_2_080_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_080_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_080_QA4, NULL };
+static int hf_001_V1_2_080_QA2 = -1;
+static const value_string valstr_001_V1_2_080_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_080_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_080_QA2, NULL };
+static int hf_001_V1_2_080_QA1 = -1;
+static const value_string valstr_001_V1_2_080_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_080_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_080_QA1, NULL };
+static int hf_001_V1_2_080_QB4 = -1;
+static const value_string valstr_001_V1_2_080_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_080_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_080_QB4, NULL };
+static int hf_001_V1_2_080_QB2 = -1;
+static const value_string valstr_001_V1_2_080_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_080_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_080_QB2, NULL };
+static int hf_001_V1_2_080_QB1 = -1;
+static const value_string valstr_001_V1_2_080_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_080_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_080_QB1, NULL };
+static int hf_001_V1_2_080_QC4 = -1;
+static const value_string valstr_001_V1_2_080_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_080_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_080_QC4, NULL };
+static int hf_001_V1_2_080_QC2 = -1;
+static const value_string valstr_001_V1_2_080_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_080_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_080_QC2, NULL };
+static int hf_001_V1_2_080_QC1 = -1;
+static const value_string valstr_001_V1_2_080_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_080_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_080_QC1, NULL };
+static int hf_001_V1_2_080_QD4 = -1;
+static const value_string valstr_001_V1_2_080_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_080_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_080_QD4, NULL };
+static int hf_001_V1_2_080_QD2 = -1;
+static const value_string valstr_001_V1_2_080_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_080_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_080_QD2, NULL };
+static int hf_001_V1_2_080_QD1 = -1;
+static const value_string valstr_001_V1_2_080_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_080_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_080_QD1, NULL };
+static const FieldPart *I001_V1_2_080_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I001_V1_2_080_QA4,
+ &I001_V1_2_080_QA2,
+ &I001_V1_2_080_QA1,
+ &I001_V1_2_080_QB4,
+ &I001_V1_2_080_QB2,
+ &I001_V1_2_080_QB1,
+ &I001_V1_2_080_QC4,
+ &I001_V1_2_080_QC2,
+ &I001_V1_2_080_QC1,
+ &I001_V1_2_080_QD4,
+ &I001_V1_2_080_QD2,
+ &I001_V1_2_080_QD1,
+ NULL
+};
+static const AsterixField I001_V1_2_080 = { FIXED, 2, 0, 0, &hf_001_V1_2_080, I001_V1_2_080_PARTS, { NULL } };
+static int hf_001_V1_2_090 = -1;
+static int hf_001_V1_2_090_V = -1;
+static const value_string valstr_001_V1_2_090_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_090_V = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_090_V, NULL };
+static int hf_001_V1_2_090_G = -1;
+static const value_string valstr_001_V1_2_090_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_090_G = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_090_G, NULL };
+static int hf_001_V1_2_090_HGT = -1;
+static const FieldPart I001_V1_2_090_HGT = { 14, 0.25, FIELD_PART_FLOAT, &hf_001_V1_2_090_HGT, NULL };
+static const FieldPart *I001_V1_2_090_PARTS[] = {
+ &I001_V1_2_090_V,
+ &I001_V1_2_090_G,
+ &I001_V1_2_090_HGT,
+ NULL
+};
+static const AsterixField I001_V1_2_090 = { FIXED, 2, 0, 0, &hf_001_V1_2_090, I001_V1_2_090_PARTS, { NULL } };
+static int hf_001_V1_2_100 = -1;
+static int hf_001_V1_2_100_V = -1;
+static const value_string valstr_001_V1_2_100_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_100_V = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_100_V, NULL };
+static int hf_001_V1_2_100_G = -1;
+static const value_string valstr_001_V1_2_100_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_100_G = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_100_G, NULL };
+static int hf_001_V1_2_100_MODEC = -1;
+static const FieldPart I001_V1_2_100_MODEC = { 12, 1.0, FIELD_PART_HEX, &hf_001_V1_2_100_MODEC, NULL };
+static int hf_001_V1_2_100_QC1 = -1;
+static const value_string valstr_001_V1_2_100_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_100_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_100_QC1, NULL };
+static int hf_001_V1_2_100_QA1 = -1;
+static const value_string valstr_001_V1_2_100_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_100_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_100_QA1, NULL };
+static int hf_001_V1_2_100_QC2 = -1;
+static const value_string valstr_001_V1_2_100_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_100_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_100_QC2, NULL };
+static int hf_001_V1_2_100_QA2 = -1;
+static const value_string valstr_001_V1_2_100_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_100_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_100_QA2, NULL };
+static int hf_001_V1_2_100_QC4 = -1;
+static const value_string valstr_001_V1_2_100_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_100_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_100_QC4, NULL };
+static int hf_001_V1_2_100_QA4 = -1;
+static const value_string valstr_001_V1_2_100_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_100_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_100_QA4, NULL };
+static int hf_001_V1_2_100_QB1 = -1;
+static const value_string valstr_001_V1_2_100_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_100_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_100_QB1, NULL };
+static int hf_001_V1_2_100_QD1 = -1;
+static const value_string valstr_001_V1_2_100_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_100_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_100_QD1, NULL };
+static int hf_001_V1_2_100_QB2 = -1;
+static const value_string valstr_001_V1_2_100_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_100_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_100_QB2, NULL };
+static int hf_001_V1_2_100_QD2 = -1;
+static const value_string valstr_001_V1_2_100_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_100_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_100_QD2, NULL };
+static int hf_001_V1_2_100_QB4 = -1;
+static const value_string valstr_001_V1_2_100_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_100_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_100_QB4, NULL };
+static int hf_001_V1_2_100_QD4 = -1;
+static const value_string valstr_001_V1_2_100_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_100_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_100_QD4, NULL };
+static const FieldPart *I001_V1_2_100_PARTS[] = {
+ &I001_V1_2_100_V,
+ &I001_V1_2_100_G,
+ &IXXX_2bit_spare,
+ &I001_V1_2_100_MODEC,
+ &IXXX_4bit_spare,
+ &I001_V1_2_100_QC1,
+ &I001_V1_2_100_QA1,
+ &I001_V1_2_100_QC2,
+ &I001_V1_2_100_QA2,
+ &I001_V1_2_100_QC4,
+ &I001_V1_2_100_QA4,
+ &I001_V1_2_100_QB1,
+ &I001_V1_2_100_QD1,
+ &I001_V1_2_100_QB2,
+ &I001_V1_2_100_QD2,
+ &I001_V1_2_100_QB4,
+ &I001_V1_2_100_QD4,
+ NULL
+};
+static const AsterixField I001_V1_2_100 = { FIXED, 4, 0, 0, &hf_001_V1_2_100, I001_V1_2_100_PARTS, { NULL } };
+static int hf_001_V1_2_120 = -1;
+static int hf_001_V1_2_120_VALUE = -1;
+static const FieldPart I001_V1_2_120_VALUE = { 8, 0.00390625, FIELD_PART_FLOAT, &hf_001_V1_2_120_VALUE, NULL };
+static const FieldPart *I001_V1_2_120_PARTS[] = {
+ &I001_V1_2_120_VALUE,
+ NULL
+};
+static const AsterixField I001_V1_2_120 = { FIXED, 1, 0, 0, &hf_001_V1_2_120, I001_V1_2_120_PARTS, { NULL } };
+static int hf_001_V1_2_130 = -1;
+static int hf_001_V1_2_130_Subitem = -1;
+static const FieldPart I001_V1_2_130_Subitem = { 7, 1.0, FIELD_PART_HEX, &hf_001_V1_2_130_Subitem, NULL };
+static const FieldPart *I001_V1_2_130_PARTS[] = {
+ &I001_V1_2_130_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I001_V1_2_130 = { FX, 1, 0, 0, &hf_001_V1_2_130, I001_V1_2_130_PARTS, { NULL } };
+static int hf_001_V1_2_131 = -1;
+static int hf_001_V1_2_131_VALUE = -1;
+static const FieldPart I001_V1_2_131_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_001_V1_2_131_VALUE, NULL };
+static const FieldPart *I001_V1_2_131_PARTS[] = {
+ &I001_V1_2_131_VALUE,
+ NULL
+};
+static const AsterixField I001_V1_2_131 = { FIXED, 1, 0, 0, &hf_001_V1_2_131, I001_V1_2_131_PARTS, { NULL } };
+static int hf_001_V1_2_141 = -1;
+static int hf_001_V1_2_141_VALUE = -1;
+static const FieldPart I001_V1_2_141_VALUE = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_001_V1_2_141_VALUE, NULL };
+static const FieldPart *I001_V1_2_141_PARTS[] = {
+ &I001_V1_2_141_VALUE,
+ NULL
+};
+static const AsterixField I001_V1_2_141 = { FIXED, 2, 0, 0, &hf_001_V1_2_141, I001_V1_2_141_PARTS, { NULL } };
+static int hf_001_V1_2_150 = -1;
+static int hf_001_V1_2_150_XA = -1;
+static const value_string valstr_001_V1_2_150_XA[] = {
+ { 0, "Default" },
+ { 1, "X-pulse received in Mode-3/A reply" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_150_XA = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_150_XA, NULL };
+static int hf_001_V1_2_150_XC = -1;
+static const value_string valstr_001_V1_2_150_XC[] = {
+ { 0, "Default" },
+ { 1, "X-pulse received in Mode-C reply" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_150_XC = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_150_XC, NULL };
+static int hf_001_V1_2_150_X2 = -1;
+static const value_string valstr_001_V1_2_150_X2[] = {
+ { 0, "Default" },
+ { 1, "X-pulse received in Mode-2 reply" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_150_X2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_150_X2, NULL };
+static const FieldPart *I001_V1_2_150_PARTS[] = {
+ &I001_V1_2_150_XA,
+ &IXXX_1bit_spare,
+ &I001_V1_2_150_XC,
+ &IXXX_2bit_spare,
+ &I001_V1_2_150_X2,
+ &IXXX_2bit_spare,
+ NULL
+};
+static const AsterixField I001_V1_2_150 = { FIXED, 1, 0, 0, &hf_001_V1_2_150, I001_V1_2_150_PARTS, { NULL } };
+static int hf_001_V1_2_161 = -1;
+static int hf_001_V1_2_161_VALUE = -1;
+static const FieldPart I001_V1_2_161_VALUE = { 16, 1.0, FIELD_PART_HEX, &hf_001_V1_2_161_VALUE, NULL };
+static const FieldPart *I001_V1_2_161_PARTS[] = {
+ &I001_V1_2_161_VALUE,
+ NULL
+};
+static const AsterixField I001_V1_2_161 = { FIXED, 2, 0, 0, &hf_001_V1_2_161, I001_V1_2_161_PARTS, { NULL } };
+static int hf_001_V1_2_170 = -1;
+static int hf_001_V1_2_170_CON = -1;
+static const value_string valstr_001_V1_2_170_CON[] = {
+ { 0, "Confirmed Track" },
+ { 1, "Track in initialisation phase" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_170_CON = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_170_CON, NULL };
+static int hf_001_V1_2_170_RAD = -1;
+static const value_string valstr_001_V1_2_170_RAD[] = {
+ { 0, "Primary track" },
+ { 1, "SSR/Combined track" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_170_RAD = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_170_RAD, NULL };
+static int hf_001_V1_2_170_MAN = -1;
+static const value_string valstr_001_V1_2_170_MAN[] = {
+ { 0, "Default" },
+ { 1, "Aircraft manoeuvring" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_170_MAN = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_170_MAN, NULL };
+static int hf_001_V1_2_170_DOU = -1;
+static const value_string valstr_001_V1_2_170_DOU[] = {
+ { 0, "Default" },
+ { 1, "Doubtful plot to track association" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_170_DOU = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_170_DOU, NULL };
+static int hf_001_V1_2_170_RDPC = -1;
+static const value_string valstr_001_V1_2_170_RDPC[] = {
+ { 0, "RDP Chain 1" },
+ { 1, "RDP Chain 2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_170_RDPC = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_170_RDPC, NULL };
+static int hf_001_V1_2_170_GHO = -1;
+static const value_string valstr_001_V1_2_170_GHO[] = {
+ { 0, "Default" },
+ { 1, "Ghost track" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_170_GHO = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_170_GHO, NULL };
+static int hf_001_V1_2_170_TRE = -1;
+static const value_string valstr_001_V1_2_170_TRE[] = {
+ { 0, "Default" },
+ { 1, "Last report for a track" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_2_170_TRE = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_2_170_TRE, NULL };
+static const FieldPart *I001_V1_2_170_PARTS[] = {
+ &I001_V1_2_170_CON,
+ &I001_V1_2_170_RAD,
+ &I001_V1_2_170_MAN,
+ &I001_V1_2_170_DOU,
+ &I001_V1_2_170_RDPC,
+ &IXXX_1bit_spare,
+ &I001_V1_2_170_GHO,
+ &IXXX_FX,
+ &I001_V1_2_170_TRE,
+ &IXXX_6bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I001_V1_2_170 = { FX, 1, 0, 0, &hf_001_V1_2_170, I001_V1_2_170_PARTS, { NULL } };
+static int hf_001_V1_2_200 = -1;
+static int hf_001_V1_2_200_GSP = -1;
+static const FieldPart I001_V1_2_200_GSP = { 16, 0.00006103515625, FIELD_PART_UFLOAT, &hf_001_V1_2_200_GSP, NULL };
+static int hf_001_V1_2_200_HDG = -1;
+static const FieldPart I001_V1_2_200_HDG = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_001_V1_2_200_HDG, NULL };
+static const FieldPart *I001_V1_2_200_PARTS[] = {
+ &I001_V1_2_200_GSP,
+ &I001_V1_2_200_HDG,
+ NULL
+};
+static const AsterixField I001_V1_2_200 = { FIXED, 4, 0, 0, &hf_001_V1_2_200, I001_V1_2_200_PARTS, { NULL } };
+static int hf_001_V1_2_210 = -1;
+static int hf_001_V1_2_210_Subitem = -1;
+static const FieldPart I001_V1_2_210_Subitem = { 7, 1.0, FIELD_PART_HEX, &hf_001_V1_2_210_Subitem, NULL };
+static const FieldPart *I001_V1_2_210_PARTS[] = {
+ &I001_V1_2_210_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I001_V1_2_210 = { FX, 1, 0, 0, &hf_001_V1_2_210, I001_V1_2_210_PARTS, { NULL } };
+static int hf_001_V1_2_SP = -1;
+static const AsterixField I001_V1_2_SP = { EXP, 0, 0, 1, &hf_001_V1_2_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I001_V1_2_plot[] = {
+ &I001_V1_2_010,
+ &I001_V1_2_020,
+ &I001_V1_2_040,
+ &I001_V1_2_070,
+ &I001_V1_2_090,
+ &I001_V1_2_130,
+ &I001_V1_2_141,
+ &I001_V1_2_050,
+ &I001_V1_2_120,
+ &I001_V1_2_131,
+ &I001_V1_2_080,
+ &I001_V1_2_100,
+ &I001_V1_2_060,
+ &I001_V1_2_030,
+ &I001_V1_2_150,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I001_V1_2_SP,
+ NULL
+};
+static const AsterixField *I001_V1_2_track[] = {
+ &I001_V1_2_010,
+ &I001_V1_2_020,
+ &I001_V1_2_161,
+ &I001_V1_2_040,
+ &I001_V1_2_042,
+ &I001_V1_2_200,
+ &I001_V1_2_070,
+ &I001_V1_2_090,
+ &I001_V1_2_141,
+ &I001_V1_2_130,
+ &I001_V1_2_131,
+ &I001_V1_2_120,
+ &I001_V1_2_170,
+ &I001_V1_2_210,
+ &I001_V1_2_050,
+ &I001_V1_2_080,
+ &I001_V1_2_100,
+ &I001_V1_2_060,
+ &I001_V1_2_030,
+ &I001_V1_2_SP,
+ &IX_SPARE,
+ &I001_V1_2_150,
+ NULL
+};
+static const AsterixField **I001_V1_2[] = {
+ I001_V1_2_plot,
+ I001_V1_2_track,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 001, edition 1.3 */
+static int hf_001_V1_3_010 = -1;
+static int hf_001_V1_3_010_SAC = -1;
+static const FieldPart I001_V1_3_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_001_V1_3_010_SAC, NULL };
+static int hf_001_V1_3_010_SIC = -1;
+static const FieldPart I001_V1_3_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_001_V1_3_010_SIC, NULL };
+static const FieldPart *I001_V1_3_010_PARTS[] = {
+ &I001_V1_3_010_SAC,
+ &I001_V1_3_010_SIC,
+ NULL
+};
+static const AsterixField I001_V1_3_010 = { FIXED, 2, 0, 0, &hf_001_V1_3_010, I001_V1_3_010_PARTS, { NULL } };
+static int hf_001_V1_3_020 = -1;
+static int hf_001_V1_3_020_TYP = -1;
+static const value_string valstr_001_V1_3_020_TYP[] = {
+ { 0, "Plot" },
+ { 1, "Track" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_020_TYP = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_020_TYP, NULL };
+static int hf_001_V1_3_020_SIM = -1;
+static const value_string valstr_001_V1_3_020_SIM[] = {
+ { 0, "Actual plot or track" },
+ { 1, "Simulated plot or track" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_020_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_020_SIM, NULL };
+static int hf_001_V1_3_020_SSRPSR = -1;
+static const value_string valstr_001_V1_3_020_SSRPSR[] = {
+ { 0, "No detection" },
+ { 1, "Sole primary detection" },
+ { 2, "Sole secondary detection" },
+ { 3, "Combined primary and secondary detection" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_020_SSRPSR = { 2, 1.0, FIELD_PART_UINT, &hf_001_V1_3_020_SSRPSR, NULL };
+static int hf_001_V1_3_020_ANT = -1;
+static const value_string valstr_001_V1_3_020_ANT[] = {
+ { 0, "Target report from antenna 1" },
+ { 1, "Target report from antenna 2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_020_ANT = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_020_ANT, NULL };
+static int hf_001_V1_3_020_SPI = -1;
+static const value_string valstr_001_V1_3_020_SPI[] = {
+ { 0, "Default" },
+ { 1, "Special Position Identification" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_020_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_020_SPI, NULL };
+static int hf_001_V1_3_020_RAB = -1;
+static const value_string valstr_001_V1_3_020_RAB[] = {
+ { 0, "Default" },
+ { 1, "Plot or track from a fixed transponder" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_020_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_020_RAB, NULL };
+static int hf_001_V1_3_020_TST = -1;
+static const value_string valstr_001_V1_3_020_TST[] = {
+ { 0, "Default" },
+ { 1, "Test target indicator" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_020_TST = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_020_TST, NULL };
+static int hf_001_V1_3_020_DS1DS2 = -1;
+static const value_string valstr_001_V1_3_020_DS1DS2[] = {
+ { 0, "Default" },
+ { 1, "Unlawful interference (code 7500)" },
+ { 2, "Radio-communication failure (code 7600)" },
+ { 3, "Emergency (code 7700)" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_020_DS1DS2 = { 2, 1.0, FIELD_PART_UINT, &hf_001_V1_3_020_DS1DS2, NULL };
+static int hf_001_V1_3_020_ME = -1;
+static const value_string valstr_001_V1_3_020_ME[] = {
+ { 0, "Default" },
+ { 1, "Military emergency" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_020_ME = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_020_ME, NULL };
+static int hf_001_V1_3_020_MI = -1;
+static const value_string valstr_001_V1_3_020_MI[] = {
+ { 0, "Default" },
+ { 1, "Military identification" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_020_MI = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_020_MI, NULL };
+static const FieldPart *I001_V1_3_020_PARTS[] = {
+ &I001_V1_3_020_TYP,
+ &I001_V1_3_020_SIM,
+ &I001_V1_3_020_SSRPSR,
+ &I001_V1_3_020_ANT,
+ &I001_V1_3_020_SPI,
+ &I001_V1_3_020_RAB,
+ &IXXX_FX,
+ &I001_V1_3_020_TST,
+ &I001_V1_3_020_DS1DS2,
+ &I001_V1_3_020_ME,
+ &I001_V1_3_020_MI,
+ &IXXX_2bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I001_V1_3_020 = { FX, 1, 0, 0, &hf_001_V1_3_020, I001_V1_3_020_PARTS, { NULL } };
+static int hf_001_V1_3_030 = -1;
+static int hf_001_V1_3_030_Subitem = -1;
+static const value_string valstr_001_V1_3_030_Subitem[] = {
+ { 0, "No warning nor error condition" },
+ { 1, "Garbled reply" },
+ { 2, "Reflection" },
+ { 3, "Sidelobe reply" },
+ { 4, "Split plot" },
+ { 5, "Second time around reply" },
+ { 6, "Angels" },
+ { 7, "Terrestrial vehicles" },
+ { 64, "Possible wrong code in Mode-3/A" },
+ { 65, "Possible wrong altitude information, transmitted when the Code C credibility check fails together with the Mode-C code in binary notation" },
+ { 66, "Possible phantom MSSR plot" },
+ { 80, "Fixed PSR plot" },
+ { 81, "Slow PSR plot" },
+ { 82, "Low quality PSR plot" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_030_Subitem = { 7, 1.0, FIELD_PART_UINT, &hf_001_V1_3_030_Subitem, NULL };
+static const FieldPart *I001_V1_3_030_PARTS[] = {
+ &I001_V1_3_030_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I001_V1_3_030 = { FX, 1, 0, 0, &hf_001_V1_3_030, I001_V1_3_030_PARTS, { NULL } };
+static int hf_001_V1_3_040 = -1;
+static int hf_001_V1_3_040_RHO = -1;
+static const FieldPart I001_V1_3_040_RHO = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_001_V1_3_040_RHO, NULL };
+static int hf_001_V1_3_040_THETA = -1;
+static const FieldPart I001_V1_3_040_THETA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_001_V1_3_040_THETA, NULL };
+static const FieldPart *I001_V1_3_040_PARTS[] = {
+ &I001_V1_3_040_RHO,
+ &I001_V1_3_040_THETA,
+ NULL
+};
+static const AsterixField I001_V1_3_040 = { FIXED, 4, 0, 0, &hf_001_V1_3_040, I001_V1_3_040_PARTS, { NULL } };
+static int hf_001_V1_3_042 = -1;
+static int hf_001_V1_3_042_X = -1;
+static const FieldPart I001_V1_3_042_X = { 16, 0.015625, FIELD_PART_FLOAT, &hf_001_V1_3_042_X, NULL };
+static int hf_001_V1_3_042_Y = -1;
+static const FieldPart I001_V1_3_042_Y = { 16, 0.015625, FIELD_PART_FLOAT, &hf_001_V1_3_042_Y, NULL };
+static const FieldPart *I001_V1_3_042_PARTS[] = {
+ &I001_V1_3_042_X,
+ &I001_V1_3_042_Y,
+ NULL
+};
+static const AsterixField I001_V1_3_042 = { FIXED, 4, 0, 0, &hf_001_V1_3_042, I001_V1_3_042_PARTS, { NULL } };
+static int hf_001_V1_3_050 = -1;
+static int hf_001_V1_3_050_V = -1;
+static const value_string valstr_001_V1_3_050_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_050_V = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_050_V, NULL };
+static int hf_001_V1_3_050_G = -1;
+static const value_string valstr_001_V1_3_050_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_050_G = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_050_G, NULL };
+static int hf_001_V1_3_050_L = -1;
+static const value_string valstr_001_V1_3_050_L[] = {
+ { 0, "Mode-2 code as derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-2 code as provided by a local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_050_L = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_050_L, NULL };
+static int hf_001_V1_3_050_MODE2 = -1;
+static const FieldPart I001_V1_3_050_MODE2 = { 12, 1.0, FIELD_PART_SQUAWK, &hf_001_V1_3_050_MODE2, NULL };
+static const FieldPart *I001_V1_3_050_PARTS[] = {
+ &I001_V1_3_050_V,
+ &I001_V1_3_050_G,
+ &I001_V1_3_050_L,
+ &IXXX_1bit_spare,
+ &I001_V1_3_050_MODE2,
+ NULL
+};
+static const AsterixField I001_V1_3_050 = { FIXED, 2, 0, 0, &hf_001_V1_3_050, I001_V1_3_050_PARTS, { NULL } };
+static int hf_001_V1_3_060 = -1;
+static int hf_001_V1_3_060_QA4 = -1;
+static const value_string valstr_001_V1_3_060_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_060_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_060_QA4, NULL };
+static int hf_001_V1_3_060_QA2 = -1;
+static const value_string valstr_001_V1_3_060_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_060_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_060_QA2, NULL };
+static int hf_001_V1_3_060_QA1 = -1;
+static const value_string valstr_001_V1_3_060_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_060_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_060_QA1, NULL };
+static int hf_001_V1_3_060_QB4 = -1;
+static const value_string valstr_001_V1_3_060_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_060_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_060_QB4, NULL };
+static int hf_001_V1_3_060_QB2 = -1;
+static const value_string valstr_001_V1_3_060_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_060_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_060_QB2, NULL };
+static int hf_001_V1_3_060_QB1 = -1;
+static const value_string valstr_001_V1_3_060_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_060_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_060_QB1, NULL };
+static int hf_001_V1_3_060_QC4 = -1;
+static const value_string valstr_001_V1_3_060_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_060_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_060_QC4, NULL };
+static int hf_001_V1_3_060_QC2 = -1;
+static const value_string valstr_001_V1_3_060_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_060_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_060_QC2, NULL };
+static int hf_001_V1_3_060_QC1 = -1;
+static const value_string valstr_001_V1_3_060_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_060_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_060_QC1, NULL };
+static int hf_001_V1_3_060_QD4 = -1;
+static const value_string valstr_001_V1_3_060_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_060_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_060_QD4, NULL };
+static int hf_001_V1_3_060_QD2 = -1;
+static const value_string valstr_001_V1_3_060_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_060_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_060_QD2, NULL };
+static int hf_001_V1_3_060_QD1 = -1;
+static const value_string valstr_001_V1_3_060_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_060_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_060_QD1, NULL };
+static const FieldPart *I001_V1_3_060_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I001_V1_3_060_QA4,
+ &I001_V1_3_060_QA2,
+ &I001_V1_3_060_QA1,
+ &I001_V1_3_060_QB4,
+ &I001_V1_3_060_QB2,
+ &I001_V1_3_060_QB1,
+ &I001_V1_3_060_QC4,
+ &I001_V1_3_060_QC2,
+ &I001_V1_3_060_QC1,
+ &I001_V1_3_060_QD4,
+ &I001_V1_3_060_QD2,
+ &I001_V1_3_060_QD1,
+ NULL
+};
+static const AsterixField I001_V1_3_060 = { FIXED, 2, 0, 0, &hf_001_V1_3_060, I001_V1_3_060_PARTS, { NULL } };
+static int hf_001_V1_3_070 = -1;
+static int hf_001_V1_3_070_V = -1;
+static const value_string valstr_001_V1_3_070_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_070_V = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_070_V, NULL };
+static int hf_001_V1_3_070_G = -1;
+static const value_string valstr_001_V1_3_070_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_070_G = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_070_G, NULL };
+static int hf_001_V1_3_070_L = -1;
+static const value_string valstr_001_V1_3_070_L[] = {
+ { 0, "Mode-3/A code derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-3/A code as provided by a local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_070_L = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_070_L, NULL };
+static int hf_001_V1_3_070_MODE3A = -1;
+static const FieldPart I001_V1_3_070_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_001_V1_3_070_MODE3A, NULL };
+static const FieldPart *I001_V1_3_070_PARTS[] = {
+ &I001_V1_3_070_V,
+ &I001_V1_3_070_G,
+ &I001_V1_3_070_L,
+ &IXXX_1bit_spare,
+ &I001_V1_3_070_MODE3A,
+ NULL
+};
+static const AsterixField I001_V1_3_070 = { FIXED, 2, 0, 0, &hf_001_V1_3_070, I001_V1_3_070_PARTS, { NULL } };
+static int hf_001_V1_3_080 = -1;
+static int hf_001_V1_3_080_QA4 = -1;
+static const value_string valstr_001_V1_3_080_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_080_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_080_QA4, NULL };
+static int hf_001_V1_3_080_QA2 = -1;
+static const value_string valstr_001_V1_3_080_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_080_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_080_QA2, NULL };
+static int hf_001_V1_3_080_QA1 = -1;
+static const value_string valstr_001_V1_3_080_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_080_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_080_QA1, NULL };
+static int hf_001_V1_3_080_QB4 = -1;
+static const value_string valstr_001_V1_3_080_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_080_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_080_QB4, NULL };
+static int hf_001_V1_3_080_QB2 = -1;
+static const value_string valstr_001_V1_3_080_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_080_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_080_QB2, NULL };
+static int hf_001_V1_3_080_QB1 = -1;
+static const value_string valstr_001_V1_3_080_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_080_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_080_QB1, NULL };
+static int hf_001_V1_3_080_QC4 = -1;
+static const value_string valstr_001_V1_3_080_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_080_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_080_QC4, NULL };
+static int hf_001_V1_3_080_QC2 = -1;
+static const value_string valstr_001_V1_3_080_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_080_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_080_QC2, NULL };
+static int hf_001_V1_3_080_QC1 = -1;
+static const value_string valstr_001_V1_3_080_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_080_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_080_QC1, NULL };
+static int hf_001_V1_3_080_QD4 = -1;
+static const value_string valstr_001_V1_3_080_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_080_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_080_QD4, NULL };
+static int hf_001_V1_3_080_QD2 = -1;
+static const value_string valstr_001_V1_3_080_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_080_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_080_QD2, NULL };
+static int hf_001_V1_3_080_QD1 = -1;
+static const value_string valstr_001_V1_3_080_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_080_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_080_QD1, NULL };
+static const FieldPart *I001_V1_3_080_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I001_V1_3_080_QA4,
+ &I001_V1_3_080_QA2,
+ &I001_V1_3_080_QA1,
+ &I001_V1_3_080_QB4,
+ &I001_V1_3_080_QB2,
+ &I001_V1_3_080_QB1,
+ &I001_V1_3_080_QC4,
+ &I001_V1_3_080_QC2,
+ &I001_V1_3_080_QC1,
+ &I001_V1_3_080_QD4,
+ &I001_V1_3_080_QD2,
+ &I001_V1_3_080_QD1,
+ NULL
+};
+static const AsterixField I001_V1_3_080 = { FIXED, 2, 0, 0, &hf_001_V1_3_080, I001_V1_3_080_PARTS, { NULL } };
+static int hf_001_V1_3_090 = -1;
+static int hf_001_V1_3_090_V = -1;
+static const value_string valstr_001_V1_3_090_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_090_V = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_090_V, NULL };
+static int hf_001_V1_3_090_G = -1;
+static const value_string valstr_001_V1_3_090_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_090_G = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_090_G, NULL };
+static int hf_001_V1_3_090_HGT = -1;
+static const FieldPart I001_V1_3_090_HGT = { 14, 0.25, FIELD_PART_FLOAT, &hf_001_V1_3_090_HGT, NULL };
+static const FieldPart *I001_V1_3_090_PARTS[] = {
+ &I001_V1_3_090_V,
+ &I001_V1_3_090_G,
+ &I001_V1_3_090_HGT,
+ NULL
+};
+static const AsterixField I001_V1_3_090 = { FIXED, 2, 0, 0, &hf_001_V1_3_090, I001_V1_3_090_PARTS, { NULL } };
+static int hf_001_V1_3_100 = -1;
+static int hf_001_V1_3_100_V = -1;
+static const value_string valstr_001_V1_3_100_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_100_V = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_100_V, NULL };
+static int hf_001_V1_3_100_G = -1;
+static const value_string valstr_001_V1_3_100_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_100_G = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_100_G, NULL };
+static int hf_001_V1_3_100_MODEC = -1;
+static const FieldPart I001_V1_3_100_MODEC = { 12, 1.0, FIELD_PART_HEX, &hf_001_V1_3_100_MODEC, NULL };
+static int hf_001_V1_3_100_QC1 = -1;
+static const value_string valstr_001_V1_3_100_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_100_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_100_QC1, NULL };
+static int hf_001_V1_3_100_QA1 = -1;
+static const value_string valstr_001_V1_3_100_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_100_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_100_QA1, NULL };
+static int hf_001_V1_3_100_QC2 = -1;
+static const value_string valstr_001_V1_3_100_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_100_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_100_QC2, NULL };
+static int hf_001_V1_3_100_QA2 = -1;
+static const value_string valstr_001_V1_3_100_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_100_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_100_QA2, NULL };
+static int hf_001_V1_3_100_QC4 = -1;
+static const value_string valstr_001_V1_3_100_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_100_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_100_QC4, NULL };
+static int hf_001_V1_3_100_QA4 = -1;
+static const value_string valstr_001_V1_3_100_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_100_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_100_QA4, NULL };
+static int hf_001_V1_3_100_QB1 = -1;
+static const value_string valstr_001_V1_3_100_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_100_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_100_QB1, NULL };
+static int hf_001_V1_3_100_QD1 = -1;
+static const value_string valstr_001_V1_3_100_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_100_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_100_QD1, NULL };
+static int hf_001_V1_3_100_QB2 = -1;
+static const value_string valstr_001_V1_3_100_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_100_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_100_QB2, NULL };
+static int hf_001_V1_3_100_QD2 = -1;
+static const value_string valstr_001_V1_3_100_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_100_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_100_QD2, NULL };
+static int hf_001_V1_3_100_QB4 = -1;
+static const value_string valstr_001_V1_3_100_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_100_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_100_QB4, NULL };
+static int hf_001_V1_3_100_QD4 = -1;
+static const value_string valstr_001_V1_3_100_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_100_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_100_QD4, NULL };
+static const FieldPart *I001_V1_3_100_PARTS[] = {
+ &I001_V1_3_100_V,
+ &I001_V1_3_100_G,
+ &IXXX_2bit_spare,
+ &I001_V1_3_100_MODEC,
+ &IXXX_4bit_spare,
+ &I001_V1_3_100_QC1,
+ &I001_V1_3_100_QA1,
+ &I001_V1_3_100_QC2,
+ &I001_V1_3_100_QA2,
+ &I001_V1_3_100_QC4,
+ &I001_V1_3_100_QA4,
+ &I001_V1_3_100_QB1,
+ &I001_V1_3_100_QD1,
+ &I001_V1_3_100_QB2,
+ &I001_V1_3_100_QD2,
+ &I001_V1_3_100_QB4,
+ &I001_V1_3_100_QD4,
+ NULL
+};
+static const AsterixField I001_V1_3_100 = { FIXED, 4, 0, 0, &hf_001_V1_3_100, I001_V1_3_100_PARTS, { NULL } };
+static int hf_001_V1_3_120 = -1;
+static int hf_001_V1_3_120_VALUE = -1;
+static const FieldPart I001_V1_3_120_VALUE = { 8, 0.00390625, FIELD_PART_FLOAT, &hf_001_V1_3_120_VALUE, NULL };
+static const FieldPart *I001_V1_3_120_PARTS[] = {
+ &I001_V1_3_120_VALUE,
+ NULL
+};
+static const AsterixField I001_V1_3_120 = { FIXED, 1, 0, 0, &hf_001_V1_3_120, I001_V1_3_120_PARTS, { NULL } };
+static int hf_001_V1_3_130 = -1;
+static int hf_001_V1_3_130_Subitem = -1;
+static const FieldPart I001_V1_3_130_Subitem = { 7, 1.0, FIELD_PART_HEX, &hf_001_V1_3_130_Subitem, NULL };
+static const FieldPart *I001_V1_3_130_PARTS[] = {
+ &I001_V1_3_130_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I001_V1_3_130 = { FX, 1, 0, 0, &hf_001_V1_3_130, I001_V1_3_130_PARTS, { NULL } };
+static int hf_001_V1_3_131 = -1;
+static int hf_001_V1_3_131_VALUE = -1;
+static const FieldPart I001_V1_3_131_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_001_V1_3_131_VALUE, NULL };
+static const FieldPart *I001_V1_3_131_PARTS[] = {
+ &I001_V1_3_131_VALUE,
+ NULL
+};
+static const AsterixField I001_V1_3_131 = { FIXED, 1, 0, 0, &hf_001_V1_3_131, I001_V1_3_131_PARTS, { NULL } };
+static int hf_001_V1_3_141 = -1;
+static int hf_001_V1_3_141_VALUE = -1;
+static const FieldPart I001_V1_3_141_VALUE = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_001_V1_3_141_VALUE, NULL };
+static const FieldPart *I001_V1_3_141_PARTS[] = {
+ &I001_V1_3_141_VALUE,
+ NULL
+};
+static const AsterixField I001_V1_3_141 = { FIXED, 2, 0, 0, &hf_001_V1_3_141, I001_V1_3_141_PARTS, { NULL } };
+static int hf_001_V1_3_150 = -1;
+static int hf_001_V1_3_150_XA = -1;
+static const value_string valstr_001_V1_3_150_XA[] = {
+ { 0, "Default" },
+ { 1, "X-pulse received in Mode-3/A reply" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_150_XA = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_150_XA, NULL };
+static int hf_001_V1_3_150_XC = -1;
+static const value_string valstr_001_V1_3_150_XC[] = {
+ { 0, "Default" },
+ { 1, "X-pulse received in Mode-C reply" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_150_XC = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_150_XC, NULL };
+static int hf_001_V1_3_150_X2 = -1;
+static const value_string valstr_001_V1_3_150_X2[] = {
+ { 0, "Default" },
+ { 1, "X-pulse received in Mode-2 reply" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_150_X2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_150_X2, NULL };
+static const FieldPart *I001_V1_3_150_PARTS[] = {
+ &I001_V1_3_150_XA,
+ &IXXX_1bit_spare,
+ &I001_V1_3_150_XC,
+ &IXXX_2bit_spare,
+ &I001_V1_3_150_X2,
+ &IXXX_2bit_spare,
+ NULL
+};
+static const AsterixField I001_V1_3_150 = { FIXED, 1, 0, 0, &hf_001_V1_3_150, I001_V1_3_150_PARTS, { NULL } };
+static int hf_001_V1_3_161 = -1;
+static int hf_001_V1_3_161_VALUE = -1;
+static const FieldPart I001_V1_3_161_VALUE = { 16, 1.0, FIELD_PART_HEX, &hf_001_V1_3_161_VALUE, NULL };
+static const FieldPart *I001_V1_3_161_PARTS[] = {
+ &I001_V1_3_161_VALUE,
+ NULL
+};
+static const AsterixField I001_V1_3_161 = { FIXED, 2, 0, 0, &hf_001_V1_3_161, I001_V1_3_161_PARTS, { NULL } };
+static int hf_001_V1_3_170 = -1;
+static int hf_001_V1_3_170_CON = -1;
+static const value_string valstr_001_V1_3_170_CON[] = {
+ { 0, "Confirmed Track" },
+ { 1, "Track in initialisation phase" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_170_CON = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_170_CON, NULL };
+static int hf_001_V1_3_170_RAD = -1;
+static const value_string valstr_001_V1_3_170_RAD[] = {
+ { 0, "Primary track" },
+ { 1, "SSR/Combined track" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_170_RAD = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_170_RAD, NULL };
+static int hf_001_V1_3_170_MAN = -1;
+static const value_string valstr_001_V1_3_170_MAN[] = {
+ { 0, "Default" },
+ { 1, "Aircraft manoeuvring" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_170_MAN = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_170_MAN, NULL };
+static int hf_001_V1_3_170_DOU = -1;
+static const value_string valstr_001_V1_3_170_DOU[] = {
+ { 0, "Default" },
+ { 1, "Doubtful plot to track association" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_170_DOU = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_170_DOU, NULL };
+static int hf_001_V1_3_170_RDPC = -1;
+static const value_string valstr_001_V1_3_170_RDPC[] = {
+ { 0, "RDP Chain 1" },
+ { 1, "RDP Chain 2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_170_RDPC = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_170_RDPC, NULL };
+static int hf_001_V1_3_170_GHO = -1;
+static const value_string valstr_001_V1_3_170_GHO[] = {
+ { 0, "Default" },
+ { 1, "Ghost track" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_170_GHO = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_170_GHO, NULL };
+static int hf_001_V1_3_170_TRE = -1;
+static const value_string valstr_001_V1_3_170_TRE[] = {
+ { 0, "Default" },
+ { 1, "Last report for a track" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_3_170_TRE = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_3_170_TRE, NULL };
+static const FieldPart *I001_V1_3_170_PARTS[] = {
+ &I001_V1_3_170_CON,
+ &I001_V1_3_170_RAD,
+ &I001_V1_3_170_MAN,
+ &I001_V1_3_170_DOU,
+ &I001_V1_3_170_RDPC,
+ &IXXX_1bit_spare,
+ &I001_V1_3_170_GHO,
+ &IXXX_FX,
+ &I001_V1_3_170_TRE,
+ &IXXX_6bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I001_V1_3_170 = { FX, 1, 0, 0, &hf_001_V1_3_170, I001_V1_3_170_PARTS, { NULL } };
+static int hf_001_V1_3_200 = -1;
+static int hf_001_V1_3_200_GSP = -1;
+static const FieldPart I001_V1_3_200_GSP = { 16, 0.00006103515625, FIELD_PART_UFLOAT, &hf_001_V1_3_200_GSP, NULL };
+static int hf_001_V1_3_200_HDG = -1;
+static const FieldPart I001_V1_3_200_HDG = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_001_V1_3_200_HDG, NULL };
+static const FieldPart *I001_V1_3_200_PARTS[] = {
+ &I001_V1_3_200_GSP,
+ &I001_V1_3_200_HDG,
+ NULL
+};
+static const AsterixField I001_V1_3_200 = { FIXED, 4, 0, 0, &hf_001_V1_3_200, I001_V1_3_200_PARTS, { NULL } };
+static int hf_001_V1_3_210 = -1;
+static int hf_001_V1_3_210_Subitem = -1;
+static const FieldPart I001_V1_3_210_Subitem = { 7, 1.0, FIELD_PART_HEX, &hf_001_V1_3_210_Subitem, NULL };
+static const FieldPart *I001_V1_3_210_PARTS[] = {
+ &I001_V1_3_210_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I001_V1_3_210 = { FX, 1, 0, 0, &hf_001_V1_3_210, I001_V1_3_210_PARTS, { NULL } };
+static int hf_001_V1_3_SP = -1;
+static const AsterixField I001_V1_3_SP = { EXP, 0, 0, 1, &hf_001_V1_3_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I001_V1_3_plot[] = {
+ &I001_V1_3_010,
+ &I001_V1_3_020,
+ &I001_V1_3_040,
+ &I001_V1_3_070,
+ &I001_V1_3_090,
+ &I001_V1_3_130,
+ &I001_V1_3_141,
+ &I001_V1_3_050,
+ &I001_V1_3_120,
+ &I001_V1_3_131,
+ &I001_V1_3_080,
+ &I001_V1_3_100,
+ &I001_V1_3_060,
+ &I001_V1_3_030,
+ &I001_V1_3_150,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I001_V1_3_SP,
+ NULL
+};
+static const AsterixField *I001_V1_3_track[] = {
+ &I001_V1_3_010,
+ &I001_V1_3_020,
+ &I001_V1_3_161,
+ &I001_V1_3_040,
+ &I001_V1_3_042,
+ &I001_V1_3_200,
+ &I001_V1_3_070,
+ &I001_V1_3_090,
+ &I001_V1_3_141,
+ &I001_V1_3_130,
+ &I001_V1_3_131,
+ &I001_V1_3_120,
+ &I001_V1_3_170,
+ &I001_V1_3_210,
+ &I001_V1_3_050,
+ &I001_V1_3_080,
+ &I001_V1_3_100,
+ &I001_V1_3_060,
+ &I001_V1_3_030,
+ &I001_V1_3_SP,
+ &IX_SPARE,
+ &I001_V1_3_150,
+ NULL
+};
+static const AsterixField **I001_V1_3[] = {
+ I001_V1_3_plot,
+ I001_V1_3_track,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 001, edition 1.4 */
+static int hf_001_V1_4_010 = -1;
+static int hf_001_V1_4_010_SAC = -1;
+static const FieldPart I001_V1_4_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_001_V1_4_010_SAC, NULL };
+static int hf_001_V1_4_010_SIC = -1;
+static const FieldPart I001_V1_4_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_001_V1_4_010_SIC, NULL };
+static const FieldPart *I001_V1_4_010_PARTS[] = {
+ &I001_V1_4_010_SAC,
+ &I001_V1_4_010_SIC,
+ NULL
+};
+static const AsterixField I001_V1_4_010 = { FIXED, 2, 0, 0, &hf_001_V1_4_010, I001_V1_4_010_PARTS, { NULL } };
+static int hf_001_V1_4_020 = -1;
+static int hf_001_V1_4_020_TYP = -1;
+static const value_string valstr_001_V1_4_020_TYP[] = {
+ { 0, "Plot" },
+ { 1, "Track" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_020_TYP = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_020_TYP, NULL };
+static int hf_001_V1_4_020_SIM = -1;
+static const value_string valstr_001_V1_4_020_SIM[] = {
+ { 0, "Actual plot or track" },
+ { 1, "Simulated plot or track" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_020_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_020_SIM, NULL };
+static int hf_001_V1_4_020_SSRPSR = -1;
+static const value_string valstr_001_V1_4_020_SSRPSR[] = {
+ { 0, "No detection" },
+ { 1, "Sole primary detection" },
+ { 2, "Sole secondary detection" },
+ { 3, "Combined primary and secondary detection" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_020_SSRPSR = { 2, 1.0, FIELD_PART_UINT, &hf_001_V1_4_020_SSRPSR, NULL };
+static int hf_001_V1_4_020_ANT = -1;
+static const value_string valstr_001_V1_4_020_ANT[] = {
+ { 0, "Target report from antenna 1" },
+ { 1, "Target report from antenna 2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_020_ANT = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_020_ANT, NULL };
+static int hf_001_V1_4_020_SPI = -1;
+static const value_string valstr_001_V1_4_020_SPI[] = {
+ { 0, "Default" },
+ { 1, "Special Position Identification" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_020_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_020_SPI, NULL };
+static int hf_001_V1_4_020_RAB = -1;
+static const value_string valstr_001_V1_4_020_RAB[] = {
+ { 0, "Default" },
+ { 1, "Plot or track from a fixed transponder" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_020_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_020_RAB, NULL };
+static int hf_001_V1_4_020_TST = -1;
+static const value_string valstr_001_V1_4_020_TST[] = {
+ { 0, "Default" },
+ { 1, "Test target indicator" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_020_TST = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_020_TST, NULL };
+static int hf_001_V1_4_020_DS1DS2 = -1;
+static const value_string valstr_001_V1_4_020_DS1DS2[] = {
+ { 0, "Default" },
+ { 1, "Unlawful interference (code 7500)" },
+ { 2, "Radio-communication failure (code 7600)" },
+ { 3, "Emergency (code 7700)" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_020_DS1DS2 = { 2, 1.0, FIELD_PART_UINT, &hf_001_V1_4_020_DS1DS2, NULL };
+static int hf_001_V1_4_020_ME = -1;
+static const value_string valstr_001_V1_4_020_ME[] = {
+ { 0, "Default" },
+ { 1, "Military emergency" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_020_ME = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_020_ME, NULL };
+static int hf_001_V1_4_020_MI = -1;
+static const value_string valstr_001_V1_4_020_MI[] = {
+ { 0, "Default" },
+ { 1, "Military identification" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_020_MI = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_020_MI, NULL };
+static const FieldPart *I001_V1_4_020_PARTS[] = {
+ &I001_V1_4_020_TYP,
+ &I001_V1_4_020_SIM,
+ &I001_V1_4_020_SSRPSR,
+ &I001_V1_4_020_ANT,
+ &I001_V1_4_020_SPI,
+ &I001_V1_4_020_RAB,
+ &IXXX_FX,
+ &I001_V1_4_020_TST,
+ &I001_V1_4_020_DS1DS2,
+ &I001_V1_4_020_ME,
+ &I001_V1_4_020_MI,
+ &IXXX_2bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I001_V1_4_020 = { FX, 1, 0, 0, &hf_001_V1_4_020, I001_V1_4_020_PARTS, { NULL } };
+static int hf_001_V1_4_030 = -1;
+static int hf_001_V1_4_030_Subitem = -1;
+static const value_string valstr_001_V1_4_030_Subitem[] = {
+ { 0, "No warning nor error condition" },
+ { 1, "Garbled reply" },
+ { 2, "Reflection" },
+ { 3, "Sidelobe reply" },
+ { 4, "Split plot" },
+ { 5, "Second time around reply" },
+ { 6, "Angels" },
+ { 7, "Terrestrial vehicles" },
+ { 64, "Possible wrong code in Mode-3/A" },
+ { 65, "Possible wrong altitude information, transmitted when the Code C credibility check fails together with the Mode-C code in binary notation" },
+ { 66, "Possible phantom MSSR plot" },
+ { 80, "Fixed PSR plot" },
+ { 81, "Slow PSR plot" },
+ { 82, "Low quality PSR plot" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_030_Subitem = { 7, 1.0, FIELD_PART_UINT, &hf_001_V1_4_030_Subitem, NULL };
+static const FieldPart *I001_V1_4_030_PARTS[] = {
+ &I001_V1_4_030_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I001_V1_4_030 = { FX, 1, 0, 0, &hf_001_V1_4_030, I001_V1_4_030_PARTS, { NULL } };
+static int hf_001_V1_4_040 = -1;
+static int hf_001_V1_4_040_RHO = -1;
+static const FieldPart I001_V1_4_040_RHO = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_001_V1_4_040_RHO, NULL };
+static int hf_001_V1_4_040_THETA = -1;
+static const FieldPart I001_V1_4_040_THETA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_001_V1_4_040_THETA, NULL };
+static const FieldPart *I001_V1_4_040_PARTS[] = {
+ &I001_V1_4_040_RHO,
+ &I001_V1_4_040_THETA,
+ NULL
+};
+static const AsterixField I001_V1_4_040 = { FIXED, 4, 0, 0, &hf_001_V1_4_040, I001_V1_4_040_PARTS, { NULL } };
+static int hf_001_V1_4_042 = -1;
+static int hf_001_V1_4_042_X = -1;
+static const FieldPart I001_V1_4_042_X = { 16, 0.015625, FIELD_PART_FLOAT, &hf_001_V1_4_042_X, NULL };
+static int hf_001_V1_4_042_Y = -1;
+static const FieldPart I001_V1_4_042_Y = { 16, 0.015625, FIELD_PART_FLOAT, &hf_001_V1_4_042_Y, NULL };
+static const FieldPart *I001_V1_4_042_PARTS[] = {
+ &I001_V1_4_042_X,
+ &I001_V1_4_042_Y,
+ NULL
+};
+static const AsterixField I001_V1_4_042 = { FIXED, 4, 0, 0, &hf_001_V1_4_042, I001_V1_4_042_PARTS, { NULL } };
+static int hf_001_V1_4_050 = -1;
+static int hf_001_V1_4_050_V = -1;
+static const value_string valstr_001_V1_4_050_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_050_V = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_050_V, NULL };
+static int hf_001_V1_4_050_G = -1;
+static const value_string valstr_001_V1_4_050_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_050_G = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_050_G, NULL };
+static int hf_001_V1_4_050_L = -1;
+static const value_string valstr_001_V1_4_050_L[] = {
+ { 0, "Mode-2 code as derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-2 code as provided by a local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_050_L = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_050_L, NULL };
+static int hf_001_V1_4_050_MODE2 = -1;
+static const FieldPart I001_V1_4_050_MODE2 = { 12, 1.0, FIELD_PART_SQUAWK, &hf_001_V1_4_050_MODE2, NULL };
+static const FieldPart *I001_V1_4_050_PARTS[] = {
+ &I001_V1_4_050_V,
+ &I001_V1_4_050_G,
+ &I001_V1_4_050_L,
+ &IXXX_1bit_spare,
+ &I001_V1_4_050_MODE2,
+ NULL
+};
+static const AsterixField I001_V1_4_050 = { FIXED, 2, 0, 0, &hf_001_V1_4_050, I001_V1_4_050_PARTS, { NULL } };
+static int hf_001_V1_4_060 = -1;
+static int hf_001_V1_4_060_QA4 = -1;
+static const value_string valstr_001_V1_4_060_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_060_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_060_QA4, NULL };
+static int hf_001_V1_4_060_QA2 = -1;
+static const value_string valstr_001_V1_4_060_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_060_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_060_QA2, NULL };
+static int hf_001_V1_4_060_QA1 = -1;
+static const value_string valstr_001_V1_4_060_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_060_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_060_QA1, NULL };
+static int hf_001_V1_4_060_QB4 = -1;
+static const value_string valstr_001_V1_4_060_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_060_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_060_QB4, NULL };
+static int hf_001_V1_4_060_QB2 = -1;
+static const value_string valstr_001_V1_4_060_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_060_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_060_QB2, NULL };
+static int hf_001_V1_4_060_QB1 = -1;
+static const value_string valstr_001_V1_4_060_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_060_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_060_QB1, NULL };
+static int hf_001_V1_4_060_QC4 = -1;
+static const value_string valstr_001_V1_4_060_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_060_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_060_QC4, NULL };
+static int hf_001_V1_4_060_QC2 = -1;
+static const value_string valstr_001_V1_4_060_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_060_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_060_QC2, NULL };
+static int hf_001_V1_4_060_QC1 = -1;
+static const value_string valstr_001_V1_4_060_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_060_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_060_QC1, NULL };
+static int hf_001_V1_4_060_QD4 = -1;
+static const value_string valstr_001_V1_4_060_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_060_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_060_QD4, NULL };
+static int hf_001_V1_4_060_QD2 = -1;
+static const value_string valstr_001_V1_4_060_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_060_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_060_QD2, NULL };
+static int hf_001_V1_4_060_QD1 = -1;
+static const value_string valstr_001_V1_4_060_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_060_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_060_QD1, NULL };
+static const FieldPart *I001_V1_4_060_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I001_V1_4_060_QA4,
+ &I001_V1_4_060_QA2,
+ &I001_V1_4_060_QA1,
+ &I001_V1_4_060_QB4,
+ &I001_V1_4_060_QB2,
+ &I001_V1_4_060_QB1,
+ &I001_V1_4_060_QC4,
+ &I001_V1_4_060_QC2,
+ &I001_V1_4_060_QC1,
+ &I001_V1_4_060_QD4,
+ &I001_V1_4_060_QD2,
+ &I001_V1_4_060_QD1,
+ NULL
+};
+static const AsterixField I001_V1_4_060 = { FIXED, 2, 0, 0, &hf_001_V1_4_060, I001_V1_4_060_PARTS, { NULL } };
+static int hf_001_V1_4_070 = -1;
+static int hf_001_V1_4_070_V = -1;
+static const value_string valstr_001_V1_4_070_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_070_V = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_070_V, NULL };
+static int hf_001_V1_4_070_G = -1;
+static const value_string valstr_001_V1_4_070_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_070_G = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_070_G, NULL };
+static int hf_001_V1_4_070_L = -1;
+static const value_string valstr_001_V1_4_070_L[] = {
+ { 0, "Mode-3/A code derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-3/A code as provided by a local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_070_L = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_070_L, NULL };
+static int hf_001_V1_4_070_MODE3A = -1;
+static const FieldPart I001_V1_4_070_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_001_V1_4_070_MODE3A, NULL };
+static const FieldPart *I001_V1_4_070_PARTS[] = {
+ &I001_V1_4_070_V,
+ &I001_V1_4_070_G,
+ &I001_V1_4_070_L,
+ &IXXX_1bit_spare,
+ &I001_V1_4_070_MODE3A,
+ NULL
+};
+static const AsterixField I001_V1_4_070 = { FIXED, 2, 0, 0, &hf_001_V1_4_070, I001_V1_4_070_PARTS, { NULL } };
+static int hf_001_V1_4_080 = -1;
+static int hf_001_V1_4_080_QA4 = -1;
+static const value_string valstr_001_V1_4_080_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_080_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_080_QA4, NULL };
+static int hf_001_V1_4_080_QA2 = -1;
+static const value_string valstr_001_V1_4_080_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_080_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_080_QA2, NULL };
+static int hf_001_V1_4_080_QA1 = -1;
+static const value_string valstr_001_V1_4_080_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_080_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_080_QA1, NULL };
+static int hf_001_V1_4_080_QB4 = -1;
+static const value_string valstr_001_V1_4_080_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_080_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_080_QB4, NULL };
+static int hf_001_V1_4_080_QB2 = -1;
+static const value_string valstr_001_V1_4_080_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_080_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_080_QB2, NULL };
+static int hf_001_V1_4_080_QB1 = -1;
+static const value_string valstr_001_V1_4_080_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_080_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_080_QB1, NULL };
+static int hf_001_V1_4_080_QC4 = -1;
+static const value_string valstr_001_V1_4_080_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_080_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_080_QC4, NULL };
+static int hf_001_V1_4_080_QC2 = -1;
+static const value_string valstr_001_V1_4_080_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_080_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_080_QC2, NULL };
+static int hf_001_V1_4_080_QC1 = -1;
+static const value_string valstr_001_V1_4_080_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_080_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_080_QC1, NULL };
+static int hf_001_V1_4_080_QD4 = -1;
+static const value_string valstr_001_V1_4_080_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_080_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_080_QD4, NULL };
+static int hf_001_V1_4_080_QD2 = -1;
+static const value_string valstr_001_V1_4_080_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_080_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_080_QD2, NULL };
+static int hf_001_V1_4_080_QD1 = -1;
+static const value_string valstr_001_V1_4_080_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_080_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_080_QD1, NULL };
+static const FieldPart *I001_V1_4_080_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I001_V1_4_080_QA4,
+ &I001_V1_4_080_QA2,
+ &I001_V1_4_080_QA1,
+ &I001_V1_4_080_QB4,
+ &I001_V1_4_080_QB2,
+ &I001_V1_4_080_QB1,
+ &I001_V1_4_080_QC4,
+ &I001_V1_4_080_QC2,
+ &I001_V1_4_080_QC1,
+ &I001_V1_4_080_QD4,
+ &I001_V1_4_080_QD2,
+ &I001_V1_4_080_QD1,
+ NULL
+};
+static const AsterixField I001_V1_4_080 = { FIXED, 2, 0, 0, &hf_001_V1_4_080, I001_V1_4_080_PARTS, { NULL } };
+static int hf_001_V1_4_090 = -1;
+static int hf_001_V1_4_090_V = -1;
+static const value_string valstr_001_V1_4_090_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_090_V = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_090_V, NULL };
+static int hf_001_V1_4_090_G = -1;
+static const value_string valstr_001_V1_4_090_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_090_G = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_090_G, NULL };
+static int hf_001_V1_4_090_HGT = -1;
+static const FieldPart I001_V1_4_090_HGT = { 14, 0.25, FIELD_PART_FLOAT, &hf_001_V1_4_090_HGT, NULL };
+static const FieldPart *I001_V1_4_090_PARTS[] = {
+ &I001_V1_4_090_V,
+ &I001_V1_4_090_G,
+ &I001_V1_4_090_HGT,
+ NULL
+};
+static const AsterixField I001_V1_4_090 = { FIXED, 2, 0, 0, &hf_001_V1_4_090, I001_V1_4_090_PARTS, { NULL } };
+static int hf_001_V1_4_100 = -1;
+static int hf_001_V1_4_100_V = -1;
+static const value_string valstr_001_V1_4_100_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_100_V = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_100_V, NULL };
+static int hf_001_V1_4_100_G = -1;
+static const value_string valstr_001_V1_4_100_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_100_G = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_100_G, NULL };
+static int hf_001_V1_4_100_MODEC = -1;
+static const FieldPart I001_V1_4_100_MODEC = { 12, 1.0, FIELD_PART_HEX, &hf_001_V1_4_100_MODEC, NULL };
+static int hf_001_V1_4_100_QC1 = -1;
+static const value_string valstr_001_V1_4_100_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_100_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_100_QC1, NULL };
+static int hf_001_V1_4_100_QA1 = -1;
+static const value_string valstr_001_V1_4_100_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_100_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_100_QA1, NULL };
+static int hf_001_V1_4_100_QC2 = -1;
+static const value_string valstr_001_V1_4_100_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_100_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_100_QC2, NULL };
+static int hf_001_V1_4_100_QA2 = -1;
+static const value_string valstr_001_V1_4_100_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_100_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_100_QA2, NULL };
+static int hf_001_V1_4_100_QC4 = -1;
+static const value_string valstr_001_V1_4_100_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_100_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_100_QC4, NULL };
+static int hf_001_V1_4_100_QA4 = -1;
+static const value_string valstr_001_V1_4_100_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_100_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_100_QA4, NULL };
+static int hf_001_V1_4_100_QB1 = -1;
+static const value_string valstr_001_V1_4_100_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_100_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_100_QB1, NULL };
+static int hf_001_V1_4_100_QD1 = -1;
+static const value_string valstr_001_V1_4_100_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_100_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_100_QD1, NULL };
+static int hf_001_V1_4_100_QB2 = -1;
+static const value_string valstr_001_V1_4_100_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_100_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_100_QB2, NULL };
+static int hf_001_V1_4_100_QD2 = -1;
+static const value_string valstr_001_V1_4_100_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_100_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_100_QD2, NULL };
+static int hf_001_V1_4_100_QB4 = -1;
+static const value_string valstr_001_V1_4_100_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_100_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_100_QB4, NULL };
+static int hf_001_V1_4_100_QD4 = -1;
+static const value_string valstr_001_V1_4_100_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_100_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_100_QD4, NULL };
+static const FieldPart *I001_V1_4_100_PARTS[] = {
+ &I001_V1_4_100_V,
+ &I001_V1_4_100_G,
+ &IXXX_2bit_spare,
+ &I001_V1_4_100_MODEC,
+ &IXXX_4bit_spare,
+ &I001_V1_4_100_QC1,
+ &I001_V1_4_100_QA1,
+ &I001_V1_4_100_QC2,
+ &I001_V1_4_100_QA2,
+ &I001_V1_4_100_QC4,
+ &I001_V1_4_100_QA4,
+ &I001_V1_4_100_QB1,
+ &I001_V1_4_100_QD1,
+ &I001_V1_4_100_QB2,
+ &I001_V1_4_100_QD2,
+ &I001_V1_4_100_QB4,
+ &I001_V1_4_100_QD4,
+ NULL
+};
+static const AsterixField I001_V1_4_100 = { FIXED, 4, 0, 0, &hf_001_V1_4_100, I001_V1_4_100_PARTS, { NULL } };
+static int hf_001_V1_4_120 = -1;
+static int hf_001_V1_4_120_VALUE = -1;
+static const FieldPart I001_V1_4_120_VALUE = { 8, 0.00390625, FIELD_PART_FLOAT, &hf_001_V1_4_120_VALUE, NULL };
+static const FieldPart *I001_V1_4_120_PARTS[] = {
+ &I001_V1_4_120_VALUE,
+ NULL
+};
+static const AsterixField I001_V1_4_120 = { FIXED, 1, 0, 0, &hf_001_V1_4_120, I001_V1_4_120_PARTS, { NULL } };
+static int hf_001_V1_4_130 = -1;
+static int hf_001_V1_4_130_Subitem = -1;
+static const FieldPart I001_V1_4_130_Subitem = { 7, 1.0, FIELD_PART_HEX, &hf_001_V1_4_130_Subitem, NULL };
+static const FieldPart *I001_V1_4_130_PARTS[] = {
+ &I001_V1_4_130_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I001_V1_4_130 = { FX, 1, 0, 0, &hf_001_V1_4_130, I001_V1_4_130_PARTS, { NULL } };
+static int hf_001_V1_4_131 = -1;
+static int hf_001_V1_4_131_VALUE = -1;
+static const FieldPart I001_V1_4_131_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_001_V1_4_131_VALUE, NULL };
+static const FieldPart *I001_V1_4_131_PARTS[] = {
+ &I001_V1_4_131_VALUE,
+ NULL
+};
+static const AsterixField I001_V1_4_131 = { FIXED, 1, 0, 0, &hf_001_V1_4_131, I001_V1_4_131_PARTS, { NULL } };
+static int hf_001_V1_4_141 = -1;
+static int hf_001_V1_4_141_VALUE = -1;
+static const FieldPart I001_V1_4_141_VALUE = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_001_V1_4_141_VALUE, NULL };
+static const FieldPart *I001_V1_4_141_PARTS[] = {
+ &I001_V1_4_141_VALUE,
+ NULL
+};
+static const AsterixField I001_V1_4_141 = { FIXED, 2, 0, 0, &hf_001_V1_4_141, I001_V1_4_141_PARTS, { NULL } };
+static int hf_001_V1_4_150 = -1;
+static int hf_001_V1_4_150_XA = -1;
+static const value_string valstr_001_V1_4_150_XA[] = {
+ { 0, "Default" },
+ { 1, "X-pulse received in Mode-3/A reply" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_150_XA = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_150_XA, NULL };
+static int hf_001_V1_4_150_XC = -1;
+static const value_string valstr_001_V1_4_150_XC[] = {
+ { 0, "Default" },
+ { 1, "X-pulse received in Mode-C reply" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_150_XC = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_150_XC, NULL };
+static int hf_001_V1_4_150_X2 = -1;
+static const value_string valstr_001_V1_4_150_X2[] = {
+ { 0, "Default" },
+ { 1, "X-pulse received in Mode-2 reply" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_150_X2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_150_X2, NULL };
+static const FieldPart *I001_V1_4_150_PARTS[] = {
+ &I001_V1_4_150_XA,
+ &IXXX_1bit_spare,
+ &I001_V1_4_150_XC,
+ &IXXX_2bit_spare,
+ &I001_V1_4_150_X2,
+ &IXXX_2bit_spare,
+ NULL
+};
+static const AsterixField I001_V1_4_150 = { FIXED, 1, 0, 0, &hf_001_V1_4_150, I001_V1_4_150_PARTS, { NULL } };
+static int hf_001_V1_4_161 = -1;
+static int hf_001_V1_4_161_VALUE = -1;
+static const FieldPart I001_V1_4_161_VALUE = { 16, 1.0, FIELD_PART_HEX, &hf_001_V1_4_161_VALUE, NULL };
+static const FieldPart *I001_V1_4_161_PARTS[] = {
+ &I001_V1_4_161_VALUE,
+ NULL
+};
+static const AsterixField I001_V1_4_161 = { FIXED, 2, 0, 0, &hf_001_V1_4_161, I001_V1_4_161_PARTS, { NULL } };
+static int hf_001_V1_4_170 = -1;
+static int hf_001_V1_4_170_CON = -1;
+static const value_string valstr_001_V1_4_170_CON[] = {
+ { 0, "Confirmed Track" },
+ { 1, "Track in initialisation phase" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_170_CON = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_170_CON, NULL };
+static int hf_001_V1_4_170_RAD = -1;
+static const value_string valstr_001_V1_4_170_RAD[] = {
+ { 0, "Primary track" },
+ { 1, "SSR/Combined track" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_170_RAD = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_170_RAD, NULL };
+static int hf_001_V1_4_170_MAN = -1;
+static const value_string valstr_001_V1_4_170_MAN[] = {
+ { 0, "Default" },
+ { 1, "Aircraft manoeuvring" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_170_MAN = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_170_MAN, NULL };
+static int hf_001_V1_4_170_DOU = -1;
+static const value_string valstr_001_V1_4_170_DOU[] = {
+ { 0, "Default" },
+ { 1, "Doubtful plot to track association" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_170_DOU = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_170_DOU, NULL };
+static int hf_001_V1_4_170_RDPC = -1;
+static const value_string valstr_001_V1_4_170_RDPC[] = {
+ { 0, "RDP Chain 1" },
+ { 1, "RDP Chain 2" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_170_RDPC = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_170_RDPC, NULL };
+static int hf_001_V1_4_170_GHO = -1;
+static const value_string valstr_001_V1_4_170_GHO[] = {
+ { 0, "Default" },
+ { 1, "Ghost track" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_170_GHO = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_170_GHO, NULL };
+static int hf_001_V1_4_170_TRE = -1;
+static const value_string valstr_001_V1_4_170_TRE[] = {
+ { 0, "Default" },
+ { 1, "Last report for a track" },
+ { 0, NULL }
+};
+static const FieldPart I001_V1_4_170_TRE = { 1, 1.0, FIELD_PART_UINT, &hf_001_V1_4_170_TRE, NULL };
+static const FieldPart *I001_V1_4_170_PARTS[] = {
+ &I001_V1_4_170_CON,
+ &I001_V1_4_170_RAD,
+ &I001_V1_4_170_MAN,
+ &I001_V1_4_170_DOU,
+ &I001_V1_4_170_RDPC,
+ &IXXX_1bit_spare,
+ &I001_V1_4_170_GHO,
+ &IXXX_FX,
+ &I001_V1_4_170_TRE,
+ &IXXX_6bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I001_V1_4_170 = { FX, 1, 0, 0, &hf_001_V1_4_170, I001_V1_4_170_PARTS, { NULL } };
+static int hf_001_V1_4_200 = -1;
+static int hf_001_V1_4_200_GSP = -1;
+static const FieldPart I001_V1_4_200_GSP = { 16, 0.00006103515625, FIELD_PART_UFLOAT, &hf_001_V1_4_200_GSP, NULL };
+static int hf_001_V1_4_200_HDG = -1;
+static const FieldPart I001_V1_4_200_HDG = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_001_V1_4_200_HDG, NULL };
+static const FieldPart *I001_V1_4_200_PARTS[] = {
+ &I001_V1_4_200_GSP,
+ &I001_V1_4_200_HDG,
+ NULL
+};
+static const AsterixField I001_V1_4_200 = { FIXED, 4, 0, 0, &hf_001_V1_4_200, I001_V1_4_200_PARTS, { NULL } };
+static int hf_001_V1_4_210 = -1;
+static int hf_001_V1_4_210_Subitem = -1;
+static const FieldPart I001_V1_4_210_Subitem = { 7, 1.0, FIELD_PART_HEX, &hf_001_V1_4_210_Subitem, NULL };
+static const FieldPart *I001_V1_4_210_PARTS[] = {
+ &I001_V1_4_210_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I001_V1_4_210 = { FX, 1, 0, 0, &hf_001_V1_4_210, I001_V1_4_210_PARTS, { NULL } };
+static int hf_001_V1_4_SP = -1;
+static const AsterixField I001_V1_4_SP = { EXP, 0, 0, 1, &hf_001_V1_4_SP, NULL, { NULL } };
+
+/* Category 001, edition 1.4 (latest) */
+static int hf_001_010 = -1;
+static int hf_001_010_SAC = -1;
+static const FieldPart I001_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_001_010_SAC, NULL };
+static int hf_001_010_SIC = -1;
+static const FieldPart I001_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_001_010_SIC, NULL };
+static const FieldPart *I001_010_PARTS[] = {
+ &I001_010_SAC,
+ &I001_010_SIC,
+ NULL
+};
+static const AsterixField I001_010 = { FIXED, 2, 0, 0, &hf_001_010, I001_010_PARTS, { NULL } };
+static int hf_001_020 = -1;
+static int hf_001_020_TYP = -1;
+static const value_string valstr_001_020_TYP[] = {
+ { 0, "Plot" },
+ { 1, "Track" },
+ { 0, NULL }
+};
+static const FieldPart I001_020_TYP = { 1, 1.0, FIELD_PART_UINT, &hf_001_020_TYP, NULL };
+static int hf_001_020_SIM = -1;
+static const value_string valstr_001_020_SIM[] = {
+ { 0, "Actual plot or track" },
+ { 1, "Simulated plot or track" },
+ { 0, NULL }
+};
+static const FieldPart I001_020_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_001_020_SIM, NULL };
+static int hf_001_020_SSRPSR = -1;
+static const value_string valstr_001_020_SSRPSR[] = {
+ { 0, "No detection" },
+ { 1, "Sole primary detection" },
+ { 2, "Sole secondary detection" },
+ { 3, "Combined primary and secondary detection" },
+ { 0, NULL }
+};
+static const FieldPart I001_020_SSRPSR = { 2, 1.0, FIELD_PART_UINT, &hf_001_020_SSRPSR, NULL };
+static int hf_001_020_ANT = -1;
+static const value_string valstr_001_020_ANT[] = {
+ { 0, "Target report from antenna 1" },
+ { 1, "Target report from antenna 2" },
+ { 0, NULL }
+};
+static const FieldPart I001_020_ANT = { 1, 1.0, FIELD_PART_UINT, &hf_001_020_ANT, NULL };
+static int hf_001_020_SPI = -1;
+static const value_string valstr_001_020_SPI[] = {
+ { 0, "Default" },
+ { 1, "Special Position Identification" },
+ { 0, NULL }
+};
+static const FieldPart I001_020_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_001_020_SPI, NULL };
+static int hf_001_020_RAB = -1;
+static const value_string valstr_001_020_RAB[] = {
+ { 0, "Default" },
+ { 1, "Plot or track from a fixed transponder" },
+ { 0, NULL }
+};
+static const FieldPart I001_020_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_001_020_RAB, NULL };
+static int hf_001_020_TST = -1;
+static const value_string valstr_001_020_TST[] = {
+ { 0, "Default" },
+ { 1, "Test target indicator" },
+ { 0, NULL }
+};
+static const FieldPart I001_020_TST = { 1, 1.0, FIELD_PART_UINT, &hf_001_020_TST, NULL };
+static int hf_001_020_DS1DS2 = -1;
+static const value_string valstr_001_020_DS1DS2[] = {
+ { 0, "Default" },
+ { 1, "Unlawful interference (code 7500)" },
+ { 2, "Radio-communication failure (code 7600)" },
+ { 3, "Emergency (code 7700)" },
+ { 0, NULL }
+};
+static const FieldPart I001_020_DS1DS2 = { 2, 1.0, FIELD_PART_UINT, &hf_001_020_DS1DS2, NULL };
+static int hf_001_020_ME = -1;
+static const value_string valstr_001_020_ME[] = {
+ { 0, "Default" },
+ { 1, "Military emergency" },
+ { 0, NULL }
+};
+static const FieldPart I001_020_ME = { 1, 1.0, FIELD_PART_UINT, &hf_001_020_ME, NULL };
+static int hf_001_020_MI = -1;
+static const value_string valstr_001_020_MI[] = {
+ { 0, "Default" },
+ { 1, "Military identification" },
+ { 0, NULL }
+};
+static const FieldPart I001_020_MI = { 1, 1.0, FIELD_PART_UINT, &hf_001_020_MI, NULL };
+static const FieldPart *I001_020_PARTS[] = {
+ &I001_020_TYP,
+ &I001_020_SIM,
+ &I001_020_SSRPSR,
+ &I001_020_ANT,
+ &I001_020_SPI,
+ &I001_020_RAB,
+ &IXXX_FX,
+ &I001_020_TST,
+ &I001_020_DS1DS2,
+ &I001_020_ME,
+ &I001_020_MI,
+ &IXXX_2bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I001_020 = { FX, 1, 0, 0, &hf_001_020, I001_020_PARTS, { NULL } };
+static int hf_001_030 = -1;
+static int hf_001_030_Subitem = -1;
+static const value_string valstr_001_030_Subitem[] = {
+ { 0, "No warning nor error condition" },
+ { 1, "Garbled reply" },
+ { 2, "Reflection" },
+ { 3, "Sidelobe reply" },
+ { 4, "Split plot" },
+ { 5, "Second time around reply" },
+ { 6, "Angels" },
+ { 7, "Terrestrial vehicles" },
+ { 64, "Possible wrong code in Mode-3/A" },
+ { 65, "Possible wrong altitude information, transmitted when the Code C credibility check fails together with the Mode-C code in binary notation" },
+ { 66, "Possible phantom MSSR plot" },
+ { 80, "Fixed PSR plot" },
+ { 81, "Slow PSR plot" },
+ { 82, "Low quality PSR plot" },
+ { 0, NULL }
+};
+static const FieldPart I001_030_Subitem = { 7, 1.0, FIELD_PART_UINT, &hf_001_030_Subitem, NULL };
+static const FieldPart *I001_030_PARTS[] = {
+ &I001_030_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I001_030 = { FX, 1, 0, 0, &hf_001_030, I001_030_PARTS, { NULL } };
+static int hf_001_040 = -1;
+static int hf_001_040_RHO = -1;
+static const FieldPart I001_040_RHO = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_001_040_RHO, NULL };
+static int hf_001_040_THETA = -1;
+static const FieldPart I001_040_THETA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_001_040_THETA, NULL };
+static const FieldPart *I001_040_PARTS[] = {
+ &I001_040_RHO,
+ &I001_040_THETA,
+ NULL
+};
+static const AsterixField I001_040 = { FIXED, 4, 0, 0, &hf_001_040, I001_040_PARTS, { NULL } };
+static int hf_001_042 = -1;
+static int hf_001_042_X = -1;
+static const FieldPart I001_042_X = { 16, 0.015625, FIELD_PART_FLOAT, &hf_001_042_X, NULL };
+static int hf_001_042_Y = -1;
+static const FieldPart I001_042_Y = { 16, 0.015625, FIELD_PART_FLOAT, &hf_001_042_Y, NULL };
+static const FieldPart *I001_042_PARTS[] = {
+ &I001_042_X,
+ &I001_042_Y,
+ NULL
+};
+static const AsterixField I001_042 = { FIXED, 4, 0, 0, &hf_001_042, I001_042_PARTS, { NULL } };
+static int hf_001_050 = -1;
+static int hf_001_050_V = -1;
+static const value_string valstr_001_050_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I001_050_V = { 1, 1.0, FIELD_PART_UINT, &hf_001_050_V, NULL };
+static int hf_001_050_G = -1;
+static const value_string valstr_001_050_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I001_050_G = { 1, 1.0, FIELD_PART_UINT, &hf_001_050_G, NULL };
+static int hf_001_050_L = -1;
+static const value_string valstr_001_050_L[] = {
+ { 0, "Mode-2 code as derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-2 code as provided by a local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I001_050_L = { 1, 1.0, FIELD_PART_UINT, &hf_001_050_L, NULL };
+static int hf_001_050_MODE2 = -1;
+static const FieldPart I001_050_MODE2 = { 12, 1.0, FIELD_PART_SQUAWK, &hf_001_050_MODE2, NULL };
+static const FieldPart *I001_050_PARTS[] = {
+ &I001_050_V,
+ &I001_050_G,
+ &I001_050_L,
+ &IXXX_1bit_spare,
+ &I001_050_MODE2,
+ NULL
+};
+static const AsterixField I001_050 = { FIXED, 2, 0, 0, &hf_001_050, I001_050_PARTS, { NULL } };
+static int hf_001_060 = -1;
+static int hf_001_060_QA4 = -1;
+static const value_string valstr_001_060_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I001_060_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_060_QA4, NULL };
+static int hf_001_060_QA2 = -1;
+static const value_string valstr_001_060_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I001_060_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_060_QA2, NULL };
+static int hf_001_060_QA1 = -1;
+static const value_string valstr_001_060_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I001_060_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_060_QA1, NULL };
+static int hf_001_060_QB4 = -1;
+static const value_string valstr_001_060_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I001_060_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_060_QB4, NULL };
+static int hf_001_060_QB2 = -1;
+static const value_string valstr_001_060_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I001_060_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_060_QB2, NULL };
+static int hf_001_060_QB1 = -1;
+static const value_string valstr_001_060_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I001_060_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_060_QB1, NULL };
+static int hf_001_060_QC4 = -1;
+static const value_string valstr_001_060_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I001_060_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_060_QC4, NULL };
+static int hf_001_060_QC2 = -1;
+static const value_string valstr_001_060_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I001_060_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_060_QC2, NULL };
+static int hf_001_060_QC1 = -1;
+static const value_string valstr_001_060_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I001_060_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_060_QC1, NULL };
+static int hf_001_060_QD4 = -1;
+static const value_string valstr_001_060_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I001_060_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_060_QD4, NULL };
+static int hf_001_060_QD2 = -1;
+static const value_string valstr_001_060_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I001_060_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_060_QD2, NULL };
+static int hf_001_060_QD1 = -1;
+static const value_string valstr_001_060_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I001_060_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_060_QD1, NULL };
+static const FieldPart *I001_060_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I001_060_QA4,
+ &I001_060_QA2,
+ &I001_060_QA1,
+ &I001_060_QB4,
+ &I001_060_QB2,
+ &I001_060_QB1,
+ &I001_060_QC4,
+ &I001_060_QC2,
+ &I001_060_QC1,
+ &I001_060_QD4,
+ &I001_060_QD2,
+ &I001_060_QD1,
+ NULL
+};
+static const AsterixField I001_060 = { FIXED, 2, 0, 0, &hf_001_060, I001_060_PARTS, { NULL } };
+static int hf_001_070 = -1;
+static int hf_001_070_V = -1;
+static const value_string valstr_001_070_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I001_070_V = { 1, 1.0, FIELD_PART_UINT, &hf_001_070_V, NULL };
+static int hf_001_070_G = -1;
+static const value_string valstr_001_070_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I001_070_G = { 1, 1.0, FIELD_PART_UINT, &hf_001_070_G, NULL };
+static int hf_001_070_L = -1;
+static const value_string valstr_001_070_L[] = {
+ { 0, "Mode-3/A code derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-3/A code as provided by a local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I001_070_L = { 1, 1.0, FIELD_PART_UINT, &hf_001_070_L, NULL };
+static int hf_001_070_MODE3A = -1;
+static const FieldPart I001_070_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_001_070_MODE3A, NULL };
+static const FieldPart *I001_070_PARTS[] = {
+ &I001_070_V,
+ &I001_070_G,
+ &I001_070_L,
+ &IXXX_1bit_spare,
+ &I001_070_MODE3A,
+ NULL
+};
+static const AsterixField I001_070 = { FIXED, 2, 0, 0, &hf_001_070, I001_070_PARTS, { NULL } };
+static int hf_001_080 = -1;
+static int hf_001_080_QA4 = -1;
+static const value_string valstr_001_080_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I001_080_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_080_QA4, NULL };
+static int hf_001_080_QA2 = -1;
+static const value_string valstr_001_080_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I001_080_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_080_QA2, NULL };
+static int hf_001_080_QA1 = -1;
+static const value_string valstr_001_080_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I001_080_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_080_QA1, NULL };
+static int hf_001_080_QB4 = -1;
+static const value_string valstr_001_080_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I001_080_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_080_QB4, NULL };
+static int hf_001_080_QB2 = -1;
+static const value_string valstr_001_080_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I001_080_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_080_QB2, NULL };
+static int hf_001_080_QB1 = -1;
+static const value_string valstr_001_080_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I001_080_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_080_QB1, NULL };
+static int hf_001_080_QC4 = -1;
+static const value_string valstr_001_080_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I001_080_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_080_QC4, NULL };
+static int hf_001_080_QC2 = -1;
+static const value_string valstr_001_080_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I001_080_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_080_QC2, NULL };
+static int hf_001_080_QC1 = -1;
+static const value_string valstr_001_080_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I001_080_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_080_QC1, NULL };
+static int hf_001_080_QD4 = -1;
+static const value_string valstr_001_080_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I001_080_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_080_QD4, NULL };
+static int hf_001_080_QD2 = -1;
+static const value_string valstr_001_080_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I001_080_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_080_QD2, NULL };
+static int hf_001_080_QD1 = -1;
+static const value_string valstr_001_080_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I001_080_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_080_QD1, NULL };
+static const FieldPart *I001_080_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I001_080_QA4,
+ &I001_080_QA2,
+ &I001_080_QA1,
+ &I001_080_QB4,
+ &I001_080_QB2,
+ &I001_080_QB1,
+ &I001_080_QC4,
+ &I001_080_QC2,
+ &I001_080_QC1,
+ &I001_080_QD4,
+ &I001_080_QD2,
+ &I001_080_QD1,
+ NULL
+};
+static const AsterixField I001_080 = { FIXED, 2, 0, 0, &hf_001_080, I001_080_PARTS, { NULL } };
+static int hf_001_090 = -1;
+static int hf_001_090_V = -1;
+static const value_string valstr_001_090_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I001_090_V = { 1, 1.0, FIELD_PART_UINT, &hf_001_090_V, NULL };
+static int hf_001_090_G = -1;
+static const value_string valstr_001_090_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I001_090_G = { 1, 1.0, FIELD_PART_UINT, &hf_001_090_G, NULL };
+static int hf_001_090_HGT = -1;
+static const FieldPart I001_090_HGT = { 14, 0.25, FIELD_PART_FLOAT, &hf_001_090_HGT, NULL };
+static const FieldPart *I001_090_PARTS[] = {
+ &I001_090_V,
+ &I001_090_G,
+ &I001_090_HGT,
+ NULL
+};
+static const AsterixField I001_090 = { FIXED, 2, 0, 0, &hf_001_090, I001_090_PARTS, { NULL } };
+static int hf_001_100 = -1;
+static int hf_001_100_V = -1;
+static const value_string valstr_001_100_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I001_100_V = { 1, 1.0, FIELD_PART_UINT, &hf_001_100_V, NULL };
+static int hf_001_100_G = -1;
+static const value_string valstr_001_100_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I001_100_G = { 1, 1.0, FIELD_PART_UINT, &hf_001_100_G, NULL };
+static int hf_001_100_MODEC = -1;
+static const FieldPart I001_100_MODEC = { 12, 1.0, FIELD_PART_HEX, &hf_001_100_MODEC, NULL };
+static int hf_001_100_QC1 = -1;
+static const value_string valstr_001_100_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I001_100_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_100_QC1, NULL };
+static int hf_001_100_QA1 = -1;
+static const value_string valstr_001_100_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I001_100_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_100_QA1, NULL };
+static int hf_001_100_QC2 = -1;
+static const value_string valstr_001_100_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I001_100_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_100_QC2, NULL };
+static int hf_001_100_QA2 = -1;
+static const value_string valstr_001_100_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I001_100_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_100_QA2, NULL };
+static int hf_001_100_QC4 = -1;
+static const value_string valstr_001_100_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I001_100_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_100_QC4, NULL };
+static int hf_001_100_QA4 = -1;
+static const value_string valstr_001_100_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I001_100_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_100_QA4, NULL };
+static int hf_001_100_QB1 = -1;
+static const value_string valstr_001_100_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I001_100_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_100_QB1, NULL };
+static int hf_001_100_QD1 = -1;
+static const value_string valstr_001_100_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I001_100_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_001_100_QD1, NULL };
+static int hf_001_100_QB2 = -1;
+static const value_string valstr_001_100_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I001_100_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_100_QB2, NULL };
+static int hf_001_100_QD2 = -1;
+static const value_string valstr_001_100_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I001_100_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_100_QD2, NULL };
+static int hf_001_100_QB4 = -1;
+static const value_string valstr_001_100_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I001_100_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_100_QB4, NULL };
+static int hf_001_100_QD4 = -1;
+static const value_string valstr_001_100_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I001_100_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_001_100_QD4, NULL };
+static const FieldPart *I001_100_PARTS[] = {
+ &I001_100_V,
+ &I001_100_G,
+ &IXXX_2bit_spare,
+ &I001_100_MODEC,
+ &IXXX_4bit_spare,
+ &I001_100_QC1,
+ &I001_100_QA1,
+ &I001_100_QC2,
+ &I001_100_QA2,
+ &I001_100_QC4,
+ &I001_100_QA4,
+ &I001_100_QB1,
+ &I001_100_QD1,
+ &I001_100_QB2,
+ &I001_100_QD2,
+ &I001_100_QB4,
+ &I001_100_QD4,
+ NULL
+};
+static const AsterixField I001_100 = { FIXED, 4, 0, 0, &hf_001_100, I001_100_PARTS, { NULL } };
+static int hf_001_120 = -1;
+static int hf_001_120_VALUE = -1;
+static const FieldPart I001_120_VALUE = { 8, 0.00390625, FIELD_PART_FLOAT, &hf_001_120_VALUE, NULL };
+static const FieldPart *I001_120_PARTS[] = {
+ &I001_120_VALUE,
+ NULL
+};
+static const AsterixField I001_120 = { FIXED, 1, 0, 0, &hf_001_120, I001_120_PARTS, { NULL } };
+static int hf_001_130 = -1;
+static int hf_001_130_Subitem = -1;
+static const FieldPart I001_130_Subitem = { 7, 1.0, FIELD_PART_HEX, &hf_001_130_Subitem, NULL };
+static const FieldPart *I001_130_PARTS[] = {
+ &I001_130_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I001_130 = { FX, 1, 0, 0, &hf_001_130, I001_130_PARTS, { NULL } };
+static int hf_001_131 = -1;
+static int hf_001_131_VALUE = -1;
+static const FieldPart I001_131_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_001_131_VALUE, NULL };
+static const FieldPart *I001_131_PARTS[] = {
+ &I001_131_VALUE,
+ NULL
+};
+static const AsterixField I001_131 = { FIXED, 1, 0, 0, &hf_001_131, I001_131_PARTS, { NULL } };
+static int hf_001_141 = -1;
+static int hf_001_141_VALUE = -1;
+static const FieldPart I001_141_VALUE = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_001_141_VALUE, NULL };
+static const FieldPart *I001_141_PARTS[] = {
+ &I001_141_VALUE,
+ NULL
+};
+static const AsterixField I001_141 = { FIXED, 2, 0, 0, &hf_001_141, I001_141_PARTS, { NULL } };
+static int hf_001_150 = -1;
+static int hf_001_150_XA = -1;
+static const value_string valstr_001_150_XA[] = {
+ { 0, "Default" },
+ { 1, "X-pulse received in Mode-3/A reply" },
+ { 0, NULL }
+};
+static const FieldPart I001_150_XA = { 1, 1.0, FIELD_PART_UINT, &hf_001_150_XA, NULL };
+static int hf_001_150_XC = -1;
+static const value_string valstr_001_150_XC[] = {
+ { 0, "Default" },
+ { 1, "X-pulse received in Mode-C reply" },
+ { 0, NULL }
+};
+static const FieldPart I001_150_XC = { 1, 1.0, FIELD_PART_UINT, &hf_001_150_XC, NULL };
+static int hf_001_150_X2 = -1;
+static const value_string valstr_001_150_X2[] = {
+ { 0, "Default" },
+ { 1, "X-pulse received in Mode-2 reply" },
+ { 0, NULL }
+};
+static const FieldPart I001_150_X2 = { 1, 1.0, FIELD_PART_UINT, &hf_001_150_X2, NULL };
+static const FieldPart *I001_150_PARTS[] = {
+ &I001_150_XA,
+ &IXXX_1bit_spare,
+ &I001_150_XC,
+ &IXXX_2bit_spare,
+ &I001_150_X2,
+ &IXXX_2bit_spare,
+ NULL
+};
+static const AsterixField I001_150 = { FIXED, 1, 0, 0, &hf_001_150, I001_150_PARTS, { NULL } };
+static int hf_001_161 = -1;
+static int hf_001_161_VALUE = -1;
+static const FieldPart I001_161_VALUE = { 16, 1.0, FIELD_PART_HEX, &hf_001_161_VALUE, NULL };
+static const FieldPart *I001_161_PARTS[] = {
+ &I001_161_VALUE,
+ NULL
+};
+static const AsterixField I001_161 = { FIXED, 2, 0, 0, &hf_001_161, I001_161_PARTS, { NULL } };
+static int hf_001_170 = -1;
+static int hf_001_170_CON = -1;
+static const value_string valstr_001_170_CON[] = {
+ { 0, "Confirmed Track" },
+ { 1, "Track in initialisation phase" },
+ { 0, NULL }
+};
+static const FieldPart I001_170_CON = { 1, 1.0, FIELD_PART_UINT, &hf_001_170_CON, NULL };
+static int hf_001_170_RAD = -1;
+static const value_string valstr_001_170_RAD[] = {
+ { 0, "Primary track" },
+ { 1, "SSR/Combined track" },
+ { 0, NULL }
+};
+static const FieldPart I001_170_RAD = { 1, 1.0, FIELD_PART_UINT, &hf_001_170_RAD, NULL };
+static int hf_001_170_MAN = -1;
+static const value_string valstr_001_170_MAN[] = {
+ { 0, "Default" },
+ { 1, "Aircraft manoeuvring" },
+ { 0, NULL }
+};
+static const FieldPart I001_170_MAN = { 1, 1.0, FIELD_PART_UINT, &hf_001_170_MAN, NULL };
+static int hf_001_170_DOU = -1;
+static const value_string valstr_001_170_DOU[] = {
+ { 0, "Default" },
+ { 1, "Doubtful plot to track association" },
+ { 0, NULL }
+};
+static const FieldPart I001_170_DOU = { 1, 1.0, FIELD_PART_UINT, &hf_001_170_DOU, NULL };
+static int hf_001_170_RDPC = -1;
+static const value_string valstr_001_170_RDPC[] = {
+ { 0, "RDP Chain 1" },
+ { 1, "RDP Chain 2" },
+ { 0, NULL }
+};
+static const FieldPart I001_170_RDPC = { 1, 1.0, FIELD_PART_UINT, &hf_001_170_RDPC, NULL };
+static int hf_001_170_GHO = -1;
+static const value_string valstr_001_170_GHO[] = {
+ { 0, "Default" },
+ { 1, "Ghost track" },
+ { 0, NULL }
+};
+static const FieldPart I001_170_GHO = { 1, 1.0, FIELD_PART_UINT, &hf_001_170_GHO, NULL };
+static int hf_001_170_TRE = -1;
+static const value_string valstr_001_170_TRE[] = {
+ { 0, "Default" },
+ { 1, "Last report for a track" },
+ { 0, NULL }
+};
+static const FieldPart I001_170_TRE = { 1, 1.0, FIELD_PART_UINT, &hf_001_170_TRE, NULL };
+static const FieldPart *I001_170_PARTS[] = {
+ &I001_170_CON,
+ &I001_170_RAD,
+ &I001_170_MAN,
+ &I001_170_DOU,
+ &I001_170_RDPC,
+ &IXXX_1bit_spare,
+ &I001_170_GHO,
+ &IXXX_FX,
+ &I001_170_TRE,
+ &IXXX_6bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I001_170 = { FX, 1, 0, 0, &hf_001_170, I001_170_PARTS, { NULL } };
+static int hf_001_200 = -1;
+static int hf_001_200_GSP = -1;
+static const FieldPart I001_200_GSP = { 16, 0.00006103515625, FIELD_PART_UFLOAT, &hf_001_200_GSP, NULL };
+static int hf_001_200_HDG = -1;
+static const FieldPart I001_200_HDG = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_001_200_HDG, NULL };
+static const FieldPart *I001_200_PARTS[] = {
+ &I001_200_GSP,
+ &I001_200_HDG,
+ NULL
+};
+static const AsterixField I001_200 = { FIXED, 4, 0, 0, &hf_001_200, I001_200_PARTS, { NULL } };
+static int hf_001_210 = -1;
+static int hf_001_210_Subitem = -1;
+static const FieldPart I001_210_Subitem = { 7, 1.0, FIELD_PART_HEX, &hf_001_210_Subitem, NULL };
+static const FieldPart *I001_210_PARTS[] = {
+ &I001_210_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I001_210 = { FX, 1, 0, 0, &hf_001_210, I001_210_PARTS, { NULL } };
+static int hf_001_SP = -1;
+static const AsterixField I001_SP = { EXP, 0, 0, 1, &hf_001_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I001_V1_4_plot[] = {
+ &I001_V1_4_010,
+ &I001_V1_4_020,
+ &I001_V1_4_040,
+ &I001_V1_4_070,
+ &I001_V1_4_090,
+ &I001_V1_4_130,
+ &I001_V1_4_141,
+ &I001_V1_4_050,
+ &I001_V1_4_120,
+ &I001_V1_4_131,
+ &I001_V1_4_080,
+ &I001_V1_4_100,
+ &I001_V1_4_060,
+ &I001_V1_4_030,
+ &I001_V1_4_150,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I001_V1_4_SP,
+ NULL
+};
+static const AsterixField *I001_V1_4_track[] = {
+ &I001_V1_4_010,
+ &I001_V1_4_020,
+ &I001_V1_4_161,
+ &I001_V1_4_040,
+ &I001_V1_4_042,
+ &I001_V1_4_200,
+ &I001_V1_4_070,
+ &I001_V1_4_090,
+ &I001_V1_4_141,
+ &I001_V1_4_130,
+ &I001_V1_4_131,
+ &I001_V1_4_120,
+ &I001_V1_4_170,
+ &I001_V1_4_210,
+ &I001_V1_4_050,
+ &I001_V1_4_080,
+ &I001_V1_4_100,
+ &I001_V1_4_060,
+ &I001_V1_4_030,
+ &I001_V1_4_SP,
+ &IX_SPARE,
+ &I001_V1_4_150,
+ NULL
+};
+static const AsterixField **I001_V1_4[] = {
+ I001_V1_4_plot,
+ I001_V1_4_track,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I001_plot[] = {
+ &I001_010,
+ &I001_020,
+ &I001_040,
+ &I001_070,
+ &I001_090,
+ &I001_130,
+ &I001_141,
+ &I001_050,
+ &I001_120,
+ &I001_131,
+ &I001_080,
+ &I001_100,
+ &I001_060,
+ &I001_030,
+ &I001_150,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I001_SP,
+ NULL
+};
+static const AsterixField *I001_track[] = {
+ &I001_010,
+ &I001_020,
+ &I001_161,
+ &I001_040,
+ &I001_042,
+ &I001_200,
+ &I001_070,
+ &I001_090,
+ &I001_141,
+ &I001_130,
+ &I001_131,
+ &I001_120,
+ &I001_170,
+ &I001_210,
+ &I001_050,
+ &I001_080,
+ &I001_100,
+ &I001_060,
+ &I001_030,
+ &I001_SP,
+ &IX_SPARE,
+ &I001_150,
+ NULL
+};
+static const AsterixField **I001[] = {
+ I001_plot,
+ I001_track,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 002, edition 1.0 */
+static int hf_002_V1_0_000 = -1;
+static int hf_002_V1_0_000_VALUE = -1;
+static const value_string valstr_002_V1_0_000_VALUE[] = {
+ { 1, "North marker message" },
+ { 2, "Sector crossing message" },
+ { 3, "South marker message" },
+ { 8, "Activation of blind zone filtering" },
+ { 9, "Stop of blind zone filtering" },
+ { 0, NULL }
+};
+static const FieldPart I002_V1_0_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_002_V1_0_000_VALUE, NULL };
+static const FieldPart *I002_V1_0_000_PARTS[] = {
+ &I002_V1_0_000_VALUE,
+ NULL
+};
+static const AsterixField I002_V1_0_000 = { FIXED, 1, 0, 0, &hf_002_V1_0_000, I002_V1_0_000_PARTS, { NULL } };
+static int hf_002_V1_0_010 = -1;
+static int hf_002_V1_0_010_SAC = -1;
+static const FieldPart I002_V1_0_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_002_V1_0_010_SAC, NULL };
+static int hf_002_V1_0_010_SIC = -1;
+static const FieldPart I002_V1_0_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_002_V1_0_010_SIC, NULL };
+static const FieldPart *I002_V1_0_010_PARTS[] = {
+ &I002_V1_0_010_SAC,
+ &I002_V1_0_010_SIC,
+ NULL
+};
+static const AsterixField I002_V1_0_010 = { FIXED, 2, 0, 0, &hf_002_V1_0_010, I002_V1_0_010_PARTS, { NULL } };
+static int hf_002_V1_0_020 = -1;
+static int hf_002_V1_0_020_VALUE = -1;
+static const FieldPart I002_V1_0_020_VALUE = { 8, 1.40625, FIELD_PART_UFLOAT, &hf_002_V1_0_020_VALUE, NULL };
+static const FieldPart *I002_V1_0_020_PARTS[] = {
+ &I002_V1_0_020_VALUE,
+ NULL
+};
+static const AsterixField I002_V1_0_020 = { FIXED, 1, 0, 0, &hf_002_V1_0_020, I002_V1_0_020_PARTS, { NULL } };
+static int hf_002_V1_0_030 = -1;
+static int hf_002_V1_0_030_VALUE = -1;
+static const FieldPart I002_V1_0_030_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_002_V1_0_030_VALUE, NULL };
+static const FieldPart *I002_V1_0_030_PARTS[] = {
+ &I002_V1_0_030_VALUE,
+ NULL
+};
+static const AsterixField I002_V1_0_030 = { FIXED, 3, 0, 0, &hf_002_V1_0_030, I002_V1_0_030_PARTS, { NULL } };
+static int hf_002_V1_0_041 = -1;
+static int hf_002_V1_0_041_VALUE = -1;
+static const FieldPart I002_V1_0_041_VALUE = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_002_V1_0_041_VALUE, NULL };
+static const FieldPart *I002_V1_0_041_PARTS[] = {
+ &I002_V1_0_041_VALUE,
+ NULL
+};
+static const AsterixField I002_V1_0_041 = { FIXED, 2, 0, 0, &hf_002_V1_0_041, I002_V1_0_041_PARTS, { NULL } };
+static int hf_002_V1_0_050 = -1;
+static int hf_002_V1_0_050_Subitem = -1;
+static const FieldPart I002_V1_0_050_Subitem = { 7, 1.0, FIELD_PART_HEX, &hf_002_V1_0_050_Subitem, NULL };
+static const FieldPart *I002_V1_0_050_PARTS[] = {
+ &I002_V1_0_050_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I002_V1_0_050 = { FX, 1, 0, 0, &hf_002_V1_0_050, I002_V1_0_050_PARTS, { NULL } };
+static int hf_002_V1_0_060 = -1;
+static int hf_002_V1_0_060_Subitem = -1;
+static const FieldPart I002_V1_0_060_Subitem = { 7, 1.0, FIELD_PART_HEX, &hf_002_V1_0_060_Subitem, NULL };
+static const FieldPart *I002_V1_0_060_PARTS[] = {
+ &I002_V1_0_060_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I002_V1_0_060 = { FX, 1, 0, 0, &hf_002_V1_0_060, I002_V1_0_060_PARTS, { NULL } };
+static int hf_002_V1_0_070 = -1;
+static int hf_002_V1_0_070_A = -1;
+static const value_string valstr_002_V1_0_070_A[] = {
+ { 0, "Counter for antenna 1" },
+ { 1, "Counter for antenna 2" },
+ { 0, NULL }
+};
+static const FieldPart I002_V1_0_070_A = { 1, 1.0, FIELD_PART_UINT, &hf_002_V1_0_070_A, NULL };
+static int hf_002_V1_0_070_IDENT = -1;
+static const value_string valstr_002_V1_0_070_IDENT[] = {
+ { 1, "Sole primary plots" },
+ { 2, "Sole SSR plots" },
+ { 3, "Combined plots" },
+ { 0, NULL }
+};
+static const FieldPart I002_V1_0_070_IDENT = { 5, 1.0, FIELD_PART_UINT, &hf_002_V1_0_070_IDENT, NULL };
+static int hf_002_V1_0_070_COUNTER = -1;
+static const FieldPart I002_V1_0_070_COUNTER = { 10, 1.0, FIELD_PART_UINT, &hf_002_V1_0_070_COUNTER, NULL };
+static const FieldPart *I002_V1_0_070_PARTS[] = {
+ &I002_V1_0_070_A,
+ &I002_V1_0_070_IDENT,
+ &I002_V1_0_070_COUNTER,
+ NULL
+};
+static const AsterixField I002_V1_0_070 = { REPETITIVE, 2, 1, 0, &hf_002_V1_0_070, I002_V1_0_070_PARTS, { NULL } };
+static int hf_002_V1_0_080 = -1;
+static int hf_002_V1_0_080_Subitem = -1;
+static const FieldPart I002_V1_0_080_Subitem = { 7, 1.0, FIELD_PART_HEX, &hf_002_V1_0_080_Subitem, NULL };
+static const FieldPart *I002_V1_0_080_PARTS[] = {
+ &I002_V1_0_080_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I002_V1_0_080 = { FX, 1, 0, 0, &hf_002_V1_0_080, I002_V1_0_080_PARTS, { NULL } };
+static int hf_002_V1_0_090 = -1;
+static int hf_002_V1_0_090_RE = -1;
+static const FieldPart I002_V1_0_090_RE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_002_V1_0_090_RE, NULL };
+static int hf_002_V1_0_090_AE = -1;
+static const FieldPart I002_V1_0_090_AE = { 8, 0.02197265625, FIELD_PART_FLOAT, &hf_002_V1_0_090_AE, NULL };
+static const FieldPart *I002_V1_0_090_PARTS[] = {
+ &I002_V1_0_090_RE,
+ &I002_V1_0_090_AE,
+ NULL
+};
+static const AsterixField I002_V1_0_090 = { FIXED, 2, 0, 0, &hf_002_V1_0_090, I002_V1_0_090_PARTS, { NULL } };
+static int hf_002_V1_0_100 = -1;
+static int hf_002_V1_0_100_RS = -1;
+static const FieldPart I002_V1_0_100_RS = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_002_V1_0_100_RS, NULL };
+static int hf_002_V1_0_100_RE = -1;
+static const FieldPart I002_V1_0_100_RE = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_002_V1_0_100_RE, NULL };
+static int hf_002_V1_0_100_TS = -1;
+static const FieldPart I002_V1_0_100_TS = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_002_V1_0_100_TS, NULL };
+static int hf_002_V1_0_100_TE = -1;
+static const FieldPart I002_V1_0_100_TE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_002_V1_0_100_TE, NULL };
+static const FieldPart *I002_V1_0_100_PARTS[] = {
+ &I002_V1_0_100_RS,
+ &I002_V1_0_100_RE,
+ &I002_V1_0_100_TS,
+ &I002_V1_0_100_TE,
+ NULL
+};
+static const AsterixField I002_V1_0_100 = { FIXED, 8, 0, 0, &hf_002_V1_0_100, I002_V1_0_100_PARTS, { NULL } };
+static int hf_002_V1_0_SP = -1;
+static const AsterixField I002_V1_0_SP = { EXP, 0, 0, 1, &hf_002_V1_0_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I002_V1_0_uap[] = {
+ &I002_V1_0_010,
+ &I002_V1_0_000,
+ &I002_V1_0_020,
+ &I002_V1_0_030,
+ &I002_V1_0_041,
+ &I002_V1_0_050,
+ &I002_V1_0_060,
+ &I002_V1_0_070,
+ &I002_V1_0_100,
+ &I002_V1_0_090,
+ &I002_V1_0_080,
+ &IX_SPARE,
+ &I002_V1_0_SP,
+ NULL
+};
+static const AsterixField **I002_V1_0[] = {
+ I002_V1_0_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 002, edition 1.1 */
+static int hf_002_V1_1_000 = -1;
+static int hf_002_V1_1_000_VALUE = -1;
+static const value_string valstr_002_V1_1_000_VALUE[] = {
+ { 1, "North marker message" },
+ { 2, "Sector crossing message" },
+ { 3, "South marker message" },
+ { 8, "Activation of blind zone filtering" },
+ { 9, "Stop of blind zone filtering" },
+ { 0, NULL }
+};
+static const FieldPart I002_V1_1_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_002_V1_1_000_VALUE, NULL };
+static const FieldPart *I002_V1_1_000_PARTS[] = {
+ &I002_V1_1_000_VALUE,
+ NULL
+};
+static const AsterixField I002_V1_1_000 = { FIXED, 1, 0, 0, &hf_002_V1_1_000, I002_V1_1_000_PARTS, { NULL } };
+static int hf_002_V1_1_010 = -1;
+static int hf_002_V1_1_010_SAC = -1;
+static const FieldPart I002_V1_1_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_002_V1_1_010_SAC, NULL };
+static int hf_002_V1_1_010_SIC = -1;
+static const FieldPart I002_V1_1_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_002_V1_1_010_SIC, NULL };
+static const FieldPart *I002_V1_1_010_PARTS[] = {
+ &I002_V1_1_010_SAC,
+ &I002_V1_1_010_SIC,
+ NULL
+};
+static const AsterixField I002_V1_1_010 = { FIXED, 2, 0, 0, &hf_002_V1_1_010, I002_V1_1_010_PARTS, { NULL } };
+static int hf_002_V1_1_020 = -1;
+static int hf_002_V1_1_020_VALUE = -1;
+static const FieldPart I002_V1_1_020_VALUE = { 8, 1.40625, FIELD_PART_UFLOAT, &hf_002_V1_1_020_VALUE, NULL };
+static const FieldPart *I002_V1_1_020_PARTS[] = {
+ &I002_V1_1_020_VALUE,
+ NULL
+};
+static const AsterixField I002_V1_1_020 = { FIXED, 1, 0, 0, &hf_002_V1_1_020, I002_V1_1_020_PARTS, { NULL } };
+static int hf_002_V1_1_030 = -1;
+static int hf_002_V1_1_030_VALUE = -1;
+static const FieldPart I002_V1_1_030_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_002_V1_1_030_VALUE, NULL };
+static const FieldPart *I002_V1_1_030_PARTS[] = {
+ &I002_V1_1_030_VALUE,
+ NULL
+};
+static const AsterixField I002_V1_1_030 = { FIXED, 3, 0, 0, &hf_002_V1_1_030, I002_V1_1_030_PARTS, { NULL } };
+static int hf_002_V1_1_041 = -1;
+static int hf_002_V1_1_041_VALUE = -1;
+static const FieldPart I002_V1_1_041_VALUE = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_002_V1_1_041_VALUE, NULL };
+static const FieldPart *I002_V1_1_041_PARTS[] = {
+ &I002_V1_1_041_VALUE,
+ NULL
+};
+static const AsterixField I002_V1_1_041 = { FIXED, 2, 0, 0, &hf_002_V1_1_041, I002_V1_1_041_PARTS, { NULL } };
+static int hf_002_V1_1_050 = -1;
+static int hf_002_V1_1_050_Subitem = -1;
+static const FieldPart I002_V1_1_050_Subitem = { 7, 1.0, FIELD_PART_HEX, &hf_002_V1_1_050_Subitem, NULL };
+static const FieldPart *I002_V1_1_050_PARTS[] = {
+ &I002_V1_1_050_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I002_V1_1_050 = { FX, 1, 0, 0, &hf_002_V1_1_050, I002_V1_1_050_PARTS, { NULL } };
+static int hf_002_V1_1_060 = -1;
+static int hf_002_V1_1_060_Subitem = -1;
+static const FieldPart I002_V1_1_060_Subitem = { 7, 1.0, FIELD_PART_HEX, &hf_002_V1_1_060_Subitem, NULL };
+static const FieldPart *I002_V1_1_060_PARTS[] = {
+ &I002_V1_1_060_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I002_V1_1_060 = { FX, 1, 0, 0, &hf_002_V1_1_060, I002_V1_1_060_PARTS, { NULL } };
+static int hf_002_V1_1_070 = -1;
+static int hf_002_V1_1_070_A = -1;
+static const value_string valstr_002_V1_1_070_A[] = {
+ { 0, "Counter for antenna 1" },
+ { 1, "Counter for antenna 2" },
+ { 0, NULL }
+};
+static const FieldPart I002_V1_1_070_A = { 1, 1.0, FIELD_PART_UINT, &hf_002_V1_1_070_A, NULL };
+static int hf_002_V1_1_070_IDENT = -1;
+static const value_string valstr_002_V1_1_070_IDENT[] = {
+ { 1, "Sole primary plots" },
+ { 2, "Sole SSR plots" },
+ { 3, "Combined plots" },
+ { 0, NULL }
+};
+static const FieldPart I002_V1_1_070_IDENT = { 5, 1.0, FIELD_PART_UINT, &hf_002_V1_1_070_IDENT, NULL };
+static int hf_002_V1_1_070_COUNTER = -1;
+static const FieldPart I002_V1_1_070_COUNTER = { 10, 1.0, FIELD_PART_UINT, &hf_002_V1_1_070_COUNTER, NULL };
+static const FieldPart *I002_V1_1_070_PARTS[] = {
+ &I002_V1_1_070_A,
+ &I002_V1_1_070_IDENT,
+ &I002_V1_1_070_COUNTER,
+ NULL
+};
+static const AsterixField I002_V1_1_070 = { REPETITIVE, 2, 1, 0, &hf_002_V1_1_070, I002_V1_1_070_PARTS, { NULL } };
+static int hf_002_V1_1_080 = -1;
+static int hf_002_V1_1_080_Subitem = -1;
+static const FieldPart I002_V1_1_080_Subitem = { 7, 1.0, FIELD_PART_HEX, &hf_002_V1_1_080_Subitem, NULL };
+static const FieldPart *I002_V1_1_080_PARTS[] = {
+ &I002_V1_1_080_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I002_V1_1_080 = { FX, 1, 0, 0, &hf_002_V1_1_080, I002_V1_1_080_PARTS, { NULL } };
+static int hf_002_V1_1_090 = -1;
+static int hf_002_V1_1_090_RE = -1;
+static const FieldPart I002_V1_1_090_RE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_002_V1_1_090_RE, NULL };
+static int hf_002_V1_1_090_AE = -1;
+static const FieldPart I002_V1_1_090_AE = { 8, 0.02197265625, FIELD_PART_FLOAT, &hf_002_V1_1_090_AE, NULL };
+static const FieldPart *I002_V1_1_090_PARTS[] = {
+ &I002_V1_1_090_RE,
+ &I002_V1_1_090_AE,
+ NULL
+};
+static const AsterixField I002_V1_1_090 = { FIXED, 2, 0, 0, &hf_002_V1_1_090, I002_V1_1_090_PARTS, { NULL } };
+static int hf_002_V1_1_100 = -1;
+static int hf_002_V1_1_100_RS = -1;
+static const FieldPart I002_V1_1_100_RS = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_002_V1_1_100_RS, NULL };
+static int hf_002_V1_1_100_RE = -1;
+static const FieldPart I002_V1_1_100_RE = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_002_V1_1_100_RE, NULL };
+static int hf_002_V1_1_100_TS = -1;
+static const FieldPart I002_V1_1_100_TS = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_002_V1_1_100_TS, NULL };
+static int hf_002_V1_1_100_TE = -1;
+static const FieldPart I002_V1_1_100_TE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_002_V1_1_100_TE, NULL };
+static const FieldPart *I002_V1_1_100_PARTS[] = {
+ &I002_V1_1_100_RS,
+ &I002_V1_1_100_RE,
+ &I002_V1_1_100_TS,
+ &I002_V1_1_100_TE,
+ NULL
+};
+static const AsterixField I002_V1_1_100 = { FIXED, 8, 0, 0, &hf_002_V1_1_100, I002_V1_1_100_PARTS, { NULL } };
+static int hf_002_V1_1_SP = -1;
+static const AsterixField I002_V1_1_SP = { EXP, 0, 0, 1, &hf_002_V1_1_SP, NULL, { NULL } };
+
+/* Category 002, edition 1.1 (latest) */
+static int hf_002_000 = -1;
+static int hf_002_000_VALUE = -1;
+static const value_string valstr_002_000_VALUE[] = {
+ { 1, "North marker message" },
+ { 2, "Sector crossing message" },
+ { 3, "South marker message" },
+ { 8, "Activation of blind zone filtering" },
+ { 9, "Stop of blind zone filtering" },
+ { 0, NULL }
+};
+static const FieldPart I002_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_002_000_VALUE, NULL };
+static const FieldPart *I002_000_PARTS[] = {
+ &I002_000_VALUE,
+ NULL
+};
+static const AsterixField I002_000 = { FIXED, 1, 0, 0, &hf_002_000, I002_000_PARTS, { NULL } };
+static int hf_002_010 = -1;
+static int hf_002_010_SAC = -1;
+static const FieldPart I002_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_002_010_SAC, NULL };
+static int hf_002_010_SIC = -1;
+static const FieldPart I002_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_002_010_SIC, NULL };
+static const FieldPart *I002_010_PARTS[] = {
+ &I002_010_SAC,
+ &I002_010_SIC,
+ NULL
+};
+static const AsterixField I002_010 = { FIXED, 2, 0, 0, &hf_002_010, I002_010_PARTS, { NULL } };
+static int hf_002_020 = -1;
+static int hf_002_020_VALUE = -1;
+static const FieldPart I002_020_VALUE = { 8, 1.40625, FIELD_PART_UFLOAT, &hf_002_020_VALUE, NULL };
+static const FieldPart *I002_020_PARTS[] = {
+ &I002_020_VALUE,
+ NULL
+};
+static const AsterixField I002_020 = { FIXED, 1, 0, 0, &hf_002_020, I002_020_PARTS, { NULL } };
+static int hf_002_030 = -1;
+static int hf_002_030_VALUE = -1;
+static const FieldPart I002_030_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_002_030_VALUE, NULL };
+static const FieldPart *I002_030_PARTS[] = {
+ &I002_030_VALUE,
+ NULL
+};
+static const AsterixField I002_030 = { FIXED, 3, 0, 0, &hf_002_030, I002_030_PARTS, { NULL } };
+static int hf_002_041 = -1;
+static int hf_002_041_VALUE = -1;
+static const FieldPart I002_041_VALUE = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_002_041_VALUE, NULL };
+static const FieldPart *I002_041_PARTS[] = {
+ &I002_041_VALUE,
+ NULL
+};
+static const AsterixField I002_041 = { FIXED, 2, 0, 0, &hf_002_041, I002_041_PARTS, { NULL } };
+static int hf_002_050 = -1;
+static int hf_002_050_Subitem = -1;
+static const FieldPart I002_050_Subitem = { 7, 1.0, FIELD_PART_HEX, &hf_002_050_Subitem, NULL };
+static const FieldPart *I002_050_PARTS[] = {
+ &I002_050_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I002_050 = { FX, 1, 0, 0, &hf_002_050, I002_050_PARTS, { NULL } };
+static int hf_002_060 = -1;
+static int hf_002_060_Subitem = -1;
+static const FieldPart I002_060_Subitem = { 7, 1.0, FIELD_PART_HEX, &hf_002_060_Subitem, NULL };
+static const FieldPart *I002_060_PARTS[] = {
+ &I002_060_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I002_060 = { FX, 1, 0, 0, &hf_002_060, I002_060_PARTS, { NULL } };
+static int hf_002_070 = -1;
+static int hf_002_070_A = -1;
+static const value_string valstr_002_070_A[] = {
+ { 0, "Counter for antenna 1" },
+ { 1, "Counter for antenna 2" },
+ { 0, NULL }
+};
+static const FieldPart I002_070_A = { 1, 1.0, FIELD_PART_UINT, &hf_002_070_A, NULL };
+static int hf_002_070_IDENT = -1;
+static const value_string valstr_002_070_IDENT[] = {
+ { 1, "Sole primary plots" },
+ { 2, "Sole SSR plots" },
+ { 3, "Combined plots" },
+ { 0, NULL }
+};
+static const FieldPart I002_070_IDENT = { 5, 1.0, FIELD_PART_UINT, &hf_002_070_IDENT, NULL };
+static int hf_002_070_COUNTER = -1;
+static const FieldPart I002_070_COUNTER = { 10, 1.0, FIELD_PART_UINT, &hf_002_070_COUNTER, NULL };
+static const FieldPart *I002_070_PARTS[] = {
+ &I002_070_A,
+ &I002_070_IDENT,
+ &I002_070_COUNTER,
+ NULL
+};
+static const AsterixField I002_070 = { REPETITIVE, 2, 1, 0, &hf_002_070, I002_070_PARTS, { NULL } };
+static int hf_002_080 = -1;
+static int hf_002_080_Subitem = -1;
+static const FieldPart I002_080_Subitem = { 7, 1.0, FIELD_PART_HEX, &hf_002_080_Subitem, NULL };
+static const FieldPart *I002_080_PARTS[] = {
+ &I002_080_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I002_080 = { FX, 1, 0, 0, &hf_002_080, I002_080_PARTS, { NULL } };
+static int hf_002_090 = -1;
+static int hf_002_090_RE = -1;
+static const FieldPart I002_090_RE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_002_090_RE, NULL };
+static int hf_002_090_AE = -1;
+static const FieldPart I002_090_AE = { 8, 0.02197265625, FIELD_PART_FLOAT, &hf_002_090_AE, NULL };
+static const FieldPart *I002_090_PARTS[] = {
+ &I002_090_RE,
+ &I002_090_AE,
+ NULL
+};
+static const AsterixField I002_090 = { FIXED, 2, 0, 0, &hf_002_090, I002_090_PARTS, { NULL } };
+static int hf_002_100 = -1;
+static int hf_002_100_RS = -1;
+static const FieldPart I002_100_RS = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_002_100_RS, NULL };
+static int hf_002_100_RE = -1;
+static const FieldPart I002_100_RE = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_002_100_RE, NULL };
+static int hf_002_100_TS = -1;
+static const FieldPart I002_100_TS = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_002_100_TS, NULL };
+static int hf_002_100_TE = -1;
+static const FieldPart I002_100_TE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_002_100_TE, NULL };
+static const FieldPart *I002_100_PARTS[] = {
+ &I002_100_RS,
+ &I002_100_RE,
+ &I002_100_TS,
+ &I002_100_TE,
+ NULL
+};
+static const AsterixField I002_100 = { FIXED, 8, 0, 0, &hf_002_100, I002_100_PARTS, { NULL } };
+static int hf_002_SP = -1;
+static const AsterixField I002_SP = { EXP, 0, 0, 1, &hf_002_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I002_V1_1_uap[] = {
+ &I002_V1_1_010,
+ &I002_V1_1_000,
+ &I002_V1_1_020,
+ &I002_V1_1_030,
+ &I002_V1_1_041,
+ &I002_V1_1_050,
+ &I002_V1_1_060,
+ &I002_V1_1_070,
+ &I002_V1_1_100,
+ &I002_V1_1_090,
+ &I002_V1_1_080,
+ &IX_SPARE,
+ &I002_V1_1_SP,
+ NULL
+};
+static const AsterixField **I002_V1_1[] = {
+ I002_V1_1_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I002_uap[] = {
+ &I002_010,
+ &I002_000,
+ &I002_020,
+ &I002_030,
+ &I002_041,
+ &I002_050,
+ &I002_060,
+ &I002_070,
+ &I002_100,
+ &I002_090,
+ &I002_080,
+ &IX_SPARE,
+ &I002_SP,
+ NULL
+};
+static const AsterixField **I002[] = {
+ I002_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 004, edition 1.12 */
+static int hf_004_V1_12_000 = -1;
+static int hf_004_V1_12_000_VALUE = -1;
+static const value_string valstr_004_V1_12_000_VALUE[] = {
+ { 1, "Alive Message (AM)" },
+ { 2, "Route Adherence Monitor Longitudinal Deviation (RAMLD)" },
+ { 3, "Route Adherence Monitor Heading Deviation (RAMHD)" },
+ { 4, "Minimum Safe Altitude Warning (MSAW)" },
+ { 5, "Area Proximity Warning (APW)" },
+ { 6, "Clearance Level Adherence Monitor (CLAM)" },
+ { 7, "Short Term Conflict Alert (STCA)" },
+ { 8, "Approach Path Monitor (APM)" },
+ { 9, "RIMCAS Arrival / Landing Monitor (ALM)" },
+ { 10, "RIMCAS Arrival / Departure Wrong Runway Alert (WRA)" },
+ { 11, "RIMCAS Arrival / Departure Opposite Traffic Alert (OTA)" },
+ { 12, "RIMCAS Departure Monitor (RDM)" },
+ { 13, "RIMCAS Runway / Taxiway Crossing Monitor (RCM)" },
+ { 14, "RIMCAS Taxiway Separation Monitor (TSM)" },
+ { 15, "RIMCAS Unauthorized Taxiway Movement Monitor(UTMM)" },
+ { 16, "RIMCAS Stop Bar Overrun Alert (SBOA)" },
+ { 17, "End Of Conflict (EOC)" },
+ { 18, "ACAS Resolution Advisory (ACASRA)" },
+ { 19, "Near Term Conflict Alert (NTCA)" },
+ { 20, "Downlinked Barometric Pressure Setting Monitor (DBPSM)" },
+ { 21, "Speed Adherence Monitor (SAM)" },
+ { 22, "Outside Controlled Airspace Tool (OCAT)" },
+ { 23, "Vertical Conflict Detection (VCD)" },
+ { 24, "Vertical Rate Adherence Monitor (VRAM)" },
+ { 25, "Cleared Heading Adherence Monitor (CHAM)" },
+ { 26, "Downlinked Selected Altitude Monitor (DSAM)" },
+ { 27, "Holding Adherence Monitor (HAM)" },
+ { 28, "Vertical Path Monitor (VPM)" },
+ { 29, "RIMCAS Taxiway Traffic Alert (TTA)" },
+ { 30, "RIMCAS Arrival/Departure Close Runway Alert (CRA)" },
+ { 31, "RIMCAS Arrival/Departure Aircraft Separation Monitor (ASM)" },
+ { 32, "RIMCAS ILS Area Violation Monitor (IAVM)" },
+ { 33, "Final Target Distance Indicator (FTD)" },
+ { 34, "Initial Target Distance Indicator (ITD)" },
+ { 35, "Wake Vortex Indicator Infringement Alert (IIA)" },
+ { 36, "Sequence Warning (SQW)" },
+ { 37, "Catch Up Warning (CUW)" },
+ { 38, "Conflicting ATC Clearances (CATC)" },
+ { 39, "No ATC Clearance (NOCLR)" },
+ { 40, "Aircraft Not Moving despite ATC Clearance (NOMOV)" },
+ { 41, "Aircraft leaving/entering the aerodrome area without proper handover (NOH)" },
+ { 42, "Wrong Runway or Taxiway Type (WRTY)" },
+ { 43, "Stand Occupied (STOCC)" },
+ { 44, "Ongoing Alert (ONGOING)" },
+ { 97, "Lost Track Warning (LTW)" },
+ { 98, "Holding Volume Infringement (HVI)" },
+ { 99, "Airspace Infringement Warning (AIW)" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_004_V1_12_000_VALUE, NULL };
+static const FieldPart *I004_V1_12_000_PARTS[] = {
+ &I004_V1_12_000_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_000 = { FIXED, 1, 0, 0, &hf_004_V1_12_000, I004_V1_12_000_PARTS, { NULL } };
+static int hf_004_V1_12_010 = -1;
+static int hf_004_V1_12_010_SAC = -1;
+static const FieldPart I004_V1_12_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_004_V1_12_010_SAC, NULL };
+static int hf_004_V1_12_010_SIC = -1;
+static const FieldPart I004_V1_12_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_004_V1_12_010_SIC, NULL };
+static const FieldPart *I004_V1_12_010_PARTS[] = {
+ &I004_V1_12_010_SAC,
+ &I004_V1_12_010_SIC,
+ NULL
+};
+static const AsterixField I004_V1_12_010 = { FIXED, 2, 0, 0, &hf_004_V1_12_010, I004_V1_12_010_PARTS, { NULL } };
+static int hf_004_V1_12_015 = -1;
+static int hf_004_V1_12_015_SAC = -1;
+static const FieldPart I004_V1_12_015_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_004_V1_12_015_SAC, NULL };
+static int hf_004_V1_12_015_SIC = -1;
+static const FieldPart I004_V1_12_015_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_004_V1_12_015_SIC, NULL };
+static const FieldPart *I004_V1_12_015_PARTS[] = {
+ &I004_V1_12_015_SAC,
+ &I004_V1_12_015_SIC,
+ NULL
+};
+static const AsterixField I004_V1_12_015 = { REPETITIVE, 2, 1, 0, &hf_004_V1_12_015, I004_V1_12_015_PARTS, { NULL } };
+static int hf_004_V1_12_020 = -1;
+static int hf_004_V1_12_020_VALUE = -1;
+static const FieldPart I004_V1_12_020_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_004_V1_12_020_VALUE, NULL };
+static const FieldPart *I004_V1_12_020_PARTS[] = {
+ &I004_V1_12_020_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_020 = { FIXED, 3, 0, 0, &hf_004_V1_12_020, I004_V1_12_020_PARTS, { NULL } };
+static int hf_004_V1_12_030 = -1;
+static int hf_004_V1_12_030_VALUE = -1;
+static const FieldPart I004_V1_12_030_VALUE = { 16, 1.0, FIELD_PART_HEX, &hf_004_V1_12_030_VALUE, NULL };
+static const FieldPart *I004_V1_12_030_PARTS[] = {
+ &I004_V1_12_030_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_030 = { FIXED, 2, 0, 0, &hf_004_V1_12_030, I004_V1_12_030_PARTS, { NULL } };
+static int hf_004_V1_12_035 = -1;
+static int hf_004_V1_12_035_VALUE = -1;
+static const FieldPart I004_V1_12_035_VALUE = { 16, 1.0, FIELD_PART_HEX, &hf_004_V1_12_035_VALUE, NULL };
+static const FieldPart *I004_V1_12_035_PARTS[] = {
+ &I004_V1_12_035_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_035 = { FIXED, 2, 0, 0, &hf_004_V1_12_035, I004_V1_12_035_PARTS, { NULL } };
+static int hf_004_V1_12_040 = -1;
+static int hf_004_V1_12_040_VALUE = -1;
+static const FieldPart I004_V1_12_040_VALUE = { 16, 1.0, FIELD_PART_HEX, &hf_004_V1_12_040_VALUE, NULL };
+static const FieldPart *I004_V1_12_040_PARTS[] = {
+ &I004_V1_12_040_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_040 = { FIXED, 2, 0, 0, &hf_004_V1_12_040, I004_V1_12_040_PARTS, { NULL } };
+static int hf_004_V1_12_045 = -1;
+static int hf_004_V1_12_045_STAT = -1;
+static const FieldPart I004_V1_12_045_STAT = { 3, 1.0, FIELD_PART_HEX, &hf_004_V1_12_045_STAT, NULL };
+static const FieldPart *I004_V1_12_045_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I004_V1_12_045_STAT,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I004_V1_12_045 = { FIXED, 1, 0, 0, &hf_004_V1_12_045, I004_V1_12_045_PARTS, { NULL } };
+static int hf_004_V1_12_060 = -1;
+static int hf_004_V1_12_060_MRVA = -1;
+static const value_string valstr_004_V1_12_060_MRVA[] = {
+ { 0, "Default" },
+ { 1, "MRVA function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_MRVA = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_MRVA, NULL };
+static int hf_004_V1_12_060_RAMLD = -1;
+static const value_string valstr_004_V1_12_060_RAMLD[] = {
+ { 0, "Default" },
+ { 1, "RAMLD function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_RAMLD = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_RAMLD, NULL };
+static int hf_004_V1_12_060_RAMHD = -1;
+static const value_string valstr_004_V1_12_060_RAMHD[] = {
+ { 0, "Default" },
+ { 1, "RAMHD function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_RAMHD = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_RAMHD, NULL };
+static int hf_004_V1_12_060_MSAW = -1;
+static const value_string valstr_004_V1_12_060_MSAW[] = {
+ { 0, "Default" },
+ { 1, "MSAW function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_MSAW = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_MSAW, NULL };
+static int hf_004_V1_12_060_APW = -1;
+static const value_string valstr_004_V1_12_060_APW[] = {
+ { 0, "Default" },
+ { 1, "APW function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_APW = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_APW, NULL };
+static int hf_004_V1_12_060_CLAM = -1;
+static const value_string valstr_004_V1_12_060_CLAM[] = {
+ { 0, "Default" },
+ { 1, "CLAM function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_CLAM = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_CLAM, NULL };
+static int hf_004_V1_12_060_STCA = -1;
+static const value_string valstr_004_V1_12_060_STCA[] = {
+ { 0, "Default" },
+ { 1, "STCA function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_STCA = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_STCA, NULL };
+static int hf_004_V1_12_060_APM = -1;
+static const value_string valstr_004_V1_12_060_APM[] = {
+ { 0, "Default" },
+ { 1, "APM function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_APM = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_APM, NULL };
+static int hf_004_V1_12_060_RIMCA = -1;
+static const value_string valstr_004_V1_12_060_RIMCA[] = {
+ { 0, "Default" },
+ { 1, "RIMCA function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_RIMCA = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_RIMCA, NULL };
+static int hf_004_V1_12_060_ACASRA = -1;
+static const value_string valstr_004_V1_12_060_ACASRA[] = {
+ { 0, "Default" },
+ { 1, "ACAS RA function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_ACASRA = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_ACASRA, NULL };
+static int hf_004_V1_12_060_NTCA = -1;
+static const value_string valstr_004_V1_12_060_NTCA[] = {
+ { 0, "Default" },
+ { 1, "NTCA function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_NTCA = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_NTCA, NULL };
+static int hf_004_V1_12_060_DG = -1;
+static const value_string valstr_004_V1_12_060_DG[] = {
+ { 0, "Default" },
+ { 1, "System degraded" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_DG = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_DG, NULL };
+static int hf_004_V1_12_060_OF = -1;
+static const value_string valstr_004_V1_12_060_OF[] = {
+ { 0, "Default" },
+ { 1, "Overflow error" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_OF = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_OF, NULL };
+static int hf_004_V1_12_060_OL = -1;
+static const value_string valstr_004_V1_12_060_OL[] = {
+ { 0, "Default" },
+ { 1, "Overload error" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_OL = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_OL, NULL };
+static int hf_004_V1_12_060_AIW = -1;
+static const value_string valstr_004_V1_12_060_AIW[] = {
+ { 0, "Default" },
+ { 1, "AIW function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_AIW = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_AIW, NULL };
+static int hf_004_V1_12_060_PAIW = -1;
+static const value_string valstr_004_V1_12_060_PAIW[] = {
+ { 0, "Default" },
+ { 1, "PAIW function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_PAIW = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_PAIW, NULL };
+static int hf_004_V1_12_060_OCAT = -1;
+static const value_string valstr_004_V1_12_060_OCAT[] = {
+ { 0, "Default" },
+ { 1, "OCAT function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_OCAT = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_OCAT, NULL };
+static int hf_004_V1_12_060_SAM = -1;
+static const value_string valstr_004_V1_12_060_SAM[] = {
+ { 0, "Default" },
+ { 1, "SAM function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_SAM = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_SAM, NULL };
+static int hf_004_V1_12_060_VCD = -1;
+static const value_string valstr_004_V1_12_060_VCD[] = {
+ { 0, "Default" },
+ { 1, "VCD function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_VCD = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_VCD, NULL };
+static int hf_004_V1_12_060_CHAM = -1;
+static const value_string valstr_004_V1_12_060_CHAM[] = {
+ { 0, "Default" },
+ { 1, "CHAM function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_CHAM = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_CHAM, NULL };
+static int hf_004_V1_12_060_DSAM = -1;
+static const value_string valstr_004_V1_12_060_DSAM[] = {
+ { 0, "Default" },
+ { 1, "DSAM function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_DSAM = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_DSAM, NULL };
+static int hf_004_V1_12_060_DBPSMARR = -1;
+static const value_string valstr_004_V1_12_060_DBPSMARR[] = {
+ { 0, "Default" },
+ { 1, "DBPSM ARR sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_DBPSMARR = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_DBPSMARR, NULL };
+static int hf_004_V1_12_060_DBPSMDEP = -1;
+static const value_string valstr_004_V1_12_060_DBPSMDEP[] = {
+ { 0, "Default" },
+ { 1, "DBPSM DEP sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_DBPSMDEP = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_DBPSMDEP, NULL };
+static int hf_004_V1_12_060_DBPSMTL = -1;
+static const value_string valstr_004_V1_12_060_DBPSMTL[] = {
+ { 0, "Default" },
+ { 1, "DBPSM TL sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_DBPSMTL = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_DBPSMTL, NULL };
+static int hf_004_V1_12_060_VRAMCRM = -1;
+static const value_string valstr_004_V1_12_060_VRAMCRM[] = {
+ { 0, "Default" },
+ { 1, "VRAM CRM sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_VRAMCRM = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_VRAMCRM, NULL };
+static int hf_004_V1_12_060_VRAMVTM = -1;
+static const value_string valstr_004_V1_12_060_VRAMVTM[] = {
+ { 0, "Default" },
+ { 1, "VRAM VTM sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_VRAMVTM = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_VRAMVTM, NULL };
+static int hf_004_V1_12_060_VRAMVRM = -1;
+static const value_string valstr_004_V1_12_060_VRAMVRM[] = {
+ { 0, "Default" },
+ { 1, "VRAM VRM sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_VRAMVRM = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_VRAMVRM, NULL };
+static int hf_004_V1_12_060_HAMHD = -1;
+static const value_string valstr_004_V1_12_060_HAMHD[] = {
+ { 0, "Default" },
+ { 1, "HAM HD sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_HAMHD = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_HAMHD, NULL };
+static int hf_004_V1_12_060_HAMRD = -1;
+static const value_string valstr_004_V1_12_060_HAMRD[] = {
+ { 0, "Default" },
+ { 1, "HAM RD sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_HAMRD = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_HAMRD, NULL };
+static int hf_004_V1_12_060_HAMVD = -1;
+static const value_string valstr_004_V1_12_060_HAMVD[] = {
+ { 0, "Default" },
+ { 1, "HAM VD sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_HAMVD = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_HAMVD, NULL };
+static int hf_004_V1_12_060_HVI = -1;
+static const value_string valstr_004_V1_12_060_HVI[] = {
+ { 0, "Default" },
+ { 1, "HVI function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_HVI = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_HVI, NULL };
+static int hf_004_V1_12_060_LTW = -1;
+static const value_string valstr_004_V1_12_060_LTW[] = {
+ { 0, "Default" },
+ { 1, "LTW function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_LTW = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_LTW, NULL };
+static int hf_004_V1_12_060_VPM = -1;
+static const value_string valstr_004_V1_12_060_VPM[] = {
+ { 0, "Default" },
+ { 1, "VPM function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_VPM = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_VPM, NULL };
+static int hf_004_V1_12_060_TTA = -1;
+static const value_string valstr_004_V1_12_060_TTA[] = {
+ { 0, "Default" },
+ { 1, "TTA function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_TTA = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_TTA, NULL };
+static int hf_004_V1_12_060_CRA = -1;
+static const value_string valstr_004_V1_12_060_CRA[] = {
+ { 0, "Default" },
+ { 1, "CRA function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_CRA = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_CRA, NULL };
+static int hf_004_V1_12_060_ASM = -1;
+static const value_string valstr_004_V1_12_060_ASM[] = {
+ { 0, "Default" },
+ { 1, "ASM sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_ASM = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_ASM, NULL };
+static int hf_004_V1_12_060_IAVM = -1;
+static const value_string valstr_004_V1_12_060_IAVM[] = {
+ { 0, "Default" },
+ { 1, "IAVM sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_IAVM = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_IAVM, NULL };
+static int hf_004_V1_12_060_FTD = -1;
+static const value_string valstr_004_V1_12_060_FTD[] = {
+ { 0, "Default" },
+ { 1, "FTD Function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_FTD = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_FTD, NULL };
+static int hf_004_V1_12_060_ITD = -1;
+static const value_string valstr_004_V1_12_060_ITD[] = {
+ { 0, "Default" },
+ { 1, "ITD function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_ITD = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_ITD, NULL };
+static int hf_004_V1_12_060_IIA = -1;
+static const value_string valstr_004_V1_12_060_IIA[] = {
+ { 0, "Default" },
+ { 1, "IIA function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_IIA = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_IIA, NULL };
+static int hf_004_V1_12_060_SQW = -1;
+static const value_string valstr_004_V1_12_060_SQW[] = {
+ { 0, "Default" },
+ { 1, "SQW function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_SQW = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_SQW, NULL };
+static int hf_004_V1_12_060_CUW = -1;
+static const value_string valstr_004_V1_12_060_CUW[] = {
+ { 0, "Default" },
+ { 1, "CUW function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_CUW = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_CUW, NULL };
+static int hf_004_V1_12_060_CATC = -1;
+static const value_string valstr_004_V1_12_060_CATC[] = {
+ { 0, "Default" },
+ { 1, "CATC function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_CATC = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_CATC, NULL };
+static int hf_004_V1_12_060_NOCLR = -1;
+static const value_string valstr_004_V1_12_060_NOCLR[] = {
+ { 0, "Default" },
+ { 1, "NOCLR sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_NOCLR = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_NOCLR, NULL };
+static int hf_004_V1_12_060_NOMOV = -1;
+static const value_string valstr_004_V1_12_060_NOMOV[] = {
+ { 0, "Default" },
+ { 1, "NOMOV Function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_NOMOV = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_NOMOV, NULL };
+static int hf_004_V1_12_060_NOH = -1;
+static const value_string valstr_004_V1_12_060_NOH[] = {
+ { 0, "Default" },
+ { 1, "NOH function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_NOH = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_NOH, NULL };
+static int hf_004_V1_12_060_WRTY = -1;
+static const value_string valstr_004_V1_12_060_WRTY[] = {
+ { 0, "Default" },
+ { 1, "WRTY function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_WRTY = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_WRTY, NULL };
+static int hf_004_V1_12_060_STOCC = -1;
+static const value_string valstr_004_V1_12_060_STOCC[] = {
+ { 0, "Default" },
+ { 1, "STOCC function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_STOCC = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_STOCC, NULL };
+static int hf_004_V1_12_060_ONGOING = -1;
+static const value_string valstr_004_V1_12_060_ONGOING[] = {
+ { 0, "Default" },
+ { 1, "ONGOING function" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_060_ONGOING = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_060_ONGOING, NULL };
+static const FieldPart *I004_V1_12_060_PARTS[] = {
+ &I004_V1_12_060_MRVA,
+ &I004_V1_12_060_RAMLD,
+ &I004_V1_12_060_RAMHD,
+ &I004_V1_12_060_MSAW,
+ &I004_V1_12_060_APW,
+ &I004_V1_12_060_CLAM,
+ &I004_V1_12_060_STCA,
+ &IXXX_FX,
+ &I004_V1_12_060_APM,
+ &I004_V1_12_060_RIMCA,
+ &I004_V1_12_060_ACASRA,
+ &I004_V1_12_060_NTCA,
+ &I004_V1_12_060_DG,
+ &I004_V1_12_060_OF,
+ &I004_V1_12_060_OL,
+ &IXXX_FX,
+ &I004_V1_12_060_AIW,
+ &I004_V1_12_060_PAIW,
+ &I004_V1_12_060_OCAT,
+ &I004_V1_12_060_SAM,
+ &I004_V1_12_060_VCD,
+ &I004_V1_12_060_CHAM,
+ &I004_V1_12_060_DSAM,
+ &IXXX_FX,
+ &I004_V1_12_060_DBPSMARR,
+ &I004_V1_12_060_DBPSMDEP,
+ &I004_V1_12_060_DBPSMTL,
+ &I004_V1_12_060_VRAMCRM,
+ &I004_V1_12_060_VRAMVTM,
+ &I004_V1_12_060_VRAMVRM,
+ &I004_V1_12_060_HAMHD,
+ &IXXX_FX,
+ &I004_V1_12_060_HAMRD,
+ &I004_V1_12_060_HAMVD,
+ &I004_V1_12_060_HVI,
+ &I004_V1_12_060_LTW,
+ &I004_V1_12_060_VPM,
+ &I004_V1_12_060_TTA,
+ &I004_V1_12_060_CRA,
+ &IXXX_FX,
+ &I004_V1_12_060_ASM,
+ &I004_V1_12_060_IAVM,
+ &I004_V1_12_060_FTD,
+ &I004_V1_12_060_ITD,
+ &I004_V1_12_060_IIA,
+ &I004_V1_12_060_SQW,
+ &I004_V1_12_060_CUW,
+ &IXXX_FX,
+ &I004_V1_12_060_CATC,
+ &I004_V1_12_060_NOCLR,
+ &I004_V1_12_060_NOMOV,
+ &I004_V1_12_060_NOH,
+ &I004_V1_12_060_WRTY,
+ &I004_V1_12_060_STOCC,
+ &I004_V1_12_060_ONGOING,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I004_V1_12_060 = { FX, 1, 0, 0, &hf_004_V1_12_060, I004_V1_12_060_PARTS, { NULL } };
+static int hf_004_V1_12_070 = -1;
+static int hf_004_V1_12_070_TC = -1;
+static int hf_004_V1_12_070_TC_VALUE = -1;
+static const FieldPart I004_V1_12_070_TC_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_004_V1_12_070_TC_VALUE, NULL };
+static const FieldPart *I004_V1_12_070_TC_PARTS[] = {
+ &I004_V1_12_070_TC_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_070_TC = { FIXED, 3, 0, 0, &hf_004_V1_12_070_TC, I004_V1_12_070_TC_PARTS, { NULL } };
+static int hf_004_V1_12_070_TCA = -1;
+static int hf_004_V1_12_070_TCA_VALUE = -1;
+static const FieldPart I004_V1_12_070_TCA_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_004_V1_12_070_TCA_VALUE, NULL };
+static const FieldPart *I004_V1_12_070_TCA_PARTS[] = {
+ &I004_V1_12_070_TCA_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_070_TCA = { FIXED, 3, 0, 0, &hf_004_V1_12_070_TCA, I004_V1_12_070_TCA_PARTS, { NULL } };
+static int hf_004_V1_12_070_CHS = -1;
+static int hf_004_V1_12_070_CHS_VALUE = -1;
+static const FieldPart I004_V1_12_070_CHS_VALUE = { 24, 0.5, FIELD_PART_UFLOAT, &hf_004_V1_12_070_CHS_VALUE, NULL };
+static const FieldPart *I004_V1_12_070_CHS_PARTS[] = {
+ &I004_V1_12_070_CHS_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_070_CHS = { FIXED, 3, 0, 0, &hf_004_V1_12_070_CHS, I004_V1_12_070_CHS_PARTS, { NULL } };
+static int hf_004_V1_12_070_MHS = -1;
+static int hf_004_V1_12_070_MHS_VALUE = -1;
+static const FieldPart I004_V1_12_070_MHS_VALUE = { 16, 0.5, FIELD_PART_UFLOAT, &hf_004_V1_12_070_MHS_VALUE, NULL };
+static const FieldPart *I004_V1_12_070_MHS_PARTS[] = {
+ &I004_V1_12_070_MHS_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_070_MHS = { FIXED, 2, 0, 0, &hf_004_V1_12_070_MHS, I004_V1_12_070_MHS_PARTS, { NULL } };
+static int hf_004_V1_12_070_CVS = -1;
+static int hf_004_V1_12_070_CVS_VALUE = -1;
+static const FieldPart I004_V1_12_070_CVS_VALUE = { 16, 25.0, FIELD_PART_UFLOAT, &hf_004_V1_12_070_CVS_VALUE, NULL };
+static const FieldPart *I004_V1_12_070_CVS_PARTS[] = {
+ &I004_V1_12_070_CVS_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_070_CVS = { FIXED, 2, 0, 0, &hf_004_V1_12_070_CVS, I004_V1_12_070_CVS_PARTS, { NULL } };
+static int hf_004_V1_12_070_MVS = -1;
+static int hf_004_V1_12_070_MVS_VALUE = -1;
+static const FieldPart I004_V1_12_070_MVS_VALUE = { 16, 25.0, FIELD_PART_UFLOAT, &hf_004_V1_12_070_MVS_VALUE, NULL };
+static const FieldPart *I004_V1_12_070_MVS_PARTS[] = {
+ &I004_V1_12_070_MVS_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_070_MVS = { FIXED, 2, 0, 0, &hf_004_V1_12_070_MVS, I004_V1_12_070_MVS_PARTS, { NULL } };
+static const AsterixField I004_V1_12_070 = { COMPOUND, 0, 0, 0, &hf_004_V1_12_070, NULL, { &I004_V1_12_070_TC, &I004_V1_12_070_TCA, &I004_V1_12_070_CHS, &I004_V1_12_070_MHS, &I004_V1_12_070_CVS, &I004_V1_12_070_MVS, NULL } };
+static int hf_004_V1_12_074 = -1;
+static int hf_004_V1_12_074_VALUE = -1;
+static const FieldPart I004_V1_12_074_VALUE = { 16, 32.0, FIELD_PART_FLOAT, &hf_004_V1_12_074_VALUE, NULL };
+static const FieldPart *I004_V1_12_074_PARTS[] = {
+ &I004_V1_12_074_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_074 = { FIXED, 2, 0, 0, &hf_004_V1_12_074, I004_V1_12_074_PARTS, { NULL } };
+static int hf_004_V1_12_075 = -1;
+static int hf_004_V1_12_075_VALUE = -1;
+static const FieldPart I004_V1_12_075_VALUE = { 24, 0.5, FIELD_PART_FLOAT, &hf_004_V1_12_075_VALUE, NULL };
+static const FieldPart *I004_V1_12_075_PARTS[] = {
+ &I004_V1_12_075_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_075 = { FIXED, 3, 0, 0, &hf_004_V1_12_075, I004_V1_12_075_PARTS, { NULL } };
+static int hf_004_V1_12_076 = -1;
+static int hf_004_V1_12_076_VALUE = -1;
+static const FieldPart I004_V1_12_076_VALUE = { 16, 25.0, FIELD_PART_FLOAT, &hf_004_V1_12_076_VALUE, NULL };
+static const FieldPart *I004_V1_12_076_PARTS[] = {
+ &I004_V1_12_076_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_076 = { FIXED, 2, 0, 0, &hf_004_V1_12_076, I004_V1_12_076_PARTS, { NULL } };
+static int hf_004_V1_12_100 = -1;
+static int hf_004_V1_12_100_AN = -1;
+static int hf_004_V1_12_100_AN_VALUE = -1;
+static const FieldPart I004_V1_12_100_AN_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_004_V1_12_100_AN_VALUE, NULL };
+static const FieldPart *I004_V1_12_100_AN_PARTS[] = {
+ &I004_V1_12_100_AN_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_100_AN = { FIXED, 6, 0, 0, &hf_004_V1_12_100_AN, I004_V1_12_100_AN_PARTS, { NULL } };
+static int hf_004_V1_12_100_CAN = -1;
+static int hf_004_V1_12_100_CAN_VALUE = -1;
+static const FieldPart I004_V1_12_100_CAN_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_004_V1_12_100_CAN_VALUE, NULL };
+static const FieldPart *I004_V1_12_100_CAN_PARTS[] = {
+ &I004_V1_12_100_CAN_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_100_CAN = { FIXED, 7, 0, 0, &hf_004_V1_12_100_CAN, I004_V1_12_100_CAN_PARTS, { NULL } };
+static int hf_004_V1_12_100_RT1 = -1;
+static int hf_004_V1_12_100_RT1_VALUE = -1;
+static const FieldPart I004_V1_12_100_RT1_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_004_V1_12_100_RT1_VALUE, NULL };
+static const FieldPart *I004_V1_12_100_RT1_PARTS[] = {
+ &I004_V1_12_100_RT1_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_100_RT1 = { FIXED, 7, 0, 0, &hf_004_V1_12_100_RT1, I004_V1_12_100_RT1_PARTS, { NULL } };
+static int hf_004_V1_12_100_RT2 = -1;
+static int hf_004_V1_12_100_RT2_VALUE = -1;
+static const FieldPart I004_V1_12_100_RT2_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_004_V1_12_100_RT2_VALUE, NULL };
+static const FieldPart *I004_V1_12_100_RT2_PARTS[] = {
+ &I004_V1_12_100_RT2_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_100_RT2 = { FIXED, 7, 0, 0, &hf_004_V1_12_100_RT2, I004_V1_12_100_RT2_PARTS, { NULL } };
+static int hf_004_V1_12_100_SB = -1;
+static int hf_004_V1_12_100_SB_VALUE = -1;
+static const FieldPart I004_V1_12_100_SB_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_004_V1_12_100_SB_VALUE, NULL };
+static const FieldPart *I004_V1_12_100_SB_PARTS[] = {
+ &I004_V1_12_100_SB_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_100_SB = { FIXED, 7, 0, 0, &hf_004_V1_12_100_SB, I004_V1_12_100_SB_PARTS, { NULL } };
+static int hf_004_V1_12_100_G = -1;
+static int hf_004_V1_12_100_G_VALUE = -1;
+static const FieldPart I004_V1_12_100_G_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_004_V1_12_100_G_VALUE, NULL };
+static const FieldPart *I004_V1_12_100_G_PARTS[] = {
+ &I004_V1_12_100_G_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_100_G = { FIXED, 7, 0, 0, &hf_004_V1_12_100_G, I004_V1_12_100_G_PARTS, { NULL } };
+static const AsterixField I004_V1_12_100 = { COMPOUND, 0, 0, 0, &hf_004_V1_12_100, NULL, { &I004_V1_12_100_AN, &I004_V1_12_100_CAN, &I004_V1_12_100_RT1, &I004_V1_12_100_RT2, &I004_V1_12_100_SB, &I004_V1_12_100_G, NULL } };
+static int hf_004_V1_12_110 = -1;
+static int hf_004_V1_12_110_CEN = -1;
+static const FieldPart I004_V1_12_110_CEN = { 8, 1.0, FIELD_PART_HEX, &hf_004_V1_12_110_CEN, NULL };
+static int hf_004_V1_12_110_POS = -1;
+static const FieldPart I004_V1_12_110_POS = { 8, 1.0, FIELD_PART_HEX, &hf_004_V1_12_110_POS, NULL };
+static const FieldPart *I004_V1_12_110_PARTS[] = {
+ &I004_V1_12_110_CEN,
+ &I004_V1_12_110_POS,
+ NULL
+};
+static const AsterixField I004_V1_12_110 = { REPETITIVE, 2, 1, 0, &hf_004_V1_12_110, I004_V1_12_110_PARTS, { NULL } };
+static int hf_004_V1_12_120 = -1;
+static int hf_004_V1_12_120_CN = -1;
+static int hf_004_V1_12_120_CN_MAS = -1;
+static const value_string valstr_004_V1_12_120_CN_MAS[] = {
+ { 0, "Conflict not predicted to occur in military airspace" },
+ { 1, "Conflict predicted to occur in military airspace" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_120_CN_MAS = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_120_CN_MAS, NULL };
+static int hf_004_V1_12_120_CN_CAS = -1;
+static const value_string valstr_004_V1_12_120_CN_CAS[] = {
+ { 0, "Conflict not predicted to occur in civil airspace" },
+ { 1, "Conflict predicted to occur in civil airspace" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_120_CN_CAS = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_120_CN_CAS, NULL };
+static int hf_004_V1_12_120_CN_FLD = -1;
+static const value_string valstr_004_V1_12_120_CN_FLD[] = {
+ { 0, "Aircraft are not fast diverging laterally at current time" },
+ { 1, "Aircraft are fast diverging laterally at current time" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_120_CN_FLD = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_120_CN_FLD, NULL };
+static int hf_004_V1_12_120_CN_FVD = -1;
+static const value_string valstr_004_V1_12_120_CN_FVD[] = {
+ { 0, "Aircraft are not fast diverging vertically at current time" },
+ { 1, "Aircraft are fast diverging vertically at current time" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_120_CN_FVD = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_120_CN_FVD, NULL };
+static int hf_004_V1_12_120_CN_TYPE = -1;
+static const value_string valstr_004_V1_12_120_CN_TYPE[] = {
+ { 0, "Minor separation infringement" },
+ { 1, "Major separation infringement" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_120_CN_TYPE = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_120_CN_TYPE, NULL };
+static int hf_004_V1_12_120_CN_CROSS = -1;
+static const value_string valstr_004_V1_12_120_CN_CROSS[] = {
+ { 0, "Aircraft have not crossed at starting time of conflict" },
+ { 1, "Aircraft have crossed at starting time of conflict" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_120_CN_CROSS = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_120_CN_CROSS, NULL };
+static int hf_004_V1_12_120_CN_DIV = -1;
+static const value_string valstr_004_V1_12_120_CN_DIV[] = {
+ { 0, "Aircraft are not diverging at starting time of conflict" },
+ { 1, "Aircraft are diverging at starting time of conflict" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_120_CN_DIV = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_120_CN_DIV, NULL };
+static int hf_004_V1_12_120_CN_RRC = -1;
+static const value_string valstr_004_V1_12_120_CN_RRC[] = {
+ { 0, "Default" },
+ { 1, "Runway/Runway Crossing" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_120_CN_RRC = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_120_CN_RRC, NULL };
+static int hf_004_V1_12_120_CN_RTC = -1;
+static const value_string valstr_004_V1_12_120_CN_RTC[] = {
+ { 0, "Default" },
+ { 1, "Runway/Taxiway Crossing" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_120_CN_RTC = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_120_CN_RTC, NULL };
+static int hf_004_V1_12_120_CN_MRVA = -1;
+static const value_string valstr_004_V1_12_120_CN_MRVA[] = {
+ { 0, "Default" },
+ { 1, "Msg Type 4 (MSAW) indicates MRVA" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_120_CN_MRVA = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_120_CN_MRVA, NULL };
+static int hf_004_V1_12_120_CN_VRAMCRM = -1;
+static const value_string valstr_004_V1_12_120_CN_VRAMCRM[] = {
+ { 0, "Default" },
+ { 1, "Msg Type 25 (VRAM) indicates CRM" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_120_CN_VRAMCRM = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_120_CN_VRAMCRM, NULL };
+static int hf_004_V1_12_120_CN_VRAMVRM = -1;
+static const value_string valstr_004_V1_12_120_CN_VRAMVRM[] = {
+ { 0, "Default" },
+ { 1, "Msg Type 25 (VRAM) indicates VRM" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_120_CN_VRAMVRM = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_120_CN_VRAMVRM, NULL };
+static int hf_004_V1_12_120_CN_VRAMVTM = -1;
+static const value_string valstr_004_V1_12_120_CN_VRAMVTM[] = {
+ { 0, "Default" },
+ { 1, "Msg Type 25 (VRAM) indicates VTM" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_120_CN_VRAMVTM = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_120_CN_VRAMVTM, NULL };
+static int hf_004_V1_12_120_CN_HAMHD = -1;
+static const value_string valstr_004_V1_12_120_CN_HAMHD[] = {
+ { 0, "Default" },
+ { 1, "Msg Type 29 (HAM) indicates HD" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_120_CN_HAMHD = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_120_CN_HAMHD, NULL };
+static int hf_004_V1_12_120_CN_HAMRD = -1;
+static const value_string valstr_004_V1_12_120_CN_HAMRD[] = {
+ { 0, "Default" },
+ { 1, "Msg Type 29 (HAM) indicates RD" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_120_CN_HAMRD = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_120_CN_HAMRD, NULL };
+static int hf_004_V1_12_120_CN_HAMVD = -1;
+static const value_string valstr_004_V1_12_120_CN_HAMVD[] = {
+ { 0, "Default" },
+ { 1, "Msg Type 29 (HAM) indicates VD" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_120_CN_HAMVD = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_120_CN_HAMVD, NULL };
+static int hf_004_V1_12_120_CN_DBPSMARR = -1;
+static const value_string valstr_004_V1_12_120_CN_DBPSMARR[] = {
+ { 0, "Default" },
+ { 1, "Msg Type 20 (DBPSM) indicates ARR" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_120_CN_DBPSMARR = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_120_CN_DBPSMARR, NULL };
+static int hf_004_V1_12_120_CN_DBPSMDEP = -1;
+static const value_string valstr_004_V1_12_120_CN_DBPSMDEP[] = {
+ { 0, "Default" },
+ { 1, "Msg Type 20 (DBPSM) indicates DEP" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_120_CN_DBPSMDEP = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_120_CN_DBPSMDEP, NULL };
+static int hf_004_V1_12_120_CN_DBPSMTL = -1;
+static const value_string valstr_004_V1_12_120_CN_DBPSMTL[] = {
+ { 0, "Default" },
+ { 1, "Msg Type 20 (DBPSM) indicates above TL" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_120_CN_DBPSMTL = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_120_CN_DBPSMTL, NULL };
+static int hf_004_V1_12_120_CN_AIW = -1;
+static const value_string valstr_004_V1_12_120_CN_AIW[] = {
+ { 0, "Default" },
+ { 1, "Msg Type 99 (AIW) indicates pAIW Alert" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_120_CN_AIW = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_120_CN_AIW, NULL };
+static const FieldPart *I004_V1_12_120_CN_PARTS[] = {
+ &I004_V1_12_120_CN_MAS,
+ &I004_V1_12_120_CN_CAS,
+ &I004_V1_12_120_CN_FLD,
+ &I004_V1_12_120_CN_FVD,
+ &I004_V1_12_120_CN_TYPE,
+ &I004_V1_12_120_CN_CROSS,
+ &I004_V1_12_120_CN_DIV,
+ &IXXX_FX,
+ &I004_V1_12_120_CN_RRC,
+ &I004_V1_12_120_CN_RTC,
+ &I004_V1_12_120_CN_MRVA,
+ &I004_V1_12_120_CN_VRAMCRM,
+ &I004_V1_12_120_CN_VRAMVRM,
+ &I004_V1_12_120_CN_VRAMVTM,
+ &I004_V1_12_120_CN_HAMHD,
+ &IXXX_FX,
+ &I004_V1_12_120_CN_HAMRD,
+ &I004_V1_12_120_CN_HAMVD,
+ &I004_V1_12_120_CN_DBPSMARR,
+ &I004_V1_12_120_CN_DBPSMDEP,
+ &I004_V1_12_120_CN_DBPSMTL,
+ &I004_V1_12_120_CN_AIW,
+ &IXXX_1bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I004_V1_12_120_CN = { FX, 1, 0, 0, &hf_004_V1_12_120_CN, I004_V1_12_120_CN_PARTS, { NULL } };
+static int hf_004_V1_12_120_CC = -1;
+static int hf_004_V1_12_120_CC_TID = -1;
+static const FieldPart I004_V1_12_120_CC_TID = { 4, 1.0, FIELD_PART_HEX, &hf_004_V1_12_120_CC_TID, NULL };
+static int hf_004_V1_12_120_CC_CP = -1;
+static const FieldPart I004_V1_12_120_CC_CP = { 3, 1.0, FIELD_PART_HEX, &hf_004_V1_12_120_CC_CP, NULL };
+static int hf_004_V1_12_120_CC_CS = -1;
+static const value_string valstr_004_V1_12_120_CC_CS[] = {
+ { 0, "LOW" },
+ { 1, "HIGH" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_120_CC_CS = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_120_CC_CS, NULL };
+static const FieldPart *I004_V1_12_120_CC_PARTS[] = {
+ &I004_V1_12_120_CC_TID,
+ &I004_V1_12_120_CC_CP,
+ &I004_V1_12_120_CC_CS,
+ NULL
+};
+static const AsterixField I004_V1_12_120_CC = { FIXED, 1, 0, 0, &hf_004_V1_12_120_CC, I004_V1_12_120_CC_PARTS, { NULL } };
+static int hf_004_V1_12_120_CP = -1;
+static int hf_004_V1_12_120_CP_VALUE = -1;
+static const FieldPart I004_V1_12_120_CP_VALUE = { 8, 0.5, FIELD_PART_UFLOAT, &hf_004_V1_12_120_CP_VALUE, NULL };
+static const FieldPart *I004_V1_12_120_CP_PARTS[] = {
+ &I004_V1_12_120_CP_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_120_CP = { FIXED, 1, 0, 0, &hf_004_V1_12_120_CP, I004_V1_12_120_CP_PARTS, { NULL } };
+static int hf_004_V1_12_120_CD = -1;
+static int hf_004_V1_12_120_CD_VALUE = -1;
+static const FieldPart I004_V1_12_120_CD_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_004_V1_12_120_CD_VALUE, NULL };
+static const FieldPart *I004_V1_12_120_CD_PARTS[] = {
+ &I004_V1_12_120_CD_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_120_CD = { FIXED, 3, 0, 0, &hf_004_V1_12_120_CD, I004_V1_12_120_CD_PARTS, { NULL } };
+static const AsterixField I004_V1_12_120 = { COMPOUND, 0, 0, 0, &hf_004_V1_12_120, NULL, { &I004_V1_12_120_CN, &I004_V1_12_120_CC, &I004_V1_12_120_CP, &I004_V1_12_120_CD, NULL } };
+static int hf_004_V1_12_170 = -1;
+static int hf_004_V1_12_170_AI1 = -1;
+static int hf_004_V1_12_170_AI1_VALUE = -1;
+static const FieldPart I004_V1_12_170_AI1_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_004_V1_12_170_AI1_VALUE, NULL };
+static const FieldPart *I004_V1_12_170_AI1_PARTS[] = {
+ &I004_V1_12_170_AI1_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_170_AI1 = { FIXED, 7, 0, 0, &hf_004_V1_12_170_AI1, I004_V1_12_170_AI1_PARTS, { NULL } };
+static int hf_004_V1_12_170_M31 = -1;
+static int hf_004_V1_12_170_M31_MODE3A = -1;
+static const FieldPart I004_V1_12_170_M31_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_004_V1_12_170_M31_MODE3A, NULL };
+static const FieldPart *I004_V1_12_170_M31_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I004_V1_12_170_M31_MODE3A,
+ NULL
+};
+static const AsterixField I004_V1_12_170_M31 = { FIXED, 2, 0, 0, &hf_004_V1_12_170_M31, I004_V1_12_170_M31_PARTS, { NULL } };
+static int hf_004_V1_12_170_CPW = -1;
+static int hf_004_V1_12_170_CPW_LAT = -1;
+static const FieldPart I004_V1_12_170_CPW_LAT = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_004_V1_12_170_CPW_LAT, NULL };
+static int hf_004_V1_12_170_CPW_LON = -1;
+static const FieldPart I004_V1_12_170_CPW_LON = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_004_V1_12_170_CPW_LON, NULL };
+static int hf_004_V1_12_170_CPW_ALT = -1;
+static const FieldPart I004_V1_12_170_CPW_ALT = { 16, 25.0, FIELD_PART_FLOAT, &hf_004_V1_12_170_CPW_ALT, NULL };
+static const FieldPart *I004_V1_12_170_CPW_PARTS[] = {
+ &I004_V1_12_170_CPW_LAT,
+ &I004_V1_12_170_CPW_LON,
+ &I004_V1_12_170_CPW_ALT,
+ NULL
+};
+static const AsterixField I004_V1_12_170_CPW = { FIXED, 10, 0, 0, &hf_004_V1_12_170_CPW, I004_V1_12_170_CPW_PARTS, { NULL } };
+static int hf_004_V1_12_170_CPC = -1;
+static int hf_004_V1_12_170_CPC_X = -1;
+static const FieldPart I004_V1_12_170_CPC_X = { 24, 0.5, FIELD_PART_FLOAT, &hf_004_V1_12_170_CPC_X, NULL };
+static int hf_004_V1_12_170_CPC_Y = -1;
+static const FieldPart I004_V1_12_170_CPC_Y = { 24, 0.5, FIELD_PART_FLOAT, &hf_004_V1_12_170_CPC_Y, NULL };
+static int hf_004_V1_12_170_CPC_Z = -1;
+static const FieldPart I004_V1_12_170_CPC_Z = { 16, 25.0, FIELD_PART_FLOAT, &hf_004_V1_12_170_CPC_Z, NULL };
+static const FieldPart *I004_V1_12_170_CPC_PARTS[] = {
+ &I004_V1_12_170_CPC_X,
+ &I004_V1_12_170_CPC_Y,
+ &I004_V1_12_170_CPC_Z,
+ NULL
+};
+static const AsterixField I004_V1_12_170_CPC = { FIXED, 8, 0, 0, &hf_004_V1_12_170_CPC, I004_V1_12_170_CPC_PARTS, { NULL } };
+static int hf_004_V1_12_170_TT1 = -1;
+static int hf_004_V1_12_170_TT1_VALUE = -1;
+static const FieldPart I004_V1_12_170_TT1_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_004_V1_12_170_TT1_VALUE, NULL };
+static const FieldPart *I004_V1_12_170_TT1_PARTS[] = {
+ &I004_V1_12_170_TT1_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_170_TT1 = { FIXED, 3, 0, 0, &hf_004_V1_12_170_TT1, I004_V1_12_170_TT1_PARTS, { NULL } };
+static int hf_004_V1_12_170_DT1 = -1;
+static int hf_004_V1_12_170_DT1_VALUE = -1;
+static const FieldPart I004_V1_12_170_DT1_VALUE = { 16, 0.5, FIELD_PART_UFLOAT, &hf_004_V1_12_170_DT1_VALUE, NULL };
+static const FieldPart *I004_V1_12_170_DT1_PARTS[] = {
+ &I004_V1_12_170_DT1_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_170_DT1 = { FIXED, 2, 0, 0, &hf_004_V1_12_170_DT1, I004_V1_12_170_DT1_PARTS, { NULL } };
+static int hf_004_V1_12_170_AC1 = -1;
+static int hf_004_V1_12_170_AC1_GATOAT = -1;
+static const value_string valstr_004_V1_12_170_AC1_GATOAT[] = {
+ { 0, "Unknown" },
+ { 1, "General Air Traffic" },
+ { 2, "Operational Air Traffic" },
+ { 3, "Not applicable" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_170_AC1_GATOAT = { 2, 1.0, FIELD_PART_UINT, &hf_004_V1_12_170_AC1_GATOAT, NULL };
+static int hf_004_V1_12_170_AC1_FR1FR2 = -1;
+static const value_string valstr_004_V1_12_170_AC1_FR1FR2[] = {
+ { 0, "Instrument Flight Rules" },
+ { 1, "Visual Flight rules" },
+ { 2, "Not applicable" },
+ { 3, "Controlled Visual Flight Rules" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_170_AC1_FR1FR2 = { 2, 1.0, FIELD_PART_UINT, &hf_004_V1_12_170_AC1_FR1FR2, NULL };
+static int hf_004_V1_12_170_AC1_RVSM = -1;
+static const value_string valstr_004_V1_12_170_AC1_RVSM[] = {
+ { 0, "Unknown" },
+ { 1, "Approved" },
+ { 2, "Exempt" },
+ { 3, "Not Approved" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_170_AC1_RVSM = { 2, 1.0, FIELD_PART_UINT, &hf_004_V1_12_170_AC1_RVSM, NULL };
+static int hf_004_V1_12_170_AC1_HPR = -1;
+static const value_string valstr_004_V1_12_170_AC1_HPR[] = {
+ { 0, "Normal Priority Flight" },
+ { 1, "High Priority Flight" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_170_AC1_HPR = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_170_AC1_HPR, NULL };
+static int hf_004_V1_12_170_AC1_CDM = -1;
+static const value_string valstr_004_V1_12_170_AC1_CDM[] = {
+ { 0, "Maintaining" },
+ { 1, "Climbing" },
+ { 2, "Descending" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_170_AC1_CDM = { 2, 1.0, FIELD_PART_UINT, &hf_004_V1_12_170_AC1_CDM, NULL };
+static int hf_004_V1_12_170_AC1_PRI = -1;
+static const value_string valstr_004_V1_12_170_AC1_PRI[] = {
+ { 0, "Non primary target" },
+ { 1, "Primary target" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_170_AC1_PRI = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_170_AC1_PRI, NULL };
+static int hf_004_V1_12_170_AC1_GV = -1;
+static const value_string valstr_004_V1_12_170_AC1_GV[] = {
+ { 0, "Default" },
+ { 1, "Ground Vehicle" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_170_AC1_GV = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_170_AC1_GV, NULL };
+static const FieldPart *I004_V1_12_170_AC1_PARTS[] = {
+ &I004_V1_12_170_AC1_GATOAT,
+ &I004_V1_12_170_AC1_FR1FR2,
+ &I004_V1_12_170_AC1_RVSM,
+ &I004_V1_12_170_AC1_HPR,
+ &IXXX_FX,
+ &I004_V1_12_170_AC1_CDM,
+ &I004_V1_12_170_AC1_PRI,
+ &I004_V1_12_170_AC1_GV,
+ &IXXX_3bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I004_V1_12_170_AC1 = { FX, 1, 0, 0, &hf_004_V1_12_170_AC1, I004_V1_12_170_AC1_PARTS, { NULL } };
+static int hf_004_V1_12_170_MS1 = -1;
+static int hf_004_V1_12_170_MS1_VALUE = -1;
+static const FieldPart I004_V1_12_170_MS1_VALUE = { 48, 1.0, FIELD_PART_ASCII, &hf_004_V1_12_170_MS1_VALUE, NULL };
+static const FieldPart *I004_V1_12_170_MS1_PARTS[] = {
+ &I004_V1_12_170_MS1_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_170_MS1 = { FIXED, 6, 0, 0, &hf_004_V1_12_170_MS1, I004_V1_12_170_MS1_PARTS, { NULL } };
+static int hf_004_V1_12_170_FP1 = -1;
+static int hf_004_V1_12_170_FP1_NBR = -1;
+static const FieldPart I004_V1_12_170_FP1_NBR = { 27, 1.0, FIELD_PART_UFLOAT, &hf_004_V1_12_170_FP1_NBR, NULL };
+static const FieldPart *I004_V1_12_170_FP1_PARTS[] = {
+ &IXXX_5bit_spare,
+ &I004_V1_12_170_FP1_NBR,
+ NULL
+};
+static const AsterixField I004_V1_12_170_FP1 = { FIXED, 4, 0, 0, &hf_004_V1_12_170_FP1, I004_V1_12_170_FP1_PARTS, { NULL } };
+static int hf_004_V1_12_170_CF1 = -1;
+static int hf_004_V1_12_170_CF1_VALUE = -1;
+static const FieldPart I004_V1_12_170_CF1_VALUE = { 16, 0.25, FIELD_PART_UFLOAT, &hf_004_V1_12_170_CF1_VALUE, NULL };
+static const FieldPart *I004_V1_12_170_CF1_PARTS[] = {
+ &I004_V1_12_170_CF1_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_170_CF1 = { FIXED, 2, 0, 0, &hf_004_V1_12_170_CF1, I004_V1_12_170_CF1_PARTS, { NULL } };
+static const AsterixField I004_V1_12_170 = { COMPOUND, 0, 0, 0, &hf_004_V1_12_170, NULL, { &I004_V1_12_170_AI1, &I004_V1_12_170_M31, &I004_V1_12_170_CPW, &I004_V1_12_170_CPC, &I004_V1_12_170_TT1, &I004_V1_12_170_DT1, &I004_V1_12_170_AC1, &I004_V1_12_170_MS1, &I004_V1_12_170_FP1, &I004_V1_12_170_CF1, NULL } };
+static int hf_004_V1_12_171 = -1;
+static int hf_004_V1_12_171_AI2 = -1;
+static int hf_004_V1_12_171_AI2_VALUE = -1;
+static const FieldPart I004_V1_12_171_AI2_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_004_V1_12_171_AI2_VALUE, NULL };
+static const FieldPart *I004_V1_12_171_AI2_PARTS[] = {
+ &I004_V1_12_171_AI2_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_171_AI2 = { FIXED, 7, 0, 0, &hf_004_V1_12_171_AI2, I004_V1_12_171_AI2_PARTS, { NULL } };
+static int hf_004_V1_12_171_M32 = -1;
+static int hf_004_V1_12_171_M32_MODE3A = -1;
+static const FieldPart I004_V1_12_171_M32_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_004_V1_12_171_M32_MODE3A, NULL };
+static const FieldPart *I004_V1_12_171_M32_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I004_V1_12_171_M32_MODE3A,
+ NULL
+};
+static const AsterixField I004_V1_12_171_M32 = { FIXED, 2, 0, 0, &hf_004_V1_12_171_M32, I004_V1_12_171_M32_PARTS, { NULL } };
+static int hf_004_V1_12_171_CPW = -1;
+static int hf_004_V1_12_171_CPW_LAT = -1;
+static const FieldPart I004_V1_12_171_CPW_LAT = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_004_V1_12_171_CPW_LAT, NULL };
+static int hf_004_V1_12_171_CPW_LON = -1;
+static const FieldPart I004_V1_12_171_CPW_LON = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_004_V1_12_171_CPW_LON, NULL };
+static int hf_004_V1_12_171_CPW_ALT = -1;
+static const FieldPart I004_V1_12_171_CPW_ALT = { 16, 25.0, FIELD_PART_FLOAT, &hf_004_V1_12_171_CPW_ALT, NULL };
+static const FieldPart *I004_V1_12_171_CPW_PARTS[] = {
+ &I004_V1_12_171_CPW_LAT,
+ &I004_V1_12_171_CPW_LON,
+ &I004_V1_12_171_CPW_ALT,
+ NULL
+};
+static const AsterixField I004_V1_12_171_CPW = { FIXED, 10, 0, 0, &hf_004_V1_12_171_CPW, I004_V1_12_171_CPW_PARTS, { NULL } };
+static int hf_004_V1_12_171_CPL = -1;
+static int hf_004_V1_12_171_CPL_X = -1;
+static const FieldPart I004_V1_12_171_CPL_X = { 24, 0.5, FIELD_PART_FLOAT, &hf_004_V1_12_171_CPL_X, NULL };
+static int hf_004_V1_12_171_CPL_Y = -1;
+static const FieldPart I004_V1_12_171_CPL_Y = { 24, 0.5, FIELD_PART_FLOAT, &hf_004_V1_12_171_CPL_Y, NULL };
+static int hf_004_V1_12_171_CPL_Z = -1;
+static const FieldPart I004_V1_12_171_CPL_Z = { 16, 25.0, FIELD_PART_FLOAT, &hf_004_V1_12_171_CPL_Z, NULL };
+static const FieldPart *I004_V1_12_171_CPL_PARTS[] = {
+ &I004_V1_12_171_CPL_X,
+ &I004_V1_12_171_CPL_Y,
+ &I004_V1_12_171_CPL_Z,
+ NULL
+};
+static const AsterixField I004_V1_12_171_CPL = { FIXED, 8, 0, 0, &hf_004_V1_12_171_CPL, I004_V1_12_171_CPL_PARTS, { NULL } };
+static int hf_004_V1_12_171_TT2 = -1;
+static int hf_004_V1_12_171_TT2_VALUE = -1;
+static const FieldPart I004_V1_12_171_TT2_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_004_V1_12_171_TT2_VALUE, NULL };
+static const FieldPart *I004_V1_12_171_TT2_PARTS[] = {
+ &I004_V1_12_171_TT2_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_171_TT2 = { FIXED, 3, 0, 0, &hf_004_V1_12_171_TT2, I004_V1_12_171_TT2_PARTS, { NULL } };
+static int hf_004_V1_12_171_DT2 = -1;
+static int hf_004_V1_12_171_DT2_VALUE = -1;
+static const FieldPart I004_V1_12_171_DT2_VALUE = { 16, 0.5, FIELD_PART_UFLOAT, &hf_004_V1_12_171_DT2_VALUE, NULL };
+static const FieldPart *I004_V1_12_171_DT2_PARTS[] = {
+ &I004_V1_12_171_DT2_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_171_DT2 = { FIXED, 2, 0, 0, &hf_004_V1_12_171_DT2, I004_V1_12_171_DT2_PARTS, { NULL } };
+static int hf_004_V1_12_171_AC2 = -1;
+static int hf_004_V1_12_171_AC2_GATOAT = -1;
+static const value_string valstr_004_V1_12_171_AC2_GATOAT[] = {
+ { 0, "Unknown" },
+ { 1, "General Air Traffic" },
+ { 2, "Operational Air Traffic" },
+ { 3, "Not applicable" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_171_AC2_GATOAT = { 2, 1.0, FIELD_PART_UINT, &hf_004_V1_12_171_AC2_GATOAT, NULL };
+static int hf_004_V1_12_171_AC2_FR1FR2 = -1;
+static const value_string valstr_004_V1_12_171_AC2_FR1FR2[] = {
+ { 0, "Instrument Flight Rules" },
+ { 1, "Visual Flight rules" },
+ { 2, "Not applicable" },
+ { 3, "Controlled Visual Flight Rules" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_171_AC2_FR1FR2 = { 2, 1.0, FIELD_PART_UINT, &hf_004_V1_12_171_AC2_FR1FR2, NULL };
+static int hf_004_V1_12_171_AC2_RVSM = -1;
+static const value_string valstr_004_V1_12_171_AC2_RVSM[] = {
+ { 0, "Unknown" },
+ { 1, "Approved" },
+ { 2, "Exempt" },
+ { 3, "Not Approved" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_171_AC2_RVSM = { 2, 1.0, FIELD_PART_UINT, &hf_004_V1_12_171_AC2_RVSM, NULL };
+static int hf_004_V1_12_171_AC2_HPR = -1;
+static const value_string valstr_004_V1_12_171_AC2_HPR[] = {
+ { 0, "Normal Priority Flight" },
+ { 1, "High Priority Flight" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_171_AC2_HPR = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_171_AC2_HPR, NULL };
+static int hf_004_V1_12_171_AC2_CDM = -1;
+static const value_string valstr_004_V1_12_171_AC2_CDM[] = {
+ { 0, "Maintaining" },
+ { 1, "Climbing" },
+ { 2, "Descending" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_171_AC2_CDM = { 2, 1.0, FIELD_PART_UINT, &hf_004_V1_12_171_AC2_CDM, NULL };
+static int hf_004_V1_12_171_AC2_PRI = -1;
+static const value_string valstr_004_V1_12_171_AC2_PRI[] = {
+ { 0, "Non primary target" },
+ { 1, "Primary target" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_171_AC2_PRI = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_171_AC2_PRI, NULL };
+static int hf_004_V1_12_171_AC2_GV = -1;
+static const value_string valstr_004_V1_12_171_AC2_GV[] = {
+ { 0, "Default" },
+ { 1, "Ground Vehicle" },
+ { 0, NULL }
+};
+static const FieldPart I004_V1_12_171_AC2_GV = { 1, 1.0, FIELD_PART_UINT, &hf_004_V1_12_171_AC2_GV, NULL };
+static const FieldPart *I004_V1_12_171_AC2_PARTS[] = {
+ &I004_V1_12_171_AC2_GATOAT,
+ &I004_V1_12_171_AC2_FR1FR2,
+ &I004_V1_12_171_AC2_RVSM,
+ &I004_V1_12_171_AC2_HPR,
+ &IXXX_FX,
+ &I004_V1_12_171_AC2_CDM,
+ &I004_V1_12_171_AC2_PRI,
+ &I004_V1_12_171_AC2_GV,
+ &IXXX_3bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I004_V1_12_171_AC2 = { FX, 1, 0, 0, &hf_004_V1_12_171_AC2, I004_V1_12_171_AC2_PARTS, { NULL } };
+static int hf_004_V1_12_171_MS2 = -1;
+static int hf_004_V1_12_171_MS2_VALUE = -1;
+static const FieldPart I004_V1_12_171_MS2_VALUE = { 48, 1.0, FIELD_PART_ASCII, &hf_004_V1_12_171_MS2_VALUE, NULL };
+static const FieldPart *I004_V1_12_171_MS2_PARTS[] = {
+ &I004_V1_12_171_MS2_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_171_MS2 = { FIXED, 6, 0, 0, &hf_004_V1_12_171_MS2, I004_V1_12_171_MS2_PARTS, { NULL } };
+static int hf_004_V1_12_171_FP2 = -1;
+static int hf_004_V1_12_171_FP2_NBR = -1;
+static const FieldPart I004_V1_12_171_FP2_NBR = { 27, 1.0, FIELD_PART_UFLOAT, &hf_004_V1_12_171_FP2_NBR, NULL };
+static const FieldPart *I004_V1_12_171_FP2_PARTS[] = {
+ &IXXX_5bit_spare,
+ &I004_V1_12_171_FP2_NBR,
+ NULL
+};
+static const AsterixField I004_V1_12_171_FP2 = { FIXED, 4, 0, 0, &hf_004_V1_12_171_FP2, I004_V1_12_171_FP2_PARTS, { NULL } };
+static int hf_004_V1_12_171_CF2 = -1;
+static int hf_004_V1_12_171_CF2_VALUE = -1;
+static const FieldPart I004_V1_12_171_CF2_VALUE = { 16, 0.25, FIELD_PART_UFLOAT, &hf_004_V1_12_171_CF2_VALUE, NULL };
+static const FieldPart *I004_V1_12_171_CF2_PARTS[] = {
+ &I004_V1_12_171_CF2_VALUE,
+ NULL
+};
+static const AsterixField I004_V1_12_171_CF2 = { FIXED, 2, 0, 0, &hf_004_V1_12_171_CF2, I004_V1_12_171_CF2_PARTS, { NULL } };
+static const AsterixField I004_V1_12_171 = { COMPOUND, 0, 0, 0, &hf_004_V1_12_171, NULL, { &I004_V1_12_171_AI2, &I004_V1_12_171_M32, &I004_V1_12_171_CPW, &I004_V1_12_171_CPL, &I004_V1_12_171_TT2, &I004_V1_12_171_DT2, &I004_V1_12_171_AC2, &I004_V1_12_171_MS2, &I004_V1_12_171_FP2, &I004_V1_12_171_CF2, NULL } };
+static int hf_004_V1_12_RE = -1;
+static const AsterixField I004_V1_12_RE = { EXP, 0, 0, 1, &hf_004_V1_12_RE, NULL, { NULL } };
+static int hf_004_V1_12_SP = -1;
+static const AsterixField I004_V1_12_SP = { EXP, 0, 0, 1, &hf_004_V1_12_SP, NULL, { NULL } };
+
+/* Category 004, edition 1.12 (latest) */
+static int hf_004_000 = -1;
+static int hf_004_000_VALUE = -1;
+static const value_string valstr_004_000_VALUE[] = {
+ { 1, "Alive Message (AM)" },
+ { 2, "Route Adherence Monitor Longitudinal Deviation (RAMLD)" },
+ { 3, "Route Adherence Monitor Heading Deviation (RAMHD)" },
+ { 4, "Minimum Safe Altitude Warning (MSAW)" },
+ { 5, "Area Proximity Warning (APW)" },
+ { 6, "Clearance Level Adherence Monitor (CLAM)" },
+ { 7, "Short Term Conflict Alert (STCA)" },
+ { 8, "Approach Path Monitor (APM)" },
+ { 9, "RIMCAS Arrival / Landing Monitor (ALM)" },
+ { 10, "RIMCAS Arrival / Departure Wrong Runway Alert (WRA)" },
+ { 11, "RIMCAS Arrival / Departure Opposite Traffic Alert (OTA)" },
+ { 12, "RIMCAS Departure Monitor (RDM)" },
+ { 13, "RIMCAS Runway / Taxiway Crossing Monitor (RCM)" },
+ { 14, "RIMCAS Taxiway Separation Monitor (TSM)" },
+ { 15, "RIMCAS Unauthorized Taxiway Movement Monitor(UTMM)" },
+ { 16, "RIMCAS Stop Bar Overrun Alert (SBOA)" },
+ { 17, "End Of Conflict (EOC)" },
+ { 18, "ACAS Resolution Advisory (ACASRA)" },
+ { 19, "Near Term Conflict Alert (NTCA)" },
+ { 20, "Downlinked Barometric Pressure Setting Monitor (DBPSM)" },
+ { 21, "Speed Adherence Monitor (SAM)" },
+ { 22, "Outside Controlled Airspace Tool (OCAT)" },
+ { 23, "Vertical Conflict Detection (VCD)" },
+ { 24, "Vertical Rate Adherence Monitor (VRAM)" },
+ { 25, "Cleared Heading Adherence Monitor (CHAM)" },
+ { 26, "Downlinked Selected Altitude Monitor (DSAM)" },
+ { 27, "Holding Adherence Monitor (HAM)" },
+ { 28, "Vertical Path Monitor (VPM)" },
+ { 29, "RIMCAS Taxiway Traffic Alert (TTA)" },
+ { 30, "RIMCAS Arrival/Departure Close Runway Alert (CRA)" },
+ { 31, "RIMCAS Arrival/Departure Aircraft Separation Monitor (ASM)" },
+ { 32, "RIMCAS ILS Area Violation Monitor (IAVM)" },
+ { 33, "Final Target Distance Indicator (FTD)" },
+ { 34, "Initial Target Distance Indicator (ITD)" },
+ { 35, "Wake Vortex Indicator Infringement Alert (IIA)" },
+ { 36, "Sequence Warning (SQW)" },
+ { 37, "Catch Up Warning (CUW)" },
+ { 38, "Conflicting ATC Clearances (CATC)" },
+ { 39, "No ATC Clearance (NOCLR)" },
+ { 40, "Aircraft Not Moving despite ATC Clearance (NOMOV)" },
+ { 41, "Aircraft leaving/entering the aerodrome area without proper handover (NOH)" },
+ { 42, "Wrong Runway or Taxiway Type (WRTY)" },
+ { 43, "Stand Occupied (STOCC)" },
+ { 44, "Ongoing Alert (ONGOING)" },
+ { 97, "Lost Track Warning (LTW)" },
+ { 98, "Holding Volume Infringement (HVI)" },
+ { 99, "Airspace Infringement Warning (AIW)" },
+ { 0, NULL }
+};
+static const FieldPart I004_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_004_000_VALUE, NULL };
+static const FieldPart *I004_000_PARTS[] = {
+ &I004_000_VALUE,
+ NULL
+};
+static const AsterixField I004_000 = { FIXED, 1, 0, 0, &hf_004_000, I004_000_PARTS, { NULL } };
+static int hf_004_010 = -1;
+static int hf_004_010_SAC = -1;
+static const FieldPart I004_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_004_010_SAC, NULL };
+static int hf_004_010_SIC = -1;
+static const FieldPart I004_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_004_010_SIC, NULL };
+static const FieldPart *I004_010_PARTS[] = {
+ &I004_010_SAC,
+ &I004_010_SIC,
+ NULL
+};
+static const AsterixField I004_010 = { FIXED, 2, 0, 0, &hf_004_010, I004_010_PARTS, { NULL } };
+static int hf_004_015 = -1;
+static int hf_004_015_SAC = -1;
+static const FieldPart I004_015_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_004_015_SAC, NULL };
+static int hf_004_015_SIC = -1;
+static const FieldPart I004_015_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_004_015_SIC, NULL };
+static const FieldPart *I004_015_PARTS[] = {
+ &I004_015_SAC,
+ &I004_015_SIC,
+ NULL
+};
+static const AsterixField I004_015 = { REPETITIVE, 2, 1, 0, &hf_004_015, I004_015_PARTS, { NULL } };
+static int hf_004_020 = -1;
+static int hf_004_020_VALUE = -1;
+static const FieldPart I004_020_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_004_020_VALUE, NULL };
+static const FieldPart *I004_020_PARTS[] = {
+ &I004_020_VALUE,
+ NULL
+};
+static const AsterixField I004_020 = { FIXED, 3, 0, 0, &hf_004_020, I004_020_PARTS, { NULL } };
+static int hf_004_030 = -1;
+static int hf_004_030_VALUE = -1;
+static const FieldPart I004_030_VALUE = { 16, 1.0, FIELD_PART_HEX, &hf_004_030_VALUE, NULL };
+static const FieldPart *I004_030_PARTS[] = {
+ &I004_030_VALUE,
+ NULL
+};
+static const AsterixField I004_030 = { FIXED, 2, 0, 0, &hf_004_030, I004_030_PARTS, { NULL } };
+static int hf_004_035 = -1;
+static int hf_004_035_VALUE = -1;
+static const FieldPart I004_035_VALUE = { 16, 1.0, FIELD_PART_HEX, &hf_004_035_VALUE, NULL };
+static const FieldPart *I004_035_PARTS[] = {
+ &I004_035_VALUE,
+ NULL
+};
+static const AsterixField I004_035 = { FIXED, 2, 0, 0, &hf_004_035, I004_035_PARTS, { NULL } };
+static int hf_004_040 = -1;
+static int hf_004_040_VALUE = -1;
+static const FieldPart I004_040_VALUE = { 16, 1.0, FIELD_PART_HEX, &hf_004_040_VALUE, NULL };
+static const FieldPart *I004_040_PARTS[] = {
+ &I004_040_VALUE,
+ NULL
+};
+static const AsterixField I004_040 = { FIXED, 2, 0, 0, &hf_004_040, I004_040_PARTS, { NULL } };
+static int hf_004_045 = -1;
+static int hf_004_045_STAT = -1;
+static const FieldPart I004_045_STAT = { 3, 1.0, FIELD_PART_HEX, &hf_004_045_STAT, NULL };
+static const FieldPart *I004_045_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I004_045_STAT,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I004_045 = { FIXED, 1, 0, 0, &hf_004_045, I004_045_PARTS, { NULL } };
+static int hf_004_060 = -1;
+static int hf_004_060_MRVA = -1;
+static const value_string valstr_004_060_MRVA[] = {
+ { 0, "Default" },
+ { 1, "MRVA function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_MRVA = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_MRVA, NULL };
+static int hf_004_060_RAMLD = -1;
+static const value_string valstr_004_060_RAMLD[] = {
+ { 0, "Default" },
+ { 1, "RAMLD function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_RAMLD = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_RAMLD, NULL };
+static int hf_004_060_RAMHD = -1;
+static const value_string valstr_004_060_RAMHD[] = {
+ { 0, "Default" },
+ { 1, "RAMHD function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_RAMHD = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_RAMHD, NULL };
+static int hf_004_060_MSAW = -1;
+static const value_string valstr_004_060_MSAW[] = {
+ { 0, "Default" },
+ { 1, "MSAW function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_MSAW = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_MSAW, NULL };
+static int hf_004_060_APW = -1;
+static const value_string valstr_004_060_APW[] = {
+ { 0, "Default" },
+ { 1, "APW function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_APW = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_APW, NULL };
+static int hf_004_060_CLAM = -1;
+static const value_string valstr_004_060_CLAM[] = {
+ { 0, "Default" },
+ { 1, "CLAM function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_CLAM = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_CLAM, NULL };
+static int hf_004_060_STCA = -1;
+static const value_string valstr_004_060_STCA[] = {
+ { 0, "Default" },
+ { 1, "STCA function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_STCA = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_STCA, NULL };
+static int hf_004_060_APM = -1;
+static const value_string valstr_004_060_APM[] = {
+ { 0, "Default" },
+ { 1, "APM function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_APM = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_APM, NULL };
+static int hf_004_060_RIMCA = -1;
+static const value_string valstr_004_060_RIMCA[] = {
+ { 0, "Default" },
+ { 1, "RIMCA function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_RIMCA = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_RIMCA, NULL };
+static int hf_004_060_ACASRA = -1;
+static const value_string valstr_004_060_ACASRA[] = {
+ { 0, "Default" },
+ { 1, "ACAS RA function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_ACASRA = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_ACASRA, NULL };
+static int hf_004_060_NTCA = -1;
+static const value_string valstr_004_060_NTCA[] = {
+ { 0, "Default" },
+ { 1, "NTCA function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_NTCA = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_NTCA, NULL };
+static int hf_004_060_DG = -1;
+static const value_string valstr_004_060_DG[] = {
+ { 0, "Default" },
+ { 1, "System degraded" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_DG = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_DG, NULL };
+static int hf_004_060_OF = -1;
+static const value_string valstr_004_060_OF[] = {
+ { 0, "Default" },
+ { 1, "Overflow error" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_OF = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_OF, NULL };
+static int hf_004_060_OL = -1;
+static const value_string valstr_004_060_OL[] = {
+ { 0, "Default" },
+ { 1, "Overload error" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_OL = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_OL, NULL };
+static int hf_004_060_AIW = -1;
+static const value_string valstr_004_060_AIW[] = {
+ { 0, "Default" },
+ { 1, "AIW function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_AIW = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_AIW, NULL };
+static int hf_004_060_PAIW = -1;
+static const value_string valstr_004_060_PAIW[] = {
+ { 0, "Default" },
+ { 1, "PAIW function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_PAIW = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_PAIW, NULL };
+static int hf_004_060_OCAT = -1;
+static const value_string valstr_004_060_OCAT[] = {
+ { 0, "Default" },
+ { 1, "OCAT function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_OCAT = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_OCAT, NULL };
+static int hf_004_060_SAM = -1;
+static const value_string valstr_004_060_SAM[] = {
+ { 0, "Default" },
+ { 1, "SAM function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_SAM = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_SAM, NULL };
+static int hf_004_060_VCD = -1;
+static const value_string valstr_004_060_VCD[] = {
+ { 0, "Default" },
+ { 1, "VCD function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_VCD = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_VCD, NULL };
+static int hf_004_060_CHAM = -1;
+static const value_string valstr_004_060_CHAM[] = {
+ { 0, "Default" },
+ { 1, "CHAM function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_CHAM = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_CHAM, NULL };
+static int hf_004_060_DSAM = -1;
+static const value_string valstr_004_060_DSAM[] = {
+ { 0, "Default" },
+ { 1, "DSAM function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_DSAM = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_DSAM, NULL };
+static int hf_004_060_DBPSMARR = -1;
+static const value_string valstr_004_060_DBPSMARR[] = {
+ { 0, "Default" },
+ { 1, "DBPSM ARR sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_DBPSMARR = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_DBPSMARR, NULL };
+static int hf_004_060_DBPSMDEP = -1;
+static const value_string valstr_004_060_DBPSMDEP[] = {
+ { 0, "Default" },
+ { 1, "DBPSM DEP sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_DBPSMDEP = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_DBPSMDEP, NULL };
+static int hf_004_060_DBPSMTL = -1;
+static const value_string valstr_004_060_DBPSMTL[] = {
+ { 0, "Default" },
+ { 1, "DBPSM TL sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_DBPSMTL = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_DBPSMTL, NULL };
+static int hf_004_060_VRAMCRM = -1;
+static const value_string valstr_004_060_VRAMCRM[] = {
+ { 0, "Default" },
+ { 1, "VRAM CRM sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_VRAMCRM = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_VRAMCRM, NULL };
+static int hf_004_060_VRAMVTM = -1;
+static const value_string valstr_004_060_VRAMVTM[] = {
+ { 0, "Default" },
+ { 1, "VRAM VTM sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_VRAMVTM = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_VRAMVTM, NULL };
+static int hf_004_060_VRAMVRM = -1;
+static const value_string valstr_004_060_VRAMVRM[] = {
+ { 0, "Default" },
+ { 1, "VRAM VRM sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_VRAMVRM = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_VRAMVRM, NULL };
+static int hf_004_060_HAMHD = -1;
+static const value_string valstr_004_060_HAMHD[] = {
+ { 0, "Default" },
+ { 1, "HAM HD sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_HAMHD = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_HAMHD, NULL };
+static int hf_004_060_HAMRD = -1;
+static const value_string valstr_004_060_HAMRD[] = {
+ { 0, "Default" },
+ { 1, "HAM RD sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_HAMRD = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_HAMRD, NULL };
+static int hf_004_060_HAMVD = -1;
+static const value_string valstr_004_060_HAMVD[] = {
+ { 0, "Default" },
+ { 1, "HAM VD sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_HAMVD = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_HAMVD, NULL };
+static int hf_004_060_HVI = -1;
+static const value_string valstr_004_060_HVI[] = {
+ { 0, "Default" },
+ { 1, "HVI function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_HVI = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_HVI, NULL };
+static int hf_004_060_LTW = -1;
+static const value_string valstr_004_060_LTW[] = {
+ { 0, "Default" },
+ { 1, "LTW function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_LTW = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_LTW, NULL };
+static int hf_004_060_VPM = -1;
+static const value_string valstr_004_060_VPM[] = {
+ { 0, "Default" },
+ { 1, "VPM function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_VPM = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_VPM, NULL };
+static int hf_004_060_TTA = -1;
+static const value_string valstr_004_060_TTA[] = {
+ { 0, "Default" },
+ { 1, "TTA function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_TTA = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_TTA, NULL };
+static int hf_004_060_CRA = -1;
+static const value_string valstr_004_060_CRA[] = {
+ { 0, "Default" },
+ { 1, "CRA function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_CRA = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_CRA, NULL };
+static int hf_004_060_ASM = -1;
+static const value_string valstr_004_060_ASM[] = {
+ { 0, "Default" },
+ { 1, "ASM sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_ASM = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_ASM, NULL };
+static int hf_004_060_IAVM = -1;
+static const value_string valstr_004_060_IAVM[] = {
+ { 0, "Default" },
+ { 1, "IAVM sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_IAVM = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_IAVM, NULL };
+static int hf_004_060_FTD = -1;
+static const value_string valstr_004_060_FTD[] = {
+ { 0, "Default" },
+ { 1, "FTD Function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_FTD = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_FTD, NULL };
+static int hf_004_060_ITD = -1;
+static const value_string valstr_004_060_ITD[] = {
+ { 0, "Default" },
+ { 1, "ITD function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_ITD = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_ITD, NULL };
+static int hf_004_060_IIA = -1;
+static const value_string valstr_004_060_IIA[] = {
+ { 0, "Default" },
+ { 1, "IIA function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_IIA = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_IIA, NULL };
+static int hf_004_060_SQW = -1;
+static const value_string valstr_004_060_SQW[] = {
+ { 0, "Default" },
+ { 1, "SQW function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_SQW = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_SQW, NULL };
+static int hf_004_060_CUW = -1;
+static const value_string valstr_004_060_CUW[] = {
+ { 0, "Default" },
+ { 1, "CUW function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_CUW = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_CUW, NULL };
+static int hf_004_060_CATC = -1;
+static const value_string valstr_004_060_CATC[] = {
+ { 0, "Default" },
+ { 1, "CATC function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_CATC = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_CATC, NULL };
+static int hf_004_060_NOCLR = -1;
+static const value_string valstr_004_060_NOCLR[] = {
+ { 0, "Default" },
+ { 1, "NOCLR sub-function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_NOCLR = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_NOCLR, NULL };
+static int hf_004_060_NOMOV = -1;
+static const value_string valstr_004_060_NOMOV[] = {
+ { 0, "Default" },
+ { 1, "NOMOV Function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_NOMOV = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_NOMOV, NULL };
+static int hf_004_060_NOH = -1;
+static const value_string valstr_004_060_NOH[] = {
+ { 0, "Default" },
+ { 1, "NOH function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_NOH = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_NOH, NULL };
+static int hf_004_060_WRTY = -1;
+static const value_string valstr_004_060_WRTY[] = {
+ { 0, "Default" },
+ { 1, "WRTY function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_WRTY = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_WRTY, NULL };
+static int hf_004_060_STOCC = -1;
+static const value_string valstr_004_060_STOCC[] = {
+ { 0, "Default" },
+ { 1, "STOCC function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_STOCC = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_STOCC, NULL };
+static int hf_004_060_ONGOING = -1;
+static const value_string valstr_004_060_ONGOING[] = {
+ { 0, "Default" },
+ { 1, "ONGOING function" },
+ { 0, NULL }
+};
+static const FieldPart I004_060_ONGOING = { 1, 1.0, FIELD_PART_UINT, &hf_004_060_ONGOING, NULL };
+static const FieldPart *I004_060_PARTS[] = {
+ &I004_060_MRVA,
+ &I004_060_RAMLD,
+ &I004_060_RAMHD,
+ &I004_060_MSAW,
+ &I004_060_APW,
+ &I004_060_CLAM,
+ &I004_060_STCA,
+ &IXXX_FX,
+ &I004_060_APM,
+ &I004_060_RIMCA,
+ &I004_060_ACASRA,
+ &I004_060_NTCA,
+ &I004_060_DG,
+ &I004_060_OF,
+ &I004_060_OL,
+ &IXXX_FX,
+ &I004_060_AIW,
+ &I004_060_PAIW,
+ &I004_060_OCAT,
+ &I004_060_SAM,
+ &I004_060_VCD,
+ &I004_060_CHAM,
+ &I004_060_DSAM,
+ &IXXX_FX,
+ &I004_060_DBPSMARR,
+ &I004_060_DBPSMDEP,
+ &I004_060_DBPSMTL,
+ &I004_060_VRAMCRM,
+ &I004_060_VRAMVTM,
+ &I004_060_VRAMVRM,
+ &I004_060_HAMHD,
+ &IXXX_FX,
+ &I004_060_HAMRD,
+ &I004_060_HAMVD,
+ &I004_060_HVI,
+ &I004_060_LTW,
+ &I004_060_VPM,
+ &I004_060_TTA,
+ &I004_060_CRA,
+ &IXXX_FX,
+ &I004_060_ASM,
+ &I004_060_IAVM,
+ &I004_060_FTD,
+ &I004_060_ITD,
+ &I004_060_IIA,
+ &I004_060_SQW,
+ &I004_060_CUW,
+ &IXXX_FX,
+ &I004_060_CATC,
+ &I004_060_NOCLR,
+ &I004_060_NOMOV,
+ &I004_060_NOH,
+ &I004_060_WRTY,
+ &I004_060_STOCC,
+ &I004_060_ONGOING,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I004_060 = { FX, 1, 0, 0, &hf_004_060, I004_060_PARTS, { NULL } };
+static int hf_004_070 = -1;
+static int hf_004_070_TC = -1;
+static int hf_004_070_TC_VALUE = -1;
+static const FieldPart I004_070_TC_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_004_070_TC_VALUE, NULL };
+static const FieldPart *I004_070_TC_PARTS[] = {
+ &I004_070_TC_VALUE,
+ NULL
+};
+static const AsterixField I004_070_TC = { FIXED, 3, 0, 0, &hf_004_070_TC, I004_070_TC_PARTS, { NULL } };
+static int hf_004_070_TCA = -1;
+static int hf_004_070_TCA_VALUE = -1;
+static const FieldPart I004_070_TCA_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_004_070_TCA_VALUE, NULL };
+static const FieldPart *I004_070_TCA_PARTS[] = {
+ &I004_070_TCA_VALUE,
+ NULL
+};
+static const AsterixField I004_070_TCA = { FIXED, 3, 0, 0, &hf_004_070_TCA, I004_070_TCA_PARTS, { NULL } };
+static int hf_004_070_CHS = -1;
+static int hf_004_070_CHS_VALUE = -1;
+static const FieldPart I004_070_CHS_VALUE = { 24, 0.5, FIELD_PART_UFLOAT, &hf_004_070_CHS_VALUE, NULL };
+static const FieldPart *I004_070_CHS_PARTS[] = {
+ &I004_070_CHS_VALUE,
+ NULL
+};
+static const AsterixField I004_070_CHS = { FIXED, 3, 0, 0, &hf_004_070_CHS, I004_070_CHS_PARTS, { NULL } };
+static int hf_004_070_MHS = -1;
+static int hf_004_070_MHS_VALUE = -1;
+static const FieldPart I004_070_MHS_VALUE = { 16, 0.5, FIELD_PART_UFLOAT, &hf_004_070_MHS_VALUE, NULL };
+static const FieldPart *I004_070_MHS_PARTS[] = {
+ &I004_070_MHS_VALUE,
+ NULL
+};
+static const AsterixField I004_070_MHS = { FIXED, 2, 0, 0, &hf_004_070_MHS, I004_070_MHS_PARTS, { NULL } };
+static int hf_004_070_CVS = -1;
+static int hf_004_070_CVS_VALUE = -1;
+static const FieldPart I004_070_CVS_VALUE = { 16, 25.0, FIELD_PART_UFLOAT, &hf_004_070_CVS_VALUE, NULL };
+static const FieldPart *I004_070_CVS_PARTS[] = {
+ &I004_070_CVS_VALUE,
+ NULL
+};
+static const AsterixField I004_070_CVS = { FIXED, 2, 0, 0, &hf_004_070_CVS, I004_070_CVS_PARTS, { NULL } };
+static int hf_004_070_MVS = -1;
+static int hf_004_070_MVS_VALUE = -1;
+static const FieldPart I004_070_MVS_VALUE = { 16, 25.0, FIELD_PART_UFLOAT, &hf_004_070_MVS_VALUE, NULL };
+static const FieldPart *I004_070_MVS_PARTS[] = {
+ &I004_070_MVS_VALUE,
+ NULL
+};
+static const AsterixField I004_070_MVS = { FIXED, 2, 0, 0, &hf_004_070_MVS, I004_070_MVS_PARTS, { NULL } };
+static const AsterixField I004_070 = { COMPOUND, 0, 0, 0, &hf_004_070, NULL, { &I004_070_TC, &I004_070_TCA, &I004_070_CHS, &I004_070_MHS, &I004_070_CVS, &I004_070_MVS, NULL } };
+static int hf_004_074 = -1;
+static int hf_004_074_VALUE = -1;
+static const FieldPart I004_074_VALUE = { 16, 32.0, FIELD_PART_FLOAT, &hf_004_074_VALUE, NULL };
+static const FieldPart *I004_074_PARTS[] = {
+ &I004_074_VALUE,
+ NULL
+};
+static const AsterixField I004_074 = { FIXED, 2, 0, 0, &hf_004_074, I004_074_PARTS, { NULL } };
+static int hf_004_075 = -1;
+static int hf_004_075_VALUE = -1;
+static const FieldPart I004_075_VALUE = { 24, 0.5, FIELD_PART_FLOAT, &hf_004_075_VALUE, NULL };
+static const FieldPart *I004_075_PARTS[] = {
+ &I004_075_VALUE,
+ NULL
+};
+static const AsterixField I004_075 = { FIXED, 3, 0, 0, &hf_004_075, I004_075_PARTS, { NULL } };
+static int hf_004_076 = -1;
+static int hf_004_076_VALUE = -1;
+static const FieldPart I004_076_VALUE = { 16, 25.0, FIELD_PART_FLOAT, &hf_004_076_VALUE, NULL };
+static const FieldPart *I004_076_PARTS[] = {
+ &I004_076_VALUE,
+ NULL
+};
+static const AsterixField I004_076 = { FIXED, 2, 0, 0, &hf_004_076, I004_076_PARTS, { NULL } };
+static int hf_004_100 = -1;
+static int hf_004_100_AN = -1;
+static int hf_004_100_AN_VALUE = -1;
+static const FieldPart I004_100_AN_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_004_100_AN_VALUE, NULL };
+static const FieldPart *I004_100_AN_PARTS[] = {
+ &I004_100_AN_VALUE,
+ NULL
+};
+static const AsterixField I004_100_AN = { FIXED, 6, 0, 0, &hf_004_100_AN, I004_100_AN_PARTS, { NULL } };
+static int hf_004_100_CAN = -1;
+static int hf_004_100_CAN_VALUE = -1;
+static const FieldPart I004_100_CAN_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_004_100_CAN_VALUE, NULL };
+static const FieldPart *I004_100_CAN_PARTS[] = {
+ &I004_100_CAN_VALUE,
+ NULL
+};
+static const AsterixField I004_100_CAN = { FIXED, 7, 0, 0, &hf_004_100_CAN, I004_100_CAN_PARTS, { NULL } };
+static int hf_004_100_RT1 = -1;
+static int hf_004_100_RT1_VALUE = -1;
+static const FieldPart I004_100_RT1_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_004_100_RT1_VALUE, NULL };
+static const FieldPart *I004_100_RT1_PARTS[] = {
+ &I004_100_RT1_VALUE,
+ NULL
+};
+static const AsterixField I004_100_RT1 = { FIXED, 7, 0, 0, &hf_004_100_RT1, I004_100_RT1_PARTS, { NULL } };
+static int hf_004_100_RT2 = -1;
+static int hf_004_100_RT2_VALUE = -1;
+static const FieldPart I004_100_RT2_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_004_100_RT2_VALUE, NULL };
+static const FieldPart *I004_100_RT2_PARTS[] = {
+ &I004_100_RT2_VALUE,
+ NULL
+};
+static const AsterixField I004_100_RT2 = { FIXED, 7, 0, 0, &hf_004_100_RT2, I004_100_RT2_PARTS, { NULL } };
+static int hf_004_100_SB = -1;
+static int hf_004_100_SB_VALUE = -1;
+static const FieldPart I004_100_SB_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_004_100_SB_VALUE, NULL };
+static const FieldPart *I004_100_SB_PARTS[] = {
+ &I004_100_SB_VALUE,
+ NULL
+};
+static const AsterixField I004_100_SB = { FIXED, 7, 0, 0, &hf_004_100_SB, I004_100_SB_PARTS, { NULL } };
+static int hf_004_100_G = -1;
+static int hf_004_100_G_VALUE = -1;
+static const FieldPart I004_100_G_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_004_100_G_VALUE, NULL };
+static const FieldPart *I004_100_G_PARTS[] = {
+ &I004_100_G_VALUE,
+ NULL
+};
+static const AsterixField I004_100_G = { FIXED, 7, 0, 0, &hf_004_100_G, I004_100_G_PARTS, { NULL } };
+static const AsterixField I004_100 = { COMPOUND, 0, 0, 0, &hf_004_100, NULL, { &I004_100_AN, &I004_100_CAN, &I004_100_RT1, &I004_100_RT2, &I004_100_SB, &I004_100_G, NULL } };
+static int hf_004_110 = -1;
+static int hf_004_110_CEN = -1;
+static const FieldPart I004_110_CEN = { 8, 1.0, FIELD_PART_HEX, &hf_004_110_CEN, NULL };
+static int hf_004_110_POS = -1;
+static const FieldPart I004_110_POS = { 8, 1.0, FIELD_PART_HEX, &hf_004_110_POS, NULL };
+static const FieldPart *I004_110_PARTS[] = {
+ &I004_110_CEN,
+ &I004_110_POS,
+ NULL
+};
+static const AsterixField I004_110 = { REPETITIVE, 2, 1, 0, &hf_004_110, I004_110_PARTS, { NULL } };
+static int hf_004_120 = -1;
+static int hf_004_120_CN = -1;
+static int hf_004_120_CN_MAS = -1;
+static const value_string valstr_004_120_CN_MAS[] = {
+ { 0, "Conflict not predicted to occur in military airspace" },
+ { 1, "Conflict predicted to occur in military airspace" },
+ { 0, NULL }
+};
+static const FieldPart I004_120_CN_MAS = { 1, 1.0, FIELD_PART_UINT, &hf_004_120_CN_MAS, NULL };
+static int hf_004_120_CN_CAS = -1;
+static const value_string valstr_004_120_CN_CAS[] = {
+ { 0, "Conflict not predicted to occur in civil airspace" },
+ { 1, "Conflict predicted to occur in civil airspace" },
+ { 0, NULL }
+};
+static const FieldPart I004_120_CN_CAS = { 1, 1.0, FIELD_PART_UINT, &hf_004_120_CN_CAS, NULL };
+static int hf_004_120_CN_FLD = -1;
+static const value_string valstr_004_120_CN_FLD[] = {
+ { 0, "Aircraft are not fast diverging laterally at current time" },
+ { 1, "Aircraft are fast diverging laterally at current time" },
+ { 0, NULL }
+};
+static const FieldPart I004_120_CN_FLD = { 1, 1.0, FIELD_PART_UINT, &hf_004_120_CN_FLD, NULL };
+static int hf_004_120_CN_FVD = -1;
+static const value_string valstr_004_120_CN_FVD[] = {
+ { 0, "Aircraft are not fast diverging vertically at current time" },
+ { 1, "Aircraft are fast diverging vertically at current time" },
+ { 0, NULL }
+};
+static const FieldPart I004_120_CN_FVD = { 1, 1.0, FIELD_PART_UINT, &hf_004_120_CN_FVD, NULL };
+static int hf_004_120_CN_TYPE = -1;
+static const value_string valstr_004_120_CN_TYPE[] = {
+ { 0, "Minor separation infringement" },
+ { 1, "Major separation infringement" },
+ { 0, NULL }
+};
+static const FieldPart I004_120_CN_TYPE = { 1, 1.0, FIELD_PART_UINT, &hf_004_120_CN_TYPE, NULL };
+static int hf_004_120_CN_CROSS = -1;
+static const value_string valstr_004_120_CN_CROSS[] = {
+ { 0, "Aircraft have not crossed at starting time of conflict" },
+ { 1, "Aircraft have crossed at starting time of conflict" },
+ { 0, NULL }
+};
+static const FieldPart I004_120_CN_CROSS = { 1, 1.0, FIELD_PART_UINT, &hf_004_120_CN_CROSS, NULL };
+static int hf_004_120_CN_DIV = -1;
+static const value_string valstr_004_120_CN_DIV[] = {
+ { 0, "Aircraft are not diverging at starting time of conflict" },
+ { 1, "Aircraft are diverging at starting time of conflict" },
+ { 0, NULL }
+};
+static const FieldPart I004_120_CN_DIV = { 1, 1.0, FIELD_PART_UINT, &hf_004_120_CN_DIV, NULL };
+static int hf_004_120_CN_RRC = -1;
+static const value_string valstr_004_120_CN_RRC[] = {
+ { 0, "Default" },
+ { 1, "Runway/Runway Crossing" },
+ { 0, NULL }
+};
+static const FieldPart I004_120_CN_RRC = { 1, 1.0, FIELD_PART_UINT, &hf_004_120_CN_RRC, NULL };
+static int hf_004_120_CN_RTC = -1;
+static const value_string valstr_004_120_CN_RTC[] = {
+ { 0, "Default" },
+ { 1, "Runway/Taxiway Crossing" },
+ { 0, NULL }
+};
+static const FieldPart I004_120_CN_RTC = { 1, 1.0, FIELD_PART_UINT, &hf_004_120_CN_RTC, NULL };
+static int hf_004_120_CN_MRVA = -1;
+static const value_string valstr_004_120_CN_MRVA[] = {
+ { 0, "Default" },
+ { 1, "Msg Type 4 (MSAW) indicates MRVA" },
+ { 0, NULL }
+};
+static const FieldPart I004_120_CN_MRVA = { 1, 1.0, FIELD_PART_UINT, &hf_004_120_CN_MRVA, NULL };
+static int hf_004_120_CN_VRAMCRM = -1;
+static const value_string valstr_004_120_CN_VRAMCRM[] = {
+ { 0, "Default" },
+ { 1, "Msg Type 25 (VRAM) indicates CRM" },
+ { 0, NULL }
+};
+static const FieldPart I004_120_CN_VRAMCRM = { 1, 1.0, FIELD_PART_UINT, &hf_004_120_CN_VRAMCRM, NULL };
+static int hf_004_120_CN_VRAMVRM = -1;
+static const value_string valstr_004_120_CN_VRAMVRM[] = {
+ { 0, "Default" },
+ { 1, "Msg Type 25 (VRAM) indicates VRM" },
+ { 0, NULL }
+};
+static const FieldPart I004_120_CN_VRAMVRM = { 1, 1.0, FIELD_PART_UINT, &hf_004_120_CN_VRAMVRM, NULL };
+static int hf_004_120_CN_VRAMVTM = -1;
+static const value_string valstr_004_120_CN_VRAMVTM[] = {
+ { 0, "Default" },
+ { 1, "Msg Type 25 (VRAM) indicates VTM" },
+ { 0, NULL }
+};
+static const FieldPart I004_120_CN_VRAMVTM = { 1, 1.0, FIELD_PART_UINT, &hf_004_120_CN_VRAMVTM, NULL };
+static int hf_004_120_CN_HAMHD = -1;
+static const value_string valstr_004_120_CN_HAMHD[] = {
+ { 0, "Default" },
+ { 1, "Msg Type 29 (HAM) indicates HD" },
+ { 0, NULL }
+};
+static const FieldPart I004_120_CN_HAMHD = { 1, 1.0, FIELD_PART_UINT, &hf_004_120_CN_HAMHD, NULL };
+static int hf_004_120_CN_HAMRD = -1;
+static const value_string valstr_004_120_CN_HAMRD[] = {
+ { 0, "Default" },
+ { 1, "Msg Type 29 (HAM) indicates RD" },
+ { 0, NULL }
+};
+static const FieldPart I004_120_CN_HAMRD = { 1, 1.0, FIELD_PART_UINT, &hf_004_120_CN_HAMRD, NULL };
+static int hf_004_120_CN_HAMVD = -1;
+static const value_string valstr_004_120_CN_HAMVD[] = {
+ { 0, "Default" },
+ { 1, "Msg Type 29 (HAM) indicates VD" },
+ { 0, NULL }
+};
+static const FieldPart I004_120_CN_HAMVD = { 1, 1.0, FIELD_PART_UINT, &hf_004_120_CN_HAMVD, NULL };
+static int hf_004_120_CN_DBPSMARR = -1;
+static const value_string valstr_004_120_CN_DBPSMARR[] = {
+ { 0, "Default" },
+ { 1, "Msg Type 20 (DBPSM) indicates ARR" },
+ { 0, NULL }
+};
+static const FieldPart I004_120_CN_DBPSMARR = { 1, 1.0, FIELD_PART_UINT, &hf_004_120_CN_DBPSMARR, NULL };
+static int hf_004_120_CN_DBPSMDEP = -1;
+static const value_string valstr_004_120_CN_DBPSMDEP[] = {
+ { 0, "Default" },
+ { 1, "Msg Type 20 (DBPSM) indicates DEP" },
+ { 0, NULL }
+};
+static const FieldPart I004_120_CN_DBPSMDEP = { 1, 1.0, FIELD_PART_UINT, &hf_004_120_CN_DBPSMDEP, NULL };
+static int hf_004_120_CN_DBPSMTL = -1;
+static const value_string valstr_004_120_CN_DBPSMTL[] = {
+ { 0, "Default" },
+ { 1, "Msg Type 20 (DBPSM) indicates above TL" },
+ { 0, NULL }
+};
+static const FieldPart I004_120_CN_DBPSMTL = { 1, 1.0, FIELD_PART_UINT, &hf_004_120_CN_DBPSMTL, NULL };
+static int hf_004_120_CN_AIW = -1;
+static const value_string valstr_004_120_CN_AIW[] = {
+ { 0, "Default" },
+ { 1, "Msg Type 99 (AIW) indicates pAIW Alert" },
+ { 0, NULL }
+};
+static const FieldPart I004_120_CN_AIW = { 1, 1.0, FIELD_PART_UINT, &hf_004_120_CN_AIW, NULL };
+static const FieldPart *I004_120_CN_PARTS[] = {
+ &I004_120_CN_MAS,
+ &I004_120_CN_CAS,
+ &I004_120_CN_FLD,
+ &I004_120_CN_FVD,
+ &I004_120_CN_TYPE,
+ &I004_120_CN_CROSS,
+ &I004_120_CN_DIV,
+ &IXXX_FX,
+ &I004_120_CN_RRC,
+ &I004_120_CN_RTC,
+ &I004_120_CN_MRVA,
+ &I004_120_CN_VRAMCRM,
+ &I004_120_CN_VRAMVRM,
+ &I004_120_CN_VRAMVTM,
+ &I004_120_CN_HAMHD,
+ &IXXX_FX,
+ &I004_120_CN_HAMRD,
+ &I004_120_CN_HAMVD,
+ &I004_120_CN_DBPSMARR,
+ &I004_120_CN_DBPSMDEP,
+ &I004_120_CN_DBPSMTL,
+ &I004_120_CN_AIW,
+ &IXXX_1bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I004_120_CN = { FX, 1, 0, 0, &hf_004_120_CN, I004_120_CN_PARTS, { NULL } };
+static int hf_004_120_CC = -1;
+static int hf_004_120_CC_TID = -1;
+static const FieldPart I004_120_CC_TID = { 4, 1.0, FIELD_PART_HEX, &hf_004_120_CC_TID, NULL };
+static int hf_004_120_CC_CP = -1;
+static const FieldPart I004_120_CC_CP = { 3, 1.0, FIELD_PART_HEX, &hf_004_120_CC_CP, NULL };
+static int hf_004_120_CC_CS = -1;
+static const value_string valstr_004_120_CC_CS[] = {
+ { 0, "LOW" },
+ { 1, "HIGH" },
+ { 0, NULL }
+};
+static const FieldPart I004_120_CC_CS = { 1, 1.0, FIELD_PART_UINT, &hf_004_120_CC_CS, NULL };
+static const FieldPart *I004_120_CC_PARTS[] = {
+ &I004_120_CC_TID,
+ &I004_120_CC_CP,
+ &I004_120_CC_CS,
+ NULL
+};
+static const AsterixField I004_120_CC = { FIXED, 1, 0, 0, &hf_004_120_CC, I004_120_CC_PARTS, { NULL } };
+static int hf_004_120_CP = -1;
+static int hf_004_120_CP_VALUE = -1;
+static const FieldPart I004_120_CP_VALUE = { 8, 0.5, FIELD_PART_UFLOAT, &hf_004_120_CP_VALUE, NULL };
+static const FieldPart *I004_120_CP_PARTS[] = {
+ &I004_120_CP_VALUE,
+ NULL
+};
+static const AsterixField I004_120_CP = { FIXED, 1, 0, 0, &hf_004_120_CP, I004_120_CP_PARTS, { NULL } };
+static int hf_004_120_CD = -1;
+static int hf_004_120_CD_VALUE = -1;
+static const FieldPart I004_120_CD_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_004_120_CD_VALUE, NULL };
+static const FieldPart *I004_120_CD_PARTS[] = {
+ &I004_120_CD_VALUE,
+ NULL
+};
+static const AsterixField I004_120_CD = { FIXED, 3, 0, 0, &hf_004_120_CD, I004_120_CD_PARTS, { NULL } };
+static const AsterixField I004_120 = { COMPOUND, 0, 0, 0, &hf_004_120, NULL, { &I004_120_CN, &I004_120_CC, &I004_120_CP, &I004_120_CD, NULL } };
+static int hf_004_170 = -1;
+static int hf_004_170_AI1 = -1;
+static int hf_004_170_AI1_VALUE = -1;
+static const FieldPart I004_170_AI1_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_004_170_AI1_VALUE, NULL };
+static const FieldPart *I004_170_AI1_PARTS[] = {
+ &I004_170_AI1_VALUE,
+ NULL
+};
+static const AsterixField I004_170_AI1 = { FIXED, 7, 0, 0, &hf_004_170_AI1, I004_170_AI1_PARTS, { NULL } };
+static int hf_004_170_M31 = -1;
+static int hf_004_170_M31_MODE3A = -1;
+static const FieldPart I004_170_M31_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_004_170_M31_MODE3A, NULL };
+static const FieldPart *I004_170_M31_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I004_170_M31_MODE3A,
+ NULL
+};
+static const AsterixField I004_170_M31 = { FIXED, 2, 0, 0, &hf_004_170_M31, I004_170_M31_PARTS, { NULL } };
+static int hf_004_170_CPW = -1;
+static int hf_004_170_CPW_LAT = -1;
+static const FieldPart I004_170_CPW_LAT = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_004_170_CPW_LAT, NULL };
+static int hf_004_170_CPW_LON = -1;
+static const FieldPart I004_170_CPW_LON = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_004_170_CPW_LON, NULL };
+static int hf_004_170_CPW_ALT = -1;
+static const FieldPart I004_170_CPW_ALT = { 16, 25.0, FIELD_PART_FLOAT, &hf_004_170_CPW_ALT, NULL };
+static const FieldPart *I004_170_CPW_PARTS[] = {
+ &I004_170_CPW_LAT,
+ &I004_170_CPW_LON,
+ &I004_170_CPW_ALT,
+ NULL
+};
+static const AsterixField I004_170_CPW = { FIXED, 10, 0, 0, &hf_004_170_CPW, I004_170_CPW_PARTS, { NULL } };
+static int hf_004_170_CPC = -1;
+static int hf_004_170_CPC_X = -1;
+static const FieldPart I004_170_CPC_X = { 24, 0.5, FIELD_PART_FLOAT, &hf_004_170_CPC_X, NULL };
+static int hf_004_170_CPC_Y = -1;
+static const FieldPart I004_170_CPC_Y = { 24, 0.5, FIELD_PART_FLOAT, &hf_004_170_CPC_Y, NULL };
+static int hf_004_170_CPC_Z = -1;
+static const FieldPart I004_170_CPC_Z = { 16, 25.0, FIELD_PART_FLOAT, &hf_004_170_CPC_Z, NULL };
+static const FieldPart *I004_170_CPC_PARTS[] = {
+ &I004_170_CPC_X,
+ &I004_170_CPC_Y,
+ &I004_170_CPC_Z,
+ NULL
+};
+static const AsterixField I004_170_CPC = { FIXED, 8, 0, 0, &hf_004_170_CPC, I004_170_CPC_PARTS, { NULL } };
+static int hf_004_170_TT1 = -1;
+static int hf_004_170_TT1_VALUE = -1;
+static const FieldPart I004_170_TT1_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_004_170_TT1_VALUE, NULL };
+static const FieldPart *I004_170_TT1_PARTS[] = {
+ &I004_170_TT1_VALUE,
+ NULL
+};
+static const AsterixField I004_170_TT1 = { FIXED, 3, 0, 0, &hf_004_170_TT1, I004_170_TT1_PARTS, { NULL } };
+static int hf_004_170_DT1 = -1;
+static int hf_004_170_DT1_VALUE = -1;
+static const FieldPart I004_170_DT1_VALUE = { 16, 0.5, FIELD_PART_UFLOAT, &hf_004_170_DT1_VALUE, NULL };
+static const FieldPart *I004_170_DT1_PARTS[] = {
+ &I004_170_DT1_VALUE,
+ NULL
+};
+static const AsterixField I004_170_DT1 = { FIXED, 2, 0, 0, &hf_004_170_DT1, I004_170_DT1_PARTS, { NULL } };
+static int hf_004_170_AC1 = -1;
+static int hf_004_170_AC1_GATOAT = -1;
+static const value_string valstr_004_170_AC1_GATOAT[] = {
+ { 0, "Unknown" },
+ { 1, "General Air Traffic" },
+ { 2, "Operational Air Traffic" },
+ { 3, "Not applicable" },
+ { 0, NULL }
+};
+static const FieldPart I004_170_AC1_GATOAT = { 2, 1.0, FIELD_PART_UINT, &hf_004_170_AC1_GATOAT, NULL };
+static int hf_004_170_AC1_FR1FR2 = -1;
+static const value_string valstr_004_170_AC1_FR1FR2[] = {
+ { 0, "Instrument Flight Rules" },
+ { 1, "Visual Flight rules" },
+ { 2, "Not applicable" },
+ { 3, "Controlled Visual Flight Rules" },
+ { 0, NULL }
+};
+static const FieldPart I004_170_AC1_FR1FR2 = { 2, 1.0, FIELD_PART_UINT, &hf_004_170_AC1_FR1FR2, NULL };
+static int hf_004_170_AC1_RVSM = -1;
+static const value_string valstr_004_170_AC1_RVSM[] = {
+ { 0, "Unknown" },
+ { 1, "Approved" },
+ { 2, "Exempt" },
+ { 3, "Not Approved" },
+ { 0, NULL }
+};
+static const FieldPart I004_170_AC1_RVSM = { 2, 1.0, FIELD_PART_UINT, &hf_004_170_AC1_RVSM, NULL };
+static int hf_004_170_AC1_HPR = -1;
+static const value_string valstr_004_170_AC1_HPR[] = {
+ { 0, "Normal Priority Flight" },
+ { 1, "High Priority Flight" },
+ { 0, NULL }
+};
+static const FieldPart I004_170_AC1_HPR = { 1, 1.0, FIELD_PART_UINT, &hf_004_170_AC1_HPR, NULL };
+static int hf_004_170_AC1_CDM = -1;
+static const value_string valstr_004_170_AC1_CDM[] = {
+ { 0, "Maintaining" },
+ { 1, "Climbing" },
+ { 2, "Descending" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I004_170_AC1_CDM = { 2, 1.0, FIELD_PART_UINT, &hf_004_170_AC1_CDM, NULL };
+static int hf_004_170_AC1_PRI = -1;
+static const value_string valstr_004_170_AC1_PRI[] = {
+ { 0, "Non primary target" },
+ { 1, "Primary target" },
+ { 0, NULL }
+};
+static const FieldPart I004_170_AC1_PRI = { 1, 1.0, FIELD_PART_UINT, &hf_004_170_AC1_PRI, NULL };
+static int hf_004_170_AC1_GV = -1;
+static const value_string valstr_004_170_AC1_GV[] = {
+ { 0, "Default" },
+ { 1, "Ground Vehicle" },
+ { 0, NULL }
+};
+static const FieldPart I004_170_AC1_GV = { 1, 1.0, FIELD_PART_UINT, &hf_004_170_AC1_GV, NULL };
+static const FieldPart *I004_170_AC1_PARTS[] = {
+ &I004_170_AC1_GATOAT,
+ &I004_170_AC1_FR1FR2,
+ &I004_170_AC1_RVSM,
+ &I004_170_AC1_HPR,
+ &IXXX_FX,
+ &I004_170_AC1_CDM,
+ &I004_170_AC1_PRI,
+ &I004_170_AC1_GV,
+ &IXXX_3bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I004_170_AC1 = { FX, 1, 0, 0, &hf_004_170_AC1, I004_170_AC1_PARTS, { NULL } };
+static int hf_004_170_MS1 = -1;
+static int hf_004_170_MS1_VALUE = -1;
+static const FieldPart I004_170_MS1_VALUE = { 48, 1.0, FIELD_PART_ASCII, &hf_004_170_MS1_VALUE, NULL };
+static const FieldPart *I004_170_MS1_PARTS[] = {
+ &I004_170_MS1_VALUE,
+ NULL
+};
+static const AsterixField I004_170_MS1 = { FIXED, 6, 0, 0, &hf_004_170_MS1, I004_170_MS1_PARTS, { NULL } };
+static int hf_004_170_FP1 = -1;
+static int hf_004_170_FP1_NBR = -1;
+static const FieldPart I004_170_FP1_NBR = { 27, 1.0, FIELD_PART_UFLOAT, &hf_004_170_FP1_NBR, NULL };
+static const FieldPart *I004_170_FP1_PARTS[] = {
+ &IXXX_5bit_spare,
+ &I004_170_FP1_NBR,
+ NULL
+};
+static const AsterixField I004_170_FP1 = { FIXED, 4, 0, 0, &hf_004_170_FP1, I004_170_FP1_PARTS, { NULL } };
+static int hf_004_170_CF1 = -1;
+static int hf_004_170_CF1_VALUE = -1;
+static const FieldPart I004_170_CF1_VALUE = { 16, 0.25, FIELD_PART_UFLOAT, &hf_004_170_CF1_VALUE, NULL };
+static const FieldPart *I004_170_CF1_PARTS[] = {
+ &I004_170_CF1_VALUE,
+ NULL
+};
+static const AsterixField I004_170_CF1 = { FIXED, 2, 0, 0, &hf_004_170_CF1, I004_170_CF1_PARTS, { NULL } };
+static const AsterixField I004_170 = { COMPOUND, 0, 0, 0, &hf_004_170, NULL, { &I004_170_AI1, &I004_170_M31, &I004_170_CPW, &I004_170_CPC, &I004_170_TT1, &I004_170_DT1, &I004_170_AC1, &I004_170_MS1, &I004_170_FP1, &I004_170_CF1, NULL } };
+static int hf_004_171 = -1;
+static int hf_004_171_AI2 = -1;
+static int hf_004_171_AI2_VALUE = -1;
+static const FieldPart I004_171_AI2_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_004_171_AI2_VALUE, NULL };
+static const FieldPart *I004_171_AI2_PARTS[] = {
+ &I004_171_AI2_VALUE,
+ NULL
+};
+static const AsterixField I004_171_AI2 = { FIXED, 7, 0, 0, &hf_004_171_AI2, I004_171_AI2_PARTS, { NULL } };
+static int hf_004_171_M32 = -1;
+static int hf_004_171_M32_MODE3A = -1;
+static const FieldPart I004_171_M32_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_004_171_M32_MODE3A, NULL };
+static const FieldPart *I004_171_M32_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I004_171_M32_MODE3A,
+ NULL
+};
+static const AsterixField I004_171_M32 = { FIXED, 2, 0, 0, &hf_004_171_M32, I004_171_M32_PARTS, { NULL } };
+static int hf_004_171_CPW = -1;
+static int hf_004_171_CPW_LAT = -1;
+static const FieldPart I004_171_CPW_LAT = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_004_171_CPW_LAT, NULL };
+static int hf_004_171_CPW_LON = -1;
+static const FieldPart I004_171_CPW_LON = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_004_171_CPW_LON, NULL };
+static int hf_004_171_CPW_ALT = -1;
+static const FieldPart I004_171_CPW_ALT = { 16, 25.0, FIELD_PART_FLOAT, &hf_004_171_CPW_ALT, NULL };
+static const FieldPart *I004_171_CPW_PARTS[] = {
+ &I004_171_CPW_LAT,
+ &I004_171_CPW_LON,
+ &I004_171_CPW_ALT,
+ NULL
+};
+static const AsterixField I004_171_CPW = { FIXED, 10, 0, 0, &hf_004_171_CPW, I004_171_CPW_PARTS, { NULL } };
+static int hf_004_171_CPL = -1;
+static int hf_004_171_CPL_X = -1;
+static const FieldPart I004_171_CPL_X = { 24, 0.5, FIELD_PART_FLOAT, &hf_004_171_CPL_X, NULL };
+static int hf_004_171_CPL_Y = -1;
+static const FieldPart I004_171_CPL_Y = { 24, 0.5, FIELD_PART_FLOAT, &hf_004_171_CPL_Y, NULL };
+static int hf_004_171_CPL_Z = -1;
+static const FieldPart I004_171_CPL_Z = { 16, 25.0, FIELD_PART_FLOAT, &hf_004_171_CPL_Z, NULL };
+static const FieldPart *I004_171_CPL_PARTS[] = {
+ &I004_171_CPL_X,
+ &I004_171_CPL_Y,
+ &I004_171_CPL_Z,
+ NULL
+};
+static const AsterixField I004_171_CPL = { FIXED, 8, 0, 0, &hf_004_171_CPL, I004_171_CPL_PARTS, { NULL } };
+static int hf_004_171_TT2 = -1;
+static int hf_004_171_TT2_VALUE = -1;
+static const FieldPart I004_171_TT2_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_004_171_TT2_VALUE, NULL };
+static const FieldPart *I004_171_TT2_PARTS[] = {
+ &I004_171_TT2_VALUE,
+ NULL
+};
+static const AsterixField I004_171_TT2 = { FIXED, 3, 0, 0, &hf_004_171_TT2, I004_171_TT2_PARTS, { NULL } };
+static int hf_004_171_DT2 = -1;
+static int hf_004_171_DT2_VALUE = -1;
+static const FieldPart I004_171_DT2_VALUE = { 16, 0.5, FIELD_PART_UFLOAT, &hf_004_171_DT2_VALUE, NULL };
+static const FieldPart *I004_171_DT2_PARTS[] = {
+ &I004_171_DT2_VALUE,
+ NULL
+};
+static const AsterixField I004_171_DT2 = { FIXED, 2, 0, 0, &hf_004_171_DT2, I004_171_DT2_PARTS, { NULL } };
+static int hf_004_171_AC2 = -1;
+static int hf_004_171_AC2_GATOAT = -1;
+static const value_string valstr_004_171_AC2_GATOAT[] = {
+ { 0, "Unknown" },
+ { 1, "General Air Traffic" },
+ { 2, "Operational Air Traffic" },
+ { 3, "Not applicable" },
+ { 0, NULL }
+};
+static const FieldPart I004_171_AC2_GATOAT = { 2, 1.0, FIELD_PART_UINT, &hf_004_171_AC2_GATOAT, NULL };
+static int hf_004_171_AC2_FR1FR2 = -1;
+static const value_string valstr_004_171_AC2_FR1FR2[] = {
+ { 0, "Instrument Flight Rules" },
+ { 1, "Visual Flight rules" },
+ { 2, "Not applicable" },
+ { 3, "Controlled Visual Flight Rules" },
+ { 0, NULL }
+};
+static const FieldPart I004_171_AC2_FR1FR2 = { 2, 1.0, FIELD_PART_UINT, &hf_004_171_AC2_FR1FR2, NULL };
+static int hf_004_171_AC2_RVSM = -1;
+static const value_string valstr_004_171_AC2_RVSM[] = {
+ { 0, "Unknown" },
+ { 1, "Approved" },
+ { 2, "Exempt" },
+ { 3, "Not Approved" },
+ { 0, NULL }
+};
+static const FieldPart I004_171_AC2_RVSM = { 2, 1.0, FIELD_PART_UINT, &hf_004_171_AC2_RVSM, NULL };
+static int hf_004_171_AC2_HPR = -1;
+static const value_string valstr_004_171_AC2_HPR[] = {
+ { 0, "Normal Priority Flight" },
+ { 1, "High Priority Flight" },
+ { 0, NULL }
+};
+static const FieldPart I004_171_AC2_HPR = { 1, 1.0, FIELD_PART_UINT, &hf_004_171_AC2_HPR, NULL };
+static int hf_004_171_AC2_CDM = -1;
+static const value_string valstr_004_171_AC2_CDM[] = {
+ { 0, "Maintaining" },
+ { 1, "Climbing" },
+ { 2, "Descending" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I004_171_AC2_CDM = { 2, 1.0, FIELD_PART_UINT, &hf_004_171_AC2_CDM, NULL };
+static int hf_004_171_AC2_PRI = -1;
+static const value_string valstr_004_171_AC2_PRI[] = {
+ { 0, "Non primary target" },
+ { 1, "Primary target" },
+ { 0, NULL }
+};
+static const FieldPart I004_171_AC2_PRI = { 1, 1.0, FIELD_PART_UINT, &hf_004_171_AC2_PRI, NULL };
+static int hf_004_171_AC2_GV = -1;
+static const value_string valstr_004_171_AC2_GV[] = {
+ { 0, "Default" },
+ { 1, "Ground Vehicle" },
+ { 0, NULL }
+};
+static const FieldPart I004_171_AC2_GV = { 1, 1.0, FIELD_PART_UINT, &hf_004_171_AC2_GV, NULL };
+static const FieldPart *I004_171_AC2_PARTS[] = {
+ &I004_171_AC2_GATOAT,
+ &I004_171_AC2_FR1FR2,
+ &I004_171_AC2_RVSM,
+ &I004_171_AC2_HPR,
+ &IXXX_FX,
+ &I004_171_AC2_CDM,
+ &I004_171_AC2_PRI,
+ &I004_171_AC2_GV,
+ &IXXX_3bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I004_171_AC2 = { FX, 1, 0, 0, &hf_004_171_AC2, I004_171_AC2_PARTS, { NULL } };
+static int hf_004_171_MS2 = -1;
+static int hf_004_171_MS2_VALUE = -1;
+static const FieldPart I004_171_MS2_VALUE = { 48, 1.0, FIELD_PART_ASCII, &hf_004_171_MS2_VALUE, NULL };
+static const FieldPart *I004_171_MS2_PARTS[] = {
+ &I004_171_MS2_VALUE,
+ NULL
+};
+static const AsterixField I004_171_MS2 = { FIXED, 6, 0, 0, &hf_004_171_MS2, I004_171_MS2_PARTS, { NULL } };
+static int hf_004_171_FP2 = -1;
+static int hf_004_171_FP2_NBR = -1;
+static const FieldPart I004_171_FP2_NBR = { 27, 1.0, FIELD_PART_UFLOAT, &hf_004_171_FP2_NBR, NULL };
+static const FieldPart *I004_171_FP2_PARTS[] = {
+ &IXXX_5bit_spare,
+ &I004_171_FP2_NBR,
+ NULL
+};
+static const AsterixField I004_171_FP2 = { FIXED, 4, 0, 0, &hf_004_171_FP2, I004_171_FP2_PARTS, { NULL } };
+static int hf_004_171_CF2 = -1;
+static int hf_004_171_CF2_VALUE = -1;
+static const FieldPart I004_171_CF2_VALUE = { 16, 0.25, FIELD_PART_UFLOAT, &hf_004_171_CF2_VALUE, NULL };
+static const FieldPart *I004_171_CF2_PARTS[] = {
+ &I004_171_CF2_VALUE,
+ NULL
+};
+static const AsterixField I004_171_CF2 = { FIXED, 2, 0, 0, &hf_004_171_CF2, I004_171_CF2_PARTS, { NULL } };
+static const AsterixField I004_171 = { COMPOUND, 0, 0, 0, &hf_004_171, NULL, { &I004_171_AI2, &I004_171_M32, &I004_171_CPW, &I004_171_CPL, &I004_171_TT2, &I004_171_DT2, &I004_171_AC2, &I004_171_MS2, &I004_171_FP2, &I004_171_CF2, NULL } };
+static int hf_004_RE = -1;
+static const AsterixField I004_RE = { EXP, 0, 0, 1, &hf_004_RE, NULL, { NULL } };
+static int hf_004_SP = -1;
+static const AsterixField I004_SP = { EXP, 0, 0, 1, &hf_004_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I004_V1_12_uap[] = {
+ &I004_V1_12_010,
+ &I004_V1_12_000,
+ &I004_V1_12_015,
+ &I004_V1_12_020,
+ &I004_V1_12_040,
+ &I004_V1_12_045,
+ &I004_V1_12_060,
+ &I004_V1_12_030,
+ &I004_V1_12_170,
+ &I004_V1_12_120,
+ &I004_V1_12_070,
+ &I004_V1_12_076,
+ &I004_V1_12_074,
+ &I004_V1_12_075,
+ &I004_V1_12_100,
+ &I004_V1_12_035,
+ &I004_V1_12_171,
+ &I004_V1_12_110,
+ &IX_SPARE,
+ &I004_V1_12_RE,
+ &I004_V1_12_SP,
+ NULL
+};
+static const AsterixField **I004_V1_12[] = {
+ I004_V1_12_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I004_uap[] = {
+ &I004_010,
+ &I004_000,
+ &I004_015,
+ &I004_020,
+ &I004_040,
+ &I004_045,
+ &I004_060,
+ &I004_030,
+ &I004_170,
+ &I004_120,
+ &I004_070,
+ &I004_076,
+ &I004_074,
+ &I004_075,
+ &I004_100,
+ &I004_035,
+ &I004_171,
+ &I004_110,
+ &IX_SPARE,
+ &I004_RE,
+ &I004_SP,
+ NULL
+};
+static const AsterixField **I004[] = {
+ I004_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 008, edition 1.2 */
+static int hf_008_V1_2_000 = -1;
+static int hf_008_V1_2_000_VALUE = -1;
+static const value_string valstr_008_V1_2_000_VALUE[] = {
+ { 1, "Polar vector" },
+ { 2, "Cartesian vector of start point/length" },
+ { 3, "Contour record" },
+ { 4, "Cartesian start point and end point vector" },
+ { 254, "SOP message" },
+ { 255, "EOP message" },
+ { 0, NULL }
+};
+static const FieldPart I008_V1_2_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_008_V1_2_000_VALUE, NULL };
+static const FieldPart *I008_V1_2_000_PARTS[] = {
+ &I008_V1_2_000_VALUE,
+ NULL
+};
+static const AsterixField I008_V1_2_000 = { FIXED, 1, 0, 0, &hf_008_V1_2_000, I008_V1_2_000_PARTS, { NULL } };
+static int hf_008_V1_2_010 = -1;
+static int hf_008_V1_2_010_SAC = -1;
+static const FieldPart I008_V1_2_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_2_010_SAC, NULL };
+static int hf_008_V1_2_010_SIC = -1;
+static const FieldPart I008_V1_2_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_2_010_SIC, NULL };
+static const FieldPart *I008_V1_2_010_PARTS[] = {
+ &I008_V1_2_010_SAC,
+ &I008_V1_2_010_SIC,
+ NULL
+};
+static const AsterixField I008_V1_2_010 = { FIXED, 2, 0, 0, &hf_008_V1_2_010, I008_V1_2_010_PARTS, { NULL } };
+static int hf_008_V1_2_020 = -1;
+static int hf_008_V1_2_020_ORG = -1;
+static const value_string valstr_008_V1_2_020_ORG[] = {
+ { 0, "Local Coordinates" },
+ { 1, "System Coordinates" },
+ { 0, NULL }
+};
+static const FieldPart I008_V1_2_020_ORG = { 1, 1.0, FIELD_PART_UINT, &hf_008_V1_2_020_ORG, NULL };
+static int hf_008_V1_2_020_I = -1;
+static const FieldPart I008_V1_2_020_I = { 3, 1.0, FIELD_PART_UINT, &hf_008_V1_2_020_I, NULL };
+static int hf_008_V1_2_020_S = -1;
+static const value_string valstr_008_V1_2_020_S[] = {
+ { 0, "0°" },
+ { 1, "22.5°" },
+ { 2, "45°" },
+ { 3, "67.5°" },
+ { 4, "90°" },
+ { 5, "112.5°" },
+ { 6, "135°" },
+ { 7, "157.5°" },
+ { 0, NULL }
+};
+static const FieldPart I008_V1_2_020_S = { 3, 1.0, FIELD_PART_UINT, &hf_008_V1_2_020_S, NULL };
+static int hf_008_V1_2_020_TST = -1;
+static const value_string valstr_008_V1_2_020_TST[] = {
+ { 0, "Default" },
+ { 1, "Test vector" },
+ { 0, NULL }
+};
+static const FieldPart I008_V1_2_020_TST = { 1, 1.0, FIELD_PART_UINT, &hf_008_V1_2_020_TST, NULL };
+static int hf_008_V1_2_020_ER = -1;
+static const value_string valstr_008_V1_2_020_ER[] = {
+ { 0, "Default" },
+ { 1, "Error condition encountered" },
+ { 0, NULL }
+};
+static const FieldPart I008_V1_2_020_ER = { 1, 1.0, FIELD_PART_UINT, &hf_008_V1_2_020_ER, NULL };
+static const FieldPart *I008_V1_2_020_PARTS[] = {
+ &I008_V1_2_020_ORG,
+ &I008_V1_2_020_I,
+ &I008_V1_2_020_S,
+ &IXXX_FX,
+ &IXXX_5bit_spare,
+ &I008_V1_2_020_TST,
+ &I008_V1_2_020_ER,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I008_V1_2_020 = { FX, 1, 0, 0, &hf_008_V1_2_020, I008_V1_2_020_PARTS, { NULL } };
+static int hf_008_V1_2_034 = -1;
+static int hf_008_V1_2_034_STR = -1;
+static const FieldPart I008_V1_2_034_STR = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_2_034_STR, NULL };
+static int hf_008_V1_2_034_ENDR = -1;
+static const FieldPart I008_V1_2_034_ENDR = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_2_034_ENDR, NULL };
+static int hf_008_V1_2_034_AZ = -1;
+static const FieldPart I008_V1_2_034_AZ = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_008_V1_2_034_AZ, NULL };
+static const FieldPart *I008_V1_2_034_PARTS[] = {
+ &I008_V1_2_034_STR,
+ &I008_V1_2_034_ENDR,
+ &I008_V1_2_034_AZ,
+ NULL
+};
+static const AsterixField I008_V1_2_034 = { REPETITIVE, 4, 1, 0, &hf_008_V1_2_034, I008_V1_2_034_PARTS, { NULL } };
+static int hf_008_V1_2_036 = -1;
+static int hf_008_V1_2_036_X = -1;
+static const FieldPart I008_V1_2_036_X = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_2_036_X, NULL };
+static int hf_008_V1_2_036_Y = -1;
+static const FieldPart I008_V1_2_036_Y = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_2_036_Y, NULL };
+static int hf_008_V1_2_036_LENGTH = -1;
+static const FieldPart I008_V1_2_036_LENGTH = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_2_036_LENGTH, NULL };
+static const FieldPart *I008_V1_2_036_PARTS[] = {
+ &I008_V1_2_036_X,
+ &I008_V1_2_036_Y,
+ &I008_V1_2_036_LENGTH,
+ NULL
+};
+static const AsterixField I008_V1_2_036 = { REPETITIVE, 3, 1, 0, &hf_008_V1_2_036, I008_V1_2_036_PARTS, { NULL } };
+static int hf_008_V1_2_038 = -1;
+static int hf_008_V1_2_038_X1 = -1;
+static const FieldPart I008_V1_2_038_X1 = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_2_038_X1, NULL };
+static int hf_008_V1_2_038_Y1 = -1;
+static const FieldPart I008_V1_2_038_Y1 = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_2_038_Y1, NULL };
+static int hf_008_V1_2_038_X2 = -1;
+static const FieldPart I008_V1_2_038_X2 = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_2_038_X2, NULL };
+static int hf_008_V1_2_038_Y2 = -1;
+static const FieldPart I008_V1_2_038_Y2 = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_2_038_Y2, NULL };
+static const FieldPart *I008_V1_2_038_PARTS[] = {
+ &I008_V1_2_038_X1,
+ &I008_V1_2_038_Y1,
+ &I008_V1_2_038_X2,
+ &I008_V1_2_038_Y2,
+ NULL
+};
+static const AsterixField I008_V1_2_038 = { REPETITIVE, 4, 1, 0, &hf_008_V1_2_038, I008_V1_2_038_PARTS, { NULL } };
+static int hf_008_V1_2_040 = -1;
+static int hf_008_V1_2_040_ORG = -1;
+static const value_string valstr_008_V1_2_040_ORG[] = {
+ { 0, "Local Coordinates" },
+ { 1, "System Coordinates" },
+ { 0, NULL }
+};
+static const FieldPart I008_V1_2_040_ORG = { 1, 1.0, FIELD_PART_UINT, &hf_008_V1_2_040_ORG, NULL };
+static int hf_008_V1_2_040_I = -1;
+static const FieldPart I008_V1_2_040_I = { 3, 1.0, FIELD_PART_HEX, &hf_008_V1_2_040_I, NULL };
+static int hf_008_V1_2_040_FSTLST = -1;
+static const value_string valstr_008_V1_2_040_FSTLST[] = {
+ { 0, "Intermediate record of a contour" },
+ { 1, "Last record of a contour of at least two records" },
+ { 2, "First record of a contour of at least two records" },
+ { 3, "First and only record, fully defining a contour" },
+ { 0, NULL }
+};
+static const FieldPart I008_V1_2_040_FSTLST = { 2, 1.0, FIELD_PART_UINT, &hf_008_V1_2_040_FSTLST, NULL };
+static int hf_008_V1_2_040_CSN = -1;
+static const FieldPart I008_V1_2_040_CSN = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_2_040_CSN, NULL };
+static const FieldPart *I008_V1_2_040_PARTS[] = {
+ &I008_V1_2_040_ORG,
+ &I008_V1_2_040_I,
+ &IXXX_2bit_spare,
+ &I008_V1_2_040_FSTLST,
+ &I008_V1_2_040_CSN,
+ NULL
+};
+static const AsterixField I008_V1_2_040 = { FIXED, 2, 0, 0, &hf_008_V1_2_040, I008_V1_2_040_PARTS, { NULL } };
+static int hf_008_V1_2_050 = -1;
+static int hf_008_V1_2_050_X1 = -1;
+static const FieldPart I008_V1_2_050_X1 = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_2_050_X1, NULL };
+static int hf_008_V1_2_050_Y1 = -1;
+static const FieldPart I008_V1_2_050_Y1 = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_2_050_Y1, NULL };
+static const FieldPart *I008_V1_2_050_PARTS[] = {
+ &I008_V1_2_050_X1,
+ &I008_V1_2_050_Y1,
+ NULL
+};
+static const AsterixField I008_V1_2_050 = { REPETITIVE, 2, 1, 0, &hf_008_V1_2_050, I008_V1_2_050_PARTS, { NULL } };
+static int hf_008_V1_2_090 = -1;
+static int hf_008_V1_2_090_VALUE = -1;
+static const FieldPart I008_V1_2_090_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_008_V1_2_090_VALUE, NULL };
+static const FieldPart *I008_V1_2_090_PARTS[] = {
+ &I008_V1_2_090_VALUE,
+ NULL
+};
+static const AsterixField I008_V1_2_090 = { FIXED, 3, 0, 0, &hf_008_V1_2_090, I008_V1_2_090_PARTS, { NULL } };
+static int hf_008_V1_2_100 = -1;
+static int hf_008_V1_2_100_F = -1;
+static const FieldPart I008_V1_2_100_F = { 5, 1.0, FIELD_PART_FLOAT, &hf_008_V1_2_100_F, NULL };
+static int hf_008_V1_2_100_R = -1;
+static const FieldPart I008_V1_2_100_R = { 3, 1.0, FIELD_PART_HEX, &hf_008_V1_2_100_R, NULL };
+static int hf_008_V1_2_100_Q = -1;
+static const FieldPart I008_V1_2_100_Q = { 15, 1.0, FIELD_PART_HEX, &hf_008_V1_2_100_Q, NULL };
+static const FieldPart *I008_V1_2_100_PARTS[] = {
+ &I008_V1_2_100_F,
+ &I008_V1_2_100_R,
+ &I008_V1_2_100_Q,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I008_V1_2_100 = { FX, 3, 0, 0, &hf_008_V1_2_100, I008_V1_2_100_PARTS, { NULL } };
+static int hf_008_V1_2_110 = -1;
+static int hf_008_V1_2_110_Subitem = -1;
+static const FieldPart I008_V1_2_110_Subitem = { 7, 1.0, FIELD_PART_HEX, &hf_008_V1_2_110_Subitem, NULL };
+static const FieldPart *I008_V1_2_110_PARTS[] = {
+ &I008_V1_2_110_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I008_V1_2_110 = { FX, 1, 0, 0, &hf_008_V1_2_110, I008_V1_2_110_PARTS, { NULL } };
+static int hf_008_V1_2_120 = -1;
+static int hf_008_V1_2_120_VALUE = -1;
+static const FieldPart I008_V1_2_120_VALUE = { 16, 1.0, FIELD_PART_UINT, &hf_008_V1_2_120_VALUE, NULL };
+static const FieldPart *I008_V1_2_120_PARTS[] = {
+ &I008_V1_2_120_VALUE,
+ NULL
+};
+static const AsterixField I008_V1_2_120 = { FIXED, 2, 0, 0, &hf_008_V1_2_120, I008_V1_2_120_PARTS, { NULL } };
+static int hf_008_V1_2_SP = -1;
+static const AsterixField I008_V1_2_SP = { EXP, 0, 0, 1, &hf_008_V1_2_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I008_V1_2_uap[] = {
+ &I008_V1_2_010,
+ &I008_V1_2_000,
+ &I008_V1_2_020,
+ &I008_V1_2_036,
+ &I008_V1_2_034,
+ &I008_V1_2_040,
+ &I008_V1_2_050,
+ &I008_V1_2_090,
+ &I008_V1_2_100,
+ &I008_V1_2_110,
+ &I008_V1_2_120,
+ &I008_V1_2_038,
+ &I008_V1_2_SP,
+ NULL
+};
+static const AsterixField **I008_V1_2[] = {
+ I008_V1_2_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 008, edition 1.3 */
+static int hf_008_V1_3_000 = -1;
+static int hf_008_V1_3_000_VALUE = -1;
+static const value_string valstr_008_V1_3_000_VALUE[] = {
+ { 1, "Polar vector" },
+ { 2, "Cartesian vector of start point/length" },
+ { 3, "Contour record" },
+ { 4, "Cartesian start point and end point vector" },
+ { 254, "SOP message" },
+ { 255, "EOP message" },
+ { 0, NULL }
+};
+static const FieldPart I008_V1_3_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_008_V1_3_000_VALUE, NULL };
+static const FieldPart *I008_V1_3_000_PARTS[] = {
+ &I008_V1_3_000_VALUE,
+ NULL
+};
+static const AsterixField I008_V1_3_000 = { FIXED, 1, 0, 0, &hf_008_V1_3_000, I008_V1_3_000_PARTS, { NULL } };
+static int hf_008_V1_3_010 = -1;
+static int hf_008_V1_3_010_SAC = -1;
+static const FieldPart I008_V1_3_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_3_010_SAC, NULL };
+static int hf_008_V1_3_010_SIC = -1;
+static const FieldPart I008_V1_3_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_3_010_SIC, NULL };
+static const FieldPart *I008_V1_3_010_PARTS[] = {
+ &I008_V1_3_010_SAC,
+ &I008_V1_3_010_SIC,
+ NULL
+};
+static const AsterixField I008_V1_3_010 = { FIXED, 2, 0, 0, &hf_008_V1_3_010, I008_V1_3_010_PARTS, { NULL } };
+static int hf_008_V1_3_020 = -1;
+static int hf_008_V1_3_020_ORG = -1;
+static const value_string valstr_008_V1_3_020_ORG[] = {
+ { 0, "Local Coordinates" },
+ { 1, "System Coordinates" },
+ { 0, NULL }
+};
+static const FieldPart I008_V1_3_020_ORG = { 1, 1.0, FIELD_PART_UINT, &hf_008_V1_3_020_ORG, NULL };
+static int hf_008_V1_3_020_I = -1;
+static const FieldPart I008_V1_3_020_I = { 3, 1.0, FIELD_PART_UINT, &hf_008_V1_3_020_I, NULL };
+static int hf_008_V1_3_020_S = -1;
+static const value_string valstr_008_V1_3_020_S[] = {
+ { 0, "0°" },
+ { 1, "22.5°" },
+ { 2, "45°" },
+ { 3, "67.5°" },
+ { 4, "90°" },
+ { 5, "112.5°" },
+ { 6, "135°" },
+ { 7, "157.5°" },
+ { 0, NULL }
+};
+static const FieldPart I008_V1_3_020_S = { 3, 1.0, FIELD_PART_UINT, &hf_008_V1_3_020_S, NULL };
+static int hf_008_V1_3_020_TST = -1;
+static const value_string valstr_008_V1_3_020_TST[] = {
+ { 0, "Default" },
+ { 1, "Test vector" },
+ { 0, NULL }
+};
+static const FieldPart I008_V1_3_020_TST = { 1, 1.0, FIELD_PART_UINT, &hf_008_V1_3_020_TST, NULL };
+static int hf_008_V1_3_020_ER = -1;
+static const value_string valstr_008_V1_3_020_ER[] = {
+ { 0, "Default" },
+ { 1, "Error condition encountered" },
+ { 0, NULL }
+};
+static const FieldPart I008_V1_3_020_ER = { 1, 1.0, FIELD_PART_UINT, &hf_008_V1_3_020_ER, NULL };
+static const FieldPart *I008_V1_3_020_PARTS[] = {
+ &I008_V1_3_020_ORG,
+ &I008_V1_3_020_I,
+ &I008_V1_3_020_S,
+ &IXXX_FX,
+ &IXXX_5bit_spare,
+ &I008_V1_3_020_TST,
+ &I008_V1_3_020_ER,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I008_V1_3_020 = { FX, 1, 0, 0, &hf_008_V1_3_020, I008_V1_3_020_PARTS, { NULL } };
+static int hf_008_V1_3_034 = -1;
+static int hf_008_V1_3_034_STR = -1;
+static const FieldPart I008_V1_3_034_STR = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_3_034_STR, NULL };
+static int hf_008_V1_3_034_ENDR = -1;
+static const FieldPart I008_V1_3_034_ENDR = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_3_034_ENDR, NULL };
+static int hf_008_V1_3_034_AZ = -1;
+static const FieldPart I008_V1_3_034_AZ = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_008_V1_3_034_AZ, NULL };
+static const FieldPart *I008_V1_3_034_PARTS[] = {
+ &I008_V1_3_034_STR,
+ &I008_V1_3_034_ENDR,
+ &I008_V1_3_034_AZ,
+ NULL
+};
+static const AsterixField I008_V1_3_034 = { REPETITIVE, 4, 1, 0, &hf_008_V1_3_034, I008_V1_3_034_PARTS, { NULL } };
+static int hf_008_V1_3_036 = -1;
+static int hf_008_V1_3_036_X = -1;
+static const FieldPart I008_V1_3_036_X = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_3_036_X, NULL };
+static int hf_008_V1_3_036_Y = -1;
+static const FieldPart I008_V1_3_036_Y = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_3_036_Y, NULL };
+static int hf_008_V1_3_036_LENGTH = -1;
+static const FieldPart I008_V1_3_036_LENGTH = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_3_036_LENGTH, NULL };
+static const FieldPart *I008_V1_3_036_PARTS[] = {
+ &I008_V1_3_036_X,
+ &I008_V1_3_036_Y,
+ &I008_V1_3_036_LENGTH,
+ NULL
+};
+static const AsterixField I008_V1_3_036 = { REPETITIVE, 3, 1, 0, &hf_008_V1_3_036, I008_V1_3_036_PARTS, { NULL } };
+static int hf_008_V1_3_038 = -1;
+static int hf_008_V1_3_038_X1 = -1;
+static const FieldPart I008_V1_3_038_X1 = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_3_038_X1, NULL };
+static int hf_008_V1_3_038_Y1 = -1;
+static const FieldPart I008_V1_3_038_Y1 = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_3_038_Y1, NULL };
+static int hf_008_V1_3_038_X2 = -1;
+static const FieldPart I008_V1_3_038_X2 = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_3_038_X2, NULL };
+static int hf_008_V1_3_038_Y2 = -1;
+static const FieldPart I008_V1_3_038_Y2 = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_3_038_Y2, NULL };
+static const FieldPart *I008_V1_3_038_PARTS[] = {
+ &I008_V1_3_038_X1,
+ &I008_V1_3_038_Y1,
+ &I008_V1_3_038_X2,
+ &I008_V1_3_038_Y2,
+ NULL
+};
+static const AsterixField I008_V1_3_038 = { REPETITIVE, 4, 1, 0, &hf_008_V1_3_038, I008_V1_3_038_PARTS, { NULL } };
+static int hf_008_V1_3_040 = -1;
+static int hf_008_V1_3_040_ORG = -1;
+static const value_string valstr_008_V1_3_040_ORG[] = {
+ { 0, "Local Coordinates" },
+ { 1, "System Coordinates" },
+ { 0, NULL }
+};
+static const FieldPart I008_V1_3_040_ORG = { 1, 1.0, FIELD_PART_UINT, &hf_008_V1_3_040_ORG, NULL };
+static int hf_008_V1_3_040_I = -1;
+static const FieldPart I008_V1_3_040_I = { 3, 1.0, FIELD_PART_HEX, &hf_008_V1_3_040_I, NULL };
+static int hf_008_V1_3_040_FSTLST = -1;
+static const value_string valstr_008_V1_3_040_FSTLST[] = {
+ { 0, "Intermediate record of a contour" },
+ { 1, "Last record of a contour of at least two records" },
+ { 2, "First record of a contour of at least two records" },
+ { 3, "First and only record, fully defining a contour" },
+ { 0, NULL }
+};
+static const FieldPart I008_V1_3_040_FSTLST = { 2, 1.0, FIELD_PART_UINT, &hf_008_V1_3_040_FSTLST, NULL };
+static int hf_008_V1_3_040_CSN = -1;
+static const FieldPart I008_V1_3_040_CSN = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_3_040_CSN, NULL };
+static const FieldPart *I008_V1_3_040_PARTS[] = {
+ &I008_V1_3_040_ORG,
+ &I008_V1_3_040_I,
+ &IXXX_2bit_spare,
+ &I008_V1_3_040_FSTLST,
+ &I008_V1_3_040_CSN,
+ NULL
+};
+static const AsterixField I008_V1_3_040 = { FIXED, 2, 0, 0, &hf_008_V1_3_040, I008_V1_3_040_PARTS, { NULL } };
+static int hf_008_V1_3_050 = -1;
+static int hf_008_V1_3_050_X1 = -1;
+static const FieldPart I008_V1_3_050_X1 = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_3_050_X1, NULL };
+static int hf_008_V1_3_050_Y1 = -1;
+static const FieldPart I008_V1_3_050_Y1 = { 8, 1.0, FIELD_PART_HEX, &hf_008_V1_3_050_Y1, NULL };
+static const FieldPart *I008_V1_3_050_PARTS[] = {
+ &I008_V1_3_050_X1,
+ &I008_V1_3_050_Y1,
+ NULL
+};
+static const AsterixField I008_V1_3_050 = { REPETITIVE, 2, 1, 0, &hf_008_V1_3_050, I008_V1_3_050_PARTS, { NULL } };
+static int hf_008_V1_3_090 = -1;
+static int hf_008_V1_3_090_VALUE = -1;
+static const FieldPart I008_V1_3_090_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_008_V1_3_090_VALUE, NULL };
+static const FieldPart *I008_V1_3_090_PARTS[] = {
+ &I008_V1_3_090_VALUE,
+ NULL
+};
+static const AsterixField I008_V1_3_090 = { FIXED, 3, 0, 0, &hf_008_V1_3_090, I008_V1_3_090_PARTS, { NULL } };
+static int hf_008_V1_3_100 = -1;
+static int hf_008_V1_3_100_F = -1;
+static const FieldPart I008_V1_3_100_F = { 5, 1.0, FIELD_PART_FLOAT, &hf_008_V1_3_100_F, NULL };
+static int hf_008_V1_3_100_R = -1;
+static const FieldPart I008_V1_3_100_R = { 3, 1.0, FIELD_PART_HEX, &hf_008_V1_3_100_R, NULL };
+static int hf_008_V1_3_100_Q = -1;
+static const FieldPart I008_V1_3_100_Q = { 15, 1.0, FIELD_PART_HEX, &hf_008_V1_3_100_Q, NULL };
+static const FieldPart *I008_V1_3_100_PARTS[] = {
+ &I008_V1_3_100_F,
+ &I008_V1_3_100_R,
+ &I008_V1_3_100_Q,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I008_V1_3_100 = { FX, 3, 0, 0, &hf_008_V1_3_100, I008_V1_3_100_PARTS, { NULL } };
+static int hf_008_V1_3_110 = -1;
+static int hf_008_V1_3_110_Subitem = -1;
+static const FieldPart I008_V1_3_110_Subitem = { 7, 1.0, FIELD_PART_HEX, &hf_008_V1_3_110_Subitem, NULL };
+static const FieldPart *I008_V1_3_110_PARTS[] = {
+ &I008_V1_3_110_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I008_V1_3_110 = { FX, 1, 0, 0, &hf_008_V1_3_110, I008_V1_3_110_PARTS, { NULL } };
+static int hf_008_V1_3_120 = -1;
+static int hf_008_V1_3_120_VALUE = -1;
+static const FieldPart I008_V1_3_120_VALUE = { 16, 1.0, FIELD_PART_UINT, &hf_008_V1_3_120_VALUE, NULL };
+static const FieldPart *I008_V1_3_120_PARTS[] = {
+ &I008_V1_3_120_VALUE,
+ NULL
+};
+static const AsterixField I008_V1_3_120 = { FIXED, 2, 0, 0, &hf_008_V1_3_120, I008_V1_3_120_PARTS, { NULL } };
+static int hf_008_V1_3_SP = -1;
+static const AsterixField I008_V1_3_SP = { EXP, 0, 0, 1, &hf_008_V1_3_SP, NULL, { NULL } };
+
+/* Category 008, edition 1.3 (latest) */
+static int hf_008_000 = -1;
+static int hf_008_000_VALUE = -1;
+static const value_string valstr_008_000_VALUE[] = {
+ { 1, "Polar vector" },
+ { 2, "Cartesian vector of start point/length" },
+ { 3, "Contour record" },
+ { 4, "Cartesian start point and end point vector" },
+ { 254, "SOP message" },
+ { 255, "EOP message" },
+ { 0, NULL }
+};
+static const FieldPart I008_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_008_000_VALUE, NULL };
+static const FieldPart *I008_000_PARTS[] = {
+ &I008_000_VALUE,
+ NULL
+};
+static const AsterixField I008_000 = { FIXED, 1, 0, 0, &hf_008_000, I008_000_PARTS, { NULL } };
+static int hf_008_010 = -1;
+static int hf_008_010_SAC = -1;
+static const FieldPart I008_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_008_010_SAC, NULL };
+static int hf_008_010_SIC = -1;
+static const FieldPart I008_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_008_010_SIC, NULL };
+static const FieldPart *I008_010_PARTS[] = {
+ &I008_010_SAC,
+ &I008_010_SIC,
+ NULL
+};
+static const AsterixField I008_010 = { FIXED, 2, 0, 0, &hf_008_010, I008_010_PARTS, { NULL } };
+static int hf_008_020 = -1;
+static int hf_008_020_ORG = -1;
+static const value_string valstr_008_020_ORG[] = {
+ { 0, "Local Coordinates" },
+ { 1, "System Coordinates" },
+ { 0, NULL }
+};
+static const FieldPart I008_020_ORG = { 1, 1.0, FIELD_PART_UINT, &hf_008_020_ORG, NULL };
+static int hf_008_020_I = -1;
+static const FieldPart I008_020_I = { 3, 1.0, FIELD_PART_UINT, &hf_008_020_I, NULL };
+static int hf_008_020_S = -1;
+static const value_string valstr_008_020_S[] = {
+ { 0, "0°" },
+ { 1, "22.5°" },
+ { 2, "45°" },
+ { 3, "67.5°" },
+ { 4, "90°" },
+ { 5, "112.5°" },
+ { 6, "135°" },
+ { 7, "157.5°" },
+ { 0, NULL }
+};
+static const FieldPart I008_020_S = { 3, 1.0, FIELD_PART_UINT, &hf_008_020_S, NULL };
+static int hf_008_020_TST = -1;
+static const value_string valstr_008_020_TST[] = {
+ { 0, "Default" },
+ { 1, "Test vector" },
+ { 0, NULL }
+};
+static const FieldPart I008_020_TST = { 1, 1.0, FIELD_PART_UINT, &hf_008_020_TST, NULL };
+static int hf_008_020_ER = -1;
+static const value_string valstr_008_020_ER[] = {
+ { 0, "Default" },
+ { 1, "Error condition encountered" },
+ { 0, NULL }
+};
+static const FieldPart I008_020_ER = { 1, 1.0, FIELD_PART_UINT, &hf_008_020_ER, NULL };
+static const FieldPart *I008_020_PARTS[] = {
+ &I008_020_ORG,
+ &I008_020_I,
+ &I008_020_S,
+ &IXXX_FX,
+ &IXXX_5bit_spare,
+ &I008_020_TST,
+ &I008_020_ER,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I008_020 = { FX, 1, 0, 0, &hf_008_020, I008_020_PARTS, { NULL } };
+static int hf_008_034 = -1;
+static int hf_008_034_STR = -1;
+static const FieldPart I008_034_STR = { 8, 1.0, FIELD_PART_HEX, &hf_008_034_STR, NULL };
+static int hf_008_034_ENDR = -1;
+static const FieldPart I008_034_ENDR = { 8, 1.0, FIELD_PART_HEX, &hf_008_034_ENDR, NULL };
+static int hf_008_034_AZ = -1;
+static const FieldPart I008_034_AZ = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_008_034_AZ, NULL };
+static const FieldPart *I008_034_PARTS[] = {
+ &I008_034_STR,
+ &I008_034_ENDR,
+ &I008_034_AZ,
+ NULL
+};
+static const AsterixField I008_034 = { REPETITIVE, 4, 1, 0, &hf_008_034, I008_034_PARTS, { NULL } };
+static int hf_008_036 = -1;
+static int hf_008_036_X = -1;
+static const FieldPart I008_036_X = { 8, 1.0, FIELD_PART_HEX, &hf_008_036_X, NULL };
+static int hf_008_036_Y = -1;
+static const FieldPart I008_036_Y = { 8, 1.0, FIELD_PART_HEX, &hf_008_036_Y, NULL };
+static int hf_008_036_LENGTH = -1;
+static const FieldPart I008_036_LENGTH = { 8, 1.0, FIELD_PART_HEX, &hf_008_036_LENGTH, NULL };
+static const FieldPart *I008_036_PARTS[] = {
+ &I008_036_X,
+ &I008_036_Y,
+ &I008_036_LENGTH,
+ NULL
+};
+static const AsterixField I008_036 = { REPETITIVE, 3, 1, 0, &hf_008_036, I008_036_PARTS, { NULL } };
+static int hf_008_038 = -1;
+static int hf_008_038_X1 = -1;
+static const FieldPart I008_038_X1 = { 8, 1.0, FIELD_PART_HEX, &hf_008_038_X1, NULL };
+static int hf_008_038_Y1 = -1;
+static const FieldPart I008_038_Y1 = { 8, 1.0, FIELD_PART_HEX, &hf_008_038_Y1, NULL };
+static int hf_008_038_X2 = -1;
+static const FieldPart I008_038_X2 = { 8, 1.0, FIELD_PART_HEX, &hf_008_038_X2, NULL };
+static int hf_008_038_Y2 = -1;
+static const FieldPart I008_038_Y2 = { 8, 1.0, FIELD_PART_HEX, &hf_008_038_Y2, NULL };
+static const FieldPart *I008_038_PARTS[] = {
+ &I008_038_X1,
+ &I008_038_Y1,
+ &I008_038_X2,
+ &I008_038_Y2,
+ NULL
+};
+static const AsterixField I008_038 = { REPETITIVE, 4, 1, 0, &hf_008_038, I008_038_PARTS, { NULL } };
+static int hf_008_040 = -1;
+static int hf_008_040_ORG = -1;
+static const value_string valstr_008_040_ORG[] = {
+ { 0, "Local Coordinates" },
+ { 1, "System Coordinates" },
+ { 0, NULL }
+};
+static const FieldPart I008_040_ORG = { 1, 1.0, FIELD_PART_UINT, &hf_008_040_ORG, NULL };
+static int hf_008_040_I = -1;
+static const FieldPart I008_040_I = { 3, 1.0, FIELD_PART_HEX, &hf_008_040_I, NULL };
+static int hf_008_040_FSTLST = -1;
+static const value_string valstr_008_040_FSTLST[] = {
+ { 0, "Intermediate record of a contour" },
+ { 1, "Last record of a contour of at least two records" },
+ { 2, "First record of a contour of at least two records" },
+ { 3, "First and only record, fully defining a contour" },
+ { 0, NULL }
+};
+static const FieldPart I008_040_FSTLST = { 2, 1.0, FIELD_PART_UINT, &hf_008_040_FSTLST, NULL };
+static int hf_008_040_CSN = -1;
+static const FieldPart I008_040_CSN = { 8, 1.0, FIELD_PART_HEX, &hf_008_040_CSN, NULL };
+static const FieldPart *I008_040_PARTS[] = {
+ &I008_040_ORG,
+ &I008_040_I,
+ &IXXX_2bit_spare,
+ &I008_040_FSTLST,
+ &I008_040_CSN,
+ NULL
+};
+static const AsterixField I008_040 = { FIXED, 2, 0, 0, &hf_008_040, I008_040_PARTS, { NULL } };
+static int hf_008_050 = -1;
+static int hf_008_050_X1 = -1;
+static const FieldPart I008_050_X1 = { 8, 1.0, FIELD_PART_HEX, &hf_008_050_X1, NULL };
+static int hf_008_050_Y1 = -1;
+static const FieldPart I008_050_Y1 = { 8, 1.0, FIELD_PART_HEX, &hf_008_050_Y1, NULL };
+static const FieldPart *I008_050_PARTS[] = {
+ &I008_050_X1,
+ &I008_050_Y1,
+ NULL
+};
+static const AsterixField I008_050 = { REPETITIVE, 2, 1, 0, &hf_008_050, I008_050_PARTS, { NULL } };
+static int hf_008_090 = -1;
+static int hf_008_090_VALUE = -1;
+static const FieldPart I008_090_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_008_090_VALUE, NULL };
+static const FieldPart *I008_090_PARTS[] = {
+ &I008_090_VALUE,
+ NULL
+};
+static const AsterixField I008_090 = { FIXED, 3, 0, 0, &hf_008_090, I008_090_PARTS, { NULL } };
+static int hf_008_100 = -1;
+static int hf_008_100_F = -1;
+static const FieldPart I008_100_F = { 5, 1.0, FIELD_PART_FLOAT, &hf_008_100_F, NULL };
+static int hf_008_100_R = -1;
+static const FieldPart I008_100_R = { 3, 1.0, FIELD_PART_HEX, &hf_008_100_R, NULL };
+static int hf_008_100_Q = -1;
+static const FieldPart I008_100_Q = { 15, 1.0, FIELD_PART_HEX, &hf_008_100_Q, NULL };
+static const FieldPart *I008_100_PARTS[] = {
+ &I008_100_F,
+ &I008_100_R,
+ &I008_100_Q,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I008_100 = { FX, 3, 0, 0, &hf_008_100, I008_100_PARTS, { NULL } };
+static int hf_008_110 = -1;
+static int hf_008_110_Subitem = -1;
+static const FieldPart I008_110_Subitem = { 7, 1.0, FIELD_PART_HEX, &hf_008_110_Subitem, NULL };
+static const FieldPart *I008_110_PARTS[] = {
+ &I008_110_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I008_110 = { FX, 1, 0, 0, &hf_008_110, I008_110_PARTS, { NULL } };
+static int hf_008_120 = -1;
+static int hf_008_120_VALUE = -1;
+static const FieldPart I008_120_VALUE = { 16, 1.0, FIELD_PART_UINT, &hf_008_120_VALUE, NULL };
+static const FieldPart *I008_120_PARTS[] = {
+ &I008_120_VALUE,
+ NULL
+};
+static const AsterixField I008_120 = { FIXED, 2, 0, 0, &hf_008_120, I008_120_PARTS, { NULL } };
+static int hf_008_SP = -1;
+static const AsterixField I008_SP = { EXP, 0, 0, 1, &hf_008_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I008_V1_3_uap[] = {
+ &I008_V1_3_010,
+ &I008_V1_3_000,
+ &I008_V1_3_020,
+ &I008_V1_3_036,
+ &I008_V1_3_034,
+ &I008_V1_3_040,
+ &I008_V1_3_050,
+ &I008_V1_3_090,
+ &I008_V1_3_100,
+ &I008_V1_3_110,
+ &I008_V1_3_120,
+ &I008_V1_3_038,
+ &I008_V1_3_SP,
+ NULL
+};
+static const AsterixField **I008_V1_3[] = {
+ I008_V1_3_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I008_uap[] = {
+ &I008_010,
+ &I008_000,
+ &I008_020,
+ &I008_036,
+ &I008_034,
+ &I008_040,
+ &I008_050,
+ &I008_090,
+ &I008_100,
+ &I008_110,
+ &I008_120,
+ &I008_038,
+ &I008_SP,
+ NULL
+};
+static const AsterixField **I008[] = {
+ I008_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 009, edition 2.1 */
+static int hf_009_V2_1_000 = -1;
+static int hf_009_V2_1_000_VALUE = -1;
+static const value_string valstr_009_V2_1_000_VALUE[] = {
+ { 2, "Cartesian vector" },
+ { 253, "Intermediate-update-step message" },
+ { 254, "Start-of-picture message" },
+ { 255, "End-of-picture message" },
+ { 0, NULL }
+};
+static const FieldPart I009_V2_1_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_009_V2_1_000_VALUE, NULL };
+static const FieldPart *I009_V2_1_000_PARTS[] = {
+ &I009_V2_1_000_VALUE,
+ NULL
+};
+static const AsterixField I009_V2_1_000 = { FIXED, 1, 0, 0, &hf_009_V2_1_000, I009_V2_1_000_PARTS, { NULL } };
+static int hf_009_V2_1_010 = -1;
+static int hf_009_V2_1_010_SAC = -1;
+static const FieldPart I009_V2_1_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_009_V2_1_010_SAC, NULL };
+static int hf_009_V2_1_010_SIC = -1;
+static const FieldPart I009_V2_1_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_009_V2_1_010_SIC, NULL };
+static const FieldPart *I009_V2_1_010_PARTS[] = {
+ &I009_V2_1_010_SAC,
+ &I009_V2_1_010_SIC,
+ NULL
+};
+static const AsterixField I009_V2_1_010 = { FIXED, 2, 0, 0, &hf_009_V2_1_010, I009_V2_1_010_PARTS, { NULL } };
+static int hf_009_V2_1_020 = -1;
+static int hf_009_V2_1_020_ORG = -1;
+static const value_string valstr_009_V2_1_020_ORG[] = {
+ { 0, "Local Coordinates" },
+ { 1, "System Coordinates" },
+ { 0, NULL }
+};
+static const FieldPart I009_V2_1_020_ORG = { 1, 1.0, FIELD_PART_UINT, &hf_009_V2_1_020_ORG, NULL };
+static int hf_009_V2_1_020_I = -1;
+static const FieldPart I009_V2_1_020_I = { 3, 1.0, FIELD_PART_UINT, &hf_009_V2_1_020_I, NULL };
+static int hf_009_V2_1_020_S = -1;
+static const value_string valstr_009_V2_1_020_S[] = {
+ { 0, "0°" },
+ { 1, "22.5°" },
+ { 2, "45°" },
+ { 3, "67.5°" },
+ { 4, "90°" },
+ { 5, "112.5°" },
+ { 6, "135°" },
+ { 7, "157.5°" },
+ { 0, NULL }
+};
+static const FieldPart I009_V2_1_020_S = { 3, 1.0, FIELD_PART_UINT, &hf_009_V2_1_020_S, NULL };
+static const FieldPart *I009_V2_1_020_PARTS[] = {
+ &I009_V2_1_020_ORG,
+ &I009_V2_1_020_I,
+ &I009_V2_1_020_S,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I009_V2_1_020 = { FX, 1, 0, 0, &hf_009_V2_1_020, I009_V2_1_020_PARTS, { NULL } };
+static int hf_009_V2_1_030 = -1;
+static int hf_009_V2_1_030_X = -1;
+static const FieldPart I009_V2_1_030_X = { 16, 1.0, FIELD_PART_FLOAT, &hf_009_V2_1_030_X, NULL };
+static int hf_009_V2_1_030_Y = -1;
+static const FieldPart I009_V2_1_030_Y = { 16, 1.0, FIELD_PART_FLOAT, &hf_009_V2_1_030_Y, NULL };
+static int hf_009_V2_1_030_L = -1;
+static const FieldPart I009_V2_1_030_L = { 16, 1.0, FIELD_PART_UINT, &hf_009_V2_1_030_L, NULL };
+static const FieldPart *I009_V2_1_030_PARTS[] = {
+ &I009_V2_1_030_X,
+ &I009_V2_1_030_Y,
+ &I009_V2_1_030_L,
+ NULL
+};
+static const AsterixField I009_V2_1_030 = { REPETITIVE, 6, 1, 0, &hf_009_V2_1_030, I009_V2_1_030_PARTS, { NULL } };
+static int hf_009_V2_1_060 = -1;
+static int hf_009_V2_1_060_SN = -1;
+static const FieldPart I009_V2_1_060_SN = { 6, 1.0, FIELD_PART_UINT, &hf_009_V2_1_060_SN, NULL };
+static const FieldPart *I009_V2_1_060_PARTS[] = {
+ &I009_V2_1_060_SN,
+ &IXXX_1bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I009_V2_1_060 = { FX, 1, 0, 0, &hf_009_V2_1_060, I009_V2_1_060_PARTS, { NULL } };
+static int hf_009_V2_1_070 = -1;
+static int hf_009_V2_1_070_VALUE = -1;
+static const FieldPart I009_V2_1_070_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_009_V2_1_070_VALUE, NULL };
+static const FieldPart *I009_V2_1_070_PARTS[] = {
+ &I009_V2_1_070_VALUE,
+ NULL
+};
+static const AsterixField I009_V2_1_070 = { FIXED, 3, 0, 0, &hf_009_V2_1_070, I009_V2_1_070_PARTS, { NULL } };
+static int hf_009_V2_1_080 = -1;
+static int hf_009_V2_1_080_F = -1;
+static const FieldPart I009_V2_1_080_F = { 5, 1.0, FIELD_PART_FLOAT, &hf_009_V2_1_080_F, NULL };
+static int hf_009_V2_1_080_R = -1;
+static const FieldPart I009_V2_1_080_R = { 3, 1.0, FIELD_PART_HEX, &hf_009_V2_1_080_R, NULL };
+static int hf_009_V2_1_080_Q = -1;
+static const FieldPart I009_V2_1_080_Q = { 15, 1.0, FIELD_PART_HEX, &hf_009_V2_1_080_Q, NULL };
+static const FieldPart *I009_V2_1_080_PARTS[] = {
+ &I009_V2_1_080_F,
+ &I009_V2_1_080_R,
+ &I009_V2_1_080_Q,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I009_V2_1_080 = { FX, 3, 0, 0, &hf_009_V2_1_080, I009_V2_1_080_PARTS, { NULL } };
+static int hf_009_V2_1_090 = -1;
+static int hf_009_V2_1_090_SAC = -1;
+static const FieldPart I009_V2_1_090_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_009_V2_1_090_SAC, NULL };
+static int hf_009_V2_1_090_SIC = -1;
+static const FieldPart I009_V2_1_090_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_009_V2_1_090_SIC, NULL };
+static int hf_009_V2_1_090_CP = -1;
+static const FieldPart I009_V2_1_090_CP = { 1, 1.0, FIELD_PART_HEX, &hf_009_V2_1_090_CP, NULL };
+static int hf_009_V2_1_090_WO = -1;
+static const FieldPart I009_V2_1_090_WO = { 1, 1.0, FIELD_PART_HEX, &hf_009_V2_1_090_WO, NULL };
+static int hf_009_V2_1_090_R = -1;
+static const FieldPart I009_V2_1_090_R = { 3, 1.0, FIELD_PART_HEX, &hf_009_V2_1_090_R, NULL };
+static const FieldPart *I009_V2_1_090_PARTS[] = {
+ &I009_V2_1_090_SAC,
+ &I009_V2_1_090_SIC,
+ &IXXX_3bit_spare,
+ &I009_V2_1_090_CP,
+ &I009_V2_1_090_WO,
+ &I009_V2_1_090_R,
+ NULL
+};
+static const AsterixField I009_V2_1_090 = { REPETITIVE, 3, 1, 0, &hf_009_V2_1_090, I009_V2_1_090_PARTS, { NULL } };
+static int hf_009_V2_1_100 = -1;
+static int hf_009_V2_1_100_VALUE = -1;
+static const FieldPart I009_V2_1_100_VALUE = { 16, 1.0, FIELD_PART_UINT, &hf_009_V2_1_100_VALUE, NULL };
+static const FieldPart *I009_V2_1_100_PARTS[] = {
+ &I009_V2_1_100_VALUE,
+ NULL
+};
+static const AsterixField I009_V2_1_100 = { FIXED, 2, 0, 0, &hf_009_V2_1_100, I009_V2_1_100_PARTS, { NULL } };
+
+/* Category 009, edition 2.1 (latest) */
+static int hf_009_000 = -1;
+static int hf_009_000_VALUE = -1;
+static const value_string valstr_009_000_VALUE[] = {
+ { 2, "Cartesian vector" },
+ { 253, "Intermediate-update-step message" },
+ { 254, "Start-of-picture message" },
+ { 255, "End-of-picture message" },
+ { 0, NULL }
+};
+static const FieldPart I009_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_009_000_VALUE, NULL };
+static const FieldPart *I009_000_PARTS[] = {
+ &I009_000_VALUE,
+ NULL
+};
+static const AsterixField I009_000 = { FIXED, 1, 0, 0, &hf_009_000, I009_000_PARTS, { NULL } };
+static int hf_009_010 = -1;
+static int hf_009_010_SAC = -1;
+static const FieldPart I009_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_009_010_SAC, NULL };
+static int hf_009_010_SIC = -1;
+static const FieldPart I009_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_009_010_SIC, NULL };
+static const FieldPart *I009_010_PARTS[] = {
+ &I009_010_SAC,
+ &I009_010_SIC,
+ NULL
+};
+static const AsterixField I009_010 = { FIXED, 2, 0, 0, &hf_009_010, I009_010_PARTS, { NULL } };
+static int hf_009_020 = -1;
+static int hf_009_020_ORG = -1;
+static const value_string valstr_009_020_ORG[] = {
+ { 0, "Local Coordinates" },
+ { 1, "System Coordinates" },
+ { 0, NULL }
+};
+static const FieldPart I009_020_ORG = { 1, 1.0, FIELD_PART_UINT, &hf_009_020_ORG, NULL };
+static int hf_009_020_I = -1;
+static const FieldPart I009_020_I = { 3, 1.0, FIELD_PART_UINT, &hf_009_020_I, NULL };
+static int hf_009_020_S = -1;
+static const value_string valstr_009_020_S[] = {
+ { 0, "0°" },
+ { 1, "22.5°" },
+ { 2, "45°" },
+ { 3, "67.5°" },
+ { 4, "90°" },
+ { 5, "112.5°" },
+ { 6, "135°" },
+ { 7, "157.5°" },
+ { 0, NULL }
+};
+static const FieldPart I009_020_S = { 3, 1.0, FIELD_PART_UINT, &hf_009_020_S, NULL };
+static const FieldPart *I009_020_PARTS[] = {
+ &I009_020_ORG,
+ &I009_020_I,
+ &I009_020_S,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I009_020 = { FX, 1, 0, 0, &hf_009_020, I009_020_PARTS, { NULL } };
+static int hf_009_030 = -1;
+static int hf_009_030_X = -1;
+static const FieldPart I009_030_X = { 16, 1.0, FIELD_PART_FLOAT, &hf_009_030_X, NULL };
+static int hf_009_030_Y = -1;
+static const FieldPart I009_030_Y = { 16, 1.0, FIELD_PART_FLOAT, &hf_009_030_Y, NULL };
+static int hf_009_030_L = -1;
+static const FieldPart I009_030_L = { 16, 1.0, FIELD_PART_UINT, &hf_009_030_L, NULL };
+static const FieldPart *I009_030_PARTS[] = {
+ &I009_030_X,
+ &I009_030_Y,
+ &I009_030_L,
+ NULL
+};
+static const AsterixField I009_030 = { REPETITIVE, 6, 1, 0, &hf_009_030, I009_030_PARTS, { NULL } };
+static int hf_009_060 = -1;
+static int hf_009_060_SN = -1;
+static const FieldPart I009_060_SN = { 6, 1.0, FIELD_PART_UINT, &hf_009_060_SN, NULL };
+static const FieldPart *I009_060_PARTS[] = {
+ &I009_060_SN,
+ &IXXX_1bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I009_060 = { FX, 1, 0, 0, &hf_009_060, I009_060_PARTS, { NULL } };
+static int hf_009_070 = -1;
+static int hf_009_070_VALUE = -1;
+static const FieldPart I009_070_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_009_070_VALUE, NULL };
+static const FieldPart *I009_070_PARTS[] = {
+ &I009_070_VALUE,
+ NULL
+};
+static const AsterixField I009_070 = { FIXED, 3, 0, 0, &hf_009_070, I009_070_PARTS, { NULL } };
+static int hf_009_080 = -1;
+static int hf_009_080_F = -1;
+static const FieldPart I009_080_F = { 5, 1.0, FIELD_PART_FLOAT, &hf_009_080_F, NULL };
+static int hf_009_080_R = -1;
+static const FieldPart I009_080_R = { 3, 1.0, FIELD_PART_HEX, &hf_009_080_R, NULL };
+static int hf_009_080_Q = -1;
+static const FieldPart I009_080_Q = { 15, 1.0, FIELD_PART_HEX, &hf_009_080_Q, NULL };
+static const FieldPart *I009_080_PARTS[] = {
+ &I009_080_F,
+ &I009_080_R,
+ &I009_080_Q,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I009_080 = { FX, 3, 0, 0, &hf_009_080, I009_080_PARTS, { NULL } };
+static int hf_009_090 = -1;
+static int hf_009_090_SAC = -1;
+static const FieldPart I009_090_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_009_090_SAC, NULL };
+static int hf_009_090_SIC = -1;
+static const FieldPart I009_090_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_009_090_SIC, NULL };
+static int hf_009_090_CP = -1;
+static const FieldPart I009_090_CP = { 1, 1.0, FIELD_PART_HEX, &hf_009_090_CP, NULL };
+static int hf_009_090_WO = -1;
+static const FieldPart I009_090_WO = { 1, 1.0, FIELD_PART_HEX, &hf_009_090_WO, NULL };
+static int hf_009_090_R = -1;
+static const FieldPart I009_090_R = { 3, 1.0, FIELD_PART_HEX, &hf_009_090_R, NULL };
+static const FieldPart *I009_090_PARTS[] = {
+ &I009_090_SAC,
+ &I009_090_SIC,
+ &IXXX_3bit_spare,
+ &I009_090_CP,
+ &I009_090_WO,
+ &I009_090_R,
+ NULL
+};
+static const AsterixField I009_090 = { REPETITIVE, 3, 1, 0, &hf_009_090, I009_090_PARTS, { NULL } };
+static int hf_009_100 = -1;
+static int hf_009_100_VALUE = -1;
+static const FieldPart I009_100_VALUE = { 16, 1.0, FIELD_PART_UINT, &hf_009_100_VALUE, NULL };
+static const FieldPart *I009_100_PARTS[] = {
+ &I009_100_VALUE,
+ NULL
+};
+static const AsterixField I009_100 = { FIXED, 2, 0, 0, &hf_009_100, I009_100_PARTS, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I009_V2_1_uap[] = {
+ &I009_V2_1_010,
+ &I009_V2_1_000,
+ &I009_V2_1_020,
+ &I009_V2_1_030,
+ &I009_V2_1_060,
+ &I009_V2_1_070,
+ &I009_V2_1_080,
+ &I009_V2_1_090,
+ &I009_V2_1_100,
+ NULL
+};
+static const AsterixField **I009_V2_1[] = {
+ I009_V2_1_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I009_uap[] = {
+ &I009_010,
+ &I009_000,
+ &I009_020,
+ &I009_030,
+ &I009_060,
+ &I009_070,
+ &I009_080,
+ &I009_090,
+ &I009_100,
+ NULL
+};
+static const AsterixField **I009[] = {
+ I009_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 010, edition 1.1 */
+static int hf_010_V1_1_000 = -1;
+static int hf_010_V1_1_000_VALUE = -1;
+static const value_string valstr_010_V1_1_000_VALUE[] = {
+ { 1, "Target Report" },
+ { 2, "Start of Update Cycle" },
+ { 3, "Periodic Status Message" },
+ { 4, "Event-triggered Status Message" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_010_V1_1_000_VALUE, NULL };
+static const FieldPart *I010_V1_1_000_PARTS[] = {
+ &I010_V1_1_000_VALUE,
+ NULL
+};
+static const AsterixField I010_V1_1_000 = { FIXED, 1, 0, 0, &hf_010_V1_1_000, I010_V1_1_000_PARTS, { NULL } };
+static int hf_010_V1_1_010 = -1;
+static int hf_010_V1_1_010_SAC = -1;
+static const FieldPart I010_V1_1_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_010_V1_1_010_SAC, NULL };
+static int hf_010_V1_1_010_SIC = -1;
+static const FieldPart I010_V1_1_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_010_V1_1_010_SIC, NULL };
+static const FieldPart *I010_V1_1_010_PARTS[] = {
+ &I010_V1_1_010_SAC,
+ &I010_V1_1_010_SIC,
+ NULL
+};
+static const AsterixField I010_V1_1_010 = { FIXED, 2, 0, 0, &hf_010_V1_1_010, I010_V1_1_010_PARTS, { NULL } };
+static int hf_010_V1_1_020 = -1;
+static int hf_010_V1_1_020_TYP = -1;
+static const value_string valstr_010_V1_1_020_TYP[] = {
+ { 0, "SSR multilateration" },
+ { 1, "Mode S multilateration" },
+ { 2, "ADS-B" },
+ { 3, "PSR" },
+ { 4, "Magnetic Loop System" },
+ { 5, "HF multilateration" },
+ { 6, "Not defined" },
+ { 7, "Other types" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_020_TYP = { 3, 1.0, FIELD_PART_UINT, &hf_010_V1_1_020_TYP, NULL };
+static int hf_010_V1_1_020_DCR = -1;
+static const value_string valstr_010_V1_1_020_DCR[] = {
+ { 0, "No differential correction (ADS-B)" },
+ { 1, "Differential correction (ADS-B)" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_020_DCR = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_020_DCR, NULL };
+static int hf_010_V1_1_020_CHN = -1;
+static const value_string valstr_010_V1_1_020_CHN[] = {
+ { 0, "Chain 1" },
+ { 1, "Chain 2" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_020_CHN = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_020_CHN, NULL };
+static int hf_010_V1_1_020_GBS = -1;
+static const value_string valstr_010_V1_1_020_GBS[] = {
+ { 0, "Transponder Ground bit not set" },
+ { 1, "Transponder Ground bit set" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_020_GBS = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_020_GBS, NULL };
+static int hf_010_V1_1_020_CRT = -1;
+static const value_string valstr_010_V1_1_020_CRT[] = {
+ { 0, "No Corrupted reply in multilateration" },
+ { 1, "Corrupted replies in multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_020_CRT = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_020_CRT, NULL };
+static int hf_010_V1_1_020_SIM = -1;
+static const value_string valstr_010_V1_1_020_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_020_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_020_SIM, NULL };
+static int hf_010_V1_1_020_TST = -1;
+static const value_string valstr_010_V1_1_020_TST[] = {
+ { 0, "Default" },
+ { 1, "Test Target" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_020_TST = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_020_TST, NULL };
+static int hf_010_V1_1_020_RAB = -1;
+static const value_string valstr_010_V1_1_020_RAB[] = {
+ { 0, "Report from target transponder" },
+ { 1, "Report from field monitor (fixed transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_020_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_020_RAB, NULL };
+static int hf_010_V1_1_020_LOP = -1;
+static const value_string valstr_010_V1_1_020_LOP[] = {
+ { 0, "Undetermined" },
+ { 1, "Loop start" },
+ { 2, "Loop finish" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_020_LOP = { 2, 1.0, FIELD_PART_UINT, &hf_010_V1_1_020_LOP, NULL };
+static int hf_010_V1_1_020_TOT = -1;
+static const value_string valstr_010_V1_1_020_TOT[] = {
+ { 0, "Undetermined" },
+ { 1, "Aircraft" },
+ { 2, "Ground vehicle" },
+ { 3, "Helicopter" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_020_TOT = { 2, 1.0, FIELD_PART_UINT, &hf_010_V1_1_020_TOT, NULL };
+static int hf_010_V1_1_020_SPI = -1;
+static const value_string valstr_010_V1_1_020_SPI[] = {
+ { 0, "Absence of SPI" },
+ { 1, "Special Position Identification" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_020_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_020_SPI, NULL };
+static const FieldPart *I010_V1_1_020_PARTS[] = {
+ &I010_V1_1_020_TYP,
+ &I010_V1_1_020_DCR,
+ &I010_V1_1_020_CHN,
+ &I010_V1_1_020_GBS,
+ &I010_V1_1_020_CRT,
+ &IXXX_FX,
+ &I010_V1_1_020_SIM,
+ &I010_V1_1_020_TST,
+ &I010_V1_1_020_RAB,
+ &I010_V1_1_020_LOP,
+ &I010_V1_1_020_TOT,
+ &IXXX_FX,
+ &I010_V1_1_020_SPI,
+ &IXXX_6bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I010_V1_1_020 = { FX, 1, 0, 0, &hf_010_V1_1_020, I010_V1_1_020_PARTS, { NULL } };
+static int hf_010_V1_1_040 = -1;
+static int hf_010_V1_1_040_RHO = -1;
+static const FieldPart I010_V1_1_040_RHO = { 16, 1.0, FIELD_PART_UFLOAT, &hf_010_V1_1_040_RHO, NULL };
+static int hf_010_V1_1_040_TH = -1;
+static const FieldPart I010_V1_1_040_TH = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_010_V1_1_040_TH, NULL };
+static const FieldPart *I010_V1_1_040_PARTS[] = {
+ &I010_V1_1_040_RHO,
+ &I010_V1_1_040_TH,
+ NULL
+};
+static const AsterixField I010_V1_1_040 = { FIXED, 4, 0, 0, &hf_010_V1_1_040, I010_V1_1_040_PARTS, { NULL } };
+static int hf_010_V1_1_041 = -1;
+static int hf_010_V1_1_041_LAT = -1;
+static const FieldPart I010_V1_1_041_LAT = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_010_V1_1_041_LAT, NULL };
+static int hf_010_V1_1_041_LON = -1;
+static const FieldPart I010_V1_1_041_LON = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_010_V1_1_041_LON, NULL };
+static const FieldPart *I010_V1_1_041_PARTS[] = {
+ &I010_V1_1_041_LAT,
+ &I010_V1_1_041_LON,
+ NULL
+};
+static const AsterixField I010_V1_1_041 = { FIXED, 8, 0, 0, &hf_010_V1_1_041, I010_V1_1_041_PARTS, { NULL } };
+static int hf_010_V1_1_042 = -1;
+static int hf_010_V1_1_042_X = -1;
+static const FieldPart I010_V1_1_042_X = { 16, 1.0, FIELD_PART_FLOAT, &hf_010_V1_1_042_X, NULL };
+static int hf_010_V1_1_042_Y = -1;
+static const FieldPart I010_V1_1_042_Y = { 16, 1.0, FIELD_PART_FLOAT, &hf_010_V1_1_042_Y, NULL };
+static const FieldPart *I010_V1_1_042_PARTS[] = {
+ &I010_V1_1_042_X,
+ &I010_V1_1_042_Y,
+ NULL
+};
+static const AsterixField I010_V1_1_042 = { FIXED, 4, 0, 0, &hf_010_V1_1_042, I010_V1_1_042_PARTS, { NULL } };
+static int hf_010_V1_1_060 = -1;
+static int hf_010_V1_1_060_V = -1;
+static const value_string valstr_010_V1_1_060_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_060_V = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_060_V, NULL };
+static int hf_010_V1_1_060_G = -1;
+static const value_string valstr_010_V1_1_060_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_060_G = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_060_G, NULL };
+static int hf_010_V1_1_060_L = -1;
+static const value_string valstr_010_V1_1_060_L[] = {
+ { 0, "Mode-3/A code derived from the reply of the transponder" },
+ { 1, "Mode-3/A code not extracted during the last scan" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_060_L = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_060_L, NULL };
+static int hf_010_V1_1_060_MODE3A = -1;
+static const FieldPart I010_V1_1_060_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_010_V1_1_060_MODE3A, NULL };
+static const FieldPart *I010_V1_1_060_PARTS[] = {
+ &I010_V1_1_060_V,
+ &I010_V1_1_060_G,
+ &I010_V1_1_060_L,
+ &IXXX_1bit_spare,
+ &I010_V1_1_060_MODE3A,
+ NULL
+};
+static const AsterixField I010_V1_1_060 = { FIXED, 2, 0, 0, &hf_010_V1_1_060, I010_V1_1_060_PARTS, { NULL } };
+static int hf_010_V1_1_090 = -1;
+static int hf_010_V1_1_090_V = -1;
+static const value_string valstr_010_V1_1_090_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_090_V = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_090_V, NULL };
+static int hf_010_V1_1_090_G = -1;
+static const value_string valstr_010_V1_1_090_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_090_G = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_090_G, NULL };
+static int hf_010_V1_1_090_FL = -1;
+static const FieldPart I010_V1_1_090_FL = { 14, 0.25, FIELD_PART_FLOAT, &hf_010_V1_1_090_FL, NULL };
+static const FieldPart *I010_V1_1_090_PARTS[] = {
+ &I010_V1_1_090_V,
+ &I010_V1_1_090_G,
+ &I010_V1_1_090_FL,
+ NULL
+};
+static const AsterixField I010_V1_1_090 = { FIXED, 2, 0, 0, &hf_010_V1_1_090, I010_V1_1_090_PARTS, { NULL } };
+static int hf_010_V1_1_091 = -1;
+static int hf_010_V1_1_091_VALUE = -1;
+static const FieldPart I010_V1_1_091_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_010_V1_1_091_VALUE, NULL };
+static const FieldPart *I010_V1_1_091_PARTS[] = {
+ &I010_V1_1_091_VALUE,
+ NULL
+};
+static const AsterixField I010_V1_1_091 = { FIXED, 2, 0, 0, &hf_010_V1_1_091, I010_V1_1_091_PARTS, { NULL } };
+static int hf_010_V1_1_131 = -1;
+static int hf_010_V1_1_131_VALUE = -1;
+static const FieldPart I010_V1_1_131_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_010_V1_1_131_VALUE, NULL };
+static const FieldPart *I010_V1_1_131_PARTS[] = {
+ &I010_V1_1_131_VALUE,
+ NULL
+};
+static const AsterixField I010_V1_1_131 = { FIXED, 1, 0, 0, &hf_010_V1_1_131, I010_V1_1_131_PARTS, { NULL } };
+static int hf_010_V1_1_140 = -1;
+static int hf_010_V1_1_140_VALUE = -1;
+static const FieldPart I010_V1_1_140_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_010_V1_1_140_VALUE, NULL };
+static const FieldPart *I010_V1_1_140_PARTS[] = {
+ &I010_V1_1_140_VALUE,
+ NULL
+};
+static const AsterixField I010_V1_1_140 = { FIXED, 3, 0, 0, &hf_010_V1_1_140, I010_V1_1_140_PARTS, { NULL } };
+static int hf_010_V1_1_161 = -1;
+static int hf_010_V1_1_161_TRK = -1;
+static const FieldPart I010_V1_1_161_TRK = { 12, 1.0, FIELD_PART_HEX, &hf_010_V1_1_161_TRK, NULL };
+static const FieldPart *I010_V1_1_161_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I010_V1_1_161_TRK,
+ NULL
+};
+static const AsterixField I010_V1_1_161 = { FIXED, 2, 0, 0, &hf_010_V1_1_161, I010_V1_1_161_PARTS, { NULL } };
+static int hf_010_V1_1_170 = -1;
+static int hf_010_V1_1_170_CNF = -1;
+static const value_string valstr_010_V1_1_170_CNF[] = {
+ { 0, "Confirmed track" },
+ { 1, "Track in initialisation phase" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_170_CNF = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_170_CNF, NULL };
+static int hf_010_V1_1_170_TRE = -1;
+static const value_string valstr_010_V1_1_170_TRE[] = {
+ { 0, "Default" },
+ { 1, "Last report for a track" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_170_TRE = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_170_TRE, NULL };
+static int hf_010_V1_1_170_CST = -1;
+static const value_string valstr_010_V1_1_170_CST[] = {
+ { 0, "No extrapolation" },
+ { 1, "Predictable extrapolation due to sensor refresh period (see NOTE)" },
+ { 2, "Predictable extrapolation in masked area" },
+ { 3, "Extrapolation due to unpredictable absence of detection" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_170_CST = { 2, 1.0, FIELD_PART_UINT, &hf_010_V1_1_170_CST, NULL };
+static int hf_010_V1_1_170_MAH = -1;
+static const value_string valstr_010_V1_1_170_MAH[] = {
+ { 0, "Default" },
+ { 1, "Horizontal manoeuvre" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_170_MAH = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_170_MAH, NULL };
+static int hf_010_V1_1_170_TCC = -1;
+static const value_string valstr_010_V1_1_170_TCC[] = {
+ { 0, "Tracking performed in \'Sensor Plane\', i.e. neither slant range correction nor projection was applied" },
+ { 1, "Slant range correction and a suitable projection technique are used to track in a 2D.reference plane, tangential to the earth model at the Sensor Site co-ordinates" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_170_TCC = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_170_TCC, NULL };
+static int hf_010_V1_1_170_STH = -1;
+static const value_string valstr_010_V1_1_170_STH[] = {
+ { 0, "Measured position" },
+ { 1, "Smoothed position" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_170_STH = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_170_STH, NULL };
+static int hf_010_V1_1_170_TOM = -1;
+static const value_string valstr_010_V1_1_170_TOM[] = {
+ { 0, "Unknown type of movement" },
+ { 1, "Taking-off" },
+ { 2, "Landing" },
+ { 3, "Other types of movement" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_170_TOM = { 2, 1.0, FIELD_PART_UINT, &hf_010_V1_1_170_TOM, NULL };
+static int hf_010_V1_1_170_DOU = -1;
+static const value_string valstr_010_V1_1_170_DOU[] = {
+ { 0, "No doubt" },
+ { 1, "Doubtful correlation (undetermined reason)" },
+ { 2, "Doubtful correlation in clutter" },
+ { 3, "Loss of accuracy" },
+ { 4, "Loss of accuracy in clutter" },
+ { 5, "Unstable track" },
+ { 6, "Previously coasted" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_170_DOU = { 3, 1.0, FIELD_PART_UINT, &hf_010_V1_1_170_DOU, NULL };
+static int hf_010_V1_1_170_MRS = -1;
+static const value_string valstr_010_V1_1_170_MRS[] = {
+ { 0, "Merge or split indication undetermined" },
+ { 1, "Track merged by association to plot" },
+ { 2, "Track merged by non-association to plot" },
+ { 3, "Split track" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_170_MRS = { 2, 1.0, FIELD_PART_UINT, &hf_010_V1_1_170_MRS, NULL };
+static int hf_010_V1_1_170_GHO = -1;
+static const value_string valstr_010_V1_1_170_GHO[] = {
+ { 0, "Default" },
+ { 1, "Ghost track" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_170_GHO = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_170_GHO, NULL };
+static const FieldPart *I010_V1_1_170_PARTS[] = {
+ &I010_V1_1_170_CNF,
+ &I010_V1_1_170_TRE,
+ &I010_V1_1_170_CST,
+ &I010_V1_1_170_MAH,
+ &I010_V1_1_170_TCC,
+ &I010_V1_1_170_STH,
+ &IXXX_FX,
+ &I010_V1_1_170_TOM,
+ &I010_V1_1_170_DOU,
+ &I010_V1_1_170_MRS,
+ &IXXX_FX,
+ &I010_V1_1_170_GHO,
+ &IXXX_6bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I010_V1_1_170 = { FX, 1, 0, 0, &hf_010_V1_1_170, I010_V1_1_170_PARTS, { NULL } };
+static int hf_010_V1_1_200 = -1;
+static int hf_010_V1_1_200_GSP = -1;
+static const FieldPart I010_V1_1_200_GSP = { 16, 0.00006103515625, FIELD_PART_UFLOAT, &hf_010_V1_1_200_GSP, NULL };
+static int hf_010_V1_1_200_TRA = -1;
+static const FieldPart I010_V1_1_200_TRA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_010_V1_1_200_TRA, NULL };
+static const FieldPart *I010_V1_1_200_PARTS[] = {
+ &I010_V1_1_200_GSP,
+ &I010_V1_1_200_TRA,
+ NULL
+};
+static const AsterixField I010_V1_1_200 = { FIXED, 4, 0, 0, &hf_010_V1_1_200, I010_V1_1_200_PARTS, { NULL } };
+static int hf_010_V1_1_202 = -1;
+static int hf_010_V1_1_202_VX = -1;
+static const FieldPart I010_V1_1_202_VX = { 16, 0.0625, FIELD_PART_FLOAT, &hf_010_V1_1_202_VX, NULL };
+static int hf_010_V1_1_202_VY = -1;
+static const FieldPart I010_V1_1_202_VY = { 16, 0.0625, FIELD_PART_FLOAT, &hf_010_V1_1_202_VY, NULL };
+static const FieldPart *I010_V1_1_202_PARTS[] = {
+ &I010_V1_1_202_VX,
+ &I010_V1_1_202_VY,
+ NULL
+};
+static const AsterixField I010_V1_1_202 = { FIXED, 4, 0, 0, &hf_010_V1_1_202, I010_V1_1_202_PARTS, { NULL } };
+static int hf_010_V1_1_210 = -1;
+static int hf_010_V1_1_210_AX = -1;
+static const FieldPart I010_V1_1_210_AX = { 8, 0.0625, FIELD_PART_FLOAT, &hf_010_V1_1_210_AX, NULL };
+static int hf_010_V1_1_210_AY = -1;
+static const FieldPart I010_V1_1_210_AY = { 8, 0.0625, FIELD_PART_FLOAT, &hf_010_V1_1_210_AY, NULL };
+static const FieldPart *I010_V1_1_210_PARTS[] = {
+ &I010_V1_1_210_AX,
+ &I010_V1_1_210_AY,
+ NULL
+};
+static const AsterixField I010_V1_1_210 = { FIXED, 2, 0, 0, &hf_010_V1_1_210, I010_V1_1_210_PARTS, { NULL } };
+static int hf_010_V1_1_220 = -1;
+static int hf_010_V1_1_220_VALUE = -1;
+static const FieldPart I010_V1_1_220_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_010_V1_1_220_VALUE, NULL };
+static const FieldPart *I010_V1_1_220_PARTS[] = {
+ &I010_V1_1_220_VALUE,
+ NULL
+};
+static const AsterixField I010_V1_1_220 = { FIXED, 3, 0, 0, &hf_010_V1_1_220, I010_V1_1_220_PARTS, { NULL } };
+static int hf_010_V1_1_245 = -1;
+static int hf_010_V1_1_245_STI = -1;
+static const value_string valstr_010_V1_1_245_STI[] = {
+ { 0, "Callsign or registration downlinked from transponder" },
+ { 1, "Callsign not downlinked from transponder" },
+ { 2, "Registration not downlinked from transponder" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_245_STI = { 2, 1.0, FIELD_PART_UINT, &hf_010_V1_1_245_STI, NULL };
+static int hf_010_V1_1_245_CHR = -1;
+static const FieldPart I010_V1_1_245_CHR = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_010_V1_1_245_CHR, NULL };
+static const FieldPart *I010_V1_1_245_PARTS[] = {
+ &I010_V1_1_245_STI,
+ &IXXX_6bit_spare,
+ &I010_V1_1_245_CHR,
+ NULL
+};
+static const AsterixField I010_V1_1_245 = { FIXED, 7, 0, 0, &hf_010_V1_1_245, I010_V1_1_245_PARTS, { NULL } };
+static int hf_010_V1_1_250 = -1;
+static int hf_010_V1_1_250_MBDATA = -1;
+static const FieldPart I010_V1_1_250_MBDATA = { 56, 1.0, FIELD_PART_HEX, &hf_010_V1_1_250_MBDATA, NULL };
+static int hf_010_V1_1_250_BDS1 = -1;
+static const FieldPart I010_V1_1_250_BDS1 = { 4, 1.0, FIELD_PART_HEX, &hf_010_V1_1_250_BDS1, NULL };
+static int hf_010_V1_1_250_BDS2 = -1;
+static const FieldPart I010_V1_1_250_BDS2 = { 4, 1.0, FIELD_PART_HEX, &hf_010_V1_1_250_BDS2, NULL };
+static const FieldPart *I010_V1_1_250_PARTS[] = {
+ &I010_V1_1_250_MBDATA,
+ &I010_V1_1_250_BDS1,
+ &I010_V1_1_250_BDS2,
+ NULL
+};
+static const AsterixField I010_V1_1_250 = { REPETITIVE, 8, 1, 0, &hf_010_V1_1_250, I010_V1_1_250_PARTS, { NULL } };
+static int hf_010_V1_1_270 = -1;
+static int hf_010_V1_1_270_LENGTH = -1;
+static const FieldPart I010_V1_1_270_LENGTH = { 7, 1.0, FIELD_PART_UFLOAT, &hf_010_V1_1_270_LENGTH, NULL };
+static int hf_010_V1_1_270_ORIENTATION = -1;
+static const FieldPart I010_V1_1_270_ORIENTATION = { 7, 2.8125, FIELD_PART_UFLOAT, &hf_010_V1_1_270_ORIENTATION, NULL };
+static int hf_010_V1_1_270_WIDTH = -1;
+static const FieldPart I010_V1_1_270_WIDTH = { 7, 1.0, FIELD_PART_UFLOAT, &hf_010_V1_1_270_WIDTH, NULL };
+static const FieldPart *I010_V1_1_270_PARTS[] = {
+ &I010_V1_1_270_LENGTH,
+ &IXXX_FX,
+ &I010_V1_1_270_ORIENTATION,
+ &IXXX_FX,
+ &I010_V1_1_270_WIDTH,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I010_V1_1_270 = { FX, 1, 0, 0, &hf_010_V1_1_270, I010_V1_1_270_PARTS, { NULL } };
+static int hf_010_V1_1_280 = -1;
+static int hf_010_V1_1_280_DRHO = -1;
+static const FieldPart I010_V1_1_280_DRHO = { 8, 1.0, FIELD_PART_FLOAT, &hf_010_V1_1_280_DRHO, NULL };
+static int hf_010_V1_1_280_DTHETA = -1;
+static const FieldPart I010_V1_1_280_DTHETA = { 8, 0.15, FIELD_PART_FLOAT, &hf_010_V1_1_280_DTHETA, NULL };
+static const FieldPart *I010_V1_1_280_PARTS[] = {
+ &I010_V1_1_280_DRHO,
+ &I010_V1_1_280_DTHETA,
+ NULL
+};
+static const AsterixField I010_V1_1_280 = { REPETITIVE, 2, 1, 0, &hf_010_V1_1_280, I010_V1_1_280_PARTS, { NULL } };
+static int hf_010_V1_1_300 = -1;
+static int hf_010_V1_1_300_VALUE = -1;
+static const value_string valstr_010_V1_1_300_VALUE[] = {
+ { 0, "Unknown" },
+ { 1, "ATC equipment maintenance" },
+ { 2, "Airport maintenance" },
+ { 3, "Fire" },
+ { 4, "Bird scarer" },
+ { 5, "Snow plough" },
+ { 6, "Runway sweeper" },
+ { 7, "Emergency" },
+ { 8, "Police" },
+ { 9, "Bus" },
+ { 10, "Tug (push/tow)" },
+ { 11, "Grass cutter" },
+ { 12, "Fuel" },
+ { 13, "Baggage" },
+ { 14, "Catering" },
+ { 15, "Aircraft maintenance" },
+ { 16, "Flyco (follow me)" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_300_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_010_V1_1_300_VALUE, NULL };
+static const FieldPart *I010_V1_1_300_PARTS[] = {
+ &I010_V1_1_300_VALUE,
+ NULL
+};
+static const AsterixField I010_V1_1_300 = { FIXED, 1, 0, 0, &hf_010_V1_1_300, I010_V1_1_300_PARTS, { NULL } };
+static int hf_010_V1_1_310 = -1;
+static int hf_010_V1_1_310_TRB = -1;
+static const value_string valstr_010_V1_1_310_TRB[] = {
+ { 0, "Default" },
+ { 1, "In Trouble" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_310_TRB = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_310_TRB, NULL };
+static int hf_010_V1_1_310_MSG = -1;
+static const value_string valstr_010_V1_1_310_MSG[] = {
+ { 1, "Towing aircraft" },
+ { 2, "“Follow me” operation" },
+ { 3, "Runway check" },
+ { 4, "Emergency operation (fire, medical...)" },
+ { 5, "Work in progress (maintenance, birds scarer, sweepers...)" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_310_MSG = { 7, 1.0, FIELD_PART_UINT, &hf_010_V1_1_310_MSG, NULL };
+static const FieldPart *I010_V1_1_310_PARTS[] = {
+ &I010_V1_1_310_TRB,
+ &I010_V1_1_310_MSG,
+ NULL
+};
+static const AsterixField I010_V1_1_310 = { FIXED, 1, 0, 0, &hf_010_V1_1_310, I010_V1_1_310_PARTS, { NULL } };
+static int hf_010_V1_1_500 = -1;
+static int hf_010_V1_1_500_DEVX = -1;
+static const FieldPart I010_V1_1_500_DEVX = { 8, 0.25, FIELD_PART_UFLOAT, &hf_010_V1_1_500_DEVX, NULL };
+static int hf_010_V1_1_500_DEVY = -1;
+static const FieldPart I010_V1_1_500_DEVY = { 8, 0.25, FIELD_PART_UFLOAT, &hf_010_V1_1_500_DEVY, NULL };
+static int hf_010_V1_1_500_COVXY = -1;
+static const FieldPart I010_V1_1_500_COVXY = { 16, 0.25, FIELD_PART_FLOAT, &hf_010_V1_1_500_COVXY, NULL };
+static const FieldPart *I010_V1_1_500_PARTS[] = {
+ &I010_V1_1_500_DEVX,
+ &I010_V1_1_500_DEVY,
+ &I010_V1_1_500_COVXY,
+ NULL
+};
+static const AsterixField I010_V1_1_500 = { FIXED, 4, 0, 0, &hf_010_V1_1_500, I010_V1_1_500_PARTS, { NULL } };
+static int hf_010_V1_1_550 = -1;
+static int hf_010_V1_1_550_NOGO = -1;
+static const value_string valstr_010_V1_1_550_NOGO[] = {
+ { 0, "Operational" },
+ { 1, "Degraded" },
+ { 2, "NOGO" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_550_NOGO = { 2, 1.0, FIELD_PART_UINT, &hf_010_V1_1_550_NOGO, NULL };
+static int hf_010_V1_1_550_OVL = -1;
+static const value_string valstr_010_V1_1_550_OVL[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_550_OVL = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_550_OVL, NULL };
+static int hf_010_V1_1_550_TSV = -1;
+static const value_string valstr_010_V1_1_550_TSV[] = {
+ { 0, "Valid" },
+ { 1, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_550_TSV = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_550_TSV, NULL };
+static int hf_010_V1_1_550_DIV = -1;
+static const value_string valstr_010_V1_1_550_DIV[] = {
+ { 0, "Normal Operation" },
+ { 1, "Diversity degraded" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_550_DIV = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_550_DIV, NULL };
+static int hf_010_V1_1_550_TTF = -1;
+static const value_string valstr_010_V1_1_550_TTF[] = {
+ { 0, "Test Target Operative" },
+ { 1, "Test Target Failure" },
+ { 0, NULL }
+};
+static const FieldPart I010_V1_1_550_TTF = { 1, 1.0, FIELD_PART_UINT, &hf_010_V1_1_550_TTF, NULL };
+static const FieldPart *I010_V1_1_550_PARTS[] = {
+ &I010_V1_1_550_NOGO,
+ &I010_V1_1_550_OVL,
+ &I010_V1_1_550_TSV,
+ &I010_V1_1_550_DIV,
+ &I010_V1_1_550_TTF,
+ &IXXX_2bit_spare,
+ NULL
+};
+static const AsterixField I010_V1_1_550 = { FIXED, 1, 0, 0, &hf_010_V1_1_550, I010_V1_1_550_PARTS, { NULL } };
+static int hf_010_V1_1_RE = -1;
+static const AsterixField I010_V1_1_RE = { EXP, 0, 0, 1, &hf_010_V1_1_RE, NULL, { NULL } };
+static int hf_010_V1_1_SP = -1;
+static const AsterixField I010_V1_1_SP = { EXP, 0, 0, 1, &hf_010_V1_1_SP, NULL, { NULL } };
+
+/* Category 010, edition 1.1 (latest) */
+static int hf_010_000 = -1;
+static int hf_010_000_VALUE = -1;
+static const value_string valstr_010_000_VALUE[] = {
+ { 1, "Target Report" },
+ { 2, "Start of Update Cycle" },
+ { 3, "Periodic Status Message" },
+ { 4, "Event-triggered Status Message" },
+ { 0, NULL }
+};
+static const FieldPart I010_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_010_000_VALUE, NULL };
+static const FieldPart *I010_000_PARTS[] = {
+ &I010_000_VALUE,
+ NULL
+};
+static const AsterixField I010_000 = { FIXED, 1, 0, 0, &hf_010_000, I010_000_PARTS, { NULL } };
+static int hf_010_010 = -1;
+static int hf_010_010_SAC = -1;
+static const FieldPart I010_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_010_010_SAC, NULL };
+static int hf_010_010_SIC = -1;
+static const FieldPart I010_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_010_010_SIC, NULL };
+static const FieldPart *I010_010_PARTS[] = {
+ &I010_010_SAC,
+ &I010_010_SIC,
+ NULL
+};
+static const AsterixField I010_010 = { FIXED, 2, 0, 0, &hf_010_010, I010_010_PARTS, { NULL } };
+static int hf_010_020 = -1;
+static int hf_010_020_TYP = -1;
+static const value_string valstr_010_020_TYP[] = {
+ { 0, "SSR multilateration" },
+ { 1, "Mode S multilateration" },
+ { 2, "ADS-B" },
+ { 3, "PSR" },
+ { 4, "Magnetic Loop System" },
+ { 5, "HF multilateration" },
+ { 6, "Not defined" },
+ { 7, "Other types" },
+ { 0, NULL }
+};
+static const FieldPart I010_020_TYP = { 3, 1.0, FIELD_PART_UINT, &hf_010_020_TYP, NULL };
+static int hf_010_020_DCR = -1;
+static const value_string valstr_010_020_DCR[] = {
+ { 0, "No differential correction (ADS-B)" },
+ { 1, "Differential correction (ADS-B)" },
+ { 0, NULL }
+};
+static const FieldPart I010_020_DCR = { 1, 1.0, FIELD_PART_UINT, &hf_010_020_DCR, NULL };
+static int hf_010_020_CHN = -1;
+static const value_string valstr_010_020_CHN[] = {
+ { 0, "Chain 1" },
+ { 1, "Chain 2" },
+ { 0, NULL }
+};
+static const FieldPart I010_020_CHN = { 1, 1.0, FIELD_PART_UINT, &hf_010_020_CHN, NULL };
+static int hf_010_020_GBS = -1;
+static const value_string valstr_010_020_GBS[] = {
+ { 0, "Transponder Ground bit not set" },
+ { 1, "Transponder Ground bit set" },
+ { 0, NULL }
+};
+static const FieldPart I010_020_GBS = { 1, 1.0, FIELD_PART_UINT, &hf_010_020_GBS, NULL };
+static int hf_010_020_CRT = -1;
+static const value_string valstr_010_020_CRT[] = {
+ { 0, "No Corrupted reply in multilateration" },
+ { 1, "Corrupted replies in multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I010_020_CRT = { 1, 1.0, FIELD_PART_UINT, &hf_010_020_CRT, NULL };
+static int hf_010_020_SIM = -1;
+static const value_string valstr_010_020_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I010_020_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_010_020_SIM, NULL };
+static int hf_010_020_TST = -1;
+static const value_string valstr_010_020_TST[] = {
+ { 0, "Default" },
+ { 1, "Test Target" },
+ { 0, NULL }
+};
+static const FieldPart I010_020_TST = { 1, 1.0, FIELD_PART_UINT, &hf_010_020_TST, NULL };
+static int hf_010_020_RAB = -1;
+static const value_string valstr_010_020_RAB[] = {
+ { 0, "Report from target transponder" },
+ { 1, "Report from field monitor (fixed transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I010_020_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_010_020_RAB, NULL };
+static int hf_010_020_LOP = -1;
+static const value_string valstr_010_020_LOP[] = {
+ { 0, "Undetermined" },
+ { 1, "Loop start" },
+ { 2, "Loop finish" },
+ { 0, NULL }
+};
+static const FieldPart I010_020_LOP = { 2, 1.0, FIELD_PART_UINT, &hf_010_020_LOP, NULL };
+static int hf_010_020_TOT = -1;
+static const value_string valstr_010_020_TOT[] = {
+ { 0, "Undetermined" },
+ { 1, "Aircraft" },
+ { 2, "Ground vehicle" },
+ { 3, "Helicopter" },
+ { 0, NULL }
+};
+static const FieldPart I010_020_TOT = { 2, 1.0, FIELD_PART_UINT, &hf_010_020_TOT, NULL };
+static int hf_010_020_SPI = -1;
+static const value_string valstr_010_020_SPI[] = {
+ { 0, "Absence of SPI" },
+ { 1, "Special Position Identification" },
+ { 0, NULL }
+};
+static const FieldPart I010_020_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_010_020_SPI, NULL };
+static const FieldPart *I010_020_PARTS[] = {
+ &I010_020_TYP,
+ &I010_020_DCR,
+ &I010_020_CHN,
+ &I010_020_GBS,
+ &I010_020_CRT,
+ &IXXX_FX,
+ &I010_020_SIM,
+ &I010_020_TST,
+ &I010_020_RAB,
+ &I010_020_LOP,
+ &I010_020_TOT,
+ &IXXX_FX,
+ &I010_020_SPI,
+ &IXXX_6bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I010_020 = { FX, 1, 0, 0, &hf_010_020, I010_020_PARTS, { NULL } };
+static int hf_010_040 = -1;
+static int hf_010_040_RHO = -1;
+static const FieldPart I010_040_RHO = { 16, 1.0, FIELD_PART_UFLOAT, &hf_010_040_RHO, NULL };
+static int hf_010_040_TH = -1;
+static const FieldPart I010_040_TH = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_010_040_TH, NULL };
+static const FieldPart *I010_040_PARTS[] = {
+ &I010_040_RHO,
+ &I010_040_TH,
+ NULL
+};
+static const AsterixField I010_040 = { FIXED, 4, 0, 0, &hf_010_040, I010_040_PARTS, { NULL } };
+static int hf_010_041 = -1;
+static int hf_010_041_LAT = -1;
+static const FieldPart I010_041_LAT = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_010_041_LAT, NULL };
+static int hf_010_041_LON = -1;
+static const FieldPart I010_041_LON = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_010_041_LON, NULL };
+static const FieldPart *I010_041_PARTS[] = {
+ &I010_041_LAT,
+ &I010_041_LON,
+ NULL
+};
+static const AsterixField I010_041 = { FIXED, 8, 0, 0, &hf_010_041, I010_041_PARTS, { NULL } };
+static int hf_010_042 = -1;
+static int hf_010_042_X = -1;
+static const FieldPart I010_042_X = { 16, 1.0, FIELD_PART_FLOAT, &hf_010_042_X, NULL };
+static int hf_010_042_Y = -1;
+static const FieldPart I010_042_Y = { 16, 1.0, FIELD_PART_FLOAT, &hf_010_042_Y, NULL };
+static const FieldPart *I010_042_PARTS[] = {
+ &I010_042_X,
+ &I010_042_Y,
+ NULL
+};
+static const AsterixField I010_042 = { FIXED, 4, 0, 0, &hf_010_042, I010_042_PARTS, { NULL } };
+static int hf_010_060 = -1;
+static int hf_010_060_V = -1;
+static const value_string valstr_010_060_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I010_060_V = { 1, 1.0, FIELD_PART_UINT, &hf_010_060_V, NULL };
+static int hf_010_060_G = -1;
+static const value_string valstr_010_060_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I010_060_G = { 1, 1.0, FIELD_PART_UINT, &hf_010_060_G, NULL };
+static int hf_010_060_L = -1;
+static const value_string valstr_010_060_L[] = {
+ { 0, "Mode-3/A code derived from the reply of the transponder" },
+ { 1, "Mode-3/A code not extracted during the last scan" },
+ { 0, NULL }
+};
+static const FieldPart I010_060_L = { 1, 1.0, FIELD_PART_UINT, &hf_010_060_L, NULL };
+static int hf_010_060_MODE3A = -1;
+static const FieldPart I010_060_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_010_060_MODE3A, NULL };
+static const FieldPart *I010_060_PARTS[] = {
+ &I010_060_V,
+ &I010_060_G,
+ &I010_060_L,
+ &IXXX_1bit_spare,
+ &I010_060_MODE3A,
+ NULL
+};
+static const AsterixField I010_060 = { FIXED, 2, 0, 0, &hf_010_060, I010_060_PARTS, { NULL } };
+static int hf_010_090 = -1;
+static int hf_010_090_V = -1;
+static const value_string valstr_010_090_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I010_090_V = { 1, 1.0, FIELD_PART_UINT, &hf_010_090_V, NULL };
+static int hf_010_090_G = -1;
+static const value_string valstr_010_090_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I010_090_G = { 1, 1.0, FIELD_PART_UINT, &hf_010_090_G, NULL };
+static int hf_010_090_FL = -1;
+static const FieldPart I010_090_FL = { 14, 0.25, FIELD_PART_FLOAT, &hf_010_090_FL, NULL };
+static const FieldPart *I010_090_PARTS[] = {
+ &I010_090_V,
+ &I010_090_G,
+ &I010_090_FL,
+ NULL
+};
+static const AsterixField I010_090 = { FIXED, 2, 0, 0, &hf_010_090, I010_090_PARTS, { NULL } };
+static int hf_010_091 = -1;
+static int hf_010_091_VALUE = -1;
+static const FieldPart I010_091_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_010_091_VALUE, NULL };
+static const FieldPart *I010_091_PARTS[] = {
+ &I010_091_VALUE,
+ NULL
+};
+static const AsterixField I010_091 = { FIXED, 2, 0, 0, &hf_010_091, I010_091_PARTS, { NULL } };
+static int hf_010_131 = -1;
+static int hf_010_131_VALUE = -1;
+static const FieldPart I010_131_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_010_131_VALUE, NULL };
+static const FieldPart *I010_131_PARTS[] = {
+ &I010_131_VALUE,
+ NULL
+};
+static const AsterixField I010_131 = { FIXED, 1, 0, 0, &hf_010_131, I010_131_PARTS, { NULL } };
+static int hf_010_140 = -1;
+static int hf_010_140_VALUE = -1;
+static const FieldPart I010_140_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_010_140_VALUE, NULL };
+static const FieldPart *I010_140_PARTS[] = {
+ &I010_140_VALUE,
+ NULL
+};
+static const AsterixField I010_140 = { FIXED, 3, 0, 0, &hf_010_140, I010_140_PARTS, { NULL } };
+static int hf_010_161 = -1;
+static int hf_010_161_TRK = -1;
+static const FieldPart I010_161_TRK = { 12, 1.0, FIELD_PART_HEX, &hf_010_161_TRK, NULL };
+static const FieldPart *I010_161_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I010_161_TRK,
+ NULL
+};
+static const AsterixField I010_161 = { FIXED, 2, 0, 0, &hf_010_161, I010_161_PARTS, { NULL } };
+static int hf_010_170 = -1;
+static int hf_010_170_CNF = -1;
+static const value_string valstr_010_170_CNF[] = {
+ { 0, "Confirmed track" },
+ { 1, "Track in initialisation phase" },
+ { 0, NULL }
+};
+static const FieldPart I010_170_CNF = { 1, 1.0, FIELD_PART_UINT, &hf_010_170_CNF, NULL };
+static int hf_010_170_TRE = -1;
+static const value_string valstr_010_170_TRE[] = {
+ { 0, "Default" },
+ { 1, "Last report for a track" },
+ { 0, NULL }
+};
+static const FieldPart I010_170_TRE = { 1, 1.0, FIELD_PART_UINT, &hf_010_170_TRE, NULL };
+static int hf_010_170_CST = -1;
+static const value_string valstr_010_170_CST[] = {
+ { 0, "No extrapolation" },
+ { 1, "Predictable extrapolation due to sensor refresh period (see NOTE)" },
+ { 2, "Predictable extrapolation in masked area" },
+ { 3, "Extrapolation due to unpredictable absence of detection" },
+ { 0, NULL }
+};
+static const FieldPart I010_170_CST = { 2, 1.0, FIELD_PART_UINT, &hf_010_170_CST, NULL };
+static int hf_010_170_MAH = -1;
+static const value_string valstr_010_170_MAH[] = {
+ { 0, "Default" },
+ { 1, "Horizontal manoeuvre" },
+ { 0, NULL }
+};
+static const FieldPart I010_170_MAH = { 1, 1.0, FIELD_PART_UINT, &hf_010_170_MAH, NULL };
+static int hf_010_170_TCC = -1;
+static const value_string valstr_010_170_TCC[] = {
+ { 0, "Tracking performed in \'Sensor Plane\', i.e. neither slant range correction nor projection was applied" },
+ { 1, "Slant range correction and a suitable projection technique are used to track in a 2D.reference plane, tangential to the earth model at the Sensor Site co-ordinates" },
+ { 0, NULL }
+};
+static const FieldPart I010_170_TCC = { 1, 1.0, FIELD_PART_UINT, &hf_010_170_TCC, NULL };
+static int hf_010_170_STH = -1;
+static const value_string valstr_010_170_STH[] = {
+ { 0, "Measured position" },
+ { 1, "Smoothed position" },
+ { 0, NULL }
+};
+static const FieldPart I010_170_STH = { 1, 1.0, FIELD_PART_UINT, &hf_010_170_STH, NULL };
+static int hf_010_170_TOM = -1;
+static const value_string valstr_010_170_TOM[] = {
+ { 0, "Unknown type of movement" },
+ { 1, "Taking-off" },
+ { 2, "Landing" },
+ { 3, "Other types of movement" },
+ { 0, NULL }
+};
+static const FieldPart I010_170_TOM = { 2, 1.0, FIELD_PART_UINT, &hf_010_170_TOM, NULL };
+static int hf_010_170_DOU = -1;
+static const value_string valstr_010_170_DOU[] = {
+ { 0, "No doubt" },
+ { 1, "Doubtful correlation (undetermined reason)" },
+ { 2, "Doubtful correlation in clutter" },
+ { 3, "Loss of accuracy" },
+ { 4, "Loss of accuracy in clutter" },
+ { 5, "Unstable track" },
+ { 6, "Previously coasted" },
+ { 0, NULL }
+};
+static const FieldPart I010_170_DOU = { 3, 1.0, FIELD_PART_UINT, &hf_010_170_DOU, NULL };
+static int hf_010_170_MRS = -1;
+static const value_string valstr_010_170_MRS[] = {
+ { 0, "Merge or split indication undetermined" },
+ { 1, "Track merged by association to plot" },
+ { 2, "Track merged by non-association to plot" },
+ { 3, "Split track" },
+ { 0, NULL }
+};
+static const FieldPart I010_170_MRS = { 2, 1.0, FIELD_PART_UINT, &hf_010_170_MRS, NULL };
+static int hf_010_170_GHO = -1;
+static const value_string valstr_010_170_GHO[] = {
+ { 0, "Default" },
+ { 1, "Ghost track" },
+ { 0, NULL }
+};
+static const FieldPart I010_170_GHO = { 1, 1.0, FIELD_PART_UINT, &hf_010_170_GHO, NULL };
+static const FieldPart *I010_170_PARTS[] = {
+ &I010_170_CNF,
+ &I010_170_TRE,
+ &I010_170_CST,
+ &I010_170_MAH,
+ &I010_170_TCC,
+ &I010_170_STH,
+ &IXXX_FX,
+ &I010_170_TOM,
+ &I010_170_DOU,
+ &I010_170_MRS,
+ &IXXX_FX,
+ &I010_170_GHO,
+ &IXXX_6bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I010_170 = { FX, 1, 0, 0, &hf_010_170, I010_170_PARTS, { NULL } };
+static int hf_010_200 = -1;
+static int hf_010_200_GSP = -1;
+static const FieldPart I010_200_GSP = { 16, 0.00006103515625, FIELD_PART_UFLOAT, &hf_010_200_GSP, NULL };
+static int hf_010_200_TRA = -1;
+static const FieldPart I010_200_TRA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_010_200_TRA, NULL };
+static const FieldPart *I010_200_PARTS[] = {
+ &I010_200_GSP,
+ &I010_200_TRA,
+ NULL
+};
+static const AsterixField I010_200 = { FIXED, 4, 0, 0, &hf_010_200, I010_200_PARTS, { NULL } };
+static int hf_010_202 = -1;
+static int hf_010_202_VX = -1;
+static const FieldPart I010_202_VX = { 16, 0.0625, FIELD_PART_FLOAT, &hf_010_202_VX, NULL };
+static int hf_010_202_VY = -1;
+static const FieldPart I010_202_VY = { 16, 0.0625, FIELD_PART_FLOAT, &hf_010_202_VY, NULL };
+static const FieldPart *I010_202_PARTS[] = {
+ &I010_202_VX,
+ &I010_202_VY,
+ NULL
+};
+static const AsterixField I010_202 = { FIXED, 4, 0, 0, &hf_010_202, I010_202_PARTS, { NULL } };
+static int hf_010_210 = -1;
+static int hf_010_210_AX = -1;
+static const FieldPart I010_210_AX = { 8, 0.0625, FIELD_PART_FLOAT, &hf_010_210_AX, NULL };
+static int hf_010_210_AY = -1;
+static const FieldPart I010_210_AY = { 8, 0.0625, FIELD_PART_FLOAT, &hf_010_210_AY, NULL };
+static const FieldPart *I010_210_PARTS[] = {
+ &I010_210_AX,
+ &I010_210_AY,
+ NULL
+};
+static const AsterixField I010_210 = { FIXED, 2, 0, 0, &hf_010_210, I010_210_PARTS, { NULL } };
+static int hf_010_220 = -1;
+static int hf_010_220_VALUE = -1;
+static const FieldPart I010_220_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_010_220_VALUE, NULL };
+static const FieldPart *I010_220_PARTS[] = {
+ &I010_220_VALUE,
+ NULL
+};
+static const AsterixField I010_220 = { FIXED, 3, 0, 0, &hf_010_220, I010_220_PARTS, { NULL } };
+static int hf_010_245 = -1;
+static int hf_010_245_STI = -1;
+static const value_string valstr_010_245_STI[] = {
+ { 0, "Callsign or registration downlinked from transponder" },
+ { 1, "Callsign not downlinked from transponder" },
+ { 2, "Registration not downlinked from transponder" },
+ { 0, NULL }
+};
+static const FieldPart I010_245_STI = { 2, 1.0, FIELD_PART_UINT, &hf_010_245_STI, NULL };
+static int hf_010_245_CHR = -1;
+static const FieldPart I010_245_CHR = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_010_245_CHR, NULL };
+static const FieldPart *I010_245_PARTS[] = {
+ &I010_245_STI,
+ &IXXX_6bit_spare,
+ &I010_245_CHR,
+ NULL
+};
+static const AsterixField I010_245 = { FIXED, 7, 0, 0, &hf_010_245, I010_245_PARTS, { NULL } };
+static int hf_010_250 = -1;
+static int hf_010_250_MBDATA = -1;
+static const FieldPart I010_250_MBDATA = { 56, 1.0, FIELD_PART_HEX, &hf_010_250_MBDATA, NULL };
+static int hf_010_250_BDS1 = -1;
+static const FieldPart I010_250_BDS1 = { 4, 1.0, FIELD_PART_HEX, &hf_010_250_BDS1, NULL };
+static int hf_010_250_BDS2 = -1;
+static const FieldPart I010_250_BDS2 = { 4, 1.0, FIELD_PART_HEX, &hf_010_250_BDS2, NULL };
+static const FieldPart *I010_250_PARTS[] = {
+ &I010_250_MBDATA,
+ &I010_250_BDS1,
+ &I010_250_BDS2,
+ NULL
+};
+static const AsterixField I010_250 = { REPETITIVE, 8, 1, 0, &hf_010_250, I010_250_PARTS, { NULL } };
+static int hf_010_270 = -1;
+static int hf_010_270_LENGTH = -1;
+static const FieldPart I010_270_LENGTH = { 7, 1.0, FIELD_PART_UFLOAT, &hf_010_270_LENGTH, NULL };
+static int hf_010_270_ORIENTATION = -1;
+static const FieldPart I010_270_ORIENTATION = { 7, 2.8125, FIELD_PART_UFLOAT, &hf_010_270_ORIENTATION, NULL };
+static int hf_010_270_WIDTH = -1;
+static const FieldPart I010_270_WIDTH = { 7, 1.0, FIELD_PART_UFLOAT, &hf_010_270_WIDTH, NULL };
+static const FieldPart *I010_270_PARTS[] = {
+ &I010_270_LENGTH,
+ &IXXX_FX,
+ &I010_270_ORIENTATION,
+ &IXXX_FX,
+ &I010_270_WIDTH,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I010_270 = { FX, 1, 0, 0, &hf_010_270, I010_270_PARTS, { NULL } };
+static int hf_010_280 = -1;
+static int hf_010_280_DRHO = -1;
+static const FieldPart I010_280_DRHO = { 8, 1.0, FIELD_PART_FLOAT, &hf_010_280_DRHO, NULL };
+static int hf_010_280_DTHETA = -1;
+static const FieldPart I010_280_DTHETA = { 8, 0.15, FIELD_PART_FLOAT, &hf_010_280_DTHETA, NULL };
+static const FieldPart *I010_280_PARTS[] = {
+ &I010_280_DRHO,
+ &I010_280_DTHETA,
+ NULL
+};
+static const AsterixField I010_280 = { REPETITIVE, 2, 1, 0, &hf_010_280, I010_280_PARTS, { NULL } };
+static int hf_010_300 = -1;
+static int hf_010_300_VALUE = -1;
+static const value_string valstr_010_300_VALUE[] = {
+ { 0, "Unknown" },
+ { 1, "ATC equipment maintenance" },
+ { 2, "Airport maintenance" },
+ { 3, "Fire" },
+ { 4, "Bird scarer" },
+ { 5, "Snow plough" },
+ { 6, "Runway sweeper" },
+ { 7, "Emergency" },
+ { 8, "Police" },
+ { 9, "Bus" },
+ { 10, "Tug (push/tow)" },
+ { 11, "Grass cutter" },
+ { 12, "Fuel" },
+ { 13, "Baggage" },
+ { 14, "Catering" },
+ { 15, "Aircraft maintenance" },
+ { 16, "Flyco (follow me)" },
+ { 0, NULL }
+};
+static const FieldPart I010_300_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_010_300_VALUE, NULL };
+static const FieldPart *I010_300_PARTS[] = {
+ &I010_300_VALUE,
+ NULL
+};
+static const AsterixField I010_300 = { FIXED, 1, 0, 0, &hf_010_300, I010_300_PARTS, { NULL } };
+static int hf_010_310 = -1;
+static int hf_010_310_TRB = -1;
+static const value_string valstr_010_310_TRB[] = {
+ { 0, "Default" },
+ { 1, "In Trouble" },
+ { 0, NULL }
+};
+static const FieldPart I010_310_TRB = { 1, 1.0, FIELD_PART_UINT, &hf_010_310_TRB, NULL };
+static int hf_010_310_MSG = -1;
+static const value_string valstr_010_310_MSG[] = {
+ { 1, "Towing aircraft" },
+ { 2, "“Follow me” operation" },
+ { 3, "Runway check" },
+ { 4, "Emergency operation (fire, medical...)" },
+ { 5, "Work in progress (maintenance, birds scarer, sweepers...)" },
+ { 0, NULL }
+};
+static const FieldPart I010_310_MSG = { 7, 1.0, FIELD_PART_UINT, &hf_010_310_MSG, NULL };
+static const FieldPart *I010_310_PARTS[] = {
+ &I010_310_TRB,
+ &I010_310_MSG,
+ NULL
+};
+static const AsterixField I010_310 = { FIXED, 1, 0, 0, &hf_010_310, I010_310_PARTS, { NULL } };
+static int hf_010_500 = -1;
+static int hf_010_500_DEVX = -1;
+static const FieldPart I010_500_DEVX = { 8, 0.25, FIELD_PART_UFLOAT, &hf_010_500_DEVX, NULL };
+static int hf_010_500_DEVY = -1;
+static const FieldPart I010_500_DEVY = { 8, 0.25, FIELD_PART_UFLOAT, &hf_010_500_DEVY, NULL };
+static int hf_010_500_COVXY = -1;
+static const FieldPart I010_500_COVXY = { 16, 0.25, FIELD_PART_FLOAT, &hf_010_500_COVXY, NULL };
+static const FieldPart *I010_500_PARTS[] = {
+ &I010_500_DEVX,
+ &I010_500_DEVY,
+ &I010_500_COVXY,
+ NULL
+};
+static const AsterixField I010_500 = { FIXED, 4, 0, 0, &hf_010_500, I010_500_PARTS, { NULL } };
+static int hf_010_550 = -1;
+static int hf_010_550_NOGO = -1;
+static const value_string valstr_010_550_NOGO[] = {
+ { 0, "Operational" },
+ { 1, "Degraded" },
+ { 2, "NOGO" },
+ { 0, NULL }
+};
+static const FieldPart I010_550_NOGO = { 2, 1.0, FIELD_PART_UINT, &hf_010_550_NOGO, NULL };
+static int hf_010_550_OVL = -1;
+static const value_string valstr_010_550_OVL[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I010_550_OVL = { 1, 1.0, FIELD_PART_UINT, &hf_010_550_OVL, NULL };
+static int hf_010_550_TSV = -1;
+static const value_string valstr_010_550_TSV[] = {
+ { 0, "Valid" },
+ { 1, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I010_550_TSV = { 1, 1.0, FIELD_PART_UINT, &hf_010_550_TSV, NULL };
+static int hf_010_550_DIV = -1;
+static const value_string valstr_010_550_DIV[] = {
+ { 0, "Normal Operation" },
+ { 1, "Diversity degraded" },
+ { 0, NULL }
+};
+static const FieldPart I010_550_DIV = { 1, 1.0, FIELD_PART_UINT, &hf_010_550_DIV, NULL };
+static int hf_010_550_TTF = -1;
+static const value_string valstr_010_550_TTF[] = {
+ { 0, "Test Target Operative" },
+ { 1, "Test Target Failure" },
+ { 0, NULL }
+};
+static const FieldPart I010_550_TTF = { 1, 1.0, FIELD_PART_UINT, &hf_010_550_TTF, NULL };
+static const FieldPart *I010_550_PARTS[] = {
+ &I010_550_NOGO,
+ &I010_550_OVL,
+ &I010_550_TSV,
+ &I010_550_DIV,
+ &I010_550_TTF,
+ &IXXX_2bit_spare,
+ NULL
+};
+static const AsterixField I010_550 = { FIXED, 1, 0, 0, &hf_010_550, I010_550_PARTS, { NULL } };
+static int hf_010_RE = -1;
+static const AsterixField I010_RE = { EXP, 0, 0, 1, &hf_010_RE, NULL, { NULL } };
+static int hf_010_SP = -1;
+static const AsterixField I010_SP = { EXP, 0, 0, 1, &hf_010_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I010_V1_1_uap[] = {
+ &I010_V1_1_010,
+ &I010_V1_1_000,
+ &I010_V1_1_020,
+ &I010_V1_1_140,
+ &I010_V1_1_041,
+ &I010_V1_1_040,
+ &I010_V1_1_042,
+ &I010_V1_1_200,
+ &I010_V1_1_202,
+ &I010_V1_1_161,
+ &I010_V1_1_170,
+ &I010_V1_1_060,
+ &I010_V1_1_220,
+ &I010_V1_1_245,
+ &I010_V1_1_250,
+ &I010_V1_1_300,
+ &I010_V1_1_090,
+ &I010_V1_1_091,
+ &I010_V1_1_270,
+ &I010_V1_1_550,
+ &I010_V1_1_310,
+ &I010_V1_1_500,
+ &I010_V1_1_280,
+ &I010_V1_1_131,
+ &I010_V1_1_210,
+ &IX_SPARE,
+ &I010_V1_1_SP,
+ &I010_V1_1_RE,
+ NULL
+};
+static const AsterixField **I010_V1_1[] = {
+ I010_V1_1_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I010_uap[] = {
+ &I010_010,
+ &I010_000,
+ &I010_020,
+ &I010_140,
+ &I010_041,
+ &I010_040,
+ &I010_042,
+ &I010_200,
+ &I010_202,
+ &I010_161,
+ &I010_170,
+ &I010_060,
+ &I010_220,
+ &I010_245,
+ &I010_250,
+ &I010_300,
+ &I010_090,
+ &I010_091,
+ &I010_270,
+ &I010_550,
+ &I010_310,
+ &I010_500,
+ &I010_280,
+ &I010_131,
+ &I010_210,
+ &IX_SPARE,
+ &I010_SP,
+ &I010_RE,
+ NULL
+};
+static const AsterixField **I010[] = {
+ I010_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 011, edition 1.2 */
+static int hf_011_V1_2_000 = -1;
+static int hf_011_V1_2_000_VALUE = -1;
+static const value_string valstr_011_V1_2_000_VALUE[] = {
+ { 1, "Target reports, flight plan data and basic alerts" },
+ { 2, "Manual attachment of flight plan to track" },
+ { 3, "Manual detachment of flight plan to track" },
+ { 4, "Insertion of flight plan data" },
+ { 5, "Suppression of flight plan data" },
+ { 6, "Modification of flight plan data" },
+ { 7, "Holdbar status" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_011_V1_2_000_VALUE, NULL };
+static const FieldPart *I011_V1_2_000_PARTS[] = {
+ &I011_V1_2_000_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_000 = { FIXED, 1, 0, 0, &hf_011_V1_2_000, I011_V1_2_000_PARTS, { NULL } };
+static int hf_011_V1_2_010 = -1;
+static int hf_011_V1_2_010_SAC = -1;
+static const FieldPart I011_V1_2_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_011_V1_2_010_SAC, NULL };
+static int hf_011_V1_2_010_SIC = -1;
+static const FieldPart I011_V1_2_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_011_V1_2_010_SIC, NULL };
+static const FieldPart *I011_V1_2_010_PARTS[] = {
+ &I011_V1_2_010_SAC,
+ &I011_V1_2_010_SIC,
+ NULL
+};
+static const AsterixField I011_V1_2_010 = { FIXED, 2, 0, 0, &hf_011_V1_2_010, I011_V1_2_010_PARTS, { NULL } };
+static int hf_011_V1_2_015 = -1;
+static int hf_011_V1_2_015_VALUE = -1;
+static const FieldPart I011_V1_2_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_011_V1_2_015_VALUE, NULL };
+static const FieldPart *I011_V1_2_015_PARTS[] = {
+ &I011_V1_2_015_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_015 = { FIXED, 1, 0, 0, &hf_011_V1_2_015, I011_V1_2_015_PARTS, { NULL } };
+static int hf_011_V1_2_041 = -1;
+static int hf_011_V1_2_041_LAT = -1;
+static const FieldPart I011_V1_2_041_LAT = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_011_V1_2_041_LAT, NULL };
+static int hf_011_V1_2_041_LON = -1;
+static const FieldPart I011_V1_2_041_LON = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_011_V1_2_041_LON, NULL };
+static const FieldPart *I011_V1_2_041_PARTS[] = {
+ &I011_V1_2_041_LAT,
+ &I011_V1_2_041_LON,
+ NULL
+};
+static const AsterixField I011_V1_2_041 = { FIXED, 8, 0, 0, &hf_011_V1_2_041, I011_V1_2_041_PARTS, { NULL } };
+static int hf_011_V1_2_042 = -1;
+static int hf_011_V1_2_042_X = -1;
+static const FieldPart I011_V1_2_042_X = { 16, 1.0, FIELD_PART_FLOAT, &hf_011_V1_2_042_X, NULL };
+static int hf_011_V1_2_042_Y = -1;
+static const FieldPart I011_V1_2_042_Y = { 16, 1.0, FIELD_PART_FLOAT, &hf_011_V1_2_042_Y, NULL };
+static const FieldPart *I011_V1_2_042_PARTS[] = {
+ &I011_V1_2_042_X,
+ &I011_V1_2_042_Y,
+ NULL
+};
+static const AsterixField I011_V1_2_042 = { FIXED, 4, 0, 0, &hf_011_V1_2_042, I011_V1_2_042_PARTS, { NULL } };
+static int hf_011_V1_2_060 = -1;
+static int hf_011_V1_2_060_MOD3A = -1;
+static const FieldPart I011_V1_2_060_MOD3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_011_V1_2_060_MOD3A, NULL };
+static const FieldPart *I011_V1_2_060_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I011_V1_2_060_MOD3A,
+ NULL
+};
+static const AsterixField I011_V1_2_060 = { FIXED, 2, 0, 0, &hf_011_V1_2_060, I011_V1_2_060_PARTS, { NULL } };
+static int hf_011_V1_2_090 = -1;
+static int hf_011_V1_2_090_VALUE = -1;
+static const FieldPart I011_V1_2_090_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_011_V1_2_090_VALUE, NULL };
+static const FieldPart *I011_V1_2_090_PARTS[] = {
+ &I011_V1_2_090_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_090 = { FIXED, 2, 0, 0, &hf_011_V1_2_090, I011_V1_2_090_PARTS, { NULL } };
+static int hf_011_V1_2_092 = -1;
+static int hf_011_V1_2_092_VALUE = -1;
+static const FieldPart I011_V1_2_092_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_011_V1_2_092_VALUE, NULL };
+static const FieldPart *I011_V1_2_092_PARTS[] = {
+ &I011_V1_2_092_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_092 = { FIXED, 2, 0, 0, &hf_011_V1_2_092, I011_V1_2_092_PARTS, { NULL } };
+static int hf_011_V1_2_093 = -1;
+static int hf_011_V1_2_093_QNH = -1;
+static const value_string valstr_011_V1_2_093_QNH[] = {
+ { 0, "No QNH correction applied" },
+ { 1, "QNH correction applied" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_093_QNH = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_093_QNH, NULL };
+static int hf_011_V1_2_093_CTBA = -1;
+static const FieldPart I011_V1_2_093_CTBA = { 15, 0.25, FIELD_PART_FLOAT, &hf_011_V1_2_093_CTBA, NULL };
+static const FieldPart *I011_V1_2_093_PARTS[] = {
+ &I011_V1_2_093_QNH,
+ &I011_V1_2_093_CTBA,
+ NULL
+};
+static const AsterixField I011_V1_2_093 = { FIXED, 2, 0, 0, &hf_011_V1_2_093, I011_V1_2_093_PARTS, { NULL } };
+static int hf_011_V1_2_140 = -1;
+static int hf_011_V1_2_140_VALUE = -1;
+static const FieldPart I011_V1_2_140_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_011_V1_2_140_VALUE, NULL };
+static const FieldPart *I011_V1_2_140_PARTS[] = {
+ &I011_V1_2_140_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_140 = { FIXED, 3, 0, 0, &hf_011_V1_2_140, I011_V1_2_140_PARTS, { NULL } };
+static int hf_011_V1_2_161 = -1;
+static int hf_011_V1_2_161_FTN = -1;
+static const FieldPart I011_V1_2_161_FTN = { 15, 1.0, FIELD_PART_HEX, &hf_011_V1_2_161_FTN, NULL };
+static const FieldPart *I011_V1_2_161_PARTS[] = {
+ &IXXX_1bit_spare,
+ &I011_V1_2_161_FTN,
+ NULL
+};
+static const AsterixField I011_V1_2_161 = { FIXED, 2, 0, 0, &hf_011_V1_2_161, I011_V1_2_161_PARTS, { NULL } };
+static int hf_011_V1_2_170 = -1;
+static int hf_011_V1_2_170_MON = -1;
+static const value_string valstr_011_V1_2_170_MON[] = {
+ { 0, "Multisensor Track" },
+ { 1, "Monosensor Track" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_170_MON = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_170_MON, NULL };
+static int hf_011_V1_2_170_GBS = -1;
+static const value_string valstr_011_V1_2_170_GBS[] = {
+ { 0, "Transponder Ground bit not set or unknown" },
+ { 1, "Transponder Ground bit set" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_170_GBS = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_170_GBS, NULL };
+static int hf_011_V1_2_170_MRH = -1;
+static const value_string valstr_011_V1_2_170_MRH[] = {
+ { 0, "Barometric altitude (Mode C) more reliable" },
+ { 1, "Geometric altitude more reliable" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_170_MRH = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_170_MRH, NULL };
+static int hf_011_V1_2_170_SRC = -1;
+static const value_string valstr_011_V1_2_170_SRC[] = {
+ { 0, "No source" },
+ { 1, "GPS" },
+ { 2, "3d radar" },
+ { 3, "Triangulation" },
+ { 4, "Height from coverage" },
+ { 5, "Speed look-up table" },
+ { 6, "Default height" },
+ { 7, "Multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_170_SRC = { 3, 1.0, FIELD_PART_UINT, &hf_011_V1_2_170_SRC, NULL };
+static int hf_011_V1_2_170_CNF = -1;
+static const value_string valstr_011_V1_2_170_CNF[] = {
+ { 0, "Confirmed track" },
+ { 1, "Tentative track" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_170_CNF = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_170_CNF, NULL };
+static int hf_011_V1_2_170_SIM = -1;
+static const value_string valstr_011_V1_2_170_SIM[] = {
+ { 0, "Actual Track" },
+ { 1, "Simulated track" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_170_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_170_SIM, NULL };
+static int hf_011_V1_2_170_TSE = -1;
+static const value_string valstr_011_V1_2_170_TSE[] = {
+ { 0, "Default value" },
+ { 1, "Track service end (i.e. last message transmitted to the user for the track)" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_170_TSE = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_170_TSE, NULL };
+static int hf_011_V1_2_170_TSB = -1;
+static const value_string valstr_011_V1_2_170_TSB[] = {
+ { 0, "Default value" },
+ { 1, "Track service begin (i.e. first message transmitted to the user for the track)" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_170_TSB = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_170_TSB, NULL };
+static int hf_011_V1_2_170_FRIFOE = -1;
+static const value_string valstr_011_V1_2_170_FRIFOE[] = {
+ { 0, "No Mode 4 interrogationt" },
+ { 1, "Friendly target" },
+ { 2, "Unknown target" },
+ { 3, "No reply" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_170_FRIFOE = { 2, 1.0, FIELD_PART_UINT, &hf_011_V1_2_170_FRIFOE, NULL };
+static int hf_011_V1_2_170_ME = -1;
+static const value_string valstr_011_V1_2_170_ME[] = {
+ { 0, "Default value" },
+ { 1, "Military Emergency present in the last report received from a sensor capable of decoding this data" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_170_ME = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_170_ME, NULL };
+static int hf_011_V1_2_170_MI = -1;
+static const value_string valstr_011_V1_2_170_MI[] = {
+ { 0, "End of Data Item" },
+ { 1, "Military Identification present in the last report received from a sensor capable of decoding this data" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_170_MI = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_170_MI, NULL };
+static int hf_011_V1_2_170_AMA = -1;
+static const value_string valstr_011_V1_2_170_AMA[] = {
+ { 0, "Track not resulting from amalgamation process" },
+ { 1, "Track resulting from amalgamation process" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_170_AMA = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_170_AMA, NULL };
+static int hf_011_V1_2_170_SPI = -1;
+static const value_string valstr_011_V1_2_170_SPI[] = {
+ { 0, "Default value" },
+ { 1, "SPI present in the last report received from a sensor capable of decoding this data" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_170_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_170_SPI, NULL };
+static int hf_011_V1_2_170_CST = -1;
+static const value_string valstr_011_V1_2_170_CST[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received track update is higher than system dependent threshold (coasting)" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_170_CST = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_170_CST, NULL };
+static int hf_011_V1_2_170_FPC = -1;
+static const value_string valstr_011_V1_2_170_FPC[] = {
+ { 0, "Not flight-plan correlated" },
+ { 1, "Flight plan correlated" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_170_FPC = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_170_FPC, NULL };
+static int hf_011_V1_2_170_AFF = -1;
+static const value_string valstr_011_V1_2_170_AFF[] = {
+ { 0, "Default value" },
+ { 1, "ADS-B data inconsistent with other surveillance information" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_170_AFF = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_170_AFF, NULL };
+static const FieldPart *I011_V1_2_170_PARTS[] = {
+ &I011_V1_2_170_MON,
+ &I011_V1_2_170_GBS,
+ &I011_V1_2_170_MRH,
+ &I011_V1_2_170_SRC,
+ &I011_V1_2_170_CNF,
+ &IXXX_FX,
+ &I011_V1_2_170_SIM,
+ &I011_V1_2_170_TSE,
+ &I011_V1_2_170_TSB,
+ &I011_V1_2_170_FRIFOE,
+ &I011_V1_2_170_ME,
+ &I011_V1_2_170_MI,
+ &IXXX_FX,
+ &I011_V1_2_170_AMA,
+ &I011_V1_2_170_SPI,
+ &I011_V1_2_170_CST,
+ &I011_V1_2_170_FPC,
+ &I011_V1_2_170_AFF,
+ &IXXX_2bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I011_V1_2_170 = { FX, 1, 0, 0, &hf_011_V1_2_170, I011_V1_2_170_PARTS, { NULL } };
+static int hf_011_V1_2_202 = -1;
+static int hf_011_V1_2_202_VX = -1;
+static const FieldPart I011_V1_2_202_VX = { 16, 0.25, FIELD_PART_FLOAT, &hf_011_V1_2_202_VX, NULL };
+static int hf_011_V1_2_202_VY = -1;
+static const FieldPart I011_V1_2_202_VY = { 16, 0.25, FIELD_PART_FLOAT, &hf_011_V1_2_202_VY, NULL };
+static const FieldPart *I011_V1_2_202_PARTS[] = {
+ &I011_V1_2_202_VX,
+ &I011_V1_2_202_VY,
+ NULL
+};
+static const AsterixField I011_V1_2_202 = { FIXED, 4, 0, 0, &hf_011_V1_2_202, I011_V1_2_202_PARTS, { NULL } };
+static int hf_011_V1_2_210 = -1;
+static int hf_011_V1_2_210_AX = -1;
+static const FieldPart I011_V1_2_210_AX = { 8, 0.25, FIELD_PART_FLOAT, &hf_011_V1_2_210_AX, NULL };
+static int hf_011_V1_2_210_AY = -1;
+static const FieldPart I011_V1_2_210_AY = { 8, 0.25, FIELD_PART_FLOAT, &hf_011_V1_2_210_AY, NULL };
+static const FieldPart *I011_V1_2_210_PARTS[] = {
+ &I011_V1_2_210_AX,
+ &I011_V1_2_210_AY,
+ NULL
+};
+static const AsterixField I011_V1_2_210 = { FIXED, 2, 0, 0, &hf_011_V1_2_210, I011_V1_2_210_PARTS, { NULL } };
+static int hf_011_V1_2_215 = -1;
+static int hf_011_V1_2_215_VALUE = -1;
+static const FieldPart I011_V1_2_215_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_011_V1_2_215_VALUE, NULL };
+static const FieldPart *I011_V1_2_215_PARTS[] = {
+ &I011_V1_2_215_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_215 = { FIXED, 2, 0, 0, &hf_011_V1_2_215, I011_V1_2_215_PARTS, { NULL } };
+static int hf_011_V1_2_245 = -1;
+static int hf_011_V1_2_245_STI = -1;
+static const value_string valstr_011_V1_2_245_STI[] = {
+ { 0, "Callsign or registration downlinked from transponder" },
+ { 1, "Callsign not downlinked from transponder" },
+ { 2, "Registration not downlinked from transponder" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_245_STI = { 2, 1.0, FIELD_PART_UINT, &hf_011_V1_2_245_STI, NULL };
+static int hf_011_V1_2_245_TID = -1;
+static const FieldPart I011_V1_2_245_TID = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_011_V1_2_245_TID, NULL };
+static const FieldPart *I011_V1_2_245_PARTS[] = {
+ &I011_V1_2_245_STI,
+ &IXXX_6bit_spare,
+ &I011_V1_2_245_TID,
+ NULL
+};
+static const AsterixField I011_V1_2_245 = { FIXED, 7, 0, 0, &hf_011_V1_2_245, I011_V1_2_245_PARTS, { NULL } };
+static int hf_011_V1_2_270 = -1;
+static int hf_011_V1_2_270_LENGTH = -1;
+static const FieldPart I011_V1_2_270_LENGTH = { 7, 1.0, FIELD_PART_UFLOAT, &hf_011_V1_2_270_LENGTH, NULL };
+static int hf_011_V1_2_270_ORIENTATION = -1;
+static const FieldPart I011_V1_2_270_ORIENTATION = { 7, 2.8125, FIELD_PART_UFLOAT, &hf_011_V1_2_270_ORIENTATION, NULL };
+static int hf_011_V1_2_270_WIDTH = -1;
+static const FieldPart I011_V1_2_270_WIDTH = { 7, 1.0, FIELD_PART_UFLOAT, &hf_011_V1_2_270_WIDTH, NULL };
+static const FieldPart *I011_V1_2_270_PARTS[] = {
+ &I011_V1_2_270_LENGTH,
+ &IXXX_FX,
+ &I011_V1_2_270_ORIENTATION,
+ &IXXX_FX,
+ &I011_V1_2_270_WIDTH,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I011_V1_2_270 = { FX, 1, 0, 0, &hf_011_V1_2_270, I011_V1_2_270_PARTS, { NULL } };
+static int hf_011_V1_2_290 = -1;
+static int hf_011_V1_2_290_PSR = -1;
+static int hf_011_V1_2_290_PSR_VALUE = -1;
+static const FieldPart I011_V1_2_290_PSR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_2_290_PSR_VALUE, NULL };
+static const FieldPart *I011_V1_2_290_PSR_PARTS[] = {
+ &I011_V1_2_290_PSR_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_290_PSR = { FIXED, 1, 0, 0, &hf_011_V1_2_290_PSR, I011_V1_2_290_PSR_PARTS, { NULL } };
+static int hf_011_V1_2_290_SSR = -1;
+static int hf_011_V1_2_290_SSR_VALUE = -1;
+static const FieldPart I011_V1_2_290_SSR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_2_290_SSR_VALUE, NULL };
+static const FieldPart *I011_V1_2_290_SSR_PARTS[] = {
+ &I011_V1_2_290_SSR_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_290_SSR = { FIXED, 1, 0, 0, &hf_011_V1_2_290_SSR, I011_V1_2_290_SSR_PARTS, { NULL } };
+static int hf_011_V1_2_290_MDA = -1;
+static int hf_011_V1_2_290_MDA_VALUE = -1;
+static const FieldPart I011_V1_2_290_MDA_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_2_290_MDA_VALUE, NULL };
+static const FieldPart *I011_V1_2_290_MDA_PARTS[] = {
+ &I011_V1_2_290_MDA_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_290_MDA = { FIXED, 1, 0, 0, &hf_011_V1_2_290_MDA, I011_V1_2_290_MDA_PARTS, { NULL } };
+static int hf_011_V1_2_290_MFL = -1;
+static int hf_011_V1_2_290_MFL_VALUE = -1;
+static const FieldPart I011_V1_2_290_MFL_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_2_290_MFL_VALUE, NULL };
+static const FieldPart *I011_V1_2_290_MFL_PARTS[] = {
+ &I011_V1_2_290_MFL_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_290_MFL = { FIXED, 1, 0, 0, &hf_011_V1_2_290_MFL, I011_V1_2_290_MFL_PARTS, { NULL } };
+static int hf_011_V1_2_290_MDS = -1;
+static int hf_011_V1_2_290_MDS_VALUE = -1;
+static const FieldPart I011_V1_2_290_MDS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_2_290_MDS_VALUE, NULL };
+static const FieldPart *I011_V1_2_290_MDS_PARTS[] = {
+ &I011_V1_2_290_MDS_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_290_MDS = { FIXED, 1, 0, 0, &hf_011_V1_2_290_MDS, I011_V1_2_290_MDS_PARTS, { NULL } };
+static int hf_011_V1_2_290_ADS = -1;
+static int hf_011_V1_2_290_ADS_VALUE = -1;
+static const FieldPart I011_V1_2_290_ADS_VALUE = { 16, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_2_290_ADS_VALUE, NULL };
+static const FieldPart *I011_V1_2_290_ADS_PARTS[] = {
+ &I011_V1_2_290_ADS_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_290_ADS = { FIXED, 2, 0, 0, &hf_011_V1_2_290_ADS, I011_V1_2_290_ADS_PARTS, { NULL } };
+static int hf_011_V1_2_290_ADB = -1;
+static int hf_011_V1_2_290_ADB_VALUE = -1;
+static const FieldPart I011_V1_2_290_ADB_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_2_290_ADB_VALUE, NULL };
+static const FieldPart *I011_V1_2_290_ADB_PARTS[] = {
+ &I011_V1_2_290_ADB_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_290_ADB = { FIXED, 1, 0, 0, &hf_011_V1_2_290_ADB, I011_V1_2_290_ADB_PARTS, { NULL } };
+static int hf_011_V1_2_290_MD1 = -1;
+static int hf_011_V1_2_290_MD1_VALUE = -1;
+static const FieldPart I011_V1_2_290_MD1_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_2_290_MD1_VALUE, NULL };
+static const FieldPart *I011_V1_2_290_MD1_PARTS[] = {
+ &I011_V1_2_290_MD1_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_290_MD1 = { FIXED, 1, 0, 0, &hf_011_V1_2_290_MD1, I011_V1_2_290_MD1_PARTS, { NULL } };
+static int hf_011_V1_2_290_MD2 = -1;
+static int hf_011_V1_2_290_MD2_VALUE = -1;
+static const FieldPart I011_V1_2_290_MD2_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_2_290_MD2_VALUE, NULL };
+static const FieldPart *I011_V1_2_290_MD2_PARTS[] = {
+ &I011_V1_2_290_MD2_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_290_MD2 = { FIXED, 1, 0, 0, &hf_011_V1_2_290_MD2, I011_V1_2_290_MD2_PARTS, { NULL } };
+static int hf_011_V1_2_290_LOP = -1;
+static int hf_011_V1_2_290_LOP_VALUE = -1;
+static const FieldPart I011_V1_2_290_LOP_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_2_290_LOP_VALUE, NULL };
+static const FieldPart *I011_V1_2_290_LOP_PARTS[] = {
+ &I011_V1_2_290_LOP_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_290_LOP = { FIXED, 1, 0, 0, &hf_011_V1_2_290_LOP, I011_V1_2_290_LOP_PARTS, { NULL } };
+static int hf_011_V1_2_290_TRK = -1;
+static int hf_011_V1_2_290_TRK_VALUE = -1;
+static const FieldPart I011_V1_2_290_TRK_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_2_290_TRK_VALUE, NULL };
+static const FieldPart *I011_V1_2_290_TRK_PARTS[] = {
+ &I011_V1_2_290_TRK_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_290_TRK = { FIXED, 1, 0, 0, &hf_011_V1_2_290_TRK, I011_V1_2_290_TRK_PARTS, { NULL } };
+static int hf_011_V1_2_290_MUL = -1;
+static int hf_011_V1_2_290_MUL_VALUE = -1;
+static const FieldPart I011_V1_2_290_MUL_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_2_290_MUL_VALUE, NULL };
+static const FieldPart *I011_V1_2_290_MUL_PARTS[] = {
+ &I011_V1_2_290_MUL_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_290_MUL = { FIXED, 1, 0, 0, &hf_011_V1_2_290_MUL, I011_V1_2_290_MUL_PARTS, { NULL } };
+static const AsterixField I011_V1_2_290 = { COMPOUND, 0, 0, 0, &hf_011_V1_2_290, NULL, { &I011_V1_2_290_PSR, &I011_V1_2_290_SSR, &I011_V1_2_290_MDA, &I011_V1_2_290_MFL, &I011_V1_2_290_MDS, &I011_V1_2_290_ADS, &I011_V1_2_290_ADB, &I011_V1_2_290_MD1, &I011_V1_2_290_MD2, &I011_V1_2_290_LOP, &I011_V1_2_290_TRK, &I011_V1_2_290_MUL, NULL } };
+static int hf_011_V1_2_300 = -1;
+static int hf_011_V1_2_300_VALUE = -1;
+static const value_string valstr_011_V1_2_300_VALUE[] = {
+ { 0, "Flyco (follow me)" },
+ { 1, "ATC equipment maintenance" },
+ { 2, "Airport maintenance" },
+ { 3, "Fire" },
+ { 4, "Bird scarer" },
+ { 5, "Snow plough" },
+ { 6, "Runway sweeper" },
+ { 7, "Emergency" },
+ { 8, "Police" },
+ { 9, "Bus" },
+ { 10, "Tug (push/tow)" },
+ { 11, "Grass cutter" },
+ { 12, "Fuel" },
+ { 13, "Baggage" },
+ { 14, "Catering" },
+ { 15, "Aircraft maintenance" },
+ { 16, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_300_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_011_V1_2_300_VALUE, NULL };
+static const FieldPart *I011_V1_2_300_PARTS[] = {
+ &I011_V1_2_300_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_300 = { FIXED, 1, 0, 0, &hf_011_V1_2_300, I011_V1_2_300_PARTS, { NULL } };
+static int hf_011_V1_2_310 = -1;
+static int hf_011_V1_2_310_TRB = -1;
+static const value_string valstr_011_V1_2_310_TRB[] = {
+ { 0, "Default" },
+ { 1, "In Trouble" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_310_TRB = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_310_TRB, NULL };
+static int hf_011_V1_2_310_MSG = -1;
+static const value_string valstr_011_V1_2_310_MSG[] = {
+ { 1, "Towing aircraft" },
+ { 2, "FOLLOW-ME operation" },
+ { 3, "Runway check" },
+ { 4, "Emergency operation (fire, medical...)" },
+ { 5, "Work in progress (maintenance, birds scarer, sweepers...)" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_310_MSG = { 7, 1.0, FIELD_PART_UINT, &hf_011_V1_2_310_MSG, NULL };
+static const FieldPart *I011_V1_2_310_PARTS[] = {
+ &I011_V1_2_310_TRB,
+ &I011_V1_2_310_MSG,
+ NULL
+};
+static const AsterixField I011_V1_2_310 = { FIXED, 1, 0, 0, &hf_011_V1_2_310, I011_V1_2_310_PARTS, { NULL } };
+static int hf_011_V1_2_380 = -1;
+static int hf_011_V1_2_380_MB = -1;
+static int hf_011_V1_2_380_MB_VALUE = -1;
+static const FieldPart I011_V1_2_380_MB_VALUE = { 64, 1.0, FIELD_PART_HEX, &hf_011_V1_2_380_MB_VALUE, NULL };
+static const FieldPart *I011_V1_2_380_MB_PARTS[] = {
+ &I011_V1_2_380_MB_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_380_MB = { REPETITIVE, 8, 1, 0, &hf_011_V1_2_380_MB, I011_V1_2_380_MB_PARTS, { NULL } };
+static int hf_011_V1_2_380_ADR = -1;
+static int hf_011_V1_2_380_ADR_VALUE = -1;
+static const FieldPart I011_V1_2_380_ADR_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_011_V1_2_380_ADR_VALUE, NULL };
+static const FieldPart *I011_V1_2_380_ADR_PARTS[] = {
+ &I011_V1_2_380_ADR_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_380_ADR = { FIXED, 3, 0, 0, &hf_011_V1_2_380_ADR, I011_V1_2_380_ADR_PARTS, { NULL } };
+static int hf_011_V1_2_380_COMACAS = -1;
+static int hf_011_V1_2_380_COMACAS_COM = -1;
+static const value_string valstr_011_V1_2_380_COMACAS_COM[] = {
+ { 0, "No communications capability (surveillance only)" },
+ { 1, "Comm. A and Comm. B capability" },
+ { 2, "Comm. A, Comm. B and Uplink ELM" },
+ { 3, "Comm. A, Comm. B, Uplink ELM and Downlink ELM" },
+ { 4, "Level 5 Transponder capability" },
+ { 5, "Not assigned" },
+ { 6, "Not assigned" },
+ { 7, "Not assigned" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_380_COMACAS_COM = { 3, 1.0, FIELD_PART_UINT, &hf_011_V1_2_380_COMACAS_COM, NULL };
+static int hf_011_V1_2_380_COMACAS_STAT = -1;
+static const value_string valstr_011_V1_2_380_COMACAS_STAT[] = {
+ { 0, "No alert, no SPI, aircraft airborne" },
+ { 1, "No alert, no SPI, aircraft on ground" },
+ { 2, "Alert, no SPI, aircraft airborne" },
+ { 3, "Alert, no SPI, aircraft on ground" },
+ { 4, "Alert, SPI, aircraft airborne or on ground" },
+ { 5, "No alert, SPI, aircraft airborne or on ground" },
+ { 6, "General Emergency" },
+ { 7, "Lifeguard / medical" },
+ { 8, "Minimum fuel" },
+ { 9, "No communications" },
+ { 10, "Unlawful" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_380_COMACAS_STAT = { 4, 1.0, FIELD_PART_UINT, &hf_011_V1_2_380_COMACAS_STAT, NULL };
+static int hf_011_V1_2_380_COMACAS_SSC = -1;
+static const value_string valstr_011_V1_2_380_COMACAS_SSC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_380_COMACAS_SSC = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_380_COMACAS_SSC, NULL };
+static int hf_011_V1_2_380_COMACAS_ARC = -1;
+static const value_string valstr_011_V1_2_380_COMACAS_ARC[] = {
+ { 0, "100 ft resolution" },
+ { 1, "25 ft resolution" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_380_COMACAS_ARC = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_380_COMACAS_ARC, NULL };
+static int hf_011_V1_2_380_COMACAS_AIC = -1;
+static const value_string valstr_011_V1_2_380_COMACAS_AIC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_380_COMACAS_AIC = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_380_COMACAS_AIC, NULL };
+static int hf_011_V1_2_380_COMACAS_B1A = -1;
+static const FieldPart I011_V1_2_380_COMACAS_B1A = { 1, 1.0, FIELD_PART_HEX, &hf_011_V1_2_380_COMACAS_B1A, NULL };
+static int hf_011_V1_2_380_COMACAS_B1B = -1;
+static const FieldPart I011_V1_2_380_COMACAS_B1B = { 4, 1.0, FIELD_PART_HEX, &hf_011_V1_2_380_COMACAS_B1B, NULL };
+static int hf_011_V1_2_380_COMACAS_AC = -1;
+static const value_string valstr_011_V1_2_380_COMACAS_AC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_380_COMACAS_AC = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_380_COMACAS_AC, NULL };
+static int hf_011_V1_2_380_COMACAS_MN = -1;
+static const value_string valstr_011_V1_2_380_COMACAS_MN[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_380_COMACAS_MN = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_380_COMACAS_MN, NULL };
+static int hf_011_V1_2_380_COMACAS_DC = -1;
+static const value_string valstr_011_V1_2_380_COMACAS_DC[] = {
+ { 0, "Yes" },
+ { 1, "No" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_380_COMACAS_DC = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_380_COMACAS_DC, NULL };
+static const FieldPart *I011_V1_2_380_COMACAS_PARTS[] = {
+ &I011_V1_2_380_COMACAS_COM,
+ &I011_V1_2_380_COMACAS_STAT,
+ &IXXX_1bit_spare,
+ &I011_V1_2_380_COMACAS_SSC,
+ &I011_V1_2_380_COMACAS_ARC,
+ &I011_V1_2_380_COMACAS_AIC,
+ &I011_V1_2_380_COMACAS_B1A,
+ &I011_V1_2_380_COMACAS_B1B,
+ &I011_V1_2_380_COMACAS_AC,
+ &I011_V1_2_380_COMACAS_MN,
+ &I011_V1_2_380_COMACAS_DC,
+ &IXXX_5bit_spare,
+ NULL
+};
+static const AsterixField I011_V1_2_380_COMACAS = { FIXED, 3, 0, 0, &hf_011_V1_2_380_COMACAS, I011_V1_2_380_COMACAS_PARTS, { NULL } };
+static int hf_011_V1_2_380_ACT = -1;
+static int hf_011_V1_2_380_ACT_VALUE = -1;
+static const FieldPart I011_V1_2_380_ACT_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_011_V1_2_380_ACT_VALUE, NULL };
+static const FieldPart *I011_V1_2_380_ACT_PARTS[] = {
+ &I011_V1_2_380_ACT_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_380_ACT = { FIXED, 4, 0, 0, &hf_011_V1_2_380_ACT, I011_V1_2_380_ACT_PARTS, { NULL } };
+static int hf_011_V1_2_380_ECAT = -1;
+static int hf_011_V1_2_380_ECAT_VALUE = -1;
+static const value_string valstr_011_V1_2_380_ECAT_VALUE[] = {
+ { 1, "Light aircraft <= 7000 kg" },
+ { 2, "Reserved" },
+ { 3, "7000 kg &lt; medium aircraft &lt; 136000 kg" },
+ { 4, "Reserved" },
+ { 5, "136000 kg <= heavy aircraft" },
+ { 6, "Highly manoeuvrable (5g acceleration capability) and high speed (&gt;400 knots cruise)" },
+ { 7, "Reserved" },
+ { 8, "Reserved" },
+ { 9, "Reserved" },
+ { 10, "Rotocraft" },
+ { 11, "Glider / sailplane" },
+ { 12, "Lighter-than-air" },
+ { 13, "Unmanned aerial vehicle" },
+ { 14, "Space / transatmospheric vehicle" },
+ { 15, "Ultralight / handglider / paraglider" },
+ { 16, "Parachutist / skydiver" },
+ { 17, "Reserved" },
+ { 18, "Reserved" },
+ { 19, "Reserved" },
+ { 20, "Surface emergency vehicle" },
+ { 21, "Surface service vehicle" },
+ { 22, "Fixed ground or tethered obstruction" },
+ { 23, "Reserved" },
+ { 24, "Reserved" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_380_ECAT_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_011_V1_2_380_ECAT_VALUE, NULL };
+static const FieldPart *I011_V1_2_380_ECAT_PARTS[] = {
+ &I011_V1_2_380_ECAT_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_380_ECAT = { FIXED, 1, 0, 0, &hf_011_V1_2_380_ECAT, I011_V1_2_380_ECAT_PARTS, { NULL } };
+static int hf_011_V1_2_380_AVTECH = -1;
+static int hf_011_V1_2_380_AVTECH_VDL = -1;
+static const value_string valstr_011_V1_2_380_AVTECH_VDL[] = {
+ { 0, "VDL Mode 4 available" },
+ { 1, "VDL Mode 4 not available" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_380_AVTECH_VDL = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_380_AVTECH_VDL, NULL };
+static int hf_011_V1_2_380_AVTECH_MDS = -1;
+static const value_string valstr_011_V1_2_380_AVTECH_MDS[] = {
+ { 0, "Mode S available" },
+ { 1, "Mode S not available" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_380_AVTECH_MDS = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_380_AVTECH_MDS, NULL };
+static int hf_011_V1_2_380_AVTECH_UAT = -1;
+static const value_string valstr_011_V1_2_380_AVTECH_UAT[] = {
+ { 0, "UAT available" },
+ { 1, "UAT not available" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_380_AVTECH_UAT = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_380_AVTECH_UAT, NULL };
+static const FieldPart *I011_V1_2_380_AVTECH_PARTS[] = {
+ &I011_V1_2_380_AVTECH_VDL,
+ &I011_V1_2_380_AVTECH_MDS,
+ &I011_V1_2_380_AVTECH_UAT,
+ &IXXX_5bit_spare,
+ NULL
+};
+static const AsterixField I011_V1_2_380_AVTECH = { FIXED, 1, 0, 0, &hf_011_V1_2_380_AVTECH, I011_V1_2_380_AVTECH_PARTS, { NULL } };
+static const AsterixField I011_V1_2_380 = { COMPOUND, 0, 0, 0, &hf_011_V1_2_380, NULL, { &I011_V1_2_380_MB, &I011_V1_2_380_ADR, &IX_SPARE, &I011_V1_2_380_COMACAS, &IX_SPARE, &IX_SPARE, &IX_SPARE, &I011_V1_2_380_ACT, &I011_V1_2_380_ECAT, &IX_SPARE, &I011_V1_2_380_AVTECH, NULL } };
+static int hf_011_V1_2_390 = -1;
+static int hf_011_V1_2_390_FPPSID = -1;
+static int hf_011_V1_2_390_FPPSID_SAC = -1;
+static const FieldPart I011_V1_2_390_FPPSID_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_011_V1_2_390_FPPSID_SAC, NULL };
+static int hf_011_V1_2_390_FPPSID_SIC = -1;
+static const FieldPart I011_V1_2_390_FPPSID_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_011_V1_2_390_FPPSID_SIC, NULL };
+static const FieldPart *I011_V1_2_390_FPPSID_PARTS[] = {
+ &I011_V1_2_390_FPPSID_SAC,
+ &I011_V1_2_390_FPPSID_SIC,
+ NULL
+};
+static const AsterixField I011_V1_2_390_FPPSID = { FIXED, 2, 0, 0, &hf_011_V1_2_390_FPPSID, I011_V1_2_390_FPPSID_PARTS, { NULL } };
+static int hf_011_V1_2_390_CSN = -1;
+static int hf_011_V1_2_390_CSN_VALUE = -1;
+static const FieldPart I011_V1_2_390_CSN_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_011_V1_2_390_CSN_VALUE, NULL };
+static const FieldPart *I011_V1_2_390_CSN_PARTS[] = {
+ &I011_V1_2_390_CSN_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_390_CSN = { FIXED, 7, 0, 0, &hf_011_V1_2_390_CSN, I011_V1_2_390_CSN_PARTS, { NULL } };
+static int hf_011_V1_2_390_IFPSFLIGHTID = -1;
+static int hf_011_V1_2_390_IFPSFLIGHTID_TYP = -1;
+static const value_string valstr_011_V1_2_390_IFPSFLIGHTID_TYP[] = {
+ { 0, "Plan number" },
+ { 1, "Unit 1 internal flight number" },
+ { 2, "Unit 2 internal flight number" },
+ { 3, "Unit 3 internal flight number" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_390_IFPSFLIGHTID_TYP = { 2, 1.0, FIELD_PART_UINT, &hf_011_V1_2_390_IFPSFLIGHTID_TYP, NULL };
+static int hf_011_V1_2_390_IFPSFLIGHTID_NBR = -1;
+static const FieldPart I011_V1_2_390_IFPSFLIGHTID_NBR = { 27, 1.0, FIELD_PART_HEX, &hf_011_V1_2_390_IFPSFLIGHTID_NBR, NULL };
+static const FieldPart *I011_V1_2_390_IFPSFLIGHTID_PARTS[] = {
+ &I011_V1_2_390_IFPSFLIGHTID_TYP,
+ &IXXX_3bit_spare,
+ &I011_V1_2_390_IFPSFLIGHTID_NBR,
+ NULL
+};
+static const AsterixField I011_V1_2_390_IFPSFLIGHTID = { FIXED, 4, 0, 0, &hf_011_V1_2_390_IFPSFLIGHTID, I011_V1_2_390_IFPSFLIGHTID_PARTS, { NULL } };
+static int hf_011_V1_2_390_FLIGHTCAT = -1;
+static int hf_011_V1_2_390_FLIGHTCAT_GATOAT = -1;
+static const value_string valstr_011_V1_2_390_FLIGHTCAT_GATOAT[] = {
+ { 0, "Unknown" },
+ { 1, "General Air Traffic" },
+ { 2, "Operational Air Traffic" },
+ { 3, "Not applicable" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_390_FLIGHTCAT_GATOAT = { 2, 1.0, FIELD_PART_UINT, &hf_011_V1_2_390_FLIGHTCAT_GATOAT, NULL };
+static int hf_011_V1_2_390_FLIGHTCAT_FR1FR2 = -1;
+static const value_string valstr_011_V1_2_390_FLIGHTCAT_FR1FR2[] = {
+ { 0, "Instrument Flight Rules" },
+ { 1, "Visual Flight rules" },
+ { 2, "Not applicable" },
+ { 3, "Controlled Visual Flight Rules" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_390_FLIGHTCAT_FR1FR2 = { 2, 1.0, FIELD_PART_UINT, &hf_011_V1_2_390_FLIGHTCAT_FR1FR2, NULL };
+static int hf_011_V1_2_390_FLIGHTCAT_RVSM = -1;
+static const value_string valstr_011_V1_2_390_FLIGHTCAT_RVSM[] = {
+ { 0, "Unknown" },
+ { 1, "Approved" },
+ { 2, "Exempt" },
+ { 3, "Not Approved" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_390_FLIGHTCAT_RVSM = { 2, 1.0, FIELD_PART_UINT, &hf_011_V1_2_390_FLIGHTCAT_RVSM, NULL };
+static int hf_011_V1_2_390_FLIGHTCAT_HPR = -1;
+static const value_string valstr_011_V1_2_390_FLIGHTCAT_HPR[] = {
+ { 0, "Normal Priority Flight" },
+ { 1, "High Priority Flight" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_390_FLIGHTCAT_HPR = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_390_FLIGHTCAT_HPR, NULL };
+static const FieldPart *I011_V1_2_390_FLIGHTCAT_PARTS[] = {
+ &I011_V1_2_390_FLIGHTCAT_GATOAT,
+ &I011_V1_2_390_FLIGHTCAT_FR1FR2,
+ &I011_V1_2_390_FLIGHTCAT_RVSM,
+ &I011_V1_2_390_FLIGHTCAT_HPR,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I011_V1_2_390_FLIGHTCAT = { FIXED, 1, 0, 0, &hf_011_V1_2_390_FLIGHTCAT, I011_V1_2_390_FLIGHTCAT_PARTS, { NULL } };
+static int hf_011_V1_2_390_TOA = -1;
+static int hf_011_V1_2_390_TOA_VALUE = -1;
+static const FieldPart I011_V1_2_390_TOA_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_011_V1_2_390_TOA_VALUE, NULL };
+static const FieldPart *I011_V1_2_390_TOA_PARTS[] = {
+ &I011_V1_2_390_TOA_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_390_TOA = { FIXED, 4, 0, 0, &hf_011_V1_2_390_TOA, I011_V1_2_390_TOA_PARTS, { NULL } };
+static int hf_011_V1_2_390_WTC = -1;
+static int hf_011_V1_2_390_WTC_VALUE = -1;
+static const value_string valstr_011_V1_2_390_WTC_VALUE[] = {
+ { 76, "Light" },
+ { 77, "Medium" },
+ { 72, "Heavy" },
+ { 74, "Super" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_390_WTC_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_011_V1_2_390_WTC_VALUE, NULL };
+static const FieldPart *I011_V1_2_390_WTC_PARTS[] = {
+ &I011_V1_2_390_WTC_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_390_WTC = { FIXED, 1, 0, 0, &hf_011_V1_2_390_WTC, I011_V1_2_390_WTC_PARTS, { NULL } };
+static int hf_011_V1_2_390_ADEP = -1;
+static int hf_011_V1_2_390_ADEP_VALUE = -1;
+static const FieldPart I011_V1_2_390_ADEP_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_011_V1_2_390_ADEP_VALUE, NULL };
+static const FieldPart *I011_V1_2_390_ADEP_PARTS[] = {
+ &I011_V1_2_390_ADEP_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_390_ADEP = { FIXED, 4, 0, 0, &hf_011_V1_2_390_ADEP, I011_V1_2_390_ADEP_PARTS, { NULL } };
+static int hf_011_V1_2_390_ADES = -1;
+static int hf_011_V1_2_390_ADES_VALUE = -1;
+static const FieldPart I011_V1_2_390_ADES_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_011_V1_2_390_ADES_VALUE, NULL };
+static const FieldPart *I011_V1_2_390_ADES_PARTS[] = {
+ &I011_V1_2_390_ADES_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_390_ADES = { FIXED, 4, 0, 0, &hf_011_V1_2_390_ADES, I011_V1_2_390_ADES_PARTS, { NULL } };
+static int hf_011_V1_2_390_RWY = -1;
+static int hf_011_V1_2_390_RWY_VALUE = -1;
+static const FieldPart I011_V1_2_390_RWY_VALUE = { 24, 1.0, FIELD_PART_ASCII, &hf_011_V1_2_390_RWY_VALUE, NULL };
+static const FieldPart *I011_V1_2_390_RWY_PARTS[] = {
+ &I011_V1_2_390_RWY_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_390_RWY = { FIXED, 3, 0, 0, &hf_011_V1_2_390_RWY, I011_V1_2_390_RWY_PARTS, { NULL } };
+static int hf_011_V1_2_390_CFL = -1;
+static int hf_011_V1_2_390_CFL_VALUE = -1;
+static const FieldPart I011_V1_2_390_CFL_VALUE = { 16, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_2_390_CFL_VALUE, NULL };
+static const FieldPart *I011_V1_2_390_CFL_PARTS[] = {
+ &I011_V1_2_390_CFL_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_390_CFL = { FIXED, 2, 0, 0, &hf_011_V1_2_390_CFL, I011_V1_2_390_CFL_PARTS, { NULL } };
+static int hf_011_V1_2_390_CCP = -1;
+static int hf_011_V1_2_390_CCP_CENTRE = -1;
+static const FieldPart I011_V1_2_390_CCP_CENTRE = { 8, 1.0, FIELD_PART_HEX, &hf_011_V1_2_390_CCP_CENTRE, NULL };
+static int hf_011_V1_2_390_CCP_POSITION = -1;
+static const FieldPart I011_V1_2_390_CCP_POSITION = { 8, 1.0, FIELD_PART_HEX, &hf_011_V1_2_390_CCP_POSITION, NULL };
+static const FieldPart *I011_V1_2_390_CCP_PARTS[] = {
+ &I011_V1_2_390_CCP_CENTRE,
+ &I011_V1_2_390_CCP_POSITION,
+ NULL
+};
+static const AsterixField I011_V1_2_390_CCP = { FIXED, 2, 0, 0, &hf_011_V1_2_390_CCP, I011_V1_2_390_CCP_PARTS, { NULL } };
+static int hf_011_V1_2_390_TOD = -1;
+static int hf_011_V1_2_390_TOD_TYP = -1;
+static const value_string valstr_011_V1_2_390_TOD_TYP[] = {
+ { 0, "Scheduled off-block time" },
+ { 1, "Estimated off-block time" },
+ { 2, "Estimated take-off time" },
+ { 3, "Actual off-block time" },
+ { 4, "Predicted time at runway hold" },
+ { 5, "Actual time at runway hold" },
+ { 6, "Actual line-up time" },
+ { 7, "Actual take-off time" },
+ { 8, "Estimated time of arrival" },
+ { 9, "Predicted landing time" },
+ { 10, "Actual landing time" },
+ { 11, "Actual time off runway" },
+ { 12, "Predicted time to gate" },
+ { 13, "Actual on-block time" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_390_TOD_TYP = { 5, 1.0, FIELD_PART_UINT, &hf_011_V1_2_390_TOD_TYP, NULL };
+static int hf_011_V1_2_390_TOD_DAY = -1;
+static const value_string valstr_011_V1_2_390_TOD_DAY[] = {
+ { 0, "Today" },
+ { 1, "Yesterday" },
+ { 2, "Tomorrow" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_390_TOD_DAY = { 2, 1.0, FIELD_PART_UINT, &hf_011_V1_2_390_TOD_DAY, NULL };
+static int hf_011_V1_2_390_TOD_HOR = -1;
+static const FieldPart I011_V1_2_390_TOD_HOR = { 5, 1.0, FIELD_PART_UINT, &hf_011_V1_2_390_TOD_HOR, NULL };
+static int hf_011_V1_2_390_TOD_MIN = -1;
+static const FieldPart I011_V1_2_390_TOD_MIN = { 6, 1.0, FIELD_PART_UINT, &hf_011_V1_2_390_TOD_MIN, NULL };
+static int hf_011_V1_2_390_TOD_AVS = -1;
+static const value_string valstr_011_V1_2_390_TOD_AVS[] = {
+ { 0, "Seconds available" },
+ { 1, "Seconds not available" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_390_TOD_AVS = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_390_TOD_AVS, NULL };
+static int hf_011_V1_2_390_TOD_SEC = -1;
+static const FieldPart I011_V1_2_390_TOD_SEC = { 6, 1.0, FIELD_PART_UINT, &hf_011_V1_2_390_TOD_SEC, NULL };
+static const FieldPart *I011_V1_2_390_TOD_PARTS[] = {
+ &I011_V1_2_390_TOD_TYP,
+ &I011_V1_2_390_TOD_DAY,
+ &IXXX_4bit_spare,
+ &I011_V1_2_390_TOD_HOR,
+ &IXXX_2bit_spare,
+ &I011_V1_2_390_TOD_MIN,
+ &I011_V1_2_390_TOD_AVS,
+ &IXXX_1bit_spare,
+ &I011_V1_2_390_TOD_SEC,
+ NULL
+};
+static const AsterixField I011_V1_2_390_TOD = { REPETITIVE, 4, 1, 0, &hf_011_V1_2_390_TOD, I011_V1_2_390_TOD_PARTS, { NULL } };
+static int hf_011_V1_2_390_AST = -1;
+static int hf_011_V1_2_390_AST_VALUE = -1;
+static const FieldPart I011_V1_2_390_AST_VALUE = { 48, 1.0, FIELD_PART_ASCII, &hf_011_V1_2_390_AST_VALUE, NULL };
+static const FieldPart *I011_V1_2_390_AST_PARTS[] = {
+ &I011_V1_2_390_AST_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_390_AST = { FIXED, 6, 0, 0, &hf_011_V1_2_390_AST, I011_V1_2_390_AST_PARTS, { NULL } };
+static int hf_011_V1_2_390_STS = -1;
+static int hf_011_V1_2_390_STS_EMP = -1;
+static const value_string valstr_011_V1_2_390_STS_EMP[] = {
+ { 0, "Empty" },
+ { 1, "Occupied" },
+ { 2, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_390_STS_EMP = { 2, 1.0, FIELD_PART_UINT, &hf_011_V1_2_390_STS_EMP, NULL };
+static int hf_011_V1_2_390_STS_AVL = -1;
+static const value_string valstr_011_V1_2_390_STS_AVL[] = {
+ { 0, "Available" },
+ { 1, "Not available" },
+ { 2, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_390_STS_AVL = { 2, 1.0, FIELD_PART_UINT, &hf_011_V1_2_390_STS_AVL, NULL };
+static const FieldPart *I011_V1_2_390_STS_PARTS[] = {
+ &I011_V1_2_390_STS_EMP,
+ &I011_V1_2_390_STS_AVL,
+ &IXXX_4bit_spare,
+ NULL
+};
+static const AsterixField I011_V1_2_390_STS = { FIXED, 1, 0, 0, &hf_011_V1_2_390_STS, I011_V1_2_390_STS_PARTS, { NULL } };
+static const AsterixField I011_V1_2_390 = { COMPOUND, 0, 0, 0, &hf_011_V1_2_390, NULL, { &I011_V1_2_390_FPPSID, &I011_V1_2_390_CSN, &I011_V1_2_390_IFPSFLIGHTID, &I011_V1_2_390_FLIGHTCAT, &I011_V1_2_390_TOA, &I011_V1_2_390_WTC, &I011_V1_2_390_ADEP, &I011_V1_2_390_ADES, &I011_V1_2_390_RWY, &I011_V1_2_390_CFL, &I011_V1_2_390_CCP, &I011_V1_2_390_TOD, &I011_V1_2_390_AST, &I011_V1_2_390_STS, NULL } };
+static int hf_011_V1_2_430 = -1;
+static int hf_011_V1_2_430_VALUE = -1;
+static const value_string valstr_011_V1_2_430_VALUE[] = {
+ { 0, "Unknown" },
+ { 1, "On stand" },
+ { 2, "Taxiing for departure" },
+ { 3, "Taxiing for arrival" },
+ { 4, "Runway for departure" },
+ { 5, "Runway for arrival" },
+ { 6, "Hold for departure" },
+ { 7, "Hold for arrival" },
+ { 8, "Push back" },
+ { 9, "On finals" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_430_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_011_V1_2_430_VALUE, NULL };
+static const FieldPart *I011_V1_2_430_PARTS[] = {
+ &I011_V1_2_430_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_430 = { FIXED, 1, 0, 0, &hf_011_V1_2_430, I011_V1_2_430_PARTS, { NULL } };
+static int hf_011_V1_2_500 = -1;
+static int hf_011_V1_2_500_APC = -1;
+static int hf_011_V1_2_500_APC_X = -1;
+static const FieldPart I011_V1_2_500_APC_X = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_2_500_APC_X, NULL };
+static int hf_011_V1_2_500_APC_Y = -1;
+static const FieldPart I011_V1_2_500_APC_Y = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_2_500_APC_Y, NULL };
+static const FieldPart *I011_V1_2_500_APC_PARTS[] = {
+ &I011_V1_2_500_APC_X,
+ &I011_V1_2_500_APC_Y,
+ NULL
+};
+static const AsterixField I011_V1_2_500_APC = { FIXED, 2, 0, 0, &hf_011_V1_2_500_APC, I011_V1_2_500_APC_PARTS, { NULL } };
+static int hf_011_V1_2_500_APW = -1;
+static int hf_011_V1_2_500_APW_LAT = -1;
+static const FieldPart I011_V1_2_500_APW_LAT = { 16, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_011_V1_2_500_APW_LAT, NULL };
+static int hf_011_V1_2_500_APW_LON = -1;
+static const FieldPart I011_V1_2_500_APW_LON = { 16, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_011_V1_2_500_APW_LON, NULL };
+static const FieldPart *I011_V1_2_500_APW_PARTS[] = {
+ &I011_V1_2_500_APW_LAT,
+ &I011_V1_2_500_APW_LON,
+ NULL
+};
+static const AsterixField I011_V1_2_500_APW = { FIXED, 4, 0, 0, &hf_011_V1_2_500_APW, I011_V1_2_500_APW_PARTS, { NULL } };
+static int hf_011_V1_2_500_ATH = -1;
+static int hf_011_V1_2_500_ATH_VALUE = -1;
+static const FieldPart I011_V1_2_500_ATH_VALUE = { 16, 0.5, FIELD_PART_FLOAT, &hf_011_V1_2_500_ATH_VALUE, NULL };
+static const FieldPart *I011_V1_2_500_ATH_PARTS[] = {
+ &I011_V1_2_500_ATH_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_500_ATH = { FIXED, 2, 0, 0, &hf_011_V1_2_500_ATH, I011_V1_2_500_ATH_PARTS, { NULL } };
+static int hf_011_V1_2_500_AVC = -1;
+static int hf_011_V1_2_500_AVC_X = -1;
+static const FieldPart I011_V1_2_500_AVC_X = { 8, 0.1, FIELD_PART_UFLOAT, &hf_011_V1_2_500_AVC_X, NULL };
+static int hf_011_V1_2_500_AVC_Y = -1;
+static const FieldPart I011_V1_2_500_AVC_Y = { 8, 0.1, FIELD_PART_UFLOAT, &hf_011_V1_2_500_AVC_Y, NULL };
+static const FieldPart *I011_V1_2_500_AVC_PARTS[] = {
+ &I011_V1_2_500_AVC_X,
+ &I011_V1_2_500_AVC_Y,
+ NULL
+};
+static const AsterixField I011_V1_2_500_AVC = { FIXED, 2, 0, 0, &hf_011_V1_2_500_AVC, I011_V1_2_500_AVC_PARTS, { NULL } };
+static int hf_011_V1_2_500_ARC = -1;
+static int hf_011_V1_2_500_ARC_VALUE = -1;
+static const FieldPart I011_V1_2_500_ARC_VALUE = { 16, 0.1, FIELD_PART_FLOAT, &hf_011_V1_2_500_ARC_VALUE, NULL };
+static const FieldPart *I011_V1_2_500_ARC_PARTS[] = {
+ &I011_V1_2_500_ARC_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_2_500_ARC = { FIXED, 2, 0, 0, &hf_011_V1_2_500_ARC, I011_V1_2_500_ARC_PARTS, { NULL } };
+static int hf_011_V1_2_500_AAC = -1;
+static int hf_011_V1_2_500_AAC_X = -1;
+static const FieldPart I011_V1_2_500_AAC_X = { 8, 0.01, FIELD_PART_UFLOAT, &hf_011_V1_2_500_AAC_X, NULL };
+static int hf_011_V1_2_500_AAC_Y = -1;
+static const FieldPart I011_V1_2_500_AAC_Y = { 8, 0.01, FIELD_PART_UFLOAT, &hf_011_V1_2_500_AAC_Y, NULL };
+static const FieldPart *I011_V1_2_500_AAC_PARTS[] = {
+ &I011_V1_2_500_AAC_X,
+ &I011_V1_2_500_AAC_Y,
+ NULL
+};
+static const AsterixField I011_V1_2_500_AAC = { FIXED, 2, 0, 0, &hf_011_V1_2_500_AAC, I011_V1_2_500_AAC_PARTS, { NULL } };
+static const AsterixField I011_V1_2_500 = { COMPOUND, 0, 0, 0, &hf_011_V1_2_500, NULL, { &I011_V1_2_500_APC, &I011_V1_2_500_APW, &I011_V1_2_500_ATH, &I011_V1_2_500_AVC, &I011_V1_2_500_ARC, &I011_V1_2_500_AAC, NULL } };
+static int hf_011_V1_2_600 = -1;
+static int hf_011_V1_2_600_ACK = -1;
+static const value_string valstr_011_V1_2_600_ACK[] = {
+ { 0, "Alert acknowledged" },
+ { 1, "Alert not acknowledged" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_600_ACK = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_600_ACK, NULL };
+static int hf_011_V1_2_600_SVR = -1;
+static const value_string valstr_011_V1_2_600_SVR[] = {
+ { 0, "End fo alert" },
+ { 1, "Pre-alarm" },
+ { 2, "Severe alert" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_600_SVR = { 2, 1.0, FIELD_PART_UINT, &hf_011_V1_2_600_SVR, NULL };
+static int hf_011_V1_2_600_AT = -1;
+static const FieldPart I011_V1_2_600_AT = { 8, 1.0, FIELD_PART_HEX, &hf_011_V1_2_600_AT, NULL };
+static int hf_011_V1_2_600_AN = -1;
+static const FieldPart I011_V1_2_600_AN = { 8, 1.0, FIELD_PART_HEX, &hf_011_V1_2_600_AN, NULL };
+static const FieldPart *I011_V1_2_600_PARTS[] = {
+ &I011_V1_2_600_ACK,
+ &I011_V1_2_600_SVR,
+ &IXXX_5bit_spare,
+ &I011_V1_2_600_AT,
+ &I011_V1_2_600_AN,
+ NULL
+};
+static const AsterixField I011_V1_2_600 = { FIXED, 3, 0, 0, &hf_011_V1_2_600, I011_V1_2_600_PARTS, { NULL } };
+static int hf_011_V1_2_605 = -1;
+static int hf_011_V1_2_605_FTN = -1;
+static const FieldPart I011_V1_2_605_FTN = { 12, 1.0, FIELD_PART_HEX, &hf_011_V1_2_605_FTN, NULL };
+static const FieldPart *I011_V1_2_605_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I011_V1_2_605_FTN,
+ NULL
+};
+static const AsterixField I011_V1_2_605 = { REPETITIVE, 2, 1, 0, &hf_011_V1_2_605, I011_V1_2_605_PARTS, { NULL } };
+static int hf_011_V1_2_610 = -1;
+static int hf_011_V1_2_610_BKN = -1;
+static const FieldPart I011_V1_2_610_BKN = { 4, 1.0, FIELD_PART_HEX, &hf_011_V1_2_610_BKN, NULL };
+static int hf_011_V1_2_610_I1 = -1;
+static const value_string valstr_011_V1_2_610_I1[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_610_I1 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_610_I1, NULL };
+static int hf_011_V1_2_610_I2 = -1;
+static const value_string valstr_011_V1_2_610_I2[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_610_I2 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_610_I2, NULL };
+static int hf_011_V1_2_610_I3 = -1;
+static const value_string valstr_011_V1_2_610_I3[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_610_I3 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_610_I3, NULL };
+static int hf_011_V1_2_610_I4 = -1;
+static const value_string valstr_011_V1_2_610_I4[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_610_I4 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_610_I4, NULL };
+static int hf_011_V1_2_610_I5 = -1;
+static const value_string valstr_011_V1_2_610_I5[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_610_I5 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_610_I5, NULL };
+static int hf_011_V1_2_610_I6 = -1;
+static const value_string valstr_011_V1_2_610_I6[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_610_I6 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_610_I6, NULL };
+static int hf_011_V1_2_610_I7 = -1;
+static const value_string valstr_011_V1_2_610_I7[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_610_I7 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_610_I7, NULL };
+static int hf_011_V1_2_610_I8 = -1;
+static const value_string valstr_011_V1_2_610_I8[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_610_I8 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_610_I8, NULL };
+static int hf_011_V1_2_610_I9 = -1;
+static const value_string valstr_011_V1_2_610_I9[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_610_I9 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_610_I9, NULL };
+static int hf_011_V1_2_610_I10 = -1;
+static const value_string valstr_011_V1_2_610_I10[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_610_I10 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_610_I10, NULL };
+static int hf_011_V1_2_610_I11 = -1;
+static const value_string valstr_011_V1_2_610_I11[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_610_I11 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_610_I11, NULL };
+static int hf_011_V1_2_610_I12 = -1;
+static const value_string valstr_011_V1_2_610_I12[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_2_610_I12 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_2_610_I12, NULL };
+static const FieldPart *I011_V1_2_610_PARTS[] = {
+ &I011_V1_2_610_BKN,
+ &I011_V1_2_610_I1,
+ &I011_V1_2_610_I2,
+ &I011_V1_2_610_I3,
+ &I011_V1_2_610_I4,
+ &I011_V1_2_610_I5,
+ &I011_V1_2_610_I6,
+ &I011_V1_2_610_I7,
+ &I011_V1_2_610_I8,
+ &I011_V1_2_610_I9,
+ &I011_V1_2_610_I10,
+ &I011_V1_2_610_I11,
+ &I011_V1_2_610_I12,
+ NULL
+};
+static const AsterixField I011_V1_2_610 = { REPETITIVE, 2, 1, 0, &hf_011_V1_2_610, I011_V1_2_610_PARTS, { NULL } };
+static int hf_011_V1_2_SP = -1;
+static const AsterixField I011_V1_2_SP = { EXP, 0, 0, 1, &hf_011_V1_2_SP, NULL, { NULL } };
+static int hf_011_V1_2_RE = -1;
+static const AsterixField I011_V1_2_RE = { EXP, 0, 0, 1, &hf_011_V1_2_RE, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I011_V1_2_uap[] = {
+ &I011_V1_2_010,
+ &I011_V1_2_000,
+ &I011_V1_2_015,
+ &I011_V1_2_140,
+ &I011_V1_2_041,
+ &I011_V1_2_042,
+ &I011_V1_2_202,
+ &I011_V1_2_210,
+ &I011_V1_2_060,
+ &I011_V1_2_245,
+ &I011_V1_2_380,
+ &I011_V1_2_161,
+ &I011_V1_2_170,
+ &I011_V1_2_290,
+ &I011_V1_2_430,
+ &I011_V1_2_090,
+ &I011_V1_2_093,
+ &I011_V1_2_092,
+ &I011_V1_2_215,
+ &I011_V1_2_270,
+ &I011_V1_2_390,
+ &I011_V1_2_300,
+ &I011_V1_2_310,
+ &I011_V1_2_500,
+ &I011_V1_2_600,
+ &I011_V1_2_605,
+ &I011_V1_2_610,
+ &I011_V1_2_SP,
+ &I011_V1_2_RE,
+ NULL
+};
+static const AsterixField **I011_V1_2[] = {
+ I011_V1_2_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 011, edition 1.3 */
+static int hf_011_V1_3_000 = -1;
+static int hf_011_V1_3_000_VALUE = -1;
+static const value_string valstr_011_V1_3_000_VALUE[] = {
+ { 1, "Target reports, flight plan data and basic alerts" },
+ { 2, "Manual attachment of flight plan to track" },
+ { 3, "Manual detachment of flight plan to track" },
+ { 4, "Insertion of flight plan data" },
+ { 5, "Suppression of flight plan data" },
+ { 6, "Modification of flight plan data" },
+ { 7, "Holdbar status" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_011_V1_3_000_VALUE, NULL };
+static const FieldPart *I011_V1_3_000_PARTS[] = {
+ &I011_V1_3_000_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_000 = { FIXED, 1, 0, 0, &hf_011_V1_3_000, I011_V1_3_000_PARTS, { NULL } };
+static int hf_011_V1_3_010 = -1;
+static int hf_011_V1_3_010_SAC = -1;
+static const FieldPart I011_V1_3_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_011_V1_3_010_SAC, NULL };
+static int hf_011_V1_3_010_SIC = -1;
+static const FieldPart I011_V1_3_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_011_V1_3_010_SIC, NULL };
+static const FieldPart *I011_V1_3_010_PARTS[] = {
+ &I011_V1_3_010_SAC,
+ &I011_V1_3_010_SIC,
+ NULL
+};
+static const AsterixField I011_V1_3_010 = { FIXED, 2, 0, 0, &hf_011_V1_3_010, I011_V1_3_010_PARTS, { NULL } };
+static int hf_011_V1_3_015 = -1;
+static int hf_011_V1_3_015_VALUE = -1;
+static const FieldPart I011_V1_3_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_011_V1_3_015_VALUE, NULL };
+static const FieldPart *I011_V1_3_015_PARTS[] = {
+ &I011_V1_3_015_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_015 = { FIXED, 1, 0, 0, &hf_011_V1_3_015, I011_V1_3_015_PARTS, { NULL } };
+static int hf_011_V1_3_041 = -1;
+static int hf_011_V1_3_041_LAT = -1;
+static const FieldPart I011_V1_3_041_LAT = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_011_V1_3_041_LAT, NULL };
+static int hf_011_V1_3_041_LON = -1;
+static const FieldPart I011_V1_3_041_LON = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_011_V1_3_041_LON, NULL };
+static const FieldPart *I011_V1_3_041_PARTS[] = {
+ &I011_V1_3_041_LAT,
+ &I011_V1_3_041_LON,
+ NULL
+};
+static const AsterixField I011_V1_3_041 = { FIXED, 8, 0, 0, &hf_011_V1_3_041, I011_V1_3_041_PARTS, { NULL } };
+static int hf_011_V1_3_042 = -1;
+static int hf_011_V1_3_042_X = -1;
+static const FieldPart I011_V1_3_042_X = { 16, 1.0, FIELD_PART_FLOAT, &hf_011_V1_3_042_X, NULL };
+static int hf_011_V1_3_042_Y = -1;
+static const FieldPart I011_V1_3_042_Y = { 16, 1.0, FIELD_PART_FLOAT, &hf_011_V1_3_042_Y, NULL };
+static const FieldPart *I011_V1_3_042_PARTS[] = {
+ &I011_V1_3_042_X,
+ &I011_V1_3_042_Y,
+ NULL
+};
+static const AsterixField I011_V1_3_042 = { FIXED, 4, 0, 0, &hf_011_V1_3_042, I011_V1_3_042_PARTS, { NULL } };
+static int hf_011_V1_3_060 = -1;
+static int hf_011_V1_3_060_MOD3A = -1;
+static const FieldPart I011_V1_3_060_MOD3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_011_V1_3_060_MOD3A, NULL };
+static const FieldPart *I011_V1_3_060_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I011_V1_3_060_MOD3A,
+ NULL
+};
+static const AsterixField I011_V1_3_060 = { FIXED, 2, 0, 0, &hf_011_V1_3_060, I011_V1_3_060_PARTS, { NULL } };
+static int hf_011_V1_3_090 = -1;
+static int hf_011_V1_3_090_VALUE = -1;
+static const FieldPart I011_V1_3_090_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_011_V1_3_090_VALUE, NULL };
+static const FieldPart *I011_V1_3_090_PARTS[] = {
+ &I011_V1_3_090_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_090 = { FIXED, 2, 0, 0, &hf_011_V1_3_090, I011_V1_3_090_PARTS, { NULL } };
+static int hf_011_V1_3_092 = -1;
+static int hf_011_V1_3_092_VALUE = -1;
+static const FieldPart I011_V1_3_092_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_011_V1_3_092_VALUE, NULL };
+static const FieldPart *I011_V1_3_092_PARTS[] = {
+ &I011_V1_3_092_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_092 = { FIXED, 2, 0, 0, &hf_011_V1_3_092, I011_V1_3_092_PARTS, { NULL } };
+static int hf_011_V1_3_093 = -1;
+static int hf_011_V1_3_093_QNH = -1;
+static const value_string valstr_011_V1_3_093_QNH[] = {
+ { 0, "No QNH Correction Applied" },
+ { 1, "QNH Correction Applied" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_093_QNH = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_093_QNH, NULL };
+static int hf_011_V1_3_093_CTBA = -1;
+static const FieldPart I011_V1_3_093_CTBA = { 15, 0.25, FIELD_PART_FLOAT, &hf_011_V1_3_093_CTBA, NULL };
+static const FieldPart *I011_V1_3_093_PARTS[] = {
+ &I011_V1_3_093_QNH,
+ &I011_V1_3_093_CTBA,
+ NULL
+};
+static const AsterixField I011_V1_3_093 = { FIXED, 2, 0, 0, &hf_011_V1_3_093, I011_V1_3_093_PARTS, { NULL } };
+static int hf_011_V1_3_140 = -1;
+static int hf_011_V1_3_140_VALUE = -1;
+static const FieldPart I011_V1_3_140_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_011_V1_3_140_VALUE, NULL };
+static const FieldPart *I011_V1_3_140_PARTS[] = {
+ &I011_V1_3_140_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_140 = { FIXED, 3, 0, 0, &hf_011_V1_3_140, I011_V1_3_140_PARTS, { NULL } };
+static int hf_011_V1_3_161 = -1;
+static int hf_011_V1_3_161_FTN = -1;
+static const FieldPart I011_V1_3_161_FTN = { 15, 1.0, FIELD_PART_HEX, &hf_011_V1_3_161_FTN, NULL };
+static const FieldPart *I011_V1_3_161_PARTS[] = {
+ &IXXX_1bit_spare,
+ &I011_V1_3_161_FTN,
+ NULL
+};
+static const AsterixField I011_V1_3_161 = { FIXED, 2, 0, 0, &hf_011_V1_3_161, I011_V1_3_161_PARTS, { NULL } };
+static int hf_011_V1_3_170 = -1;
+static int hf_011_V1_3_170_MON = -1;
+static const value_string valstr_011_V1_3_170_MON[] = {
+ { 0, "Multisensor Track" },
+ { 1, "Monosensor Track" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_170_MON = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_170_MON, NULL };
+static int hf_011_V1_3_170_GBS = -1;
+static const value_string valstr_011_V1_3_170_GBS[] = {
+ { 0, "Transponder Ground bit not set or unknown" },
+ { 1, "Transponder Ground bit set" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_170_GBS = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_170_GBS, NULL };
+static int hf_011_V1_3_170_MRH = -1;
+static const value_string valstr_011_V1_3_170_MRH[] = {
+ { 0, "Barometric altitude (Mode C) more reliable" },
+ { 1, "Geometric altitude more reliable" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_170_MRH = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_170_MRH, NULL };
+static int hf_011_V1_3_170_SRC = -1;
+static const value_string valstr_011_V1_3_170_SRC[] = {
+ { 0, "No source" },
+ { 1, "GPS" },
+ { 2, "3d radar" },
+ { 3, "Triangulation" },
+ { 4, "Height from coverage" },
+ { 5, "Speed look-up table" },
+ { 6, "Default height" },
+ { 7, "Multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_170_SRC = { 3, 1.0, FIELD_PART_UINT, &hf_011_V1_3_170_SRC, NULL };
+static int hf_011_V1_3_170_CNF = -1;
+static const value_string valstr_011_V1_3_170_CNF[] = {
+ { 0, "Confirmed track" },
+ { 1, "Tentative track" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_170_CNF = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_170_CNF, NULL };
+static int hf_011_V1_3_170_SIM = -1;
+static const value_string valstr_011_V1_3_170_SIM[] = {
+ { 0, "Actual Track" },
+ { 1, "Simulated track" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_170_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_170_SIM, NULL };
+static int hf_011_V1_3_170_TSE = -1;
+static const value_string valstr_011_V1_3_170_TSE[] = {
+ { 0, "Default value" },
+ { 1, "Track service end (i.e. last message transmitted to the user for the track)" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_170_TSE = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_170_TSE, NULL };
+static int hf_011_V1_3_170_TSB = -1;
+static const value_string valstr_011_V1_3_170_TSB[] = {
+ { 0, "Default value" },
+ { 1, "Track service begin (i.e. first message transmitted to the user for the track)" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_170_TSB = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_170_TSB, NULL };
+static int hf_011_V1_3_170_FRIFOE = -1;
+static const value_string valstr_011_V1_3_170_FRIFOE[] = {
+ { 0, "No Mode 4 interrogationt" },
+ { 1, "Friendly target" },
+ { 2, "Unknown target" },
+ { 3, "No reply" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_170_FRIFOE = { 2, 1.0, FIELD_PART_UINT, &hf_011_V1_3_170_FRIFOE, NULL };
+static int hf_011_V1_3_170_ME = -1;
+static const value_string valstr_011_V1_3_170_ME[] = {
+ { 0, "Default value" },
+ { 1, "Military Emergency present in the last report received from a sensor capable of decoding this data" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_170_ME = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_170_ME, NULL };
+static int hf_011_V1_3_170_MI = -1;
+static const value_string valstr_011_V1_3_170_MI[] = {
+ { 0, "End of Data Item" },
+ { 1, "Military Identification present in the last report received from a sensor capable of decoding this data" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_170_MI = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_170_MI, NULL };
+static int hf_011_V1_3_170_AMA = -1;
+static const value_string valstr_011_V1_3_170_AMA[] = {
+ { 0, "Track not resulting from amalgamation process" },
+ { 1, "Track resulting from amalgamation process" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_170_AMA = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_170_AMA, NULL };
+static int hf_011_V1_3_170_SPI = -1;
+static const value_string valstr_011_V1_3_170_SPI[] = {
+ { 0, "Default value" },
+ { 1, "SPI present in the last report received from a sensor capable of decoding this data" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_170_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_170_SPI, NULL };
+static int hf_011_V1_3_170_CST = -1;
+static const value_string valstr_011_V1_3_170_CST[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received track update is higher than system dependent threshold (coasting)" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_170_CST = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_170_CST, NULL };
+static int hf_011_V1_3_170_FPC = -1;
+static const value_string valstr_011_V1_3_170_FPC[] = {
+ { 0, "Not flight-plan correlated" },
+ { 1, "Flight plan correlated" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_170_FPC = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_170_FPC, NULL };
+static int hf_011_V1_3_170_AFF = -1;
+static const value_string valstr_011_V1_3_170_AFF[] = {
+ { 0, "Default value" },
+ { 1, "ADS-B data inconsistent with other surveillance information" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_170_AFF = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_170_AFF, NULL };
+static int hf_011_V1_3_170_PSR = -1;
+static const value_string valstr_011_V1_3_170_PSR[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received PSR track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_170_PSR = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_170_PSR, NULL };
+static int hf_011_V1_3_170_SSR = -1;
+static const value_string valstr_011_V1_3_170_SSR[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received SSR track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_170_SSR = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_170_SSR, NULL };
+static int hf_011_V1_3_170_MDS = -1;
+static const value_string valstr_011_V1_3_170_MDS[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received Mode S track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_170_MDS = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_170_MDS, NULL };
+static int hf_011_V1_3_170_ADS = -1;
+static const value_string valstr_011_V1_3_170_ADS[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received ADS track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_170_ADS = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_170_ADS, NULL };
+static int hf_011_V1_3_170_SUC = -1;
+static const value_string valstr_011_V1_3_170_SUC[] = {
+ { 0, "Default value" },
+ { 1, "Special Used Code (Mode A codes to be defined in the system to mark a track with special interest)" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_170_SUC = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_170_SUC, NULL };
+static int hf_011_V1_3_170_AAC = -1;
+static const value_string valstr_011_V1_3_170_AAC[] = {
+ { 0, "Default value" },
+ { 1, "Assigned Mode A Code Conflict (same individual Mode A Code assigned to another track)" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_170_AAC = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_170_AAC, NULL };
+static const FieldPart *I011_V1_3_170_PARTS[] = {
+ &I011_V1_3_170_MON,
+ &I011_V1_3_170_GBS,
+ &I011_V1_3_170_MRH,
+ &I011_V1_3_170_SRC,
+ &I011_V1_3_170_CNF,
+ &IXXX_FX,
+ &I011_V1_3_170_SIM,
+ &I011_V1_3_170_TSE,
+ &I011_V1_3_170_TSB,
+ &I011_V1_3_170_FRIFOE,
+ &I011_V1_3_170_ME,
+ &I011_V1_3_170_MI,
+ &IXXX_FX,
+ &I011_V1_3_170_AMA,
+ &I011_V1_3_170_SPI,
+ &I011_V1_3_170_CST,
+ &I011_V1_3_170_FPC,
+ &I011_V1_3_170_AFF,
+ &IXXX_2bit_spare,
+ &IXXX_FX,
+ &IXXX_1bit_spare,
+ &I011_V1_3_170_PSR,
+ &I011_V1_3_170_SSR,
+ &I011_V1_3_170_MDS,
+ &I011_V1_3_170_ADS,
+ &I011_V1_3_170_SUC,
+ &I011_V1_3_170_AAC,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I011_V1_3_170 = { FX, 1, 0, 0, &hf_011_V1_3_170, I011_V1_3_170_PARTS, { NULL } };
+static int hf_011_V1_3_202 = -1;
+static int hf_011_V1_3_202_VX = -1;
+static const FieldPart I011_V1_3_202_VX = { 16, 0.25, FIELD_PART_FLOAT, &hf_011_V1_3_202_VX, NULL };
+static int hf_011_V1_3_202_VY = -1;
+static const FieldPart I011_V1_3_202_VY = { 16, 0.25, FIELD_PART_FLOAT, &hf_011_V1_3_202_VY, NULL };
+static const FieldPart *I011_V1_3_202_PARTS[] = {
+ &I011_V1_3_202_VX,
+ &I011_V1_3_202_VY,
+ NULL
+};
+static const AsterixField I011_V1_3_202 = { FIXED, 4, 0, 0, &hf_011_V1_3_202, I011_V1_3_202_PARTS, { NULL } };
+static int hf_011_V1_3_210 = -1;
+static int hf_011_V1_3_210_AX = -1;
+static const FieldPart I011_V1_3_210_AX = { 8, 0.25, FIELD_PART_FLOAT, &hf_011_V1_3_210_AX, NULL };
+static int hf_011_V1_3_210_AY = -1;
+static const FieldPart I011_V1_3_210_AY = { 8, 0.25, FIELD_PART_FLOAT, &hf_011_V1_3_210_AY, NULL };
+static const FieldPart *I011_V1_3_210_PARTS[] = {
+ &I011_V1_3_210_AX,
+ &I011_V1_3_210_AY,
+ NULL
+};
+static const AsterixField I011_V1_3_210 = { FIXED, 2, 0, 0, &hf_011_V1_3_210, I011_V1_3_210_PARTS, { NULL } };
+static int hf_011_V1_3_215 = -1;
+static int hf_011_V1_3_215_VALUE = -1;
+static const FieldPart I011_V1_3_215_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_011_V1_3_215_VALUE, NULL };
+static const FieldPart *I011_V1_3_215_PARTS[] = {
+ &I011_V1_3_215_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_215 = { FIXED, 2, 0, 0, &hf_011_V1_3_215, I011_V1_3_215_PARTS, { NULL } };
+static int hf_011_V1_3_245 = -1;
+static int hf_011_V1_3_245_STI = -1;
+static const value_string valstr_011_V1_3_245_STI[] = {
+ { 0, "Callsign or registration downlinked from transponder" },
+ { 1, "Callsign not downlinked from transponder" },
+ { 2, "Registration not downlinked from transponder" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_245_STI = { 2, 1.0, FIELD_PART_UINT, &hf_011_V1_3_245_STI, NULL };
+static int hf_011_V1_3_245_TID = -1;
+static const FieldPart I011_V1_3_245_TID = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_011_V1_3_245_TID, NULL };
+static const FieldPart *I011_V1_3_245_PARTS[] = {
+ &I011_V1_3_245_STI,
+ &IXXX_6bit_spare,
+ &I011_V1_3_245_TID,
+ NULL
+};
+static const AsterixField I011_V1_3_245 = { FIXED, 7, 0, 0, &hf_011_V1_3_245, I011_V1_3_245_PARTS, { NULL } };
+static int hf_011_V1_3_270 = -1;
+static int hf_011_V1_3_270_LENGTH = -1;
+static const FieldPart I011_V1_3_270_LENGTH = { 7, 1.0, FIELD_PART_UFLOAT, &hf_011_V1_3_270_LENGTH, NULL };
+static int hf_011_V1_3_270_ORIENTATION = -1;
+static const FieldPart I011_V1_3_270_ORIENTATION = { 7, 2.8125, FIELD_PART_UFLOAT, &hf_011_V1_3_270_ORIENTATION, NULL };
+static int hf_011_V1_3_270_WIDTH = -1;
+static const FieldPart I011_V1_3_270_WIDTH = { 7, 1.0, FIELD_PART_UFLOAT, &hf_011_V1_3_270_WIDTH, NULL };
+static const FieldPart *I011_V1_3_270_PARTS[] = {
+ &I011_V1_3_270_LENGTH,
+ &IXXX_FX,
+ &I011_V1_3_270_ORIENTATION,
+ &IXXX_FX,
+ &I011_V1_3_270_WIDTH,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I011_V1_3_270 = { FX, 1, 0, 0, &hf_011_V1_3_270, I011_V1_3_270_PARTS, { NULL } };
+static int hf_011_V1_3_290 = -1;
+static int hf_011_V1_3_290_PSR = -1;
+static int hf_011_V1_3_290_PSR_VALUE = -1;
+static const FieldPart I011_V1_3_290_PSR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_3_290_PSR_VALUE, NULL };
+static const FieldPart *I011_V1_3_290_PSR_PARTS[] = {
+ &I011_V1_3_290_PSR_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_290_PSR = { FIXED, 1, 0, 0, &hf_011_V1_3_290_PSR, I011_V1_3_290_PSR_PARTS, { NULL } };
+static int hf_011_V1_3_290_SSR = -1;
+static int hf_011_V1_3_290_SSR_VALUE = -1;
+static const FieldPart I011_V1_3_290_SSR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_3_290_SSR_VALUE, NULL };
+static const FieldPart *I011_V1_3_290_SSR_PARTS[] = {
+ &I011_V1_3_290_SSR_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_290_SSR = { FIXED, 1, 0, 0, &hf_011_V1_3_290_SSR, I011_V1_3_290_SSR_PARTS, { NULL } };
+static int hf_011_V1_3_290_MDA = -1;
+static int hf_011_V1_3_290_MDA_VALUE = -1;
+static const FieldPart I011_V1_3_290_MDA_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_3_290_MDA_VALUE, NULL };
+static const FieldPart *I011_V1_3_290_MDA_PARTS[] = {
+ &I011_V1_3_290_MDA_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_290_MDA = { FIXED, 1, 0, 0, &hf_011_V1_3_290_MDA, I011_V1_3_290_MDA_PARTS, { NULL } };
+static int hf_011_V1_3_290_MFL = -1;
+static int hf_011_V1_3_290_MFL_VALUE = -1;
+static const FieldPart I011_V1_3_290_MFL_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_3_290_MFL_VALUE, NULL };
+static const FieldPart *I011_V1_3_290_MFL_PARTS[] = {
+ &I011_V1_3_290_MFL_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_290_MFL = { FIXED, 1, 0, 0, &hf_011_V1_3_290_MFL, I011_V1_3_290_MFL_PARTS, { NULL } };
+static int hf_011_V1_3_290_MDS = -1;
+static int hf_011_V1_3_290_MDS_VALUE = -1;
+static const FieldPart I011_V1_3_290_MDS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_3_290_MDS_VALUE, NULL };
+static const FieldPart *I011_V1_3_290_MDS_PARTS[] = {
+ &I011_V1_3_290_MDS_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_290_MDS = { FIXED, 1, 0, 0, &hf_011_V1_3_290_MDS, I011_V1_3_290_MDS_PARTS, { NULL } };
+static int hf_011_V1_3_290_ADS = -1;
+static int hf_011_V1_3_290_ADS_VALUE = -1;
+static const FieldPart I011_V1_3_290_ADS_VALUE = { 16, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_3_290_ADS_VALUE, NULL };
+static const FieldPart *I011_V1_3_290_ADS_PARTS[] = {
+ &I011_V1_3_290_ADS_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_290_ADS = { FIXED, 2, 0, 0, &hf_011_V1_3_290_ADS, I011_V1_3_290_ADS_PARTS, { NULL } };
+static int hf_011_V1_3_290_ADB = -1;
+static int hf_011_V1_3_290_ADB_VALUE = -1;
+static const FieldPart I011_V1_3_290_ADB_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_3_290_ADB_VALUE, NULL };
+static const FieldPart *I011_V1_3_290_ADB_PARTS[] = {
+ &I011_V1_3_290_ADB_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_290_ADB = { FIXED, 1, 0, 0, &hf_011_V1_3_290_ADB, I011_V1_3_290_ADB_PARTS, { NULL } };
+static int hf_011_V1_3_290_MD1 = -1;
+static int hf_011_V1_3_290_MD1_VALUE = -1;
+static const FieldPart I011_V1_3_290_MD1_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_3_290_MD1_VALUE, NULL };
+static const FieldPart *I011_V1_3_290_MD1_PARTS[] = {
+ &I011_V1_3_290_MD1_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_290_MD1 = { FIXED, 1, 0, 0, &hf_011_V1_3_290_MD1, I011_V1_3_290_MD1_PARTS, { NULL } };
+static int hf_011_V1_3_290_MD2 = -1;
+static int hf_011_V1_3_290_MD2_VALUE = -1;
+static const FieldPart I011_V1_3_290_MD2_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_3_290_MD2_VALUE, NULL };
+static const FieldPart *I011_V1_3_290_MD2_PARTS[] = {
+ &I011_V1_3_290_MD2_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_290_MD2 = { FIXED, 1, 0, 0, &hf_011_V1_3_290_MD2, I011_V1_3_290_MD2_PARTS, { NULL } };
+static int hf_011_V1_3_290_LOP = -1;
+static int hf_011_V1_3_290_LOP_VALUE = -1;
+static const FieldPart I011_V1_3_290_LOP_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_3_290_LOP_VALUE, NULL };
+static const FieldPart *I011_V1_3_290_LOP_PARTS[] = {
+ &I011_V1_3_290_LOP_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_290_LOP = { FIXED, 1, 0, 0, &hf_011_V1_3_290_LOP, I011_V1_3_290_LOP_PARTS, { NULL } };
+static int hf_011_V1_3_290_TRK = -1;
+static int hf_011_V1_3_290_TRK_VALUE = -1;
+static const FieldPart I011_V1_3_290_TRK_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_3_290_TRK_VALUE, NULL };
+static const FieldPart *I011_V1_3_290_TRK_PARTS[] = {
+ &I011_V1_3_290_TRK_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_290_TRK = { FIXED, 1, 0, 0, &hf_011_V1_3_290_TRK, I011_V1_3_290_TRK_PARTS, { NULL } };
+static int hf_011_V1_3_290_MUL = -1;
+static int hf_011_V1_3_290_MUL_VALUE = -1;
+static const FieldPart I011_V1_3_290_MUL_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_3_290_MUL_VALUE, NULL };
+static const FieldPart *I011_V1_3_290_MUL_PARTS[] = {
+ &I011_V1_3_290_MUL_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_290_MUL = { FIXED, 1, 0, 0, &hf_011_V1_3_290_MUL, I011_V1_3_290_MUL_PARTS, { NULL } };
+static const AsterixField I011_V1_3_290 = { COMPOUND, 0, 0, 0, &hf_011_V1_3_290, NULL, { &I011_V1_3_290_PSR, &I011_V1_3_290_SSR, &I011_V1_3_290_MDA, &I011_V1_3_290_MFL, &I011_V1_3_290_MDS, &I011_V1_3_290_ADS, &I011_V1_3_290_ADB, &I011_V1_3_290_MD1, &I011_V1_3_290_MD2, &I011_V1_3_290_LOP, &I011_V1_3_290_TRK, &I011_V1_3_290_MUL, NULL } };
+static int hf_011_V1_3_300 = -1;
+static int hf_011_V1_3_300_VALUE = -1;
+static const value_string valstr_011_V1_3_300_VALUE[] = {
+ { 0, "Flyco (follow me)" },
+ { 1, "ATC equipment maintenance" },
+ { 2, "Airport maintenance" },
+ { 3, "Fire" },
+ { 4, "Bird scarer" },
+ { 5, "Snow plough" },
+ { 6, "Runway sweeper" },
+ { 7, "Emergency" },
+ { 8, "Police" },
+ { 9, "Bus" },
+ { 10, "Tug (push/tow)" },
+ { 11, "Grass cutter" },
+ { 12, "Fuel" },
+ { 13, "Baggage" },
+ { 14, "Catering" },
+ { 15, "Aircraft maintenance" },
+ { 16, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_300_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_011_V1_3_300_VALUE, NULL };
+static const FieldPart *I011_V1_3_300_PARTS[] = {
+ &I011_V1_3_300_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_300 = { FIXED, 1, 0, 0, &hf_011_V1_3_300, I011_V1_3_300_PARTS, { NULL } };
+static int hf_011_V1_3_310 = -1;
+static int hf_011_V1_3_310_TRB = -1;
+static const value_string valstr_011_V1_3_310_TRB[] = {
+ { 0, "Default" },
+ { 1, "In Trouble" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_310_TRB = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_310_TRB, NULL };
+static int hf_011_V1_3_310_MSG = -1;
+static const value_string valstr_011_V1_3_310_MSG[] = {
+ { 1, "Towing aircraft" },
+ { 2, "FOLLOW-ME operation" },
+ { 3, "Runway check" },
+ { 4, "Emergency operation (fire, medical...)" },
+ { 5, "Work in progress (maintenance, birds scarer, sweepers...)" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_310_MSG = { 7, 1.0, FIELD_PART_UINT, &hf_011_V1_3_310_MSG, NULL };
+static const FieldPart *I011_V1_3_310_PARTS[] = {
+ &I011_V1_3_310_TRB,
+ &I011_V1_3_310_MSG,
+ NULL
+};
+static const AsterixField I011_V1_3_310 = { FIXED, 1, 0, 0, &hf_011_V1_3_310, I011_V1_3_310_PARTS, { NULL } };
+static int hf_011_V1_3_380 = -1;
+static int hf_011_V1_3_380_MB = -1;
+static int hf_011_V1_3_380_MB_VALUE = -1;
+static const FieldPart I011_V1_3_380_MB_VALUE = { 64, 1.0, FIELD_PART_HEX, &hf_011_V1_3_380_MB_VALUE, NULL };
+static const FieldPart *I011_V1_3_380_MB_PARTS[] = {
+ &I011_V1_3_380_MB_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_380_MB = { REPETITIVE, 8, 1, 0, &hf_011_V1_3_380_MB, I011_V1_3_380_MB_PARTS, { NULL } };
+static int hf_011_V1_3_380_ADR = -1;
+static int hf_011_V1_3_380_ADR_VALUE = -1;
+static const FieldPart I011_V1_3_380_ADR_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_011_V1_3_380_ADR_VALUE, NULL };
+static const FieldPart *I011_V1_3_380_ADR_PARTS[] = {
+ &I011_V1_3_380_ADR_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_380_ADR = { FIXED, 3, 0, 0, &hf_011_V1_3_380_ADR, I011_V1_3_380_ADR_PARTS, { NULL } };
+static int hf_011_V1_3_380_COMACAS = -1;
+static int hf_011_V1_3_380_COMACAS_COM = -1;
+static const value_string valstr_011_V1_3_380_COMACAS_COM[] = {
+ { 0, "No communications capability (surveillance only)" },
+ { 1, "Comm. A and Comm. B capability" },
+ { 2, "Comm. A, Comm. B and Uplink ELM" },
+ { 3, "Comm. A, Comm. B, Uplink ELM and Downlink ELM" },
+ { 4, "Level 5 Transponder capability" },
+ { 5, "Not assigned" },
+ { 6, "Not assigned" },
+ { 7, "Not assigned" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_380_COMACAS_COM = { 3, 1.0, FIELD_PART_UINT, &hf_011_V1_3_380_COMACAS_COM, NULL };
+static int hf_011_V1_3_380_COMACAS_STAT = -1;
+static const value_string valstr_011_V1_3_380_COMACAS_STAT[] = {
+ { 0, "No alert, no SPI, aircraft airborne" },
+ { 1, "No alert, no SPI, aircraft on ground" },
+ { 2, "Alert, no SPI, aircraft airborne" },
+ { 3, "Alert, no SPI, aircraft on ground" },
+ { 4, "Alert, SPI, aircraft airborne or on ground" },
+ { 5, "No alert, SPI, aircraft airborne or on ground" },
+ { 6, "General Emergency" },
+ { 7, "Lifeguard / medical" },
+ { 8, "Minimum fuel" },
+ { 9, "No communications" },
+ { 10, "Unlawful interference" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_380_COMACAS_STAT = { 4, 1.0, FIELD_PART_UINT, &hf_011_V1_3_380_COMACAS_STAT, NULL };
+static int hf_011_V1_3_380_COMACAS_SSC = -1;
+static const value_string valstr_011_V1_3_380_COMACAS_SSC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_380_COMACAS_SSC = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_380_COMACAS_SSC, NULL };
+static int hf_011_V1_3_380_COMACAS_ARC = -1;
+static const value_string valstr_011_V1_3_380_COMACAS_ARC[] = {
+ { 0, "100 ft resolution" },
+ { 1, "25 ft resolution" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_380_COMACAS_ARC = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_380_COMACAS_ARC, NULL };
+static int hf_011_V1_3_380_COMACAS_AIC = -1;
+static const value_string valstr_011_V1_3_380_COMACAS_AIC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_380_COMACAS_AIC = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_380_COMACAS_AIC, NULL };
+static int hf_011_V1_3_380_COMACAS_B1A = -1;
+static const FieldPart I011_V1_3_380_COMACAS_B1A = { 1, 1.0, FIELD_PART_HEX, &hf_011_V1_3_380_COMACAS_B1A, NULL };
+static int hf_011_V1_3_380_COMACAS_B1B = -1;
+static const FieldPart I011_V1_3_380_COMACAS_B1B = { 4, 1.0, FIELD_PART_HEX, &hf_011_V1_3_380_COMACAS_B1B, NULL };
+static int hf_011_V1_3_380_COMACAS_AC = -1;
+static const value_string valstr_011_V1_3_380_COMACAS_AC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_380_COMACAS_AC = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_380_COMACAS_AC, NULL };
+static int hf_011_V1_3_380_COMACAS_MN = -1;
+static const value_string valstr_011_V1_3_380_COMACAS_MN[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_380_COMACAS_MN = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_380_COMACAS_MN, NULL };
+static int hf_011_V1_3_380_COMACAS_DC = -1;
+static const value_string valstr_011_V1_3_380_COMACAS_DC[] = {
+ { 0, "Yes" },
+ { 1, "No" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_380_COMACAS_DC = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_380_COMACAS_DC, NULL };
+static const FieldPart *I011_V1_3_380_COMACAS_PARTS[] = {
+ &I011_V1_3_380_COMACAS_COM,
+ &I011_V1_3_380_COMACAS_STAT,
+ &IXXX_1bit_spare,
+ &I011_V1_3_380_COMACAS_SSC,
+ &I011_V1_3_380_COMACAS_ARC,
+ &I011_V1_3_380_COMACAS_AIC,
+ &I011_V1_3_380_COMACAS_B1A,
+ &I011_V1_3_380_COMACAS_B1B,
+ &I011_V1_3_380_COMACAS_AC,
+ &I011_V1_3_380_COMACAS_MN,
+ &I011_V1_3_380_COMACAS_DC,
+ &IXXX_5bit_spare,
+ NULL
+};
+static const AsterixField I011_V1_3_380_COMACAS = { FIXED, 3, 0, 0, &hf_011_V1_3_380_COMACAS, I011_V1_3_380_COMACAS_PARTS, { NULL } };
+static int hf_011_V1_3_380_ACT = -1;
+static int hf_011_V1_3_380_ACT_VALUE = -1;
+static const FieldPart I011_V1_3_380_ACT_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_011_V1_3_380_ACT_VALUE, NULL };
+static const FieldPart *I011_V1_3_380_ACT_PARTS[] = {
+ &I011_V1_3_380_ACT_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_380_ACT = { FIXED, 4, 0, 0, &hf_011_V1_3_380_ACT, I011_V1_3_380_ACT_PARTS, { NULL } };
+static int hf_011_V1_3_380_ECAT = -1;
+static int hf_011_V1_3_380_ECAT_VALUE = -1;
+static const value_string valstr_011_V1_3_380_ECAT_VALUE[] = {
+ { 1, "Light aircraft <= 7000 kg" },
+ { 2, "Reserved" },
+ { 3, "7000 kg &lt; medium aircraft &lt; 136000 kg" },
+ { 4, "Reserved" },
+ { 5, "136000 kg <= heavy aircraft" },
+ { 6, "Highly manoeuvrable (5g acceleration capability) and high speed (&gt;400 knots cruise)" },
+ { 7, "Reserved" },
+ { 8, "Reserved" },
+ { 9, "Reserved" },
+ { 10, "Rotocraft" },
+ { 11, "Glider / sailplane" },
+ { 12, "Lighter-than-air" },
+ { 13, "Unmanned aerial vehicle" },
+ { 14, "Space / transatmospheric vehicle" },
+ { 15, "Ultralight / handglider / paraglider" },
+ { 16, "Parachutist / skydiver" },
+ { 17, "Reserved" },
+ { 18, "Reserved" },
+ { 19, "Reserved" },
+ { 20, "Surface emergency vehicle" },
+ { 21, "Surface service vehicle" },
+ { 22, "Fixed ground or tethered obstruction" },
+ { 23, "Reserved" },
+ { 24, "Reserved" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_380_ECAT_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_011_V1_3_380_ECAT_VALUE, NULL };
+static const FieldPart *I011_V1_3_380_ECAT_PARTS[] = {
+ &I011_V1_3_380_ECAT_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_380_ECAT = { FIXED, 1, 0, 0, &hf_011_V1_3_380_ECAT, I011_V1_3_380_ECAT_PARTS, { NULL } };
+static int hf_011_V1_3_380_AVTECH = -1;
+static int hf_011_V1_3_380_AVTECH_VDL = -1;
+static const value_string valstr_011_V1_3_380_AVTECH_VDL[] = {
+ { 0, "VDL Mode 4 available" },
+ { 1, "VDL Mode 4 not available" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_380_AVTECH_VDL = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_380_AVTECH_VDL, NULL };
+static int hf_011_V1_3_380_AVTECH_MDS = -1;
+static const value_string valstr_011_V1_3_380_AVTECH_MDS[] = {
+ { 0, "Mode S available" },
+ { 1, "Mode S not available" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_380_AVTECH_MDS = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_380_AVTECH_MDS, NULL };
+static int hf_011_V1_3_380_AVTECH_UAT = -1;
+static const value_string valstr_011_V1_3_380_AVTECH_UAT[] = {
+ { 0, "UAT available" },
+ { 1, "UAT not available" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_380_AVTECH_UAT = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_380_AVTECH_UAT, NULL };
+static const FieldPart *I011_V1_3_380_AVTECH_PARTS[] = {
+ &I011_V1_3_380_AVTECH_VDL,
+ &I011_V1_3_380_AVTECH_MDS,
+ &I011_V1_3_380_AVTECH_UAT,
+ &IXXX_5bit_spare,
+ NULL
+};
+static const AsterixField I011_V1_3_380_AVTECH = { FIXED, 1, 0, 0, &hf_011_V1_3_380_AVTECH, I011_V1_3_380_AVTECH_PARTS, { NULL } };
+static const AsterixField I011_V1_3_380 = { COMPOUND, 0, 0, 0, &hf_011_V1_3_380, NULL, { &I011_V1_3_380_MB, &I011_V1_3_380_ADR, &IX_SPARE, &I011_V1_3_380_COMACAS, &IX_SPARE, &IX_SPARE, &IX_SPARE, &I011_V1_3_380_ACT, &I011_V1_3_380_ECAT, &IX_SPARE, &I011_V1_3_380_AVTECH, NULL } };
+static int hf_011_V1_3_390 = -1;
+static int hf_011_V1_3_390_FPPSID = -1;
+static int hf_011_V1_3_390_FPPSID_SAC = -1;
+static const FieldPart I011_V1_3_390_FPPSID_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_011_V1_3_390_FPPSID_SAC, NULL };
+static int hf_011_V1_3_390_FPPSID_SIC = -1;
+static const FieldPart I011_V1_3_390_FPPSID_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_011_V1_3_390_FPPSID_SIC, NULL };
+static const FieldPart *I011_V1_3_390_FPPSID_PARTS[] = {
+ &I011_V1_3_390_FPPSID_SAC,
+ &I011_V1_3_390_FPPSID_SIC,
+ NULL
+};
+static const AsterixField I011_V1_3_390_FPPSID = { FIXED, 2, 0, 0, &hf_011_V1_3_390_FPPSID, I011_V1_3_390_FPPSID_PARTS, { NULL } };
+static int hf_011_V1_3_390_CSN = -1;
+static int hf_011_V1_3_390_CSN_VALUE = -1;
+static const FieldPart I011_V1_3_390_CSN_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_011_V1_3_390_CSN_VALUE, NULL };
+static const FieldPart *I011_V1_3_390_CSN_PARTS[] = {
+ &I011_V1_3_390_CSN_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_390_CSN = { FIXED, 7, 0, 0, &hf_011_V1_3_390_CSN, I011_V1_3_390_CSN_PARTS, { NULL } };
+static int hf_011_V1_3_390_IFPSFLIGHTID = -1;
+static int hf_011_V1_3_390_IFPSFLIGHTID_TYP = -1;
+static const value_string valstr_011_V1_3_390_IFPSFLIGHTID_TYP[] = {
+ { 0, "Plan number" },
+ { 1, "Unit 1 internal flight number" },
+ { 2, "Unit 2 internal flight number" },
+ { 3, "Unit 3 internal flight number" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_390_IFPSFLIGHTID_TYP = { 2, 1.0, FIELD_PART_UINT, &hf_011_V1_3_390_IFPSFLIGHTID_TYP, NULL };
+static int hf_011_V1_3_390_IFPSFLIGHTID_NBR = -1;
+static const FieldPart I011_V1_3_390_IFPSFLIGHTID_NBR = { 27, 1.0, FIELD_PART_HEX, &hf_011_V1_3_390_IFPSFLIGHTID_NBR, NULL };
+static const FieldPart *I011_V1_3_390_IFPSFLIGHTID_PARTS[] = {
+ &I011_V1_3_390_IFPSFLIGHTID_TYP,
+ &IXXX_3bit_spare,
+ &I011_V1_3_390_IFPSFLIGHTID_NBR,
+ NULL
+};
+static const AsterixField I011_V1_3_390_IFPSFLIGHTID = { FIXED, 4, 0, 0, &hf_011_V1_3_390_IFPSFLIGHTID, I011_V1_3_390_IFPSFLIGHTID_PARTS, { NULL } };
+static int hf_011_V1_3_390_FLIGHTCAT = -1;
+static int hf_011_V1_3_390_FLIGHTCAT_GATOAT = -1;
+static const value_string valstr_011_V1_3_390_FLIGHTCAT_GATOAT[] = {
+ { 0, "Unknown" },
+ { 1, "General Air Traffic" },
+ { 2, "Operational Air Traffic" },
+ { 3, "Not applicable" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_390_FLIGHTCAT_GATOAT = { 2, 1.0, FIELD_PART_UINT, &hf_011_V1_3_390_FLIGHTCAT_GATOAT, NULL };
+static int hf_011_V1_3_390_FLIGHTCAT_FR1FR2 = -1;
+static const value_string valstr_011_V1_3_390_FLIGHTCAT_FR1FR2[] = {
+ { 0, "Instrument Flight Rules" },
+ { 1, "Visual Flight Rules" },
+ { 2, "Not applicable" },
+ { 3, "Controlled Visual Flight Rules" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_390_FLIGHTCAT_FR1FR2 = { 2, 1.0, FIELD_PART_UINT, &hf_011_V1_3_390_FLIGHTCAT_FR1FR2, NULL };
+static int hf_011_V1_3_390_FLIGHTCAT_RVSM = -1;
+static const value_string valstr_011_V1_3_390_FLIGHTCAT_RVSM[] = {
+ { 0, "Unknown" },
+ { 1, "Approved" },
+ { 2, "Exempt" },
+ { 3, "Not Approved" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_390_FLIGHTCAT_RVSM = { 2, 1.0, FIELD_PART_UINT, &hf_011_V1_3_390_FLIGHTCAT_RVSM, NULL };
+static int hf_011_V1_3_390_FLIGHTCAT_HPR = -1;
+static const value_string valstr_011_V1_3_390_FLIGHTCAT_HPR[] = {
+ { 0, "Normal Priority Flight" },
+ { 1, "High Priority Flight" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_390_FLIGHTCAT_HPR = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_390_FLIGHTCAT_HPR, NULL };
+static const FieldPart *I011_V1_3_390_FLIGHTCAT_PARTS[] = {
+ &I011_V1_3_390_FLIGHTCAT_GATOAT,
+ &I011_V1_3_390_FLIGHTCAT_FR1FR2,
+ &I011_V1_3_390_FLIGHTCAT_RVSM,
+ &I011_V1_3_390_FLIGHTCAT_HPR,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I011_V1_3_390_FLIGHTCAT = { FIXED, 1, 0, 0, &hf_011_V1_3_390_FLIGHTCAT, I011_V1_3_390_FLIGHTCAT_PARTS, { NULL } };
+static int hf_011_V1_3_390_TOA = -1;
+static int hf_011_V1_3_390_TOA_VALUE = -1;
+static const FieldPart I011_V1_3_390_TOA_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_011_V1_3_390_TOA_VALUE, NULL };
+static const FieldPart *I011_V1_3_390_TOA_PARTS[] = {
+ &I011_V1_3_390_TOA_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_390_TOA = { FIXED, 4, 0, 0, &hf_011_V1_3_390_TOA, I011_V1_3_390_TOA_PARTS, { NULL } };
+static int hf_011_V1_3_390_WTC = -1;
+static int hf_011_V1_3_390_WTC_VALUE = -1;
+static const value_string valstr_011_V1_3_390_WTC_VALUE[] = {
+ { 76, "Light" },
+ { 77, "Medium" },
+ { 72, "Heavy" },
+ { 74, "Super" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_390_WTC_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_011_V1_3_390_WTC_VALUE, NULL };
+static const FieldPart *I011_V1_3_390_WTC_PARTS[] = {
+ &I011_V1_3_390_WTC_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_390_WTC = { FIXED, 1, 0, 0, &hf_011_V1_3_390_WTC, I011_V1_3_390_WTC_PARTS, { NULL } };
+static int hf_011_V1_3_390_ADEP = -1;
+static int hf_011_V1_3_390_ADEP_VALUE = -1;
+static const FieldPart I011_V1_3_390_ADEP_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_011_V1_3_390_ADEP_VALUE, NULL };
+static const FieldPart *I011_V1_3_390_ADEP_PARTS[] = {
+ &I011_V1_3_390_ADEP_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_390_ADEP = { FIXED, 4, 0, 0, &hf_011_V1_3_390_ADEP, I011_V1_3_390_ADEP_PARTS, { NULL } };
+static int hf_011_V1_3_390_ADES = -1;
+static int hf_011_V1_3_390_ADES_VALUE = -1;
+static const FieldPart I011_V1_3_390_ADES_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_011_V1_3_390_ADES_VALUE, NULL };
+static const FieldPart *I011_V1_3_390_ADES_PARTS[] = {
+ &I011_V1_3_390_ADES_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_390_ADES = { FIXED, 4, 0, 0, &hf_011_V1_3_390_ADES, I011_V1_3_390_ADES_PARTS, { NULL } };
+static int hf_011_V1_3_390_RWY = -1;
+static int hf_011_V1_3_390_RWY_VALUE = -1;
+static const FieldPart I011_V1_3_390_RWY_VALUE = { 24, 1.0, FIELD_PART_ASCII, &hf_011_V1_3_390_RWY_VALUE, NULL };
+static const FieldPart *I011_V1_3_390_RWY_PARTS[] = {
+ &I011_V1_3_390_RWY_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_390_RWY = { FIXED, 3, 0, 0, &hf_011_V1_3_390_RWY, I011_V1_3_390_RWY_PARTS, { NULL } };
+static int hf_011_V1_3_390_CFL = -1;
+static int hf_011_V1_3_390_CFL_VALUE = -1;
+static const FieldPart I011_V1_3_390_CFL_VALUE = { 16, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_3_390_CFL_VALUE, NULL };
+static const FieldPart *I011_V1_3_390_CFL_PARTS[] = {
+ &I011_V1_3_390_CFL_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_390_CFL = { FIXED, 2, 0, 0, &hf_011_V1_3_390_CFL, I011_V1_3_390_CFL_PARTS, { NULL } };
+static int hf_011_V1_3_390_CCP = -1;
+static int hf_011_V1_3_390_CCP_CENTRE = -1;
+static const FieldPart I011_V1_3_390_CCP_CENTRE = { 8, 1.0, FIELD_PART_HEX, &hf_011_V1_3_390_CCP_CENTRE, NULL };
+static int hf_011_V1_3_390_CCP_POSITION = -1;
+static const FieldPart I011_V1_3_390_CCP_POSITION = { 8, 1.0, FIELD_PART_HEX, &hf_011_V1_3_390_CCP_POSITION, NULL };
+static const FieldPart *I011_V1_3_390_CCP_PARTS[] = {
+ &I011_V1_3_390_CCP_CENTRE,
+ &I011_V1_3_390_CCP_POSITION,
+ NULL
+};
+static const AsterixField I011_V1_3_390_CCP = { FIXED, 2, 0, 0, &hf_011_V1_3_390_CCP, I011_V1_3_390_CCP_PARTS, { NULL } };
+static int hf_011_V1_3_390_TOD = -1;
+static int hf_011_V1_3_390_TOD_TYP = -1;
+static const value_string valstr_011_V1_3_390_TOD_TYP[] = {
+ { 0, "Scheduled off-block time" },
+ { 1, "Estimated off-block time" },
+ { 2, "Estimated take-off time" },
+ { 3, "Actual off-block time" },
+ { 4, "Predicted time at runway hold" },
+ { 5, "Actual time at runway hold" },
+ { 6, "Actual line-up time" },
+ { 7, "Actual take-off time" },
+ { 8, "Estimated time of arrival" },
+ { 9, "Predicted landing time" },
+ { 10, "Actual landing time" },
+ { 11, "Actual time off runway" },
+ { 12, "Predicted time to gate" },
+ { 13, "Actual on-block time" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_390_TOD_TYP = { 5, 1.0, FIELD_PART_UINT, &hf_011_V1_3_390_TOD_TYP, NULL };
+static int hf_011_V1_3_390_TOD_DAY = -1;
+static const value_string valstr_011_V1_3_390_TOD_DAY[] = {
+ { 0, "Today" },
+ { 1, "Yesterday" },
+ { 2, "Tomorrow" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_390_TOD_DAY = { 2, 1.0, FIELD_PART_UINT, &hf_011_V1_3_390_TOD_DAY, NULL };
+static int hf_011_V1_3_390_TOD_HOR = -1;
+static const FieldPart I011_V1_3_390_TOD_HOR = { 5, 1.0, FIELD_PART_UINT, &hf_011_V1_3_390_TOD_HOR, NULL };
+static int hf_011_V1_3_390_TOD_MIN = -1;
+static const FieldPart I011_V1_3_390_TOD_MIN = { 6, 1.0, FIELD_PART_UINT, &hf_011_V1_3_390_TOD_MIN, NULL };
+static int hf_011_V1_3_390_TOD_AVS = -1;
+static const value_string valstr_011_V1_3_390_TOD_AVS[] = {
+ { 0, "Seconds available" },
+ { 1, "Seconds not available" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_390_TOD_AVS = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_390_TOD_AVS, NULL };
+static int hf_011_V1_3_390_TOD_SEC = -1;
+static const FieldPart I011_V1_3_390_TOD_SEC = { 6, 1.0, FIELD_PART_UINT, &hf_011_V1_3_390_TOD_SEC, NULL };
+static const FieldPart *I011_V1_3_390_TOD_PARTS[] = {
+ &I011_V1_3_390_TOD_TYP,
+ &I011_V1_3_390_TOD_DAY,
+ &IXXX_4bit_spare,
+ &I011_V1_3_390_TOD_HOR,
+ &IXXX_2bit_spare,
+ &I011_V1_3_390_TOD_MIN,
+ &I011_V1_3_390_TOD_AVS,
+ &IXXX_1bit_spare,
+ &I011_V1_3_390_TOD_SEC,
+ NULL
+};
+static const AsterixField I011_V1_3_390_TOD = { REPETITIVE, 4, 1, 0, &hf_011_V1_3_390_TOD, I011_V1_3_390_TOD_PARTS, { NULL } };
+static int hf_011_V1_3_390_AST = -1;
+static int hf_011_V1_3_390_AST_VALUE = -1;
+static const FieldPart I011_V1_3_390_AST_VALUE = { 48, 1.0, FIELD_PART_ASCII, &hf_011_V1_3_390_AST_VALUE, NULL };
+static const FieldPart *I011_V1_3_390_AST_PARTS[] = {
+ &I011_V1_3_390_AST_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_390_AST = { FIXED, 6, 0, 0, &hf_011_V1_3_390_AST, I011_V1_3_390_AST_PARTS, { NULL } };
+static int hf_011_V1_3_390_STS = -1;
+static int hf_011_V1_3_390_STS_EMP = -1;
+static const value_string valstr_011_V1_3_390_STS_EMP[] = {
+ { 0, "Empty" },
+ { 1, "Occupied" },
+ { 2, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_390_STS_EMP = { 2, 1.0, FIELD_PART_UINT, &hf_011_V1_3_390_STS_EMP, NULL };
+static int hf_011_V1_3_390_STS_AVL = -1;
+static const value_string valstr_011_V1_3_390_STS_AVL[] = {
+ { 0, "Available" },
+ { 1, "Not available" },
+ { 2, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_390_STS_AVL = { 2, 1.0, FIELD_PART_UINT, &hf_011_V1_3_390_STS_AVL, NULL };
+static const FieldPart *I011_V1_3_390_STS_PARTS[] = {
+ &I011_V1_3_390_STS_EMP,
+ &I011_V1_3_390_STS_AVL,
+ &IXXX_4bit_spare,
+ NULL
+};
+static const AsterixField I011_V1_3_390_STS = { FIXED, 1, 0, 0, &hf_011_V1_3_390_STS, I011_V1_3_390_STS_PARTS, { NULL } };
+static const AsterixField I011_V1_3_390 = { COMPOUND, 0, 0, 0, &hf_011_V1_3_390, NULL, { &I011_V1_3_390_FPPSID, &I011_V1_3_390_CSN, &I011_V1_3_390_IFPSFLIGHTID, &I011_V1_3_390_FLIGHTCAT, &I011_V1_3_390_TOA, &I011_V1_3_390_WTC, &I011_V1_3_390_ADEP, &I011_V1_3_390_ADES, &I011_V1_3_390_RWY, &I011_V1_3_390_CFL, &I011_V1_3_390_CCP, &I011_V1_3_390_TOD, &I011_V1_3_390_AST, &I011_V1_3_390_STS, NULL } };
+static int hf_011_V1_3_430 = -1;
+static int hf_011_V1_3_430_VALUE = -1;
+static const value_string valstr_011_V1_3_430_VALUE[] = {
+ { 0, "Unknown" },
+ { 1, "On stand" },
+ { 2, "Taxiing for departure" },
+ { 3, "Taxiing for arrival" },
+ { 4, "Runway for departure" },
+ { 5, "Runway for arrival" },
+ { 6, "Hold for departure" },
+ { 7, "Hold for arrival" },
+ { 8, "Push back" },
+ { 9, "On finals" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_430_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_011_V1_3_430_VALUE, NULL };
+static const FieldPart *I011_V1_3_430_PARTS[] = {
+ &I011_V1_3_430_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_430 = { FIXED, 1, 0, 0, &hf_011_V1_3_430, I011_V1_3_430_PARTS, { NULL } };
+static int hf_011_V1_3_500 = -1;
+static int hf_011_V1_3_500_APC = -1;
+static int hf_011_V1_3_500_APC_X = -1;
+static const FieldPart I011_V1_3_500_APC_X = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_3_500_APC_X, NULL };
+static int hf_011_V1_3_500_APC_Y = -1;
+static const FieldPart I011_V1_3_500_APC_Y = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_V1_3_500_APC_Y, NULL };
+static const FieldPart *I011_V1_3_500_APC_PARTS[] = {
+ &I011_V1_3_500_APC_X,
+ &I011_V1_3_500_APC_Y,
+ NULL
+};
+static const AsterixField I011_V1_3_500_APC = { FIXED, 2, 0, 0, &hf_011_V1_3_500_APC, I011_V1_3_500_APC_PARTS, { NULL } };
+static int hf_011_V1_3_500_APW = -1;
+static int hf_011_V1_3_500_APW_LAT = -1;
+static const FieldPart I011_V1_3_500_APW_LAT = { 16, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_011_V1_3_500_APW_LAT, NULL };
+static int hf_011_V1_3_500_APW_LON = -1;
+static const FieldPart I011_V1_3_500_APW_LON = { 16, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_011_V1_3_500_APW_LON, NULL };
+static const FieldPart *I011_V1_3_500_APW_PARTS[] = {
+ &I011_V1_3_500_APW_LAT,
+ &I011_V1_3_500_APW_LON,
+ NULL
+};
+static const AsterixField I011_V1_3_500_APW = { FIXED, 4, 0, 0, &hf_011_V1_3_500_APW, I011_V1_3_500_APW_PARTS, { NULL } };
+static int hf_011_V1_3_500_ATH = -1;
+static int hf_011_V1_3_500_ATH_VALUE = -1;
+static const FieldPart I011_V1_3_500_ATH_VALUE = { 16, 0.5, FIELD_PART_FLOAT, &hf_011_V1_3_500_ATH_VALUE, NULL };
+static const FieldPart *I011_V1_3_500_ATH_PARTS[] = {
+ &I011_V1_3_500_ATH_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_500_ATH = { FIXED, 2, 0, 0, &hf_011_V1_3_500_ATH, I011_V1_3_500_ATH_PARTS, { NULL } };
+static int hf_011_V1_3_500_AVC = -1;
+static int hf_011_V1_3_500_AVC_X = -1;
+static const FieldPart I011_V1_3_500_AVC_X = { 8, 0.1, FIELD_PART_UFLOAT, &hf_011_V1_3_500_AVC_X, NULL };
+static int hf_011_V1_3_500_AVC_Y = -1;
+static const FieldPart I011_V1_3_500_AVC_Y = { 8, 0.1, FIELD_PART_UFLOAT, &hf_011_V1_3_500_AVC_Y, NULL };
+static const FieldPart *I011_V1_3_500_AVC_PARTS[] = {
+ &I011_V1_3_500_AVC_X,
+ &I011_V1_3_500_AVC_Y,
+ NULL
+};
+static const AsterixField I011_V1_3_500_AVC = { FIXED, 2, 0, 0, &hf_011_V1_3_500_AVC, I011_V1_3_500_AVC_PARTS, { NULL } };
+static int hf_011_V1_3_500_ARC = -1;
+static int hf_011_V1_3_500_ARC_VALUE = -1;
+static const FieldPart I011_V1_3_500_ARC_VALUE = { 16, 0.1, FIELD_PART_FLOAT, &hf_011_V1_3_500_ARC_VALUE, NULL };
+static const FieldPart *I011_V1_3_500_ARC_PARTS[] = {
+ &I011_V1_3_500_ARC_VALUE,
+ NULL
+};
+static const AsterixField I011_V1_3_500_ARC = { FIXED, 2, 0, 0, &hf_011_V1_3_500_ARC, I011_V1_3_500_ARC_PARTS, { NULL } };
+static int hf_011_V1_3_500_AAC = -1;
+static int hf_011_V1_3_500_AAC_X = -1;
+static const FieldPart I011_V1_3_500_AAC_X = { 8, 0.01, FIELD_PART_UFLOAT, &hf_011_V1_3_500_AAC_X, NULL };
+static int hf_011_V1_3_500_AAC_Y = -1;
+static const FieldPart I011_V1_3_500_AAC_Y = { 8, 0.01, FIELD_PART_UFLOAT, &hf_011_V1_3_500_AAC_Y, NULL };
+static const FieldPart *I011_V1_3_500_AAC_PARTS[] = {
+ &I011_V1_3_500_AAC_X,
+ &I011_V1_3_500_AAC_Y,
+ NULL
+};
+static const AsterixField I011_V1_3_500_AAC = { FIXED, 2, 0, 0, &hf_011_V1_3_500_AAC, I011_V1_3_500_AAC_PARTS, { NULL } };
+static const AsterixField I011_V1_3_500 = { COMPOUND, 0, 0, 0, &hf_011_V1_3_500, NULL, { &I011_V1_3_500_APC, &I011_V1_3_500_APW, &I011_V1_3_500_ATH, &I011_V1_3_500_AVC, &I011_V1_3_500_ARC, &I011_V1_3_500_AAC, NULL } };
+static int hf_011_V1_3_600 = -1;
+static int hf_011_V1_3_600_ACK = -1;
+static const value_string valstr_011_V1_3_600_ACK[] = {
+ { 0, "Alert acknowledged" },
+ { 1, "Alert not acknowledged" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_600_ACK = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_600_ACK, NULL };
+static int hf_011_V1_3_600_SVR = -1;
+static const value_string valstr_011_V1_3_600_SVR[] = {
+ { 0, "End fo alert" },
+ { 1, "Pre-alarm" },
+ { 2, "Severe alert" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_600_SVR = { 2, 1.0, FIELD_PART_UINT, &hf_011_V1_3_600_SVR, NULL };
+static int hf_011_V1_3_600_AT = -1;
+static const FieldPart I011_V1_3_600_AT = { 8, 1.0, FIELD_PART_HEX, &hf_011_V1_3_600_AT, NULL };
+static int hf_011_V1_3_600_AN = -1;
+static const FieldPart I011_V1_3_600_AN = { 8, 1.0, FIELD_PART_HEX, &hf_011_V1_3_600_AN, NULL };
+static const FieldPart *I011_V1_3_600_PARTS[] = {
+ &I011_V1_3_600_ACK,
+ &I011_V1_3_600_SVR,
+ &IXXX_5bit_spare,
+ &I011_V1_3_600_AT,
+ &I011_V1_3_600_AN,
+ NULL
+};
+static const AsterixField I011_V1_3_600 = { FIXED, 3, 0, 0, &hf_011_V1_3_600, I011_V1_3_600_PARTS, { NULL } };
+static int hf_011_V1_3_605 = -1;
+static int hf_011_V1_3_605_FTN = -1;
+static const FieldPart I011_V1_3_605_FTN = { 12, 1.0, FIELD_PART_HEX, &hf_011_V1_3_605_FTN, NULL };
+static const FieldPart *I011_V1_3_605_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I011_V1_3_605_FTN,
+ NULL
+};
+static const AsterixField I011_V1_3_605 = { REPETITIVE, 2, 1, 0, &hf_011_V1_3_605, I011_V1_3_605_PARTS, { NULL } };
+static int hf_011_V1_3_610 = -1;
+static int hf_011_V1_3_610_BKN = -1;
+static const FieldPart I011_V1_3_610_BKN = { 4, 1.0, FIELD_PART_HEX, &hf_011_V1_3_610_BKN, NULL };
+static int hf_011_V1_3_610_I1 = -1;
+static const value_string valstr_011_V1_3_610_I1[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_610_I1 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_610_I1, NULL };
+static int hf_011_V1_3_610_I2 = -1;
+static const value_string valstr_011_V1_3_610_I2[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_610_I2 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_610_I2, NULL };
+static int hf_011_V1_3_610_I3 = -1;
+static const value_string valstr_011_V1_3_610_I3[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_610_I3 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_610_I3, NULL };
+static int hf_011_V1_3_610_I4 = -1;
+static const value_string valstr_011_V1_3_610_I4[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_610_I4 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_610_I4, NULL };
+static int hf_011_V1_3_610_I5 = -1;
+static const value_string valstr_011_V1_3_610_I5[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_610_I5 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_610_I5, NULL };
+static int hf_011_V1_3_610_I6 = -1;
+static const value_string valstr_011_V1_3_610_I6[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_610_I6 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_610_I6, NULL };
+static int hf_011_V1_3_610_I7 = -1;
+static const value_string valstr_011_V1_3_610_I7[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_610_I7 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_610_I7, NULL };
+static int hf_011_V1_3_610_I8 = -1;
+static const value_string valstr_011_V1_3_610_I8[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_610_I8 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_610_I8, NULL };
+static int hf_011_V1_3_610_I9 = -1;
+static const value_string valstr_011_V1_3_610_I9[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_610_I9 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_610_I9, NULL };
+static int hf_011_V1_3_610_I10 = -1;
+static const value_string valstr_011_V1_3_610_I10[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_610_I10 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_610_I10, NULL };
+static int hf_011_V1_3_610_I11 = -1;
+static const value_string valstr_011_V1_3_610_I11[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_610_I11 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_610_I11, NULL };
+static int hf_011_V1_3_610_I12 = -1;
+static const value_string valstr_011_V1_3_610_I12[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_V1_3_610_I12 = { 1, 1.0, FIELD_PART_UINT, &hf_011_V1_3_610_I12, NULL };
+static const FieldPart *I011_V1_3_610_PARTS[] = {
+ &I011_V1_3_610_BKN,
+ &I011_V1_3_610_I1,
+ &I011_V1_3_610_I2,
+ &I011_V1_3_610_I3,
+ &I011_V1_3_610_I4,
+ &I011_V1_3_610_I5,
+ &I011_V1_3_610_I6,
+ &I011_V1_3_610_I7,
+ &I011_V1_3_610_I8,
+ &I011_V1_3_610_I9,
+ &I011_V1_3_610_I10,
+ &I011_V1_3_610_I11,
+ &I011_V1_3_610_I12,
+ NULL
+};
+static const AsterixField I011_V1_3_610 = { REPETITIVE, 2, 1, 0, &hf_011_V1_3_610, I011_V1_3_610_PARTS, { NULL } };
+static int hf_011_V1_3_SP = -1;
+static const AsterixField I011_V1_3_SP = { EXP, 0, 0, 1, &hf_011_V1_3_SP, NULL, { NULL } };
+static int hf_011_V1_3_RE = -1;
+static const AsterixField I011_V1_3_RE = { EXP, 0, 0, 1, &hf_011_V1_3_RE, NULL, { NULL } };
+
+/* Category 011, edition 1.3 (latest) */
+static int hf_011_000 = -1;
+static int hf_011_000_VALUE = -1;
+static const value_string valstr_011_000_VALUE[] = {
+ { 1, "Target reports, flight plan data and basic alerts" },
+ { 2, "Manual attachment of flight plan to track" },
+ { 3, "Manual detachment of flight plan to track" },
+ { 4, "Insertion of flight plan data" },
+ { 5, "Suppression of flight plan data" },
+ { 6, "Modification of flight plan data" },
+ { 7, "Holdbar status" },
+ { 0, NULL }
+};
+static const FieldPart I011_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_011_000_VALUE, NULL };
+static const FieldPart *I011_000_PARTS[] = {
+ &I011_000_VALUE,
+ NULL
+};
+static const AsterixField I011_000 = { FIXED, 1, 0, 0, &hf_011_000, I011_000_PARTS, { NULL } };
+static int hf_011_010 = -1;
+static int hf_011_010_SAC = -1;
+static const FieldPart I011_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_011_010_SAC, NULL };
+static int hf_011_010_SIC = -1;
+static const FieldPart I011_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_011_010_SIC, NULL };
+static const FieldPart *I011_010_PARTS[] = {
+ &I011_010_SAC,
+ &I011_010_SIC,
+ NULL
+};
+static const AsterixField I011_010 = { FIXED, 2, 0, 0, &hf_011_010, I011_010_PARTS, { NULL } };
+static int hf_011_015 = -1;
+static int hf_011_015_VALUE = -1;
+static const FieldPart I011_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_011_015_VALUE, NULL };
+static const FieldPart *I011_015_PARTS[] = {
+ &I011_015_VALUE,
+ NULL
+};
+static const AsterixField I011_015 = { FIXED, 1, 0, 0, &hf_011_015, I011_015_PARTS, { NULL } };
+static int hf_011_041 = -1;
+static int hf_011_041_LAT = -1;
+static const FieldPart I011_041_LAT = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_011_041_LAT, NULL };
+static int hf_011_041_LON = -1;
+static const FieldPart I011_041_LON = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_011_041_LON, NULL };
+static const FieldPart *I011_041_PARTS[] = {
+ &I011_041_LAT,
+ &I011_041_LON,
+ NULL
+};
+static const AsterixField I011_041 = { FIXED, 8, 0, 0, &hf_011_041, I011_041_PARTS, { NULL } };
+static int hf_011_042 = -1;
+static int hf_011_042_X = -1;
+static const FieldPart I011_042_X = { 16, 1.0, FIELD_PART_FLOAT, &hf_011_042_X, NULL };
+static int hf_011_042_Y = -1;
+static const FieldPart I011_042_Y = { 16, 1.0, FIELD_PART_FLOAT, &hf_011_042_Y, NULL };
+static const FieldPart *I011_042_PARTS[] = {
+ &I011_042_X,
+ &I011_042_Y,
+ NULL
+};
+static const AsterixField I011_042 = { FIXED, 4, 0, 0, &hf_011_042, I011_042_PARTS, { NULL } };
+static int hf_011_060 = -1;
+static int hf_011_060_MOD3A = -1;
+static const FieldPart I011_060_MOD3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_011_060_MOD3A, NULL };
+static const FieldPart *I011_060_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I011_060_MOD3A,
+ NULL
+};
+static const AsterixField I011_060 = { FIXED, 2, 0, 0, &hf_011_060, I011_060_PARTS, { NULL } };
+static int hf_011_090 = -1;
+static int hf_011_090_VALUE = -1;
+static const FieldPart I011_090_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_011_090_VALUE, NULL };
+static const FieldPart *I011_090_PARTS[] = {
+ &I011_090_VALUE,
+ NULL
+};
+static const AsterixField I011_090 = { FIXED, 2, 0, 0, &hf_011_090, I011_090_PARTS, { NULL } };
+static int hf_011_092 = -1;
+static int hf_011_092_VALUE = -1;
+static const FieldPart I011_092_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_011_092_VALUE, NULL };
+static const FieldPart *I011_092_PARTS[] = {
+ &I011_092_VALUE,
+ NULL
+};
+static const AsterixField I011_092 = { FIXED, 2, 0, 0, &hf_011_092, I011_092_PARTS, { NULL } };
+static int hf_011_093 = -1;
+static int hf_011_093_QNH = -1;
+static const value_string valstr_011_093_QNH[] = {
+ { 0, "No QNH Correction Applied" },
+ { 1, "QNH Correction Applied" },
+ { 0, NULL }
+};
+static const FieldPart I011_093_QNH = { 1, 1.0, FIELD_PART_UINT, &hf_011_093_QNH, NULL };
+static int hf_011_093_CTBA = -1;
+static const FieldPart I011_093_CTBA = { 15, 0.25, FIELD_PART_FLOAT, &hf_011_093_CTBA, NULL };
+static const FieldPart *I011_093_PARTS[] = {
+ &I011_093_QNH,
+ &I011_093_CTBA,
+ NULL
+};
+static const AsterixField I011_093 = { FIXED, 2, 0, 0, &hf_011_093, I011_093_PARTS, { NULL } };
+static int hf_011_140 = -1;
+static int hf_011_140_VALUE = -1;
+static const FieldPart I011_140_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_011_140_VALUE, NULL };
+static const FieldPart *I011_140_PARTS[] = {
+ &I011_140_VALUE,
+ NULL
+};
+static const AsterixField I011_140 = { FIXED, 3, 0, 0, &hf_011_140, I011_140_PARTS, { NULL } };
+static int hf_011_161 = -1;
+static int hf_011_161_FTN = -1;
+static const FieldPart I011_161_FTN = { 15, 1.0, FIELD_PART_HEX, &hf_011_161_FTN, NULL };
+static const FieldPart *I011_161_PARTS[] = {
+ &IXXX_1bit_spare,
+ &I011_161_FTN,
+ NULL
+};
+static const AsterixField I011_161 = { FIXED, 2, 0, 0, &hf_011_161, I011_161_PARTS, { NULL } };
+static int hf_011_170 = -1;
+static int hf_011_170_MON = -1;
+static const value_string valstr_011_170_MON[] = {
+ { 0, "Multisensor Track" },
+ { 1, "Monosensor Track" },
+ { 0, NULL }
+};
+static const FieldPart I011_170_MON = { 1, 1.0, FIELD_PART_UINT, &hf_011_170_MON, NULL };
+static int hf_011_170_GBS = -1;
+static const value_string valstr_011_170_GBS[] = {
+ { 0, "Transponder Ground bit not set or unknown" },
+ { 1, "Transponder Ground bit set" },
+ { 0, NULL }
+};
+static const FieldPart I011_170_GBS = { 1, 1.0, FIELD_PART_UINT, &hf_011_170_GBS, NULL };
+static int hf_011_170_MRH = -1;
+static const value_string valstr_011_170_MRH[] = {
+ { 0, "Barometric altitude (Mode C) more reliable" },
+ { 1, "Geometric altitude more reliable" },
+ { 0, NULL }
+};
+static const FieldPart I011_170_MRH = { 1, 1.0, FIELD_PART_UINT, &hf_011_170_MRH, NULL };
+static int hf_011_170_SRC = -1;
+static const value_string valstr_011_170_SRC[] = {
+ { 0, "No source" },
+ { 1, "GPS" },
+ { 2, "3d radar" },
+ { 3, "Triangulation" },
+ { 4, "Height from coverage" },
+ { 5, "Speed look-up table" },
+ { 6, "Default height" },
+ { 7, "Multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I011_170_SRC = { 3, 1.0, FIELD_PART_UINT, &hf_011_170_SRC, NULL };
+static int hf_011_170_CNF = -1;
+static const value_string valstr_011_170_CNF[] = {
+ { 0, "Confirmed track" },
+ { 1, "Tentative track" },
+ { 0, NULL }
+};
+static const FieldPart I011_170_CNF = { 1, 1.0, FIELD_PART_UINT, &hf_011_170_CNF, NULL };
+static int hf_011_170_SIM = -1;
+static const value_string valstr_011_170_SIM[] = {
+ { 0, "Actual Track" },
+ { 1, "Simulated track" },
+ { 0, NULL }
+};
+static const FieldPart I011_170_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_011_170_SIM, NULL };
+static int hf_011_170_TSE = -1;
+static const value_string valstr_011_170_TSE[] = {
+ { 0, "Default value" },
+ { 1, "Track service end (i.e. last message transmitted to the user for the track)" },
+ { 0, NULL }
+};
+static const FieldPart I011_170_TSE = { 1, 1.0, FIELD_PART_UINT, &hf_011_170_TSE, NULL };
+static int hf_011_170_TSB = -1;
+static const value_string valstr_011_170_TSB[] = {
+ { 0, "Default value" },
+ { 1, "Track service begin (i.e. first message transmitted to the user for the track)" },
+ { 0, NULL }
+};
+static const FieldPart I011_170_TSB = { 1, 1.0, FIELD_PART_UINT, &hf_011_170_TSB, NULL };
+static int hf_011_170_FRIFOE = -1;
+static const value_string valstr_011_170_FRIFOE[] = {
+ { 0, "No Mode 4 interrogationt" },
+ { 1, "Friendly target" },
+ { 2, "Unknown target" },
+ { 3, "No reply" },
+ { 0, NULL }
+};
+static const FieldPart I011_170_FRIFOE = { 2, 1.0, FIELD_PART_UINT, &hf_011_170_FRIFOE, NULL };
+static int hf_011_170_ME = -1;
+static const value_string valstr_011_170_ME[] = {
+ { 0, "Default value" },
+ { 1, "Military Emergency present in the last report received from a sensor capable of decoding this data" },
+ { 0, NULL }
+};
+static const FieldPart I011_170_ME = { 1, 1.0, FIELD_PART_UINT, &hf_011_170_ME, NULL };
+static int hf_011_170_MI = -1;
+static const value_string valstr_011_170_MI[] = {
+ { 0, "End of Data Item" },
+ { 1, "Military Identification present in the last report received from a sensor capable of decoding this data" },
+ { 0, NULL }
+};
+static const FieldPart I011_170_MI = { 1, 1.0, FIELD_PART_UINT, &hf_011_170_MI, NULL };
+static int hf_011_170_AMA = -1;
+static const value_string valstr_011_170_AMA[] = {
+ { 0, "Track not resulting from amalgamation process" },
+ { 1, "Track resulting from amalgamation process" },
+ { 0, NULL }
+};
+static const FieldPart I011_170_AMA = { 1, 1.0, FIELD_PART_UINT, &hf_011_170_AMA, NULL };
+static int hf_011_170_SPI = -1;
+static const value_string valstr_011_170_SPI[] = {
+ { 0, "Default value" },
+ { 1, "SPI present in the last report received from a sensor capable of decoding this data" },
+ { 0, NULL }
+};
+static const FieldPart I011_170_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_011_170_SPI, NULL };
+static int hf_011_170_CST = -1;
+static const value_string valstr_011_170_CST[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received track update is higher than system dependent threshold (coasting)" },
+ { 0, NULL }
+};
+static const FieldPart I011_170_CST = { 1, 1.0, FIELD_PART_UINT, &hf_011_170_CST, NULL };
+static int hf_011_170_FPC = -1;
+static const value_string valstr_011_170_FPC[] = {
+ { 0, "Not flight-plan correlated" },
+ { 1, "Flight plan correlated" },
+ { 0, NULL }
+};
+static const FieldPart I011_170_FPC = { 1, 1.0, FIELD_PART_UINT, &hf_011_170_FPC, NULL };
+static int hf_011_170_AFF = -1;
+static const value_string valstr_011_170_AFF[] = {
+ { 0, "Default value" },
+ { 1, "ADS-B data inconsistent with other surveillance information" },
+ { 0, NULL }
+};
+static const FieldPart I011_170_AFF = { 1, 1.0, FIELD_PART_UINT, &hf_011_170_AFF, NULL };
+static int hf_011_170_PSR = -1;
+static const value_string valstr_011_170_PSR[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received PSR track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I011_170_PSR = { 1, 1.0, FIELD_PART_UINT, &hf_011_170_PSR, NULL };
+static int hf_011_170_SSR = -1;
+static const value_string valstr_011_170_SSR[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received SSR track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I011_170_SSR = { 1, 1.0, FIELD_PART_UINT, &hf_011_170_SSR, NULL };
+static int hf_011_170_MDS = -1;
+static const value_string valstr_011_170_MDS[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received Mode S track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I011_170_MDS = { 1, 1.0, FIELD_PART_UINT, &hf_011_170_MDS, NULL };
+static int hf_011_170_ADS = -1;
+static const value_string valstr_011_170_ADS[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received ADS track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I011_170_ADS = { 1, 1.0, FIELD_PART_UINT, &hf_011_170_ADS, NULL };
+static int hf_011_170_SUC = -1;
+static const value_string valstr_011_170_SUC[] = {
+ { 0, "Default value" },
+ { 1, "Special Used Code (Mode A codes to be defined in the system to mark a track with special interest)" },
+ { 0, NULL }
+};
+static const FieldPart I011_170_SUC = { 1, 1.0, FIELD_PART_UINT, &hf_011_170_SUC, NULL };
+static int hf_011_170_AAC = -1;
+static const value_string valstr_011_170_AAC[] = {
+ { 0, "Default value" },
+ { 1, "Assigned Mode A Code Conflict (same individual Mode A Code assigned to another track)" },
+ { 0, NULL }
+};
+static const FieldPart I011_170_AAC = { 1, 1.0, FIELD_PART_UINT, &hf_011_170_AAC, NULL };
+static const FieldPart *I011_170_PARTS[] = {
+ &I011_170_MON,
+ &I011_170_GBS,
+ &I011_170_MRH,
+ &I011_170_SRC,
+ &I011_170_CNF,
+ &IXXX_FX,
+ &I011_170_SIM,
+ &I011_170_TSE,
+ &I011_170_TSB,
+ &I011_170_FRIFOE,
+ &I011_170_ME,
+ &I011_170_MI,
+ &IXXX_FX,
+ &I011_170_AMA,
+ &I011_170_SPI,
+ &I011_170_CST,
+ &I011_170_FPC,
+ &I011_170_AFF,
+ &IXXX_2bit_spare,
+ &IXXX_FX,
+ &IXXX_1bit_spare,
+ &I011_170_PSR,
+ &I011_170_SSR,
+ &I011_170_MDS,
+ &I011_170_ADS,
+ &I011_170_SUC,
+ &I011_170_AAC,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I011_170 = { FX, 1, 0, 0, &hf_011_170, I011_170_PARTS, { NULL } };
+static int hf_011_202 = -1;
+static int hf_011_202_VX = -1;
+static const FieldPart I011_202_VX = { 16, 0.25, FIELD_PART_FLOAT, &hf_011_202_VX, NULL };
+static int hf_011_202_VY = -1;
+static const FieldPart I011_202_VY = { 16, 0.25, FIELD_PART_FLOAT, &hf_011_202_VY, NULL };
+static const FieldPart *I011_202_PARTS[] = {
+ &I011_202_VX,
+ &I011_202_VY,
+ NULL
+};
+static const AsterixField I011_202 = { FIXED, 4, 0, 0, &hf_011_202, I011_202_PARTS, { NULL } };
+static int hf_011_210 = -1;
+static int hf_011_210_AX = -1;
+static const FieldPart I011_210_AX = { 8, 0.25, FIELD_PART_FLOAT, &hf_011_210_AX, NULL };
+static int hf_011_210_AY = -1;
+static const FieldPart I011_210_AY = { 8, 0.25, FIELD_PART_FLOAT, &hf_011_210_AY, NULL };
+static const FieldPart *I011_210_PARTS[] = {
+ &I011_210_AX,
+ &I011_210_AY,
+ NULL
+};
+static const AsterixField I011_210 = { FIXED, 2, 0, 0, &hf_011_210, I011_210_PARTS, { NULL } };
+static int hf_011_215 = -1;
+static int hf_011_215_VALUE = -1;
+static const FieldPart I011_215_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_011_215_VALUE, NULL };
+static const FieldPart *I011_215_PARTS[] = {
+ &I011_215_VALUE,
+ NULL
+};
+static const AsterixField I011_215 = { FIXED, 2, 0, 0, &hf_011_215, I011_215_PARTS, { NULL } };
+static int hf_011_245 = -1;
+static int hf_011_245_STI = -1;
+static const value_string valstr_011_245_STI[] = {
+ { 0, "Callsign or registration downlinked from transponder" },
+ { 1, "Callsign not downlinked from transponder" },
+ { 2, "Registration not downlinked from transponder" },
+ { 0, NULL }
+};
+static const FieldPart I011_245_STI = { 2, 1.0, FIELD_PART_UINT, &hf_011_245_STI, NULL };
+static int hf_011_245_TID = -1;
+static const FieldPart I011_245_TID = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_011_245_TID, NULL };
+static const FieldPart *I011_245_PARTS[] = {
+ &I011_245_STI,
+ &IXXX_6bit_spare,
+ &I011_245_TID,
+ NULL
+};
+static const AsterixField I011_245 = { FIXED, 7, 0, 0, &hf_011_245, I011_245_PARTS, { NULL } };
+static int hf_011_270 = -1;
+static int hf_011_270_LENGTH = -1;
+static const FieldPart I011_270_LENGTH = { 7, 1.0, FIELD_PART_UFLOAT, &hf_011_270_LENGTH, NULL };
+static int hf_011_270_ORIENTATION = -1;
+static const FieldPart I011_270_ORIENTATION = { 7, 2.8125, FIELD_PART_UFLOAT, &hf_011_270_ORIENTATION, NULL };
+static int hf_011_270_WIDTH = -1;
+static const FieldPart I011_270_WIDTH = { 7, 1.0, FIELD_PART_UFLOAT, &hf_011_270_WIDTH, NULL };
+static const FieldPart *I011_270_PARTS[] = {
+ &I011_270_LENGTH,
+ &IXXX_FX,
+ &I011_270_ORIENTATION,
+ &IXXX_FX,
+ &I011_270_WIDTH,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I011_270 = { FX, 1, 0, 0, &hf_011_270, I011_270_PARTS, { NULL } };
+static int hf_011_290 = -1;
+static int hf_011_290_PSR = -1;
+static int hf_011_290_PSR_VALUE = -1;
+static const FieldPart I011_290_PSR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_290_PSR_VALUE, NULL };
+static const FieldPart *I011_290_PSR_PARTS[] = {
+ &I011_290_PSR_VALUE,
+ NULL
+};
+static const AsterixField I011_290_PSR = { FIXED, 1, 0, 0, &hf_011_290_PSR, I011_290_PSR_PARTS, { NULL } };
+static int hf_011_290_SSR = -1;
+static int hf_011_290_SSR_VALUE = -1;
+static const FieldPart I011_290_SSR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_290_SSR_VALUE, NULL };
+static const FieldPart *I011_290_SSR_PARTS[] = {
+ &I011_290_SSR_VALUE,
+ NULL
+};
+static const AsterixField I011_290_SSR = { FIXED, 1, 0, 0, &hf_011_290_SSR, I011_290_SSR_PARTS, { NULL } };
+static int hf_011_290_MDA = -1;
+static int hf_011_290_MDA_VALUE = -1;
+static const FieldPart I011_290_MDA_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_290_MDA_VALUE, NULL };
+static const FieldPart *I011_290_MDA_PARTS[] = {
+ &I011_290_MDA_VALUE,
+ NULL
+};
+static const AsterixField I011_290_MDA = { FIXED, 1, 0, 0, &hf_011_290_MDA, I011_290_MDA_PARTS, { NULL } };
+static int hf_011_290_MFL = -1;
+static int hf_011_290_MFL_VALUE = -1;
+static const FieldPart I011_290_MFL_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_290_MFL_VALUE, NULL };
+static const FieldPart *I011_290_MFL_PARTS[] = {
+ &I011_290_MFL_VALUE,
+ NULL
+};
+static const AsterixField I011_290_MFL = { FIXED, 1, 0, 0, &hf_011_290_MFL, I011_290_MFL_PARTS, { NULL } };
+static int hf_011_290_MDS = -1;
+static int hf_011_290_MDS_VALUE = -1;
+static const FieldPart I011_290_MDS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_290_MDS_VALUE, NULL };
+static const FieldPart *I011_290_MDS_PARTS[] = {
+ &I011_290_MDS_VALUE,
+ NULL
+};
+static const AsterixField I011_290_MDS = { FIXED, 1, 0, 0, &hf_011_290_MDS, I011_290_MDS_PARTS, { NULL } };
+static int hf_011_290_ADS = -1;
+static int hf_011_290_ADS_VALUE = -1;
+static const FieldPart I011_290_ADS_VALUE = { 16, 0.25, FIELD_PART_UFLOAT, &hf_011_290_ADS_VALUE, NULL };
+static const FieldPart *I011_290_ADS_PARTS[] = {
+ &I011_290_ADS_VALUE,
+ NULL
+};
+static const AsterixField I011_290_ADS = { FIXED, 2, 0, 0, &hf_011_290_ADS, I011_290_ADS_PARTS, { NULL } };
+static int hf_011_290_ADB = -1;
+static int hf_011_290_ADB_VALUE = -1;
+static const FieldPart I011_290_ADB_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_290_ADB_VALUE, NULL };
+static const FieldPart *I011_290_ADB_PARTS[] = {
+ &I011_290_ADB_VALUE,
+ NULL
+};
+static const AsterixField I011_290_ADB = { FIXED, 1, 0, 0, &hf_011_290_ADB, I011_290_ADB_PARTS, { NULL } };
+static int hf_011_290_MD1 = -1;
+static int hf_011_290_MD1_VALUE = -1;
+static const FieldPart I011_290_MD1_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_290_MD1_VALUE, NULL };
+static const FieldPart *I011_290_MD1_PARTS[] = {
+ &I011_290_MD1_VALUE,
+ NULL
+};
+static const AsterixField I011_290_MD1 = { FIXED, 1, 0, 0, &hf_011_290_MD1, I011_290_MD1_PARTS, { NULL } };
+static int hf_011_290_MD2 = -1;
+static int hf_011_290_MD2_VALUE = -1;
+static const FieldPart I011_290_MD2_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_290_MD2_VALUE, NULL };
+static const FieldPart *I011_290_MD2_PARTS[] = {
+ &I011_290_MD2_VALUE,
+ NULL
+};
+static const AsterixField I011_290_MD2 = { FIXED, 1, 0, 0, &hf_011_290_MD2, I011_290_MD2_PARTS, { NULL } };
+static int hf_011_290_LOP = -1;
+static int hf_011_290_LOP_VALUE = -1;
+static const FieldPart I011_290_LOP_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_290_LOP_VALUE, NULL };
+static const FieldPart *I011_290_LOP_PARTS[] = {
+ &I011_290_LOP_VALUE,
+ NULL
+};
+static const AsterixField I011_290_LOP = { FIXED, 1, 0, 0, &hf_011_290_LOP, I011_290_LOP_PARTS, { NULL } };
+static int hf_011_290_TRK = -1;
+static int hf_011_290_TRK_VALUE = -1;
+static const FieldPart I011_290_TRK_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_290_TRK_VALUE, NULL };
+static const FieldPart *I011_290_TRK_PARTS[] = {
+ &I011_290_TRK_VALUE,
+ NULL
+};
+static const AsterixField I011_290_TRK = { FIXED, 1, 0, 0, &hf_011_290_TRK, I011_290_TRK_PARTS, { NULL } };
+static int hf_011_290_MUL = -1;
+static int hf_011_290_MUL_VALUE = -1;
+static const FieldPart I011_290_MUL_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_290_MUL_VALUE, NULL };
+static const FieldPart *I011_290_MUL_PARTS[] = {
+ &I011_290_MUL_VALUE,
+ NULL
+};
+static const AsterixField I011_290_MUL = { FIXED, 1, 0, 0, &hf_011_290_MUL, I011_290_MUL_PARTS, { NULL } };
+static const AsterixField I011_290 = { COMPOUND, 0, 0, 0, &hf_011_290, NULL, { &I011_290_PSR, &I011_290_SSR, &I011_290_MDA, &I011_290_MFL, &I011_290_MDS, &I011_290_ADS, &I011_290_ADB, &I011_290_MD1, &I011_290_MD2, &I011_290_LOP, &I011_290_TRK, &I011_290_MUL, NULL } };
+static int hf_011_300 = -1;
+static int hf_011_300_VALUE = -1;
+static const value_string valstr_011_300_VALUE[] = {
+ { 0, "Flyco (follow me)" },
+ { 1, "ATC equipment maintenance" },
+ { 2, "Airport maintenance" },
+ { 3, "Fire" },
+ { 4, "Bird scarer" },
+ { 5, "Snow plough" },
+ { 6, "Runway sweeper" },
+ { 7, "Emergency" },
+ { 8, "Police" },
+ { 9, "Bus" },
+ { 10, "Tug (push/tow)" },
+ { 11, "Grass cutter" },
+ { 12, "Fuel" },
+ { 13, "Baggage" },
+ { 14, "Catering" },
+ { 15, "Aircraft maintenance" },
+ { 16, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I011_300_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_011_300_VALUE, NULL };
+static const FieldPart *I011_300_PARTS[] = {
+ &I011_300_VALUE,
+ NULL
+};
+static const AsterixField I011_300 = { FIXED, 1, 0, 0, &hf_011_300, I011_300_PARTS, { NULL } };
+static int hf_011_310 = -1;
+static int hf_011_310_TRB = -1;
+static const value_string valstr_011_310_TRB[] = {
+ { 0, "Default" },
+ { 1, "In Trouble" },
+ { 0, NULL }
+};
+static const FieldPart I011_310_TRB = { 1, 1.0, FIELD_PART_UINT, &hf_011_310_TRB, NULL };
+static int hf_011_310_MSG = -1;
+static const value_string valstr_011_310_MSG[] = {
+ { 1, "Towing aircraft" },
+ { 2, "FOLLOW-ME operation" },
+ { 3, "Runway check" },
+ { 4, "Emergency operation (fire, medical...)" },
+ { 5, "Work in progress (maintenance, birds scarer, sweepers...)" },
+ { 0, NULL }
+};
+static const FieldPart I011_310_MSG = { 7, 1.0, FIELD_PART_UINT, &hf_011_310_MSG, NULL };
+static const FieldPart *I011_310_PARTS[] = {
+ &I011_310_TRB,
+ &I011_310_MSG,
+ NULL
+};
+static const AsterixField I011_310 = { FIXED, 1, 0, 0, &hf_011_310, I011_310_PARTS, { NULL } };
+static int hf_011_380 = -1;
+static int hf_011_380_MB = -1;
+static int hf_011_380_MB_VALUE = -1;
+static const FieldPart I011_380_MB_VALUE = { 64, 1.0, FIELD_PART_HEX, &hf_011_380_MB_VALUE, NULL };
+static const FieldPart *I011_380_MB_PARTS[] = {
+ &I011_380_MB_VALUE,
+ NULL
+};
+static const AsterixField I011_380_MB = { REPETITIVE, 8, 1, 0, &hf_011_380_MB, I011_380_MB_PARTS, { NULL } };
+static int hf_011_380_ADR = -1;
+static int hf_011_380_ADR_VALUE = -1;
+static const FieldPart I011_380_ADR_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_011_380_ADR_VALUE, NULL };
+static const FieldPart *I011_380_ADR_PARTS[] = {
+ &I011_380_ADR_VALUE,
+ NULL
+};
+static const AsterixField I011_380_ADR = { FIXED, 3, 0, 0, &hf_011_380_ADR, I011_380_ADR_PARTS, { NULL } };
+static int hf_011_380_COMACAS = -1;
+static int hf_011_380_COMACAS_COM = -1;
+static const value_string valstr_011_380_COMACAS_COM[] = {
+ { 0, "No communications capability (surveillance only)" },
+ { 1, "Comm. A and Comm. B capability" },
+ { 2, "Comm. A, Comm. B and Uplink ELM" },
+ { 3, "Comm. A, Comm. B, Uplink ELM and Downlink ELM" },
+ { 4, "Level 5 Transponder capability" },
+ { 5, "Not assigned" },
+ { 6, "Not assigned" },
+ { 7, "Not assigned" },
+ { 0, NULL }
+};
+static const FieldPart I011_380_COMACAS_COM = { 3, 1.0, FIELD_PART_UINT, &hf_011_380_COMACAS_COM, NULL };
+static int hf_011_380_COMACAS_STAT = -1;
+static const value_string valstr_011_380_COMACAS_STAT[] = {
+ { 0, "No alert, no SPI, aircraft airborne" },
+ { 1, "No alert, no SPI, aircraft on ground" },
+ { 2, "Alert, no SPI, aircraft airborne" },
+ { 3, "Alert, no SPI, aircraft on ground" },
+ { 4, "Alert, SPI, aircraft airborne or on ground" },
+ { 5, "No alert, SPI, aircraft airborne or on ground" },
+ { 6, "General Emergency" },
+ { 7, "Lifeguard / medical" },
+ { 8, "Minimum fuel" },
+ { 9, "No communications" },
+ { 10, "Unlawful interference" },
+ { 0, NULL }
+};
+static const FieldPart I011_380_COMACAS_STAT = { 4, 1.0, FIELD_PART_UINT, &hf_011_380_COMACAS_STAT, NULL };
+static int hf_011_380_COMACAS_SSC = -1;
+static const value_string valstr_011_380_COMACAS_SSC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I011_380_COMACAS_SSC = { 1, 1.0, FIELD_PART_UINT, &hf_011_380_COMACAS_SSC, NULL };
+static int hf_011_380_COMACAS_ARC = -1;
+static const value_string valstr_011_380_COMACAS_ARC[] = {
+ { 0, "100 ft resolution" },
+ { 1, "25 ft resolution" },
+ { 0, NULL }
+};
+static const FieldPart I011_380_COMACAS_ARC = { 1, 1.0, FIELD_PART_UINT, &hf_011_380_COMACAS_ARC, NULL };
+static int hf_011_380_COMACAS_AIC = -1;
+static const value_string valstr_011_380_COMACAS_AIC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I011_380_COMACAS_AIC = { 1, 1.0, FIELD_PART_UINT, &hf_011_380_COMACAS_AIC, NULL };
+static int hf_011_380_COMACAS_B1A = -1;
+static const FieldPart I011_380_COMACAS_B1A = { 1, 1.0, FIELD_PART_HEX, &hf_011_380_COMACAS_B1A, NULL };
+static int hf_011_380_COMACAS_B1B = -1;
+static const FieldPart I011_380_COMACAS_B1B = { 4, 1.0, FIELD_PART_HEX, &hf_011_380_COMACAS_B1B, NULL };
+static int hf_011_380_COMACAS_AC = -1;
+static const value_string valstr_011_380_COMACAS_AC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I011_380_COMACAS_AC = { 1, 1.0, FIELD_PART_UINT, &hf_011_380_COMACAS_AC, NULL };
+static int hf_011_380_COMACAS_MN = -1;
+static const value_string valstr_011_380_COMACAS_MN[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I011_380_COMACAS_MN = { 1, 1.0, FIELD_PART_UINT, &hf_011_380_COMACAS_MN, NULL };
+static int hf_011_380_COMACAS_DC = -1;
+static const value_string valstr_011_380_COMACAS_DC[] = {
+ { 0, "Yes" },
+ { 1, "No" },
+ { 0, NULL }
+};
+static const FieldPart I011_380_COMACAS_DC = { 1, 1.0, FIELD_PART_UINT, &hf_011_380_COMACAS_DC, NULL };
+static const FieldPart *I011_380_COMACAS_PARTS[] = {
+ &I011_380_COMACAS_COM,
+ &I011_380_COMACAS_STAT,
+ &IXXX_1bit_spare,
+ &I011_380_COMACAS_SSC,
+ &I011_380_COMACAS_ARC,
+ &I011_380_COMACAS_AIC,
+ &I011_380_COMACAS_B1A,
+ &I011_380_COMACAS_B1B,
+ &I011_380_COMACAS_AC,
+ &I011_380_COMACAS_MN,
+ &I011_380_COMACAS_DC,
+ &IXXX_5bit_spare,
+ NULL
+};
+static const AsterixField I011_380_COMACAS = { FIXED, 3, 0, 0, &hf_011_380_COMACAS, I011_380_COMACAS_PARTS, { NULL } };
+static int hf_011_380_ACT = -1;
+static int hf_011_380_ACT_VALUE = -1;
+static const FieldPart I011_380_ACT_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_011_380_ACT_VALUE, NULL };
+static const FieldPart *I011_380_ACT_PARTS[] = {
+ &I011_380_ACT_VALUE,
+ NULL
+};
+static const AsterixField I011_380_ACT = { FIXED, 4, 0, 0, &hf_011_380_ACT, I011_380_ACT_PARTS, { NULL } };
+static int hf_011_380_ECAT = -1;
+static int hf_011_380_ECAT_VALUE = -1;
+static const value_string valstr_011_380_ECAT_VALUE[] = {
+ { 1, "Light aircraft <= 7000 kg" },
+ { 2, "Reserved" },
+ { 3, "7000 kg &lt; medium aircraft &lt; 136000 kg" },
+ { 4, "Reserved" },
+ { 5, "136000 kg <= heavy aircraft" },
+ { 6, "Highly manoeuvrable (5g acceleration capability) and high speed (&gt;400 knots cruise)" },
+ { 7, "Reserved" },
+ { 8, "Reserved" },
+ { 9, "Reserved" },
+ { 10, "Rotocraft" },
+ { 11, "Glider / sailplane" },
+ { 12, "Lighter-than-air" },
+ { 13, "Unmanned aerial vehicle" },
+ { 14, "Space / transatmospheric vehicle" },
+ { 15, "Ultralight / handglider / paraglider" },
+ { 16, "Parachutist / skydiver" },
+ { 17, "Reserved" },
+ { 18, "Reserved" },
+ { 19, "Reserved" },
+ { 20, "Surface emergency vehicle" },
+ { 21, "Surface service vehicle" },
+ { 22, "Fixed ground or tethered obstruction" },
+ { 23, "Reserved" },
+ { 24, "Reserved" },
+ { 0, NULL }
+};
+static const FieldPart I011_380_ECAT_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_011_380_ECAT_VALUE, NULL };
+static const FieldPart *I011_380_ECAT_PARTS[] = {
+ &I011_380_ECAT_VALUE,
+ NULL
+};
+static const AsterixField I011_380_ECAT = { FIXED, 1, 0, 0, &hf_011_380_ECAT, I011_380_ECAT_PARTS, { NULL } };
+static int hf_011_380_AVTECH = -1;
+static int hf_011_380_AVTECH_VDL = -1;
+static const value_string valstr_011_380_AVTECH_VDL[] = {
+ { 0, "VDL Mode 4 available" },
+ { 1, "VDL Mode 4 not available" },
+ { 0, NULL }
+};
+static const FieldPart I011_380_AVTECH_VDL = { 1, 1.0, FIELD_PART_UINT, &hf_011_380_AVTECH_VDL, NULL };
+static int hf_011_380_AVTECH_MDS = -1;
+static const value_string valstr_011_380_AVTECH_MDS[] = {
+ { 0, "Mode S available" },
+ { 1, "Mode S not available" },
+ { 0, NULL }
+};
+static const FieldPart I011_380_AVTECH_MDS = { 1, 1.0, FIELD_PART_UINT, &hf_011_380_AVTECH_MDS, NULL };
+static int hf_011_380_AVTECH_UAT = -1;
+static const value_string valstr_011_380_AVTECH_UAT[] = {
+ { 0, "UAT available" },
+ { 1, "UAT not available" },
+ { 0, NULL }
+};
+static const FieldPart I011_380_AVTECH_UAT = { 1, 1.0, FIELD_PART_UINT, &hf_011_380_AVTECH_UAT, NULL };
+static const FieldPart *I011_380_AVTECH_PARTS[] = {
+ &I011_380_AVTECH_VDL,
+ &I011_380_AVTECH_MDS,
+ &I011_380_AVTECH_UAT,
+ &IXXX_5bit_spare,
+ NULL
+};
+static const AsterixField I011_380_AVTECH = { FIXED, 1, 0, 0, &hf_011_380_AVTECH, I011_380_AVTECH_PARTS, { NULL } };
+static const AsterixField I011_380 = { COMPOUND, 0, 0, 0, &hf_011_380, NULL, { &I011_380_MB, &I011_380_ADR, &IX_SPARE, &I011_380_COMACAS, &IX_SPARE, &IX_SPARE, &IX_SPARE, &I011_380_ACT, &I011_380_ECAT, &IX_SPARE, &I011_380_AVTECH, NULL } };
+static int hf_011_390 = -1;
+static int hf_011_390_FPPSID = -1;
+static int hf_011_390_FPPSID_SAC = -1;
+static const FieldPart I011_390_FPPSID_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_011_390_FPPSID_SAC, NULL };
+static int hf_011_390_FPPSID_SIC = -1;
+static const FieldPart I011_390_FPPSID_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_011_390_FPPSID_SIC, NULL };
+static const FieldPart *I011_390_FPPSID_PARTS[] = {
+ &I011_390_FPPSID_SAC,
+ &I011_390_FPPSID_SIC,
+ NULL
+};
+static const AsterixField I011_390_FPPSID = { FIXED, 2, 0, 0, &hf_011_390_FPPSID, I011_390_FPPSID_PARTS, { NULL } };
+static int hf_011_390_CSN = -1;
+static int hf_011_390_CSN_VALUE = -1;
+static const FieldPart I011_390_CSN_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_011_390_CSN_VALUE, NULL };
+static const FieldPart *I011_390_CSN_PARTS[] = {
+ &I011_390_CSN_VALUE,
+ NULL
+};
+static const AsterixField I011_390_CSN = { FIXED, 7, 0, 0, &hf_011_390_CSN, I011_390_CSN_PARTS, { NULL } };
+static int hf_011_390_IFPSFLIGHTID = -1;
+static int hf_011_390_IFPSFLIGHTID_TYP = -1;
+static const value_string valstr_011_390_IFPSFLIGHTID_TYP[] = {
+ { 0, "Plan number" },
+ { 1, "Unit 1 internal flight number" },
+ { 2, "Unit 2 internal flight number" },
+ { 3, "Unit 3 internal flight number" },
+ { 0, NULL }
+};
+static const FieldPart I011_390_IFPSFLIGHTID_TYP = { 2, 1.0, FIELD_PART_UINT, &hf_011_390_IFPSFLIGHTID_TYP, NULL };
+static int hf_011_390_IFPSFLIGHTID_NBR = -1;
+static const FieldPart I011_390_IFPSFLIGHTID_NBR = { 27, 1.0, FIELD_PART_HEX, &hf_011_390_IFPSFLIGHTID_NBR, NULL };
+static const FieldPart *I011_390_IFPSFLIGHTID_PARTS[] = {
+ &I011_390_IFPSFLIGHTID_TYP,
+ &IXXX_3bit_spare,
+ &I011_390_IFPSFLIGHTID_NBR,
+ NULL
+};
+static const AsterixField I011_390_IFPSFLIGHTID = { FIXED, 4, 0, 0, &hf_011_390_IFPSFLIGHTID, I011_390_IFPSFLIGHTID_PARTS, { NULL } };
+static int hf_011_390_FLIGHTCAT = -1;
+static int hf_011_390_FLIGHTCAT_GATOAT = -1;
+static const value_string valstr_011_390_FLIGHTCAT_GATOAT[] = {
+ { 0, "Unknown" },
+ { 1, "General Air Traffic" },
+ { 2, "Operational Air Traffic" },
+ { 3, "Not applicable" },
+ { 0, NULL }
+};
+static const FieldPart I011_390_FLIGHTCAT_GATOAT = { 2, 1.0, FIELD_PART_UINT, &hf_011_390_FLIGHTCAT_GATOAT, NULL };
+static int hf_011_390_FLIGHTCAT_FR1FR2 = -1;
+static const value_string valstr_011_390_FLIGHTCAT_FR1FR2[] = {
+ { 0, "Instrument Flight Rules" },
+ { 1, "Visual Flight Rules" },
+ { 2, "Not applicable" },
+ { 3, "Controlled Visual Flight Rules" },
+ { 0, NULL }
+};
+static const FieldPart I011_390_FLIGHTCAT_FR1FR2 = { 2, 1.0, FIELD_PART_UINT, &hf_011_390_FLIGHTCAT_FR1FR2, NULL };
+static int hf_011_390_FLIGHTCAT_RVSM = -1;
+static const value_string valstr_011_390_FLIGHTCAT_RVSM[] = {
+ { 0, "Unknown" },
+ { 1, "Approved" },
+ { 2, "Exempt" },
+ { 3, "Not Approved" },
+ { 0, NULL }
+};
+static const FieldPart I011_390_FLIGHTCAT_RVSM = { 2, 1.0, FIELD_PART_UINT, &hf_011_390_FLIGHTCAT_RVSM, NULL };
+static int hf_011_390_FLIGHTCAT_HPR = -1;
+static const value_string valstr_011_390_FLIGHTCAT_HPR[] = {
+ { 0, "Normal Priority Flight" },
+ { 1, "High Priority Flight" },
+ { 0, NULL }
+};
+static const FieldPart I011_390_FLIGHTCAT_HPR = { 1, 1.0, FIELD_PART_UINT, &hf_011_390_FLIGHTCAT_HPR, NULL };
+static const FieldPart *I011_390_FLIGHTCAT_PARTS[] = {
+ &I011_390_FLIGHTCAT_GATOAT,
+ &I011_390_FLIGHTCAT_FR1FR2,
+ &I011_390_FLIGHTCAT_RVSM,
+ &I011_390_FLIGHTCAT_HPR,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I011_390_FLIGHTCAT = { FIXED, 1, 0, 0, &hf_011_390_FLIGHTCAT, I011_390_FLIGHTCAT_PARTS, { NULL } };
+static int hf_011_390_TOA = -1;
+static int hf_011_390_TOA_VALUE = -1;
+static const FieldPart I011_390_TOA_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_011_390_TOA_VALUE, NULL };
+static const FieldPart *I011_390_TOA_PARTS[] = {
+ &I011_390_TOA_VALUE,
+ NULL
+};
+static const AsterixField I011_390_TOA = { FIXED, 4, 0, 0, &hf_011_390_TOA, I011_390_TOA_PARTS, { NULL } };
+static int hf_011_390_WTC = -1;
+static int hf_011_390_WTC_VALUE = -1;
+static const value_string valstr_011_390_WTC_VALUE[] = {
+ { 76, "Light" },
+ { 77, "Medium" },
+ { 72, "Heavy" },
+ { 74, "Super" },
+ { 0, NULL }
+};
+static const FieldPart I011_390_WTC_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_011_390_WTC_VALUE, NULL };
+static const FieldPart *I011_390_WTC_PARTS[] = {
+ &I011_390_WTC_VALUE,
+ NULL
+};
+static const AsterixField I011_390_WTC = { FIXED, 1, 0, 0, &hf_011_390_WTC, I011_390_WTC_PARTS, { NULL } };
+static int hf_011_390_ADEP = -1;
+static int hf_011_390_ADEP_VALUE = -1;
+static const FieldPart I011_390_ADEP_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_011_390_ADEP_VALUE, NULL };
+static const FieldPart *I011_390_ADEP_PARTS[] = {
+ &I011_390_ADEP_VALUE,
+ NULL
+};
+static const AsterixField I011_390_ADEP = { FIXED, 4, 0, 0, &hf_011_390_ADEP, I011_390_ADEP_PARTS, { NULL } };
+static int hf_011_390_ADES = -1;
+static int hf_011_390_ADES_VALUE = -1;
+static const FieldPart I011_390_ADES_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_011_390_ADES_VALUE, NULL };
+static const FieldPart *I011_390_ADES_PARTS[] = {
+ &I011_390_ADES_VALUE,
+ NULL
+};
+static const AsterixField I011_390_ADES = { FIXED, 4, 0, 0, &hf_011_390_ADES, I011_390_ADES_PARTS, { NULL } };
+static int hf_011_390_RWY = -1;
+static int hf_011_390_RWY_VALUE = -1;
+static const FieldPart I011_390_RWY_VALUE = { 24, 1.0, FIELD_PART_ASCII, &hf_011_390_RWY_VALUE, NULL };
+static const FieldPart *I011_390_RWY_PARTS[] = {
+ &I011_390_RWY_VALUE,
+ NULL
+};
+static const AsterixField I011_390_RWY = { FIXED, 3, 0, 0, &hf_011_390_RWY, I011_390_RWY_PARTS, { NULL } };
+static int hf_011_390_CFL = -1;
+static int hf_011_390_CFL_VALUE = -1;
+static const FieldPart I011_390_CFL_VALUE = { 16, 0.25, FIELD_PART_UFLOAT, &hf_011_390_CFL_VALUE, NULL };
+static const FieldPart *I011_390_CFL_PARTS[] = {
+ &I011_390_CFL_VALUE,
+ NULL
+};
+static const AsterixField I011_390_CFL = { FIXED, 2, 0, 0, &hf_011_390_CFL, I011_390_CFL_PARTS, { NULL } };
+static int hf_011_390_CCP = -1;
+static int hf_011_390_CCP_CENTRE = -1;
+static const FieldPart I011_390_CCP_CENTRE = { 8, 1.0, FIELD_PART_HEX, &hf_011_390_CCP_CENTRE, NULL };
+static int hf_011_390_CCP_POSITION = -1;
+static const FieldPart I011_390_CCP_POSITION = { 8, 1.0, FIELD_PART_HEX, &hf_011_390_CCP_POSITION, NULL };
+static const FieldPart *I011_390_CCP_PARTS[] = {
+ &I011_390_CCP_CENTRE,
+ &I011_390_CCP_POSITION,
+ NULL
+};
+static const AsterixField I011_390_CCP = { FIXED, 2, 0, 0, &hf_011_390_CCP, I011_390_CCP_PARTS, { NULL } };
+static int hf_011_390_TOD = -1;
+static int hf_011_390_TOD_TYP = -1;
+static const value_string valstr_011_390_TOD_TYP[] = {
+ { 0, "Scheduled off-block time" },
+ { 1, "Estimated off-block time" },
+ { 2, "Estimated take-off time" },
+ { 3, "Actual off-block time" },
+ { 4, "Predicted time at runway hold" },
+ { 5, "Actual time at runway hold" },
+ { 6, "Actual line-up time" },
+ { 7, "Actual take-off time" },
+ { 8, "Estimated time of arrival" },
+ { 9, "Predicted landing time" },
+ { 10, "Actual landing time" },
+ { 11, "Actual time off runway" },
+ { 12, "Predicted time to gate" },
+ { 13, "Actual on-block time" },
+ { 0, NULL }
+};
+static const FieldPart I011_390_TOD_TYP = { 5, 1.0, FIELD_PART_UINT, &hf_011_390_TOD_TYP, NULL };
+static int hf_011_390_TOD_DAY = -1;
+static const value_string valstr_011_390_TOD_DAY[] = {
+ { 0, "Today" },
+ { 1, "Yesterday" },
+ { 2, "Tomorrow" },
+ { 0, NULL }
+};
+static const FieldPart I011_390_TOD_DAY = { 2, 1.0, FIELD_PART_UINT, &hf_011_390_TOD_DAY, NULL };
+static int hf_011_390_TOD_HOR = -1;
+static const FieldPart I011_390_TOD_HOR = { 5, 1.0, FIELD_PART_UINT, &hf_011_390_TOD_HOR, NULL };
+static int hf_011_390_TOD_MIN = -1;
+static const FieldPart I011_390_TOD_MIN = { 6, 1.0, FIELD_PART_UINT, &hf_011_390_TOD_MIN, NULL };
+static int hf_011_390_TOD_AVS = -1;
+static const value_string valstr_011_390_TOD_AVS[] = {
+ { 0, "Seconds available" },
+ { 1, "Seconds not available" },
+ { 0, NULL }
+};
+static const FieldPart I011_390_TOD_AVS = { 1, 1.0, FIELD_PART_UINT, &hf_011_390_TOD_AVS, NULL };
+static int hf_011_390_TOD_SEC = -1;
+static const FieldPart I011_390_TOD_SEC = { 6, 1.0, FIELD_PART_UINT, &hf_011_390_TOD_SEC, NULL };
+static const FieldPart *I011_390_TOD_PARTS[] = {
+ &I011_390_TOD_TYP,
+ &I011_390_TOD_DAY,
+ &IXXX_4bit_spare,
+ &I011_390_TOD_HOR,
+ &IXXX_2bit_spare,
+ &I011_390_TOD_MIN,
+ &I011_390_TOD_AVS,
+ &IXXX_1bit_spare,
+ &I011_390_TOD_SEC,
+ NULL
+};
+static const AsterixField I011_390_TOD = { REPETITIVE, 4, 1, 0, &hf_011_390_TOD, I011_390_TOD_PARTS, { NULL } };
+static int hf_011_390_AST = -1;
+static int hf_011_390_AST_VALUE = -1;
+static const FieldPart I011_390_AST_VALUE = { 48, 1.0, FIELD_PART_ASCII, &hf_011_390_AST_VALUE, NULL };
+static const FieldPart *I011_390_AST_PARTS[] = {
+ &I011_390_AST_VALUE,
+ NULL
+};
+static const AsterixField I011_390_AST = { FIXED, 6, 0, 0, &hf_011_390_AST, I011_390_AST_PARTS, { NULL } };
+static int hf_011_390_STS = -1;
+static int hf_011_390_STS_EMP = -1;
+static const value_string valstr_011_390_STS_EMP[] = {
+ { 0, "Empty" },
+ { 1, "Occupied" },
+ { 2, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I011_390_STS_EMP = { 2, 1.0, FIELD_PART_UINT, &hf_011_390_STS_EMP, NULL };
+static int hf_011_390_STS_AVL = -1;
+static const value_string valstr_011_390_STS_AVL[] = {
+ { 0, "Available" },
+ { 1, "Not available" },
+ { 2, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I011_390_STS_AVL = { 2, 1.0, FIELD_PART_UINT, &hf_011_390_STS_AVL, NULL };
+static const FieldPart *I011_390_STS_PARTS[] = {
+ &I011_390_STS_EMP,
+ &I011_390_STS_AVL,
+ &IXXX_4bit_spare,
+ NULL
+};
+static const AsterixField I011_390_STS = { FIXED, 1, 0, 0, &hf_011_390_STS, I011_390_STS_PARTS, { NULL } };
+static const AsterixField I011_390 = { COMPOUND, 0, 0, 0, &hf_011_390, NULL, { &I011_390_FPPSID, &I011_390_CSN, &I011_390_IFPSFLIGHTID, &I011_390_FLIGHTCAT, &I011_390_TOA, &I011_390_WTC, &I011_390_ADEP, &I011_390_ADES, &I011_390_RWY, &I011_390_CFL, &I011_390_CCP, &I011_390_TOD, &I011_390_AST, &I011_390_STS, NULL } };
+static int hf_011_430 = -1;
+static int hf_011_430_VALUE = -1;
+static const value_string valstr_011_430_VALUE[] = {
+ { 0, "Unknown" },
+ { 1, "On stand" },
+ { 2, "Taxiing for departure" },
+ { 3, "Taxiing for arrival" },
+ { 4, "Runway for departure" },
+ { 5, "Runway for arrival" },
+ { 6, "Hold for departure" },
+ { 7, "Hold for arrival" },
+ { 8, "Push back" },
+ { 9, "On finals" },
+ { 0, NULL }
+};
+static const FieldPart I011_430_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_011_430_VALUE, NULL };
+static const FieldPart *I011_430_PARTS[] = {
+ &I011_430_VALUE,
+ NULL
+};
+static const AsterixField I011_430 = { FIXED, 1, 0, 0, &hf_011_430, I011_430_PARTS, { NULL } };
+static int hf_011_500 = -1;
+static int hf_011_500_APC = -1;
+static int hf_011_500_APC_X = -1;
+static const FieldPart I011_500_APC_X = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_500_APC_X, NULL };
+static int hf_011_500_APC_Y = -1;
+static const FieldPart I011_500_APC_Y = { 8, 0.25, FIELD_PART_UFLOAT, &hf_011_500_APC_Y, NULL };
+static const FieldPart *I011_500_APC_PARTS[] = {
+ &I011_500_APC_X,
+ &I011_500_APC_Y,
+ NULL
+};
+static const AsterixField I011_500_APC = { FIXED, 2, 0, 0, &hf_011_500_APC, I011_500_APC_PARTS, { NULL } };
+static int hf_011_500_APW = -1;
+static int hf_011_500_APW_LAT = -1;
+static const FieldPart I011_500_APW_LAT = { 16, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_011_500_APW_LAT, NULL };
+static int hf_011_500_APW_LON = -1;
+static const FieldPart I011_500_APW_LON = { 16, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_011_500_APW_LON, NULL };
+static const FieldPart *I011_500_APW_PARTS[] = {
+ &I011_500_APW_LAT,
+ &I011_500_APW_LON,
+ NULL
+};
+static const AsterixField I011_500_APW = { FIXED, 4, 0, 0, &hf_011_500_APW, I011_500_APW_PARTS, { NULL } };
+static int hf_011_500_ATH = -1;
+static int hf_011_500_ATH_VALUE = -1;
+static const FieldPart I011_500_ATH_VALUE = { 16, 0.5, FIELD_PART_FLOAT, &hf_011_500_ATH_VALUE, NULL };
+static const FieldPart *I011_500_ATH_PARTS[] = {
+ &I011_500_ATH_VALUE,
+ NULL
+};
+static const AsterixField I011_500_ATH = { FIXED, 2, 0, 0, &hf_011_500_ATH, I011_500_ATH_PARTS, { NULL } };
+static int hf_011_500_AVC = -1;
+static int hf_011_500_AVC_X = -1;
+static const FieldPart I011_500_AVC_X = { 8, 0.1, FIELD_PART_UFLOAT, &hf_011_500_AVC_X, NULL };
+static int hf_011_500_AVC_Y = -1;
+static const FieldPart I011_500_AVC_Y = { 8, 0.1, FIELD_PART_UFLOAT, &hf_011_500_AVC_Y, NULL };
+static const FieldPart *I011_500_AVC_PARTS[] = {
+ &I011_500_AVC_X,
+ &I011_500_AVC_Y,
+ NULL
+};
+static const AsterixField I011_500_AVC = { FIXED, 2, 0, 0, &hf_011_500_AVC, I011_500_AVC_PARTS, { NULL } };
+static int hf_011_500_ARC = -1;
+static int hf_011_500_ARC_VALUE = -1;
+static const FieldPart I011_500_ARC_VALUE = { 16, 0.1, FIELD_PART_FLOAT, &hf_011_500_ARC_VALUE, NULL };
+static const FieldPart *I011_500_ARC_PARTS[] = {
+ &I011_500_ARC_VALUE,
+ NULL
+};
+static const AsterixField I011_500_ARC = { FIXED, 2, 0, 0, &hf_011_500_ARC, I011_500_ARC_PARTS, { NULL } };
+static int hf_011_500_AAC = -1;
+static int hf_011_500_AAC_X = -1;
+static const FieldPart I011_500_AAC_X = { 8, 0.01, FIELD_PART_UFLOAT, &hf_011_500_AAC_X, NULL };
+static int hf_011_500_AAC_Y = -1;
+static const FieldPart I011_500_AAC_Y = { 8, 0.01, FIELD_PART_UFLOAT, &hf_011_500_AAC_Y, NULL };
+static const FieldPart *I011_500_AAC_PARTS[] = {
+ &I011_500_AAC_X,
+ &I011_500_AAC_Y,
+ NULL
+};
+static const AsterixField I011_500_AAC = { FIXED, 2, 0, 0, &hf_011_500_AAC, I011_500_AAC_PARTS, { NULL } };
+static const AsterixField I011_500 = { COMPOUND, 0, 0, 0, &hf_011_500, NULL, { &I011_500_APC, &I011_500_APW, &I011_500_ATH, &I011_500_AVC, &I011_500_ARC, &I011_500_AAC, NULL } };
+static int hf_011_600 = -1;
+static int hf_011_600_ACK = -1;
+static const value_string valstr_011_600_ACK[] = {
+ { 0, "Alert acknowledged" },
+ { 1, "Alert not acknowledged" },
+ { 0, NULL }
+};
+static const FieldPart I011_600_ACK = { 1, 1.0, FIELD_PART_UINT, &hf_011_600_ACK, NULL };
+static int hf_011_600_SVR = -1;
+static const value_string valstr_011_600_SVR[] = {
+ { 0, "End fo alert" },
+ { 1, "Pre-alarm" },
+ { 2, "Severe alert" },
+ { 0, NULL }
+};
+static const FieldPart I011_600_SVR = { 2, 1.0, FIELD_PART_UINT, &hf_011_600_SVR, NULL };
+static int hf_011_600_AT = -1;
+static const FieldPart I011_600_AT = { 8, 1.0, FIELD_PART_HEX, &hf_011_600_AT, NULL };
+static int hf_011_600_AN = -1;
+static const FieldPart I011_600_AN = { 8, 1.0, FIELD_PART_HEX, &hf_011_600_AN, NULL };
+static const FieldPart *I011_600_PARTS[] = {
+ &I011_600_ACK,
+ &I011_600_SVR,
+ &IXXX_5bit_spare,
+ &I011_600_AT,
+ &I011_600_AN,
+ NULL
+};
+static const AsterixField I011_600 = { FIXED, 3, 0, 0, &hf_011_600, I011_600_PARTS, { NULL } };
+static int hf_011_605 = -1;
+static int hf_011_605_FTN = -1;
+static const FieldPart I011_605_FTN = { 12, 1.0, FIELD_PART_HEX, &hf_011_605_FTN, NULL };
+static const FieldPart *I011_605_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I011_605_FTN,
+ NULL
+};
+static const AsterixField I011_605 = { REPETITIVE, 2, 1, 0, &hf_011_605, I011_605_PARTS, { NULL } };
+static int hf_011_610 = -1;
+static int hf_011_610_BKN = -1;
+static const FieldPart I011_610_BKN = { 4, 1.0, FIELD_PART_HEX, &hf_011_610_BKN, NULL };
+static int hf_011_610_I1 = -1;
+static const value_string valstr_011_610_I1[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_610_I1 = { 1, 1.0, FIELD_PART_UINT, &hf_011_610_I1, NULL };
+static int hf_011_610_I2 = -1;
+static const value_string valstr_011_610_I2[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_610_I2 = { 1, 1.0, FIELD_PART_UINT, &hf_011_610_I2, NULL };
+static int hf_011_610_I3 = -1;
+static const value_string valstr_011_610_I3[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_610_I3 = { 1, 1.0, FIELD_PART_UINT, &hf_011_610_I3, NULL };
+static int hf_011_610_I4 = -1;
+static const value_string valstr_011_610_I4[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_610_I4 = { 1, 1.0, FIELD_PART_UINT, &hf_011_610_I4, NULL };
+static int hf_011_610_I5 = -1;
+static const value_string valstr_011_610_I5[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_610_I5 = { 1, 1.0, FIELD_PART_UINT, &hf_011_610_I5, NULL };
+static int hf_011_610_I6 = -1;
+static const value_string valstr_011_610_I6[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_610_I6 = { 1, 1.0, FIELD_PART_UINT, &hf_011_610_I6, NULL };
+static int hf_011_610_I7 = -1;
+static const value_string valstr_011_610_I7[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_610_I7 = { 1, 1.0, FIELD_PART_UINT, &hf_011_610_I7, NULL };
+static int hf_011_610_I8 = -1;
+static const value_string valstr_011_610_I8[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_610_I8 = { 1, 1.0, FIELD_PART_UINT, &hf_011_610_I8, NULL };
+static int hf_011_610_I9 = -1;
+static const value_string valstr_011_610_I9[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_610_I9 = { 1, 1.0, FIELD_PART_UINT, &hf_011_610_I9, NULL };
+static int hf_011_610_I10 = -1;
+static const value_string valstr_011_610_I10[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_610_I10 = { 1, 1.0, FIELD_PART_UINT, &hf_011_610_I10, NULL };
+static int hf_011_610_I11 = -1;
+static const value_string valstr_011_610_I11[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_610_I11 = { 1, 1.0, FIELD_PART_UINT, &hf_011_610_I11, NULL };
+static int hf_011_610_I12 = -1;
+static const value_string valstr_011_610_I12[] = {
+ { 0, "Indicator on" },
+ { 1, "Indicator off" },
+ { 0, NULL }
+};
+static const FieldPart I011_610_I12 = { 1, 1.0, FIELD_PART_UINT, &hf_011_610_I12, NULL };
+static const FieldPart *I011_610_PARTS[] = {
+ &I011_610_BKN,
+ &I011_610_I1,
+ &I011_610_I2,
+ &I011_610_I3,
+ &I011_610_I4,
+ &I011_610_I5,
+ &I011_610_I6,
+ &I011_610_I7,
+ &I011_610_I8,
+ &I011_610_I9,
+ &I011_610_I10,
+ &I011_610_I11,
+ &I011_610_I12,
+ NULL
+};
+static const AsterixField I011_610 = { REPETITIVE, 2, 1, 0, &hf_011_610, I011_610_PARTS, { NULL } };
+static int hf_011_SP = -1;
+static const AsterixField I011_SP = { EXP, 0, 0, 1, &hf_011_SP, NULL, { NULL } };
+static int hf_011_RE = -1;
+static const AsterixField I011_RE = { EXP, 0, 0, 1, &hf_011_RE, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I011_V1_3_uap[] = {
+ &I011_V1_3_010,
+ &I011_V1_3_000,
+ &I011_V1_3_015,
+ &I011_V1_3_140,
+ &I011_V1_3_041,
+ &I011_V1_3_042,
+ &I011_V1_3_202,
+ &I011_V1_3_210,
+ &I011_V1_3_060,
+ &I011_V1_3_245,
+ &I011_V1_3_380,
+ &I011_V1_3_161,
+ &I011_V1_3_170,
+ &I011_V1_3_290,
+ &I011_V1_3_430,
+ &I011_V1_3_090,
+ &I011_V1_3_093,
+ &I011_V1_3_092,
+ &I011_V1_3_215,
+ &I011_V1_3_270,
+ &I011_V1_3_390,
+ &I011_V1_3_300,
+ &I011_V1_3_310,
+ &I011_V1_3_500,
+ &I011_V1_3_600,
+ &I011_V1_3_605,
+ &I011_V1_3_610,
+ &I011_V1_3_SP,
+ &I011_V1_3_RE,
+ NULL
+};
+static const AsterixField **I011_V1_3[] = {
+ I011_V1_3_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I011_uap[] = {
+ &I011_010,
+ &I011_000,
+ &I011_015,
+ &I011_140,
+ &I011_041,
+ &I011_042,
+ &I011_202,
+ &I011_210,
+ &I011_060,
+ &I011_245,
+ &I011_380,
+ &I011_161,
+ &I011_170,
+ &I011_290,
+ &I011_430,
+ &I011_090,
+ &I011_093,
+ &I011_092,
+ &I011_215,
+ &I011_270,
+ &I011_390,
+ &I011_300,
+ &I011_310,
+ &I011_500,
+ &I011_600,
+ &I011_605,
+ &I011_610,
+ &I011_SP,
+ &I011_RE,
+ NULL
+};
+static const AsterixField **I011[] = {
+ I011_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 015, edition 1.0 */
+static int hf_015_V1_0_000 = -1;
+static int hf_015_V1_0_000_MT = -1;
+static const value_string valstr_015_V1_0_000_MT[] = {
+ { 1, "Measurement Plot" },
+ { 2, "Measurement Track" },
+ { 3, "Sensor Centric Plot" },
+ { 4, "Sensor Centric Track" },
+ { 5, "Track End Message" },
+ { 0, NULL }
+};
+static const FieldPart I015_V1_0_000_MT = { 7, 1.0, FIELD_PART_UINT, &hf_015_V1_0_000_MT, NULL };
+static int hf_015_V1_0_000_RG = -1;
+static const value_string valstr_015_V1_0_000_RG[] = {
+ { 0, "Periodic Report" },
+ { 1, "Event Driven Report" },
+ { 0, NULL }
+};
+static const FieldPart I015_V1_0_000_RG = { 1, 1.0, FIELD_PART_UINT, &hf_015_V1_0_000_RG, NULL };
+static const FieldPart *I015_V1_0_000_PARTS[] = {
+ &I015_V1_0_000_MT,
+ &I015_V1_0_000_RG,
+ NULL
+};
+static const AsterixField I015_V1_0_000 = { FIXED, 1, 0, 0, &hf_015_V1_0_000, I015_V1_0_000_PARTS, { NULL } };
+static int hf_015_V1_0_010 = -1;
+static int hf_015_V1_0_010_SAC = -1;
+static const FieldPart I015_V1_0_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_015_V1_0_010_SAC, NULL };
+static int hf_015_V1_0_010_SIC = -1;
+static const FieldPart I015_V1_0_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_015_V1_0_010_SIC, NULL };
+static const FieldPart *I015_V1_0_010_PARTS[] = {
+ &I015_V1_0_010_SAC,
+ &I015_V1_0_010_SIC,
+ NULL
+};
+static const AsterixField I015_V1_0_010 = { FIXED, 2, 0, 0, &hf_015_V1_0_010, I015_V1_0_010_PARTS, { NULL } };
+static int hf_015_V1_0_015 = -1;
+static int hf_015_V1_0_015_VALUE = -1;
+static const FieldPart I015_V1_0_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_015_V1_0_015_VALUE, NULL };
+static const FieldPart *I015_V1_0_015_PARTS[] = {
+ &I015_V1_0_015_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_015 = { FIXED, 1, 0, 0, &hf_015_V1_0_015, I015_V1_0_015_PARTS, { NULL } };
+static int hf_015_V1_0_020 = -1;
+static int hf_015_V1_0_020_MOMU = -1;
+static const value_string valstr_015_V1_0_020_MOMU[] = {
+ { 0, "Mono-Static Sensor" },
+ { 1, "Multi-Static Sensor" },
+ { 2, "Other" },
+ { 3, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I015_V1_0_020_MOMU = { 2, 1.0, FIELD_PART_UINT, &hf_015_V1_0_020_MOMU, NULL };
+static int hf_015_V1_0_020_TTAX = -1;
+static const value_string valstr_015_V1_0_020_TTAX[] = {
+ { 0, "Actual Target Report" },
+ { 1, "Reference Target" },
+ { 2, "Synthetic Target" },
+ { 3, "Simulated / Replayed Target" },
+ { 0, NULL }
+};
+static const FieldPart I015_V1_0_020_TTAX = { 2, 1.0, FIELD_PART_UINT, &hf_015_V1_0_020_TTAX, NULL };
+static int hf_015_V1_0_020_SCD = -1;
+static const value_string valstr_015_V1_0_020_SCD[] = {
+ { 0, "Unknown" },
+ { 1, "Forward" },
+ { 2, "Backward" },
+ { 3, "Static" },
+ { 0, NULL }
+};
+static const FieldPart I015_V1_0_020_SCD = { 2, 1.0, FIELD_PART_UINT, &hf_015_V1_0_020_SCD, NULL };
+static const FieldPart *I015_V1_0_020_PARTS[] = {
+ &I015_V1_0_020_MOMU,
+ &I015_V1_0_020_TTAX,
+ &I015_V1_0_020_SCD,
+ &IXXX_1bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I015_V1_0_020 = { FX, 1, 0, 0, &hf_015_V1_0_020, I015_V1_0_020_PARTS, { NULL } };
+static int hf_015_V1_0_030 = -1;
+static int hf_015_V1_0_030_Subitem = -1;
+static const FieldPart I015_V1_0_030_Subitem = { 7, 1.0, FIELD_PART_HEX, &hf_015_V1_0_030_Subitem, NULL };
+static const FieldPart *I015_V1_0_030_PARTS[] = {
+ &I015_V1_0_030_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I015_V1_0_030 = { FX, 1, 0, 0, &hf_015_V1_0_030, I015_V1_0_030_PARTS, { NULL } };
+static int hf_015_V1_0_050 = -1;
+static int hf_015_V1_0_050_UPD = -1;
+static const FieldPart I015_V1_0_050_UPD = { 14, 0.0078125, FIELD_PART_UFLOAT, &hf_015_V1_0_050_UPD, NULL };
+static const FieldPart *I015_V1_0_050_PARTS[] = {
+ &IXXX_2bit_spare,
+ &I015_V1_0_050_UPD,
+ NULL
+};
+static const AsterixField I015_V1_0_050 = { FIXED, 2, 0, 0, &hf_015_V1_0_050, I015_V1_0_050_PARTS, { NULL } };
+static int hf_015_V1_0_145 = -1;
+static int hf_015_V1_0_145_VALUE = -1;
+static const FieldPart I015_V1_0_145_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_015_V1_0_145_VALUE, NULL };
+static const FieldPart *I015_V1_0_145_PARTS[] = {
+ &I015_V1_0_145_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_145 = { FIXED, 3, 0, 0, &hf_015_V1_0_145, I015_V1_0_145_PARTS, { NULL } };
+static int hf_015_V1_0_161 = -1;
+static int hf_015_V1_0_161_VALUE = -1;
+static const FieldPart I015_V1_0_161_VALUE = { 16, 1.0, FIELD_PART_UINT, &hf_015_V1_0_161_VALUE, NULL };
+static const FieldPart *I015_V1_0_161_PARTS[] = {
+ &I015_V1_0_161_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_161 = { FIXED, 2, 0, 0, &hf_015_V1_0_161, I015_V1_0_161_PARTS, { NULL } };
+static int hf_015_V1_0_170 = -1;
+static int hf_015_V1_0_170_BIZ = -1;
+static const value_string valstr_015_V1_0_170_BIZ[] = {
+ { 0, "Target not in Blind Zone" },
+ { 1, "Target in Blind Zone" },
+ { 0, NULL }
+};
+static const FieldPart I015_V1_0_170_BIZ = { 1, 1.0, FIELD_PART_UINT, &hf_015_V1_0_170_BIZ, NULL };
+static int hf_015_V1_0_170_BAZ = -1;
+static const value_string valstr_015_V1_0_170_BAZ[] = {
+ { 0, "Target not in Blanked Zone" },
+ { 1, "Target in Blanked Zone" },
+ { 0, NULL }
+};
+static const FieldPart I015_V1_0_170_BAZ = { 1, 1.0, FIELD_PART_UINT, &hf_015_V1_0_170_BAZ, NULL };
+static int hf_015_V1_0_170_TUR = -1;
+static const value_string valstr_015_V1_0_170_TUR[] = {
+ { 0, "Track Alive" },
+ { 1, "Track Terminated by User Request" },
+ { 0, NULL }
+};
+static const FieldPart I015_V1_0_170_TUR = { 1, 1.0, FIELD_PART_UINT, &hf_015_V1_0_170_TUR, NULL };
+static int hf_015_V1_0_170_CSTP = -1;
+static const value_string valstr_015_V1_0_170_CSTP[] = {
+ { 0, "Not extrapolated" },
+ { 1, "Extrapolated" },
+ { 0, NULL }
+};
+static const FieldPart I015_V1_0_170_CSTP = { 1, 1.0, FIELD_PART_UINT, &hf_015_V1_0_170_CSTP, NULL };
+static int hf_015_V1_0_170_CSTH = -1;
+static const value_string valstr_015_V1_0_170_CSTH[] = {
+ { 0, "Not extrapolated" },
+ { 1, "Extrapolated" },
+ { 0, NULL }
+};
+static const FieldPart I015_V1_0_170_CSTH = { 1, 1.0, FIELD_PART_UINT, &hf_015_V1_0_170_CSTH, NULL };
+static int hf_015_V1_0_170_CNF = -1;
+static const value_string valstr_015_V1_0_170_CNF[] = {
+ { 0, "Confirmed Track" },
+ { 1, "Tentative Track" },
+ { 0, NULL }
+};
+static const FieldPart I015_V1_0_170_CNF = { 1, 1.0, FIELD_PART_UINT, &hf_015_V1_0_170_CNF, NULL };
+static const FieldPart *I015_V1_0_170_PARTS[] = {
+ &I015_V1_0_170_BIZ,
+ &I015_V1_0_170_BAZ,
+ &I015_V1_0_170_TUR,
+ &IXXX_1bit_spare,
+ &I015_V1_0_170_CSTP,
+ &I015_V1_0_170_CSTH,
+ &I015_V1_0_170_CNF,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I015_V1_0_170 = { FX, 1, 0, 0, &hf_015_V1_0_170, I015_V1_0_170_PARTS, { NULL } };
+static int hf_015_V1_0_270 = -1;
+static int hf_015_V1_0_270_LEN = -1;
+static int hf_015_V1_0_270_LEN_VALUE = -1;
+static const FieldPart I015_V1_0_270_LEN_VALUE = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_0_270_LEN_VALUE, NULL };
+static const FieldPart *I015_V1_0_270_LEN_PARTS[] = {
+ &I015_V1_0_270_LEN_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_270_LEN = { FIXED, 2, 0, 0, &hf_015_V1_0_270_LEN, I015_V1_0_270_LEN_PARTS, { NULL } };
+static int hf_015_V1_0_270_WDT = -1;
+static int hf_015_V1_0_270_WDT_VALUE = -1;
+static const FieldPart I015_V1_0_270_WDT_VALUE = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_0_270_WDT_VALUE, NULL };
+static const FieldPart *I015_V1_0_270_WDT_PARTS[] = {
+ &I015_V1_0_270_WDT_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_270_WDT = { FIXED, 2, 0, 0, &hf_015_V1_0_270_WDT, I015_V1_0_270_WDT_PARTS, { NULL } };
+static int hf_015_V1_0_270_HGT = -1;
+static int hf_015_V1_0_270_HGT_VALUE = -1;
+static const FieldPart I015_V1_0_270_HGT_VALUE = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_0_270_HGT_VALUE, NULL };
+static const FieldPart *I015_V1_0_270_HGT_PARTS[] = {
+ &I015_V1_0_270_HGT_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_270_HGT = { FIXED, 2, 0, 0, &hf_015_V1_0_270_HGT, I015_V1_0_270_HGT_PARTS, { NULL } };
+static int hf_015_V1_0_270_ORT = -1;
+static int hf_015_V1_0_270_ORT_VALUE = -1;
+static const FieldPart I015_V1_0_270_ORT_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_015_V1_0_270_ORT_VALUE, NULL };
+static const FieldPart *I015_V1_0_270_ORT_PARTS[] = {
+ &I015_V1_0_270_ORT_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_270_ORT = { FIXED, 2, 0, 0, &hf_015_V1_0_270_ORT, I015_V1_0_270_ORT_PARTS, { NULL } };
+static const AsterixField I015_V1_0_270 = { COMPOUND, 0, 0, 0, &hf_015_V1_0_270, NULL, { &I015_V1_0_270_LEN, &I015_V1_0_270_WDT, &I015_V1_0_270_HGT, &I015_V1_0_270_ORT, NULL } };
+static int hf_015_V1_0_300 = -1;
+static int hf_015_V1_0_300_CLS = -1;
+static const FieldPart I015_V1_0_300_CLS = { 9, 1.0, FIELD_PART_UINT, &hf_015_V1_0_300_CLS, NULL };
+static int hf_015_V1_0_300_PRB = -1;
+static const FieldPart I015_V1_0_300_PRB = { 7, 1.0, FIELD_PART_UINT, &hf_015_V1_0_300_PRB, NULL };
+static const FieldPart *I015_V1_0_300_PARTS[] = {
+ &I015_V1_0_300_CLS,
+ &I015_V1_0_300_PRB,
+ NULL
+};
+static const AsterixField I015_V1_0_300 = { REPETITIVE, 2, 1, 0, &hf_015_V1_0_300, I015_V1_0_300_PARTS, { NULL } };
+static int hf_015_V1_0_400 = -1;
+static int hf_015_V1_0_400_PID = -1;
+static const FieldPart I015_V1_0_400_PID = { 16, 1.0, FIELD_PART_UINT, &hf_015_V1_0_400_PID, NULL };
+static int hf_015_V1_0_400_ON = -1;
+static const FieldPart I015_V1_0_400_ON = { 24, 1.0, FIELD_PART_UINT, &hf_015_V1_0_400_ON, NULL };
+static const FieldPart *I015_V1_0_400_PARTS[] = {
+ &I015_V1_0_400_PID,
+ &I015_V1_0_400_ON,
+ NULL
+};
+static const AsterixField I015_V1_0_400 = { FIXED, 5, 0, 0, &hf_015_V1_0_400, I015_V1_0_400_PARTS, { NULL } };
+static int hf_015_V1_0_480 = -1;
+static int hf_015_V1_0_480_VALUE = -1;
+static const FieldPart I015_V1_0_480_VALUE = { 40, 1.0, FIELD_PART_HEX, &hf_015_V1_0_480_VALUE, NULL };
+static const FieldPart *I015_V1_0_480_PARTS[] = {
+ &I015_V1_0_480_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_480 = { REPETITIVE, 5, 1, 0, &hf_015_V1_0_480, I015_V1_0_480_PARTS, { NULL } };
+static int hf_015_V1_0_600 = -1;
+static int hf_015_V1_0_600_P84 = -1;
+static int hf_015_V1_0_600_P84_LATITUDE = -1;
+static const FieldPart I015_V1_0_600_P84_LATITUDE = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_015_V1_0_600_P84_LATITUDE, NULL };
+static int hf_015_V1_0_600_P84_LONGITUDE = -1;
+static const FieldPart I015_V1_0_600_P84_LONGITUDE = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_015_V1_0_600_P84_LONGITUDE, NULL };
+static const FieldPart *I015_V1_0_600_P84_PARTS[] = {
+ &I015_V1_0_600_P84_LATITUDE,
+ &I015_V1_0_600_P84_LONGITUDE,
+ NULL
+};
+static const AsterixField I015_V1_0_600_P84 = { FIXED, 8, 0, 0, &hf_015_V1_0_600_P84, I015_V1_0_600_P84_PARTS, { NULL } };
+static int hf_015_V1_0_600_HPR = -1;
+static int hf_015_V1_0_600_HPR_RSHPX = -1;
+static const FieldPart I015_V1_0_600_HPR_RSHPX = { 16, 0.5, FIELD_PART_UFLOAT, &hf_015_V1_0_600_HPR_RSHPX, NULL };
+static int hf_015_V1_0_600_HPR_RSHPY = -1;
+static const FieldPart I015_V1_0_600_HPR_RSHPY = { 16, 0.5, FIELD_PART_UFLOAT, &hf_015_V1_0_600_HPR_RSHPY, NULL };
+static int hf_015_V1_0_600_HPR_CORSHPXY = -1;
+static const FieldPart I015_V1_0_600_HPR_CORSHPXY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_600_HPR_CORSHPXY, NULL };
+static const FieldPart *I015_V1_0_600_HPR_PARTS[] = {
+ &I015_V1_0_600_HPR_RSHPX,
+ &I015_V1_0_600_HPR_RSHPY,
+ &I015_V1_0_600_HPR_CORSHPXY,
+ NULL
+};
+static const AsterixField I015_V1_0_600_HPR = { FIXED, 5, 0, 0, &hf_015_V1_0_600_HPR, I015_V1_0_600_HPR_PARTS, { NULL } };
+static int hf_015_V1_0_600_HPP = -1;
+static int hf_015_V1_0_600_HPP_SDHPX = -1;
+static const FieldPart I015_V1_0_600_HPP_SDHPX = { 16, 0.25, FIELD_PART_UFLOAT, &hf_015_V1_0_600_HPP_SDHPX, NULL };
+static int hf_015_V1_0_600_HPP_SDHPY = -1;
+static const FieldPart I015_V1_0_600_HPP_SDHPY = { 16, 0.25, FIELD_PART_UFLOAT, &hf_015_V1_0_600_HPP_SDHPY, NULL };
+static int hf_015_V1_0_600_HPP_COSDHPXY = -1;
+static const FieldPart I015_V1_0_600_HPP_COSDHPXY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_600_HPP_COSDHPXY, NULL };
+static const FieldPart *I015_V1_0_600_HPP_PARTS[] = {
+ &I015_V1_0_600_HPP_SDHPX,
+ &I015_V1_0_600_HPP_SDHPY,
+ &I015_V1_0_600_HPP_COSDHPXY,
+ NULL
+};
+static const AsterixField I015_V1_0_600_HPP = { FIXED, 5, 0, 0, &hf_015_V1_0_600_HPP, I015_V1_0_600_HPP_PARTS, { NULL } };
+static const AsterixField I015_V1_0_600 = { COMPOUND, 0, 0, 0, &hf_015_V1_0_600, NULL, { &I015_V1_0_600_P84, &I015_V1_0_600_HPR, &I015_V1_0_600_HPP, NULL } };
+static int hf_015_V1_0_601 = -1;
+static int hf_015_V1_0_601_GH = -1;
+static int hf_015_V1_0_601_GH_VALUE = -1;
+static const FieldPart I015_V1_0_601_GH_VALUE = { 24, 0.01, FIELD_PART_FLOAT, &hf_015_V1_0_601_GH_VALUE, NULL };
+static const FieldPart *I015_V1_0_601_GH_PARTS[] = {
+ &I015_V1_0_601_GH_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_601_GH = { FIXED, 3, 0, 0, &hf_015_V1_0_601_GH, I015_V1_0_601_GH_PARTS, { NULL } };
+static int hf_015_V1_0_601_RSGH = -1;
+static int hf_015_V1_0_601_RSGH_VALUE = -1;
+static const FieldPart I015_V1_0_601_RSGH_VALUE = { 24, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_0_601_RSGH_VALUE, NULL };
+static const FieldPart *I015_V1_0_601_RSGH_PARTS[] = {
+ &I015_V1_0_601_RSGH_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_601_RSGH = { FIXED, 3, 0, 0, &hf_015_V1_0_601_RSGH, I015_V1_0_601_RSGH_PARTS, { NULL } };
+static int hf_015_V1_0_601_SDGH = -1;
+static int hf_015_V1_0_601_SDGH_VALUE = -1;
+static const FieldPart I015_V1_0_601_SDGH_VALUE = { 24, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_0_601_SDGH_VALUE, NULL };
+static const FieldPart *I015_V1_0_601_SDGH_PARTS[] = {
+ &I015_V1_0_601_SDGH_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_601_SDGH = { FIXED, 3, 0, 0, &hf_015_V1_0_601_SDGH, I015_V1_0_601_SDGH_PARTS, { NULL } };
+static int hf_015_V1_0_601_CI6 = -1;
+static int hf_015_V1_0_601_CI6_UCI6 = -1;
+static const FieldPart I015_V1_0_601_CI6_UCI6 = { 12, 16.0, FIELD_PART_UFLOAT, &hf_015_V1_0_601_CI6_UCI6, NULL };
+static int hf_015_V1_0_601_CI6_LCI6 = -1;
+static const FieldPart I015_V1_0_601_CI6_LCI6 = { 12, 16.0, FIELD_PART_UFLOAT, &hf_015_V1_0_601_CI6_LCI6, NULL };
+static const FieldPart *I015_V1_0_601_CI6_PARTS[] = {
+ &I015_V1_0_601_CI6_UCI6,
+ &I015_V1_0_601_CI6_LCI6,
+ NULL
+};
+static const AsterixField I015_V1_0_601_CI6 = { FIXED, 3, 0, 0, &hf_015_V1_0_601_CI6, I015_V1_0_601_CI6_PARTS, { NULL } };
+static int hf_015_V1_0_601_CI9 = -1;
+static int hf_015_V1_0_601_CI9_UCI9 = -1;
+static const FieldPart I015_V1_0_601_CI9_UCI9 = { 12, 16.0, FIELD_PART_UFLOAT, &hf_015_V1_0_601_CI9_UCI9, NULL };
+static int hf_015_V1_0_601_CI9_LCI9 = -1;
+static const FieldPart I015_V1_0_601_CI9_LCI9 = { 12, 16.0, FIELD_PART_UFLOAT, &hf_015_V1_0_601_CI9_LCI9, NULL };
+static const FieldPart *I015_V1_0_601_CI9_PARTS[] = {
+ &I015_V1_0_601_CI9_UCI9,
+ &I015_V1_0_601_CI9_LCI9,
+ NULL
+};
+static const AsterixField I015_V1_0_601_CI9 = { FIXED, 3, 0, 0, &hf_015_V1_0_601_CI9, I015_V1_0_601_CI9_PARTS, { NULL } };
+static int hf_015_V1_0_601_COGHHP = -1;
+static int hf_015_V1_0_601_COGHHP_X = -1;
+static const FieldPart I015_V1_0_601_COGHHP_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_601_COGHHP_X, NULL };
+static int hf_015_V1_0_601_COGHHP_Y = -1;
+static const FieldPart I015_V1_0_601_COGHHP_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_601_COGHHP_Y, NULL };
+static const FieldPart *I015_V1_0_601_COGHHP_PARTS[] = {
+ &I015_V1_0_601_COGHHP_X,
+ &I015_V1_0_601_COGHHP_Y,
+ NULL
+};
+static const AsterixField I015_V1_0_601_COGHHP = { FIXED, 2, 0, 0, &hf_015_V1_0_601_COGHHP, I015_V1_0_601_COGHHP_PARTS, { NULL } };
+static int hf_015_V1_0_601_COGHHV = -1;
+static int hf_015_V1_0_601_COGHHV_X = -1;
+static const FieldPart I015_V1_0_601_COGHHV_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_601_COGHHV_X, NULL };
+static int hf_015_V1_0_601_COGHHV_Y = -1;
+static const FieldPart I015_V1_0_601_COGHHV_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_601_COGHHV_Y, NULL };
+static const FieldPart *I015_V1_0_601_COGHHV_PARTS[] = {
+ &I015_V1_0_601_COGHHV_X,
+ &I015_V1_0_601_COGHHV_Y,
+ NULL
+};
+static const AsterixField I015_V1_0_601_COGHHV = { FIXED, 2, 0, 0, &hf_015_V1_0_601_COGHHV, I015_V1_0_601_COGHHV_PARTS, { NULL } };
+static int hf_015_V1_0_601_COGHHA = -1;
+static int hf_015_V1_0_601_COGHHA_X = -1;
+static const FieldPart I015_V1_0_601_COGHHA_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_601_COGHHA_X, NULL };
+static int hf_015_V1_0_601_COGHHA_Y = -1;
+static const FieldPart I015_V1_0_601_COGHHA_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_601_COGHHA_Y, NULL };
+static const FieldPart *I015_V1_0_601_COGHHA_PARTS[] = {
+ &I015_V1_0_601_COGHHA_X,
+ &I015_V1_0_601_COGHHA_Y,
+ NULL
+};
+static const AsterixField I015_V1_0_601_COGHHA = { FIXED, 2, 0, 0, &hf_015_V1_0_601_COGHHA, I015_V1_0_601_COGHHA_PARTS, { NULL } };
+static const AsterixField I015_V1_0_601 = { COMPOUND, 0, 0, 0, &hf_015_V1_0_601, NULL, { &I015_V1_0_601_GH, &I015_V1_0_601_RSGH, &I015_V1_0_601_SDGH, &I015_V1_0_601_CI6, &I015_V1_0_601_CI9, &I015_V1_0_601_COGHHP, &I015_V1_0_601_COGHHV, &I015_V1_0_601_COGHHA, NULL } };
+static int hf_015_V1_0_602 = -1;
+static int hf_015_V1_0_602_HV = -1;
+static int hf_015_V1_0_602_HV_X = -1;
+static const FieldPart I015_V1_0_602_HV_X = { 20, 0.01, FIELD_PART_FLOAT, &hf_015_V1_0_602_HV_X, NULL };
+static int hf_015_V1_0_602_HV_Y = -1;
+static const FieldPart I015_V1_0_602_HV_Y = { 20, 0.01, FIELD_PART_FLOAT, &hf_015_V1_0_602_HV_Y, NULL };
+static const FieldPart *I015_V1_0_602_HV_PARTS[] = {
+ &I015_V1_0_602_HV_X,
+ &I015_V1_0_602_HV_Y,
+ NULL
+};
+static const AsterixField I015_V1_0_602_HV = { FIXED, 5, 0, 0, &hf_015_V1_0_602_HV, I015_V1_0_602_HV_PARTS, { NULL } };
+static int hf_015_V1_0_602_RSHV = -1;
+static int hf_015_V1_0_602_RSHV_X = -1;
+static const FieldPart I015_V1_0_602_RSHV_X = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_0_602_RSHV_X, NULL };
+static int hf_015_V1_0_602_RSHV_Y = -1;
+static const FieldPart I015_V1_0_602_RSHV_Y = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_0_602_RSHV_Y, NULL };
+static int hf_015_V1_0_602_RSHV_CORSHVXY = -1;
+static const FieldPart I015_V1_0_602_RSHV_CORSHVXY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_602_RSHV_CORSHVXY, NULL };
+static const FieldPart *I015_V1_0_602_RSHV_PARTS[] = {
+ &I015_V1_0_602_RSHV_X,
+ &I015_V1_0_602_RSHV_Y,
+ &I015_V1_0_602_RSHV_CORSHVXY,
+ NULL
+};
+static const AsterixField I015_V1_0_602_RSHV = { FIXED, 5, 0, 0, &hf_015_V1_0_602_RSHV, I015_V1_0_602_RSHV_PARTS, { NULL } };
+static int hf_015_V1_0_602_SDHV = -1;
+static int hf_015_V1_0_602_SDHV_X = -1;
+static const FieldPart I015_V1_0_602_SDHV_X = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_0_602_SDHV_X, NULL };
+static int hf_015_V1_0_602_SDHV_Y = -1;
+static const FieldPart I015_V1_0_602_SDHV_Y = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_0_602_SDHV_Y, NULL };
+static int hf_015_V1_0_602_SDHV_COHVXY = -1;
+static const FieldPart I015_V1_0_602_SDHV_COHVXY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_602_SDHV_COHVXY, NULL };
+static const FieldPart *I015_V1_0_602_SDHV_PARTS[] = {
+ &I015_V1_0_602_SDHV_X,
+ &I015_V1_0_602_SDHV_Y,
+ &I015_V1_0_602_SDHV_COHVXY,
+ NULL
+};
+static const AsterixField I015_V1_0_602_SDHV = { FIXED, 5, 0, 0, &hf_015_V1_0_602_SDHV, I015_V1_0_602_SDHV_PARTS, { NULL } };
+static int hf_015_V1_0_602_COHVHP = -1;
+static int hf_015_V1_0_602_COHVHP_COHVXHPX = -1;
+static const FieldPart I015_V1_0_602_COHVHP_COHVXHPX = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_602_COHVHP_COHVXHPX, NULL };
+static int hf_015_V1_0_602_COHVHP_COHVXHPY = -1;
+static const FieldPart I015_V1_0_602_COHVHP_COHVXHPY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_602_COHVHP_COHVXHPY, NULL };
+static int hf_015_V1_0_602_COHVHP_COHVYHPX = -1;
+static const FieldPart I015_V1_0_602_COHVHP_COHVYHPX = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_602_COHVHP_COHVYHPX, NULL };
+static int hf_015_V1_0_602_COHVHP_COHVYHPY = -1;
+static const FieldPart I015_V1_0_602_COHVHP_COHVYHPY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_602_COHVHP_COHVYHPY, NULL };
+static const FieldPart *I015_V1_0_602_COHVHP_PARTS[] = {
+ &I015_V1_0_602_COHVHP_COHVXHPX,
+ &I015_V1_0_602_COHVHP_COHVXHPY,
+ &I015_V1_0_602_COHVHP_COHVYHPX,
+ &I015_V1_0_602_COHVHP_COHVYHPY,
+ NULL
+};
+static const AsterixField I015_V1_0_602_COHVHP = { FIXED, 4, 0, 0, &hf_015_V1_0_602_COHVHP, I015_V1_0_602_COHVHP_PARTS, { NULL } };
+static const AsterixField I015_V1_0_602 = { COMPOUND, 0, 0, 0, &hf_015_V1_0_602, NULL, { &I015_V1_0_602_HV, &I015_V1_0_602_RSHV, &I015_V1_0_602_SDHV, &I015_V1_0_602_COHVHP, NULL } };
+static int hf_015_V1_0_603 = -1;
+static int hf_015_V1_0_603_HA = -1;
+static int hf_015_V1_0_603_HA_X = -1;
+static const FieldPart I015_V1_0_603_HA_X = { 12, 0.0625, FIELD_PART_FLOAT, &hf_015_V1_0_603_HA_X, NULL };
+static int hf_015_V1_0_603_HA_Y = -1;
+static const FieldPart I015_V1_0_603_HA_Y = { 12, 0.0625, FIELD_PART_FLOAT, &hf_015_V1_0_603_HA_Y, NULL };
+static const FieldPart *I015_V1_0_603_HA_PARTS[] = {
+ &I015_V1_0_603_HA_X,
+ &I015_V1_0_603_HA_Y,
+ NULL
+};
+static const AsterixField I015_V1_0_603_HA = { FIXED, 3, 0, 0, &hf_015_V1_0_603_HA, I015_V1_0_603_HA_PARTS, { NULL } };
+static int hf_015_V1_0_603_SDHA = -1;
+static int hf_015_V1_0_603_SDHA_X = -1;
+static const FieldPart I015_V1_0_603_SDHA_X = { 12, 0.0625, FIELD_PART_UFLOAT, &hf_015_V1_0_603_SDHA_X, NULL };
+static int hf_015_V1_0_603_SDHA_Y = -1;
+static const FieldPart I015_V1_0_603_SDHA_Y = { 12, 0.0625, FIELD_PART_UFLOAT, &hf_015_V1_0_603_SDHA_Y, NULL };
+static int hf_015_V1_0_603_SDHA_COHAXY = -1;
+static const FieldPart I015_V1_0_603_SDHA_COHAXY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_603_SDHA_COHAXY, NULL };
+static const FieldPart *I015_V1_0_603_SDHA_PARTS[] = {
+ &I015_V1_0_603_SDHA_X,
+ &I015_V1_0_603_SDHA_Y,
+ &I015_V1_0_603_SDHA_COHAXY,
+ NULL
+};
+static const AsterixField I015_V1_0_603_SDHA = { FIXED, 4, 0, 0, &hf_015_V1_0_603_SDHA, I015_V1_0_603_SDHA_PARTS, { NULL } };
+static int hf_015_V1_0_603_COHAHP = -1;
+static int hf_015_V1_0_603_COHAHP_COHAXHPX = -1;
+static const FieldPart I015_V1_0_603_COHAHP_COHAXHPX = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_603_COHAHP_COHAXHPX, NULL };
+static int hf_015_V1_0_603_COHAHP_COHAXHPY = -1;
+static const FieldPart I015_V1_0_603_COHAHP_COHAXHPY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_603_COHAHP_COHAXHPY, NULL };
+static int hf_015_V1_0_603_COHAHP_COHAYHPX = -1;
+static const FieldPart I015_V1_0_603_COHAHP_COHAYHPX = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_603_COHAHP_COHAYHPX, NULL };
+static int hf_015_V1_0_603_COHAHP_COAYHPY = -1;
+static const FieldPart I015_V1_0_603_COHAHP_COAYHPY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_603_COHAHP_COAYHPY, NULL };
+static const FieldPart *I015_V1_0_603_COHAHP_PARTS[] = {
+ &I015_V1_0_603_COHAHP_COHAXHPX,
+ &I015_V1_0_603_COHAHP_COHAXHPY,
+ &I015_V1_0_603_COHAHP_COHAYHPX,
+ &I015_V1_0_603_COHAHP_COAYHPY,
+ NULL
+};
+static const AsterixField I015_V1_0_603_COHAHP = { FIXED, 4, 0, 0, &hf_015_V1_0_603_COHAHP, I015_V1_0_603_COHAHP_PARTS, { NULL } };
+static int hf_015_V1_0_603_COHAHV = -1;
+static int hf_015_V1_0_603_COHAHV_COHAXHVX = -1;
+static const FieldPart I015_V1_0_603_COHAHV_COHAXHVX = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_603_COHAHV_COHAXHVX, NULL };
+static int hf_015_V1_0_603_COHAHV_COHAXHVY = -1;
+static const FieldPart I015_V1_0_603_COHAHV_COHAXHVY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_603_COHAHV_COHAXHVY, NULL };
+static int hf_015_V1_0_603_COHAHV_COHAYHVX = -1;
+static const FieldPart I015_V1_0_603_COHAHV_COHAYHVX = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_603_COHAHV_COHAYHVX, NULL };
+static int hf_015_V1_0_603_COHAHV_COHAYHVY = -1;
+static const FieldPart I015_V1_0_603_COHAHV_COHAYHVY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_603_COHAHV_COHAYHVY, NULL };
+static const FieldPart *I015_V1_0_603_COHAHV_PARTS[] = {
+ &I015_V1_0_603_COHAHV_COHAXHVX,
+ &I015_V1_0_603_COHAHV_COHAXHVY,
+ &I015_V1_0_603_COHAHV_COHAYHVX,
+ &I015_V1_0_603_COHAHV_COHAYHVY,
+ NULL
+};
+static const AsterixField I015_V1_0_603_COHAHV = { FIXED, 4, 0, 0, &hf_015_V1_0_603_COHAHV, I015_V1_0_603_COHAHV_PARTS, { NULL } };
+static const AsterixField I015_V1_0_603 = { COMPOUND, 0, 0, 0, &hf_015_V1_0_603, NULL, { &I015_V1_0_603_HA, &I015_V1_0_603_SDHA, &I015_V1_0_603_COHAHP, &I015_V1_0_603_COHAHV, NULL } };
+static int hf_015_V1_0_604 = -1;
+static int hf_015_V1_0_604_VV = -1;
+static int hf_015_V1_0_604_VV_VALUE = -1;
+static const FieldPart I015_V1_0_604_VV_VALUE = { 24, 0.01, FIELD_PART_FLOAT, &hf_015_V1_0_604_VV_VALUE, NULL };
+static const FieldPart *I015_V1_0_604_VV_PARTS[] = {
+ &I015_V1_0_604_VV_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_604_VV = { FIXED, 3, 0, 0, &hf_015_V1_0_604_VV, I015_V1_0_604_VV_PARTS, { NULL } };
+static int hf_015_V1_0_604_RSVV = -1;
+static int hf_015_V1_0_604_RSVV_VALUE = -1;
+static const FieldPart I015_V1_0_604_RSVV_VALUE = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_0_604_RSVV_VALUE, NULL };
+static const FieldPart *I015_V1_0_604_RSVV_PARTS[] = {
+ &I015_V1_0_604_RSVV_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_604_RSVV = { FIXED, 2, 0, 0, &hf_015_V1_0_604_RSVV, I015_V1_0_604_RSVV_PARTS, { NULL } };
+static int hf_015_V1_0_604_SDVV = -1;
+static int hf_015_V1_0_604_SDVV_SDVV = -1;
+static const FieldPart I015_V1_0_604_SDVV_SDVV = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_0_604_SDVV_SDVV, NULL };
+static int hf_015_V1_0_604_SDVV_COVVGH = -1;
+static const FieldPart I015_V1_0_604_SDVV_COVVGH = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_604_SDVV_COVVGH, NULL };
+static const FieldPart *I015_V1_0_604_SDVV_PARTS[] = {
+ &I015_V1_0_604_SDVV_SDVV,
+ &I015_V1_0_604_SDVV_COVVGH,
+ NULL
+};
+static const AsterixField I015_V1_0_604_SDVV = { FIXED, 3, 0, 0, &hf_015_V1_0_604_SDVV, I015_V1_0_604_SDVV_PARTS, { NULL } };
+static int hf_015_V1_0_604_COVVHP = -1;
+static int hf_015_V1_0_604_COVVHP_X = -1;
+static const FieldPart I015_V1_0_604_COVVHP_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_604_COVVHP_X, NULL };
+static int hf_015_V1_0_604_COVVHP_Y = -1;
+static const FieldPart I015_V1_0_604_COVVHP_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_604_COVVHP_Y, NULL };
+static const FieldPart *I015_V1_0_604_COVVHP_PARTS[] = {
+ &I015_V1_0_604_COVVHP_X,
+ &I015_V1_0_604_COVVHP_Y,
+ NULL
+};
+static const AsterixField I015_V1_0_604_COVVHP = { FIXED, 2, 0, 0, &hf_015_V1_0_604_COVVHP, I015_V1_0_604_COVVHP_PARTS, { NULL } };
+static int hf_015_V1_0_604_COVVHV = -1;
+static int hf_015_V1_0_604_COVVHV_X = -1;
+static const FieldPart I015_V1_0_604_COVVHV_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_604_COVVHV_X, NULL };
+static int hf_015_V1_0_604_COVVHV_Y = -1;
+static const FieldPart I015_V1_0_604_COVVHV_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_604_COVVHV_Y, NULL };
+static const FieldPart *I015_V1_0_604_COVVHV_PARTS[] = {
+ &I015_V1_0_604_COVVHV_X,
+ &I015_V1_0_604_COVVHV_Y,
+ NULL
+};
+static const AsterixField I015_V1_0_604_COVVHV = { FIXED, 2, 0, 0, &hf_015_V1_0_604_COVVHV, I015_V1_0_604_COVVHV_PARTS, { NULL } };
+static int hf_015_V1_0_604_COVVHA = -1;
+static int hf_015_V1_0_604_COVVHA_X = -1;
+static const FieldPart I015_V1_0_604_COVVHA_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_604_COVVHA_X, NULL };
+static int hf_015_V1_0_604_COVVHA_Y = -1;
+static const FieldPart I015_V1_0_604_COVVHA_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_604_COVVHA_Y, NULL };
+static const FieldPart *I015_V1_0_604_COVVHA_PARTS[] = {
+ &I015_V1_0_604_COVVHA_X,
+ &I015_V1_0_604_COVVHA_Y,
+ NULL
+};
+static const AsterixField I015_V1_0_604_COVVHA = { FIXED, 2, 0, 0, &hf_015_V1_0_604_COVVHA, I015_V1_0_604_COVVHA_PARTS, { NULL } };
+static const AsterixField I015_V1_0_604 = { COMPOUND, 0, 0, 0, &hf_015_V1_0_604, NULL, { &I015_V1_0_604_VV, &I015_V1_0_604_RSVV, &I015_V1_0_604_SDVV, &I015_V1_0_604_COVVHP, &I015_V1_0_604_COVVHV, &I015_V1_0_604_COVVHA, NULL } };
+static int hf_015_V1_0_605 = -1;
+static int hf_015_V1_0_605_VA = -1;
+static int hf_015_V1_0_605_VA_VALUE = -1;
+static const FieldPart I015_V1_0_605_VA_VALUE = { 16, 0.01, FIELD_PART_FLOAT, &hf_015_V1_0_605_VA_VALUE, NULL };
+static const FieldPart *I015_V1_0_605_VA_PARTS[] = {
+ &I015_V1_0_605_VA_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_605_VA = { FIXED, 2, 0, 0, &hf_015_V1_0_605_VA, I015_V1_0_605_VA_PARTS, { NULL } };
+static int hf_015_V1_0_605_RSVA = -1;
+static int hf_015_V1_0_605_RSVA_SDVA = -1;
+static const FieldPart I015_V1_0_605_RSVA_SDVA = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_0_605_RSVA_SDVA, NULL };
+static int hf_015_V1_0_605_RSVA_COVAGH = -1;
+static const FieldPart I015_V1_0_605_RSVA_COVAGH = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_605_RSVA_COVAGH, NULL };
+static int hf_015_V1_0_605_RSVA_COVAVV = -1;
+static const FieldPart I015_V1_0_605_RSVA_COVAVV = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_605_RSVA_COVAVV, NULL };
+static const FieldPart *I015_V1_0_605_RSVA_PARTS[] = {
+ &I015_V1_0_605_RSVA_SDVA,
+ &I015_V1_0_605_RSVA_COVAGH,
+ &I015_V1_0_605_RSVA_COVAVV,
+ NULL
+};
+static const AsterixField I015_V1_0_605_RSVA = { FIXED, 4, 0, 0, &hf_015_V1_0_605_RSVA, I015_V1_0_605_RSVA_PARTS, { NULL } };
+static int hf_015_V1_0_605_COVAHP = -1;
+static int hf_015_V1_0_605_COVAHP_X = -1;
+static const FieldPart I015_V1_0_605_COVAHP_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_605_COVAHP_X, NULL };
+static int hf_015_V1_0_605_COVAHP_Y = -1;
+static const FieldPart I015_V1_0_605_COVAHP_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_605_COVAHP_Y, NULL };
+static const FieldPart *I015_V1_0_605_COVAHP_PARTS[] = {
+ &I015_V1_0_605_COVAHP_X,
+ &I015_V1_0_605_COVAHP_Y,
+ NULL
+};
+static const AsterixField I015_V1_0_605_COVAHP = { FIXED, 2, 0, 0, &hf_015_V1_0_605_COVAHP, I015_V1_0_605_COVAHP_PARTS, { NULL } };
+static int hf_015_V1_0_605_COVAHV = -1;
+static int hf_015_V1_0_605_COVAHV_X = -1;
+static const FieldPart I015_V1_0_605_COVAHV_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_605_COVAHV_X, NULL };
+static int hf_015_V1_0_605_COVAHV_Y = -1;
+static const FieldPart I015_V1_0_605_COVAHV_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_605_COVAHV_Y, NULL };
+static const FieldPart *I015_V1_0_605_COVAHV_PARTS[] = {
+ &I015_V1_0_605_COVAHV_X,
+ &I015_V1_0_605_COVAHV_Y,
+ NULL
+};
+static const AsterixField I015_V1_0_605_COVAHV = { FIXED, 2, 0, 0, &hf_015_V1_0_605_COVAHV, I015_V1_0_605_COVAHV_PARTS, { NULL } };
+static int hf_015_V1_0_605_COVAHA = -1;
+static int hf_015_V1_0_605_COVAHA_X = -1;
+static const FieldPart I015_V1_0_605_COVAHA_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_605_COVAHA_X, NULL };
+static int hf_015_V1_0_605_COVAHA_Y = -1;
+static const FieldPart I015_V1_0_605_COVAHA_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_605_COVAHA_Y, NULL };
+static const FieldPart *I015_V1_0_605_COVAHA_PARTS[] = {
+ &I015_V1_0_605_COVAHA_X,
+ &I015_V1_0_605_COVAHA_Y,
+ NULL
+};
+static const AsterixField I015_V1_0_605_COVAHA = { FIXED, 2, 0, 0, &hf_015_V1_0_605_COVAHA, I015_V1_0_605_COVAHA_PARTS, { NULL } };
+static const AsterixField I015_V1_0_605 = { COMPOUND, 0, 0, 0, &hf_015_V1_0_605, NULL, { &I015_V1_0_605_VA, &I015_V1_0_605_RSVA, &I015_V1_0_605_COVAHP, &I015_V1_0_605_COVAHV, &I015_V1_0_605_COVAHA, NULL } };
+static int hf_015_V1_0_625 = -1;
+static int hf_015_V1_0_625_R = -1;
+static int hf_015_V1_0_625_R_VALUE = -1;
+static const FieldPart I015_V1_0_625_R_VALUE = { 24, 0.1, FIELD_PART_FLOAT, &hf_015_V1_0_625_R_VALUE, NULL };
+static const FieldPart *I015_V1_0_625_R_PARTS[] = {
+ &I015_V1_0_625_R_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_625_R = { FIXED, 3, 0, 0, &hf_015_V1_0_625_R, I015_V1_0_625_R_PARTS, { NULL } };
+static int hf_015_V1_0_625_RSR = -1;
+static int hf_015_V1_0_625_RSR_VALUE = -1;
+static const FieldPart I015_V1_0_625_RSR_VALUE = { 24, 0.1, FIELD_PART_UFLOAT, &hf_015_V1_0_625_RSR_VALUE, NULL };
+static const FieldPart *I015_V1_0_625_RSR_PARTS[] = {
+ &I015_V1_0_625_RSR_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_625_RSR = { FIXED, 3, 0, 0, &hf_015_V1_0_625_RSR, I015_V1_0_625_RSR_PARTS, { NULL } };
+static int hf_015_V1_0_625_SDR = -1;
+static int hf_015_V1_0_625_SDR_VALUE = -1;
+static const FieldPart I015_V1_0_625_SDR_VALUE = { 24, 0.1, FIELD_PART_UFLOAT, &hf_015_V1_0_625_SDR_VALUE, NULL };
+static const FieldPart *I015_V1_0_625_SDR_PARTS[] = {
+ &I015_V1_0_625_SDR_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_625_SDR = { FIXED, 3, 0, 0, &hf_015_V1_0_625_SDR, I015_V1_0_625_SDR_PARTS, { NULL } };
+static int hf_015_V1_0_625_RR = -1;
+static int hf_015_V1_0_625_RR_VALUE = -1;
+static const FieldPart I015_V1_0_625_RR_VALUE = { 24, 0.1, FIELD_PART_FLOAT, &hf_015_V1_0_625_RR_VALUE, NULL };
+static const FieldPart *I015_V1_0_625_RR_PARTS[] = {
+ &I015_V1_0_625_RR_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_625_RR = { FIXED, 3, 0, 0, &hf_015_V1_0_625_RR, I015_V1_0_625_RR_PARTS, { NULL } };
+static int hf_015_V1_0_625_RSRR = -1;
+static int hf_015_V1_0_625_RSRR_VALUE = -1;
+static const FieldPart I015_V1_0_625_RSRR_VALUE = { 24, 0.1, FIELD_PART_UFLOAT, &hf_015_V1_0_625_RSRR_VALUE, NULL };
+static const FieldPart *I015_V1_0_625_RSRR_PARTS[] = {
+ &I015_V1_0_625_RSRR_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_625_RSRR = { FIXED, 3, 0, 0, &hf_015_V1_0_625_RSRR, I015_V1_0_625_RSRR_PARTS, { NULL } };
+static int hf_015_V1_0_625_SDRR = -1;
+static int hf_015_V1_0_625_SDRR_SDRR = -1;
+static const FieldPart I015_V1_0_625_SDRR_SDRR = { 24, 0.1, FIELD_PART_UFLOAT, &hf_015_V1_0_625_SDRR_SDRR, NULL };
+static int hf_015_V1_0_625_SDRR_CORRR = -1;
+static const FieldPart I015_V1_0_625_SDRR_CORRR = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_625_SDRR_CORRR, NULL };
+static const FieldPart *I015_V1_0_625_SDRR_PARTS[] = {
+ &I015_V1_0_625_SDRR_SDRR,
+ &I015_V1_0_625_SDRR_CORRR,
+ NULL
+};
+static const AsterixField I015_V1_0_625_SDRR = { FIXED, 4, 0, 0, &hf_015_V1_0_625_SDRR, I015_V1_0_625_SDRR_PARTS, { NULL } };
+static int hf_015_V1_0_625_RA = -1;
+static int hf_015_V1_0_625_RA_VALUE = -1;
+static const FieldPart I015_V1_0_625_RA_VALUE = { 16, 0.015625, FIELD_PART_FLOAT, &hf_015_V1_0_625_RA_VALUE, NULL };
+static const FieldPart *I015_V1_0_625_RA_PARTS[] = {
+ &I015_V1_0_625_RA_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_625_RA = { FIXED, 2, 0, 0, &hf_015_V1_0_625_RA, I015_V1_0_625_RA_PARTS, { NULL } };
+static int hf_015_V1_0_625_SDRA = -1;
+static int hf_015_V1_0_625_SDRA_SDRA = -1;
+static const FieldPart I015_V1_0_625_SDRA_SDRA = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_015_V1_0_625_SDRA_SDRA, NULL };
+static int hf_015_V1_0_625_SDRA_CORAR = -1;
+static const FieldPart I015_V1_0_625_SDRA_CORAR = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_625_SDRA_CORAR, NULL };
+static int hf_015_V1_0_625_SDRA_CORARR = -1;
+static const FieldPart I015_V1_0_625_SDRA_CORARR = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_625_SDRA_CORARR, NULL };
+static const FieldPart *I015_V1_0_625_SDRA_PARTS[] = {
+ &I015_V1_0_625_SDRA_SDRA,
+ &I015_V1_0_625_SDRA_CORAR,
+ &I015_V1_0_625_SDRA_CORARR,
+ NULL
+};
+static const AsterixField I015_V1_0_625_SDRA = { FIXED, 4, 0, 0, &hf_015_V1_0_625_SDRA, I015_V1_0_625_SDRA_PARTS, { NULL } };
+static const AsterixField I015_V1_0_625 = { COMPOUND, 0, 0, 0, &hf_015_V1_0_625, NULL, { &I015_V1_0_625_R, &I015_V1_0_625_RSR, &I015_V1_0_625_SDR, &I015_V1_0_625_RR, &I015_V1_0_625_RSRR, &I015_V1_0_625_SDRR, &I015_V1_0_625_RA, &I015_V1_0_625_SDRA, NULL } };
+static int hf_015_V1_0_626 = -1;
+static int hf_015_V1_0_626_DV = -1;
+static int hf_015_V1_0_626_DV_VALUE = -1;
+static const FieldPart I015_V1_0_626_DV_VALUE = { 24, 0.01, FIELD_PART_FLOAT, &hf_015_V1_0_626_DV_VALUE, NULL };
+static const FieldPart *I015_V1_0_626_DV_PARTS[] = {
+ &I015_V1_0_626_DV_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_626_DV = { FIXED, 3, 0, 0, &hf_015_V1_0_626_DV, I015_V1_0_626_DV_PARTS, { NULL } };
+static int hf_015_V1_0_626_SDDV = -1;
+static int hf_015_V1_0_626_SDDV_VALUE = -1;
+static const FieldPart I015_V1_0_626_SDDV_VALUE = { 16, 0.015625, FIELD_PART_UFLOAT, &hf_015_V1_0_626_SDDV_VALUE, NULL };
+static const FieldPart *I015_V1_0_626_SDDV_PARTS[] = {
+ &I015_V1_0_626_SDDV_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_626_SDDV = { FIXED, 2, 0, 0, &hf_015_V1_0_626_SDDV, I015_V1_0_626_SDDV_PARTS, { NULL } };
+static int hf_015_V1_0_626_DA = -1;
+static int hf_015_V1_0_626_DA_VALUE = -1;
+static const FieldPart I015_V1_0_626_DA_VALUE = { 16, 0.015625, FIELD_PART_FLOAT, &hf_015_V1_0_626_DA_VALUE, NULL };
+static const FieldPart *I015_V1_0_626_DA_PARTS[] = {
+ &I015_V1_0_626_DA_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_626_DA = { FIXED, 2, 0, 0, &hf_015_V1_0_626_DA, I015_V1_0_626_DA_PARTS, { NULL } };
+static int hf_015_V1_0_626_SDDA = -1;
+static int hf_015_V1_0_626_SDDA_SDDA = -1;
+static const FieldPart I015_V1_0_626_SDDA_SDDA = { 16, 0.015625, FIELD_PART_UFLOAT, &hf_015_V1_0_626_SDDA_SDDA, NULL };
+static int hf_015_V1_0_626_SDDA_CODADV = -1;
+static const FieldPart I015_V1_0_626_SDDA_CODADV = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_626_SDDA_CODADV, NULL };
+static const FieldPart *I015_V1_0_626_SDDA_PARTS[] = {
+ &I015_V1_0_626_SDDA_SDDA,
+ &I015_V1_0_626_SDDA_CODADV,
+ NULL
+};
+static const AsterixField I015_V1_0_626_SDDA = { FIXED, 3, 0, 0, &hf_015_V1_0_626_SDDA, I015_V1_0_626_SDDA_PARTS, { NULL } };
+static int hf_015_V1_0_626_CODVR = -1;
+static int hf_015_V1_0_626_CODVR_VALUE = -1;
+static const FieldPart I015_V1_0_626_CODVR_VALUE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_626_CODVR_VALUE, NULL };
+static const FieldPart *I015_V1_0_626_CODVR_PARTS[] = {
+ &I015_V1_0_626_CODVR_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_626_CODVR = { FIXED, 1, 0, 0, &hf_015_V1_0_626_CODVR, I015_V1_0_626_CODVR_PARTS, { NULL } };
+static int hf_015_V1_0_626_CODVRR = -1;
+static int hf_015_V1_0_626_CODVRR_VALUE = -1;
+static const FieldPart I015_V1_0_626_CODVRR_VALUE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_626_CODVRR_VALUE, NULL };
+static const FieldPart *I015_V1_0_626_CODVRR_PARTS[] = {
+ &I015_V1_0_626_CODVRR_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_626_CODVRR = { FIXED, 1, 0, 0, &hf_015_V1_0_626_CODVRR, I015_V1_0_626_CODVRR_PARTS, { NULL } };
+static int hf_015_V1_0_626_CODVRA = -1;
+static int hf_015_V1_0_626_CODVRA_VALUE = -1;
+static const FieldPart I015_V1_0_626_CODVRA_VALUE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_626_CODVRA_VALUE, NULL };
+static const FieldPart *I015_V1_0_626_CODVRA_PARTS[] = {
+ &I015_V1_0_626_CODVRA_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_626_CODVRA = { FIXED, 1, 0, 0, &hf_015_V1_0_626_CODVRA, I015_V1_0_626_CODVRA_PARTS, { NULL } };
+static int hf_015_V1_0_626_CODAR = -1;
+static int hf_015_V1_0_626_CODAR_VALUE = -1;
+static const FieldPart I015_V1_0_626_CODAR_VALUE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_626_CODAR_VALUE, NULL };
+static const FieldPart *I015_V1_0_626_CODAR_PARTS[] = {
+ &I015_V1_0_626_CODAR_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_626_CODAR = { FIXED, 1, 0, 0, &hf_015_V1_0_626_CODAR, I015_V1_0_626_CODAR_PARTS, { NULL } };
+static int hf_015_V1_0_626_CODARR = -1;
+static int hf_015_V1_0_626_CODARR_VALUE = -1;
+static const FieldPart I015_V1_0_626_CODARR_VALUE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_626_CODARR_VALUE, NULL };
+static const FieldPart *I015_V1_0_626_CODARR_PARTS[] = {
+ &I015_V1_0_626_CODARR_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_626_CODARR = { FIXED, 1, 0, 0, &hf_015_V1_0_626_CODARR, I015_V1_0_626_CODARR_PARTS, { NULL } };
+static int hf_015_V1_0_626_CODARA = -1;
+static int hf_015_V1_0_626_CODARA_VALUE = -1;
+static const FieldPart I015_V1_0_626_CODARA_VALUE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_626_CODARA_VALUE, NULL };
+static const FieldPart *I015_V1_0_626_CODARA_PARTS[] = {
+ &I015_V1_0_626_CODARA_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_626_CODARA = { FIXED, 1, 0, 0, &hf_015_V1_0_626_CODARA, I015_V1_0_626_CODARA_PARTS, { NULL } };
+static const AsterixField I015_V1_0_626 = { COMPOUND, 0, 0, 0, &hf_015_V1_0_626, NULL, { &I015_V1_0_626_DV, &I015_V1_0_626_SDDV, &I015_V1_0_626_DA, &I015_V1_0_626_SDDA, &I015_V1_0_626_CODVR, &I015_V1_0_626_CODVRR, &I015_V1_0_626_CODVRA, &I015_V1_0_626_CODAR, &I015_V1_0_626_CODARR, &I015_V1_0_626_CODARA, NULL } };
+static int hf_015_V1_0_627 = -1;
+static int hf_015_V1_0_627_AZ = -1;
+static int hf_015_V1_0_627_AZ_VALUE = -1;
+static const FieldPart I015_V1_0_627_AZ_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_015_V1_0_627_AZ_VALUE, NULL };
+static const FieldPart *I015_V1_0_627_AZ_PARTS[] = {
+ &I015_V1_0_627_AZ_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_627_AZ = { FIXED, 2, 0, 0, &hf_015_V1_0_627_AZ, I015_V1_0_627_AZ_PARTS, { NULL } };
+static int hf_015_V1_0_627_RSAZ = -1;
+static int hf_015_V1_0_627_RSAZ_VALUE = -1;
+static const FieldPart I015_V1_0_627_RSAZ_VALUE = { 16, 0.0006866455078125, FIELD_PART_UFLOAT, &hf_015_V1_0_627_RSAZ_VALUE, NULL };
+static const FieldPart *I015_V1_0_627_RSAZ_PARTS[] = {
+ &I015_V1_0_627_RSAZ_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_627_RSAZ = { FIXED, 2, 0, 0, &hf_015_V1_0_627_RSAZ, I015_V1_0_627_RSAZ_PARTS, { NULL } };
+static int hf_015_V1_0_627_SDASZ = -1;
+static int hf_015_V1_0_627_SDASZ_VALUE = -1;
+static const FieldPart I015_V1_0_627_SDASZ_VALUE = { 16, 0.0006866455078125, FIELD_PART_UFLOAT, &hf_015_V1_0_627_SDASZ_VALUE, NULL };
+static const FieldPart *I015_V1_0_627_SDASZ_PARTS[] = {
+ &I015_V1_0_627_SDASZ_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_627_SDASZ = { FIXED, 2, 0, 0, &hf_015_V1_0_627_SDASZ, I015_V1_0_627_SDASZ_PARTS, { NULL } };
+static int hf_015_V1_0_627_AZR = -1;
+static int hf_015_V1_0_627_AZR_VALUE = -1;
+static const FieldPart I015_V1_0_627_AZR_VALUE = { 16, 0.00274658203125, FIELD_PART_FLOAT, &hf_015_V1_0_627_AZR_VALUE, NULL };
+static const FieldPart *I015_V1_0_627_AZR_PARTS[] = {
+ &I015_V1_0_627_AZR_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_627_AZR = { FIXED, 2, 0, 0, &hf_015_V1_0_627_AZR, I015_V1_0_627_AZR_PARTS, { NULL } };
+static int hf_015_V1_0_627_SDAZR = -1;
+static int hf_015_V1_0_627_SDAZR_SDAZR = -1;
+static const FieldPart I015_V1_0_627_SDAZR_SDAZR = { 16, 0.0006866455078125, FIELD_PART_UFLOAT, &hf_015_V1_0_627_SDAZR_SDAZR, NULL };
+static int hf_015_V1_0_627_SDAZR_COAZRAZ = -1;
+static const FieldPart I015_V1_0_627_SDAZR_COAZRAZ = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_627_SDAZR_COAZRAZ, NULL };
+static const FieldPart *I015_V1_0_627_SDAZR_PARTS[] = {
+ &I015_V1_0_627_SDAZR_SDAZR,
+ &I015_V1_0_627_SDAZR_COAZRAZ,
+ NULL
+};
+static const AsterixField I015_V1_0_627_SDAZR = { FIXED, 3, 0, 0, &hf_015_V1_0_627_SDAZR, I015_V1_0_627_SDAZR_PARTS, { NULL } };
+static int hf_015_V1_0_627_AZEX = -1;
+static int hf_015_V1_0_627_AZEX_S = -1;
+static const FieldPart I015_V1_0_627_AZEX_S = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_015_V1_0_627_AZEX_S, NULL };
+static int hf_015_V1_0_627_AZEX_E = -1;
+static const FieldPart I015_V1_0_627_AZEX_E = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_015_V1_0_627_AZEX_E, NULL };
+static const FieldPart *I015_V1_0_627_AZEX_PARTS[] = {
+ &I015_V1_0_627_AZEX_S,
+ &I015_V1_0_627_AZEX_E,
+ NULL
+};
+static const AsterixField I015_V1_0_627_AZEX = { FIXED, 4, 0, 0, &hf_015_V1_0_627_AZEX, I015_V1_0_627_AZEX_PARTS, { NULL } };
+static const AsterixField I015_V1_0_627 = { COMPOUND, 0, 0, 0, &hf_015_V1_0_627, NULL, { &I015_V1_0_627_AZ, &I015_V1_0_627_RSAZ, &I015_V1_0_627_SDASZ, &I015_V1_0_627_AZR, &I015_V1_0_627_SDAZR, &I015_V1_0_627_AZEX, NULL } };
+static int hf_015_V1_0_628 = -1;
+static int hf_015_V1_0_628_EL = -1;
+static int hf_015_V1_0_628_EL_VALUE = -1;
+static const FieldPart I015_V1_0_628_EL_VALUE = { 16, 0.00274658203125, FIELD_PART_FLOAT, &hf_015_V1_0_628_EL_VALUE, NULL };
+static const FieldPart *I015_V1_0_628_EL_PARTS[] = {
+ &I015_V1_0_628_EL_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_628_EL = { FIXED, 2, 0, 0, &hf_015_V1_0_628_EL, I015_V1_0_628_EL_PARTS, { NULL } };
+static int hf_015_V1_0_628_RSEL = -1;
+static int hf_015_V1_0_628_RSEL_VALUE = -1;
+static const FieldPart I015_V1_0_628_RSEL_VALUE = { 16, 0.0006866455078125, FIELD_PART_UFLOAT, &hf_015_V1_0_628_RSEL_VALUE, NULL };
+static const FieldPart *I015_V1_0_628_RSEL_PARTS[] = {
+ &I015_V1_0_628_RSEL_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_628_RSEL = { FIXED, 2, 0, 0, &hf_015_V1_0_628_RSEL, I015_V1_0_628_RSEL_PARTS, { NULL } };
+static int hf_015_V1_0_628_SDEL = -1;
+static int hf_015_V1_0_628_SDEL_VALUE = -1;
+static const FieldPart I015_V1_0_628_SDEL_VALUE = { 16, 0.0006866455078125, FIELD_PART_UFLOAT, &hf_015_V1_0_628_SDEL_VALUE, NULL };
+static const FieldPart *I015_V1_0_628_SDEL_PARTS[] = {
+ &I015_V1_0_628_SDEL_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_628_SDEL = { FIXED, 2, 0, 0, &hf_015_V1_0_628_SDEL, I015_V1_0_628_SDEL_PARTS, { NULL } };
+static int hf_015_V1_0_628_ER = -1;
+static int hf_015_V1_0_628_ER_VALUE = -1;
+static const FieldPart I015_V1_0_628_ER_VALUE = { 16, 0.00274658203125, FIELD_PART_FLOAT, &hf_015_V1_0_628_ER_VALUE, NULL };
+static const FieldPart *I015_V1_0_628_ER_PARTS[] = {
+ &I015_V1_0_628_ER_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_628_ER = { FIXED, 2, 0, 0, &hf_015_V1_0_628_ER, I015_V1_0_628_ER_PARTS, { NULL } };
+static int hf_015_V1_0_628_SDER = -1;
+static int hf_015_V1_0_628_SDER_SDELR = -1;
+static const FieldPart I015_V1_0_628_SDER_SDELR = { 16, 0.0006866455078125, FIELD_PART_UFLOAT, &hf_015_V1_0_628_SDER_SDELR, NULL };
+static int hf_015_V1_0_628_SDER_COELREL = -1;
+static const FieldPart I015_V1_0_628_SDER_COELREL = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_0_628_SDER_COELREL, NULL };
+static const FieldPart *I015_V1_0_628_SDER_PARTS[] = {
+ &I015_V1_0_628_SDER_SDELR,
+ &I015_V1_0_628_SDER_COELREL,
+ NULL
+};
+static const AsterixField I015_V1_0_628_SDER = { FIXED, 3, 0, 0, &hf_015_V1_0_628_SDER, I015_V1_0_628_SDER_PARTS, { NULL } };
+static int hf_015_V1_0_628_ELEX = -1;
+static int hf_015_V1_0_628_ELEX_S = -1;
+static const FieldPart I015_V1_0_628_ELEX_S = { 16, 0.00274658203125, FIELD_PART_FLOAT, &hf_015_V1_0_628_ELEX_S, NULL };
+static int hf_015_V1_0_628_ELEX_E = -1;
+static const FieldPart I015_V1_0_628_ELEX_E = { 16, 0.00274658203125, FIELD_PART_FLOAT, &hf_015_V1_0_628_ELEX_E, NULL };
+static const FieldPart *I015_V1_0_628_ELEX_PARTS[] = {
+ &I015_V1_0_628_ELEX_S,
+ &I015_V1_0_628_ELEX_E,
+ NULL
+};
+static const AsterixField I015_V1_0_628_ELEX = { FIXED, 4, 0, 0, &hf_015_V1_0_628_ELEX, I015_V1_0_628_ELEX_PARTS, { NULL } };
+static const AsterixField I015_V1_0_628 = { COMPOUND, 0, 0, 0, &hf_015_V1_0_628, NULL, { &I015_V1_0_628_EL, &I015_V1_0_628_RSEL, &I015_V1_0_628_SDEL, &I015_V1_0_628_ER, &I015_V1_0_628_SDER, &I015_V1_0_628_ELEX, NULL } };
+static int hf_015_V1_0_630 = -1;
+static int hf_015_V1_0_630_DPP = -1;
+static int hf_015_V1_0_630_DPP_VALUE = -1;
+static const FieldPart I015_V1_0_630_DPP_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_015_V1_0_630_DPP_VALUE, NULL };
+static const FieldPart *I015_V1_0_630_DPP_PARTS[] = {
+ &I015_V1_0_630_DPP_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_630_DPP = { FIXED, 1, 0, 0, &hf_015_V1_0_630_DPP, I015_V1_0_630_DPP_PARTS, { NULL } };
+static int hf_015_V1_0_630_DPS = -1;
+static int hf_015_V1_0_630_DPS_VALUE = -1;
+static const FieldPart I015_V1_0_630_DPS_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_015_V1_0_630_DPS_VALUE, NULL };
+static const FieldPart *I015_V1_0_630_DPS_PARTS[] = {
+ &I015_V1_0_630_DPS_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_630_DPS = { FIXED, 1, 0, 0, &hf_015_V1_0_630_DPS, I015_V1_0_630_DPS_PARTS, { NULL } };
+static int hf_015_V1_0_630_RPP = -1;
+static int hf_015_V1_0_630_RPP_RPP = -1;
+static const FieldPart I015_V1_0_630_RPP_RPP = { 9, 1.0, FIELD_PART_FLOAT, &hf_015_V1_0_630_RPP_RPP, NULL };
+static const FieldPart *I015_V1_0_630_RPP_PARTS[] = {
+ &IXXX_7bit_spare,
+ &I015_V1_0_630_RPP_RPP,
+ NULL
+};
+static const AsterixField I015_V1_0_630_RPP = { FIXED, 2, 0, 0, &hf_015_V1_0_630_RPP, I015_V1_0_630_RPP_PARTS, { NULL } };
+static int hf_015_V1_0_630_RPS = -1;
+static int hf_015_V1_0_630_RPS_VALUE = -1;
+static const FieldPart I015_V1_0_630_RPS_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_015_V1_0_630_RPS_VALUE, NULL };
+static const FieldPart *I015_V1_0_630_RPS_PARTS[] = {
+ &I015_V1_0_630_RPS_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_0_630_RPS = { FIXED, 1, 0, 0, &hf_015_V1_0_630_RPS, I015_V1_0_630_RPS_PARTS, { NULL } };
+static const AsterixField I015_V1_0_630 = { COMPOUND, 0, 0, 0, &hf_015_V1_0_630, NULL, { &I015_V1_0_630_DPP, &I015_V1_0_630_DPS, &I015_V1_0_630_RPP, &I015_V1_0_630_RPS, NULL } };
+static int hf_015_V1_0_631 = -1;
+static int hf_015_V1_0_631_AZCON = -1;
+static const FieldPart I015_V1_0_631_AZCON = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_015_V1_0_631_AZCON, NULL };
+static int hf_015_V1_0_631_ELCON = -1;
+static const FieldPart I015_V1_0_631_ELCON = { 16, 0.00274658203125, FIELD_PART_FLOAT, &hf_015_V1_0_631_ELCON, NULL };
+static int hf_015_V1_0_631_RGCONSTOP = -1;
+static const FieldPart I015_V1_0_631_RGCONSTOP = { 16, 0.152587890625, FIELD_PART_UFLOAT, &hf_015_V1_0_631_RGCONSTOP, NULL };
+static int hf_015_V1_0_631_RGCONSTART = -1;
+static const FieldPart I015_V1_0_631_RGCONSTART = { 16, 0.152587890625, FIELD_PART_UFLOAT, &hf_015_V1_0_631_RGCONSTART, NULL };
+static const FieldPart *I015_V1_0_631_PARTS[] = {
+ &I015_V1_0_631_AZCON,
+ &I015_V1_0_631_ELCON,
+ &I015_V1_0_631_RGCONSTOP,
+ &I015_V1_0_631_RGCONSTART,
+ NULL
+};
+static const AsterixField I015_V1_0_631 = { REPETITIVE, 8, 1, 0, &hf_015_V1_0_631, I015_V1_0_631_PARTS, { NULL } };
+static int hf_015_V1_0_SP = -1;
+static const AsterixField I015_V1_0_SP = { EXP, 0, 0, 1, &hf_015_V1_0_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I015_V1_0_uap[] = {
+ &I015_V1_0_010,
+ &I015_V1_0_000,
+ &I015_V1_0_015,
+ &I015_V1_0_020,
+ &I015_V1_0_030,
+ &I015_V1_0_145,
+ &I015_V1_0_161,
+ &I015_V1_0_170,
+ &I015_V1_0_050,
+ &I015_V1_0_270,
+ &I015_V1_0_300,
+ &I015_V1_0_400,
+ &I015_V1_0_600,
+ &I015_V1_0_601,
+ &I015_V1_0_602,
+ &I015_V1_0_603,
+ &I015_V1_0_604,
+ &I015_V1_0_605,
+ &I015_V1_0_480,
+ &I015_V1_0_625,
+ &I015_V1_0_626,
+ &I015_V1_0_627,
+ &I015_V1_0_628,
+ &I015_V1_0_630,
+ &I015_V1_0_631,
+ &I015_V1_0_SP,
+ NULL
+};
+static const AsterixField **I015_V1_0[] = {
+ I015_V1_0_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 015, edition 1.1 */
+static int hf_015_V1_1_000 = -1;
+static int hf_015_V1_1_000_MT = -1;
+static const value_string valstr_015_V1_1_000_MT[] = {
+ { 1, "Measurement Plot" },
+ { 2, "Measurement Track" },
+ { 3, "Sensor Centric Plot" },
+ { 4, "Sensor Centric Track" },
+ { 5, "Track End Message" },
+ { 0, NULL }
+};
+static const FieldPart I015_V1_1_000_MT = { 7, 1.0, FIELD_PART_UINT, &hf_015_V1_1_000_MT, NULL };
+static int hf_015_V1_1_000_RG = -1;
+static const value_string valstr_015_V1_1_000_RG[] = {
+ { 0, "Periodic Report" },
+ { 1, "Event Driven Report" },
+ { 0, NULL }
+};
+static const FieldPart I015_V1_1_000_RG = { 1, 1.0, FIELD_PART_UINT, &hf_015_V1_1_000_RG, NULL };
+static const FieldPart *I015_V1_1_000_PARTS[] = {
+ &I015_V1_1_000_MT,
+ &I015_V1_1_000_RG,
+ NULL
+};
+static const AsterixField I015_V1_1_000 = { FIXED, 1, 0, 0, &hf_015_V1_1_000, I015_V1_1_000_PARTS, { NULL } };
+static int hf_015_V1_1_010 = -1;
+static int hf_015_V1_1_010_SAC = -1;
+static const FieldPart I015_V1_1_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_015_V1_1_010_SAC, NULL };
+static int hf_015_V1_1_010_SIC = -1;
+static const FieldPart I015_V1_1_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_015_V1_1_010_SIC, NULL };
+static const FieldPart *I015_V1_1_010_PARTS[] = {
+ &I015_V1_1_010_SAC,
+ &I015_V1_1_010_SIC,
+ NULL
+};
+static const AsterixField I015_V1_1_010 = { FIXED, 2, 0, 0, &hf_015_V1_1_010, I015_V1_1_010_PARTS, { NULL } };
+static int hf_015_V1_1_015 = -1;
+static int hf_015_V1_1_015_VALUE = -1;
+static const FieldPart I015_V1_1_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_015_V1_1_015_VALUE, NULL };
+static const FieldPart *I015_V1_1_015_PARTS[] = {
+ &I015_V1_1_015_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_015 = { FIXED, 1, 0, 0, &hf_015_V1_1_015, I015_V1_1_015_PARTS, { NULL } };
+static int hf_015_V1_1_020 = -1;
+static int hf_015_V1_1_020_MOMU = -1;
+static const value_string valstr_015_V1_1_020_MOMU[] = {
+ { 0, "Mono-Static Sensor" },
+ { 1, "Multi-Static Sensor" },
+ { 2, "Other" },
+ { 3, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I015_V1_1_020_MOMU = { 2, 1.0, FIELD_PART_UINT, &hf_015_V1_1_020_MOMU, NULL };
+static int hf_015_V1_1_020_TTAX = -1;
+static const value_string valstr_015_V1_1_020_TTAX[] = {
+ { 0, "Actual Target Report" },
+ { 1, "Reference Target" },
+ { 2, "Synthetic Target" },
+ { 3, "Simulated / Replayed Target" },
+ { 0, NULL }
+};
+static const FieldPart I015_V1_1_020_TTAX = { 2, 1.0, FIELD_PART_UINT, &hf_015_V1_1_020_TTAX, NULL };
+static int hf_015_V1_1_020_SCD = -1;
+static const value_string valstr_015_V1_1_020_SCD[] = {
+ { 0, "Unknown" },
+ { 1, "Forward" },
+ { 2, "Backward" },
+ { 3, "Static" },
+ { 0, NULL }
+};
+static const FieldPart I015_V1_1_020_SCD = { 2, 1.0, FIELD_PART_UINT, &hf_015_V1_1_020_SCD, NULL };
+static const FieldPart *I015_V1_1_020_PARTS[] = {
+ &I015_V1_1_020_MOMU,
+ &I015_V1_1_020_TTAX,
+ &I015_V1_1_020_SCD,
+ &IXXX_1bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I015_V1_1_020 = { FX, 1, 0, 0, &hf_015_V1_1_020, I015_V1_1_020_PARTS, { NULL } };
+static int hf_015_V1_1_030 = -1;
+static int hf_015_V1_1_030_Subitem = -1;
+static const FieldPart I015_V1_1_030_Subitem = { 7, 1.0, FIELD_PART_HEX, &hf_015_V1_1_030_Subitem, NULL };
+static const FieldPart *I015_V1_1_030_PARTS[] = {
+ &I015_V1_1_030_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I015_V1_1_030 = { FX, 1, 0, 0, &hf_015_V1_1_030, I015_V1_1_030_PARTS, { NULL } };
+static int hf_015_V1_1_050 = -1;
+static int hf_015_V1_1_050_UPD = -1;
+static const FieldPart I015_V1_1_050_UPD = { 14, 0.0078125, FIELD_PART_UFLOAT, &hf_015_V1_1_050_UPD, NULL };
+static const FieldPart *I015_V1_1_050_PARTS[] = {
+ &IXXX_2bit_spare,
+ &I015_V1_1_050_UPD,
+ NULL
+};
+static const AsterixField I015_V1_1_050 = { FIXED, 2, 0, 0, &hf_015_V1_1_050, I015_V1_1_050_PARTS, { NULL } };
+static int hf_015_V1_1_145 = -1;
+static int hf_015_V1_1_145_VALUE = -1;
+static const FieldPart I015_V1_1_145_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_015_V1_1_145_VALUE, NULL };
+static const FieldPart *I015_V1_1_145_PARTS[] = {
+ &I015_V1_1_145_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_145 = { FIXED, 3, 0, 0, &hf_015_V1_1_145, I015_V1_1_145_PARTS, { NULL } };
+static int hf_015_V1_1_161 = -1;
+static int hf_015_V1_1_161_VALUE = -1;
+static const FieldPart I015_V1_1_161_VALUE = { 16, 1.0, FIELD_PART_UINT, &hf_015_V1_1_161_VALUE, NULL };
+static const FieldPart *I015_V1_1_161_PARTS[] = {
+ &I015_V1_1_161_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_161 = { FIXED, 2, 0, 0, &hf_015_V1_1_161, I015_V1_1_161_PARTS, { NULL } };
+static int hf_015_V1_1_170 = -1;
+static int hf_015_V1_1_170_BIZ = -1;
+static const value_string valstr_015_V1_1_170_BIZ[] = {
+ { 0, "Target not in Blind Zone" },
+ { 1, "Target in Blind Zone" },
+ { 0, NULL }
+};
+static const FieldPart I015_V1_1_170_BIZ = { 1, 1.0, FIELD_PART_UINT, &hf_015_V1_1_170_BIZ, NULL };
+static int hf_015_V1_1_170_BAZ = -1;
+static const value_string valstr_015_V1_1_170_BAZ[] = {
+ { 0, "Target not in Blanked Zone" },
+ { 1, "Target in Blanked Zone" },
+ { 0, NULL }
+};
+static const FieldPart I015_V1_1_170_BAZ = { 1, 1.0, FIELD_PART_UINT, &hf_015_V1_1_170_BAZ, NULL };
+static int hf_015_V1_1_170_TUR = -1;
+static const value_string valstr_015_V1_1_170_TUR[] = {
+ { 0, "Track Alive" },
+ { 1, "Track Terminated by User Request" },
+ { 0, NULL }
+};
+static const FieldPart I015_V1_1_170_TUR = { 1, 1.0, FIELD_PART_UINT, &hf_015_V1_1_170_TUR, NULL };
+static int hf_015_V1_1_170_CSTP = -1;
+static const value_string valstr_015_V1_1_170_CSTP[] = {
+ { 0, "Not extrapolated" },
+ { 1, "Extrapolated" },
+ { 0, NULL }
+};
+static const FieldPart I015_V1_1_170_CSTP = { 1, 1.0, FIELD_PART_UINT, &hf_015_V1_1_170_CSTP, NULL };
+static int hf_015_V1_1_170_CSTH = -1;
+static const value_string valstr_015_V1_1_170_CSTH[] = {
+ { 0, "Not extrapolated" },
+ { 1, "Extrapolated" },
+ { 0, NULL }
+};
+static const FieldPart I015_V1_1_170_CSTH = { 1, 1.0, FIELD_PART_UINT, &hf_015_V1_1_170_CSTH, NULL };
+static int hf_015_V1_1_170_CNF = -1;
+static const value_string valstr_015_V1_1_170_CNF[] = {
+ { 0, "Confirmed Track" },
+ { 1, "Tentative Track" },
+ { 0, NULL }
+};
+static const FieldPart I015_V1_1_170_CNF = { 1, 1.0, FIELD_PART_UINT, &hf_015_V1_1_170_CNF, NULL };
+static const FieldPart *I015_V1_1_170_PARTS[] = {
+ &I015_V1_1_170_BIZ,
+ &I015_V1_1_170_BAZ,
+ &I015_V1_1_170_TUR,
+ &IXXX_1bit_spare,
+ &I015_V1_1_170_CSTP,
+ &I015_V1_1_170_CSTH,
+ &I015_V1_1_170_CNF,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I015_V1_1_170 = { FX, 1, 0, 0, &hf_015_V1_1_170, I015_V1_1_170_PARTS, { NULL } };
+static int hf_015_V1_1_270 = -1;
+static int hf_015_V1_1_270_LEN = -1;
+static int hf_015_V1_1_270_LEN_VALUE = -1;
+static const FieldPart I015_V1_1_270_LEN_VALUE = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_1_270_LEN_VALUE, NULL };
+static const FieldPart *I015_V1_1_270_LEN_PARTS[] = {
+ &I015_V1_1_270_LEN_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_270_LEN = { FIXED, 2, 0, 0, &hf_015_V1_1_270_LEN, I015_V1_1_270_LEN_PARTS, { NULL } };
+static int hf_015_V1_1_270_WDT = -1;
+static int hf_015_V1_1_270_WDT_VALUE = -1;
+static const FieldPart I015_V1_1_270_WDT_VALUE = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_1_270_WDT_VALUE, NULL };
+static const FieldPart *I015_V1_1_270_WDT_PARTS[] = {
+ &I015_V1_1_270_WDT_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_270_WDT = { FIXED, 2, 0, 0, &hf_015_V1_1_270_WDT, I015_V1_1_270_WDT_PARTS, { NULL } };
+static int hf_015_V1_1_270_HGT = -1;
+static int hf_015_V1_1_270_HGT_VALUE = -1;
+static const FieldPart I015_V1_1_270_HGT_VALUE = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_1_270_HGT_VALUE, NULL };
+static const FieldPart *I015_V1_1_270_HGT_PARTS[] = {
+ &I015_V1_1_270_HGT_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_270_HGT = { FIXED, 2, 0, 0, &hf_015_V1_1_270_HGT, I015_V1_1_270_HGT_PARTS, { NULL } };
+static int hf_015_V1_1_270_ORT = -1;
+static int hf_015_V1_1_270_ORT_VALUE = -1;
+static const FieldPart I015_V1_1_270_ORT_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_015_V1_1_270_ORT_VALUE, NULL };
+static const FieldPart *I015_V1_1_270_ORT_PARTS[] = {
+ &I015_V1_1_270_ORT_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_270_ORT = { FIXED, 2, 0, 0, &hf_015_V1_1_270_ORT, I015_V1_1_270_ORT_PARTS, { NULL } };
+static const AsterixField I015_V1_1_270 = { COMPOUND, 0, 0, 0, &hf_015_V1_1_270, NULL, { &I015_V1_1_270_LEN, &I015_V1_1_270_WDT, &I015_V1_1_270_HGT, &I015_V1_1_270_ORT, NULL } };
+static int hf_015_V1_1_300 = -1;
+static int hf_015_V1_1_300_CLS = -1;
+static const FieldPart I015_V1_1_300_CLS = { 9, 1.0, FIELD_PART_UINT, &hf_015_V1_1_300_CLS, NULL };
+static int hf_015_V1_1_300_PRB = -1;
+static const FieldPart I015_V1_1_300_PRB = { 7, 1.0, FIELD_PART_UINT, &hf_015_V1_1_300_PRB, NULL };
+static const FieldPart *I015_V1_1_300_PARTS[] = {
+ &I015_V1_1_300_CLS,
+ &I015_V1_1_300_PRB,
+ NULL
+};
+static const AsterixField I015_V1_1_300 = { REPETITIVE, 2, 1, 0, &hf_015_V1_1_300, I015_V1_1_300_PARTS, { NULL } };
+static int hf_015_V1_1_400 = -1;
+static int hf_015_V1_1_400_PID = -1;
+static const FieldPart I015_V1_1_400_PID = { 16, 1.0, FIELD_PART_UINT, &hf_015_V1_1_400_PID, NULL };
+static int hf_015_V1_1_400_ON = -1;
+static const FieldPart I015_V1_1_400_ON = { 24, 1.0, FIELD_PART_UINT, &hf_015_V1_1_400_ON, NULL };
+static const FieldPart *I015_V1_1_400_PARTS[] = {
+ &I015_V1_1_400_PID,
+ &I015_V1_1_400_ON,
+ NULL
+};
+static const AsterixField I015_V1_1_400 = { FIXED, 5, 0, 0, &hf_015_V1_1_400, I015_V1_1_400_PARTS, { NULL } };
+static int hf_015_V1_1_480 = -1;
+static int hf_015_V1_1_480_VALUE = -1;
+static const FieldPart I015_V1_1_480_VALUE = { 40, 1.0, FIELD_PART_HEX, &hf_015_V1_1_480_VALUE, NULL };
+static const FieldPart *I015_V1_1_480_PARTS[] = {
+ &I015_V1_1_480_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_480 = { REPETITIVE, 5, 1, 0, &hf_015_V1_1_480, I015_V1_1_480_PARTS, { NULL } };
+static int hf_015_V1_1_600 = -1;
+static int hf_015_V1_1_600_P84 = -1;
+static int hf_015_V1_1_600_P84_LATITUDE = -1;
+static const FieldPart I015_V1_1_600_P84_LATITUDE = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_015_V1_1_600_P84_LATITUDE, NULL };
+static int hf_015_V1_1_600_P84_LONGITUDE = -1;
+static const FieldPart I015_V1_1_600_P84_LONGITUDE = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_015_V1_1_600_P84_LONGITUDE, NULL };
+static const FieldPart *I015_V1_1_600_P84_PARTS[] = {
+ &I015_V1_1_600_P84_LATITUDE,
+ &I015_V1_1_600_P84_LONGITUDE,
+ NULL
+};
+static const AsterixField I015_V1_1_600_P84 = { FIXED, 8, 0, 0, &hf_015_V1_1_600_P84, I015_V1_1_600_P84_PARTS, { NULL } };
+static int hf_015_V1_1_600_HPR = -1;
+static int hf_015_V1_1_600_HPR_RSHPX = -1;
+static const FieldPart I015_V1_1_600_HPR_RSHPX = { 16, 0.5, FIELD_PART_UFLOAT, &hf_015_V1_1_600_HPR_RSHPX, NULL };
+static int hf_015_V1_1_600_HPR_RSHPY = -1;
+static const FieldPart I015_V1_1_600_HPR_RSHPY = { 16, 0.5, FIELD_PART_UFLOAT, &hf_015_V1_1_600_HPR_RSHPY, NULL };
+static int hf_015_V1_1_600_HPR_CORSHPXY = -1;
+static const FieldPart I015_V1_1_600_HPR_CORSHPXY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_600_HPR_CORSHPXY, NULL };
+static const FieldPart *I015_V1_1_600_HPR_PARTS[] = {
+ &I015_V1_1_600_HPR_RSHPX,
+ &I015_V1_1_600_HPR_RSHPY,
+ &I015_V1_1_600_HPR_CORSHPXY,
+ NULL
+};
+static const AsterixField I015_V1_1_600_HPR = { FIXED, 5, 0, 0, &hf_015_V1_1_600_HPR, I015_V1_1_600_HPR_PARTS, { NULL } };
+static int hf_015_V1_1_600_HPP = -1;
+static int hf_015_V1_1_600_HPP_SDHPX = -1;
+static const FieldPart I015_V1_1_600_HPP_SDHPX = { 16, 0.25, FIELD_PART_UFLOAT, &hf_015_V1_1_600_HPP_SDHPX, NULL };
+static int hf_015_V1_1_600_HPP_SDHPY = -1;
+static const FieldPart I015_V1_1_600_HPP_SDHPY = { 16, 0.25, FIELD_PART_UFLOAT, &hf_015_V1_1_600_HPP_SDHPY, NULL };
+static int hf_015_V1_1_600_HPP_COSDHPXY = -1;
+static const FieldPart I015_V1_1_600_HPP_COSDHPXY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_600_HPP_COSDHPXY, NULL };
+static const FieldPart *I015_V1_1_600_HPP_PARTS[] = {
+ &I015_V1_1_600_HPP_SDHPX,
+ &I015_V1_1_600_HPP_SDHPY,
+ &I015_V1_1_600_HPP_COSDHPXY,
+ NULL
+};
+static const AsterixField I015_V1_1_600_HPP = { FIXED, 5, 0, 0, &hf_015_V1_1_600_HPP, I015_V1_1_600_HPP_PARTS, { NULL } };
+static const AsterixField I015_V1_1_600 = { COMPOUND, 0, 0, 0, &hf_015_V1_1_600, NULL, { &I015_V1_1_600_P84, &I015_V1_1_600_HPR, &I015_V1_1_600_HPP, NULL } };
+static int hf_015_V1_1_601 = -1;
+static int hf_015_V1_1_601_GH = -1;
+static int hf_015_V1_1_601_GH_VALUE = -1;
+static const FieldPart I015_V1_1_601_GH_VALUE = { 24, 0.01, FIELD_PART_FLOAT, &hf_015_V1_1_601_GH_VALUE, NULL };
+static const FieldPart *I015_V1_1_601_GH_PARTS[] = {
+ &I015_V1_1_601_GH_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_601_GH = { FIXED, 3, 0, 0, &hf_015_V1_1_601_GH, I015_V1_1_601_GH_PARTS, { NULL } };
+static int hf_015_V1_1_601_RSGH = -1;
+static int hf_015_V1_1_601_RSGH_VALUE = -1;
+static const FieldPart I015_V1_1_601_RSGH_VALUE = { 24, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_1_601_RSGH_VALUE, NULL };
+static const FieldPart *I015_V1_1_601_RSGH_PARTS[] = {
+ &I015_V1_1_601_RSGH_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_601_RSGH = { FIXED, 3, 0, 0, &hf_015_V1_1_601_RSGH, I015_V1_1_601_RSGH_PARTS, { NULL } };
+static int hf_015_V1_1_601_SDGH = -1;
+static int hf_015_V1_1_601_SDGH_VALUE = -1;
+static const FieldPart I015_V1_1_601_SDGH_VALUE = { 24, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_1_601_SDGH_VALUE, NULL };
+static const FieldPart *I015_V1_1_601_SDGH_PARTS[] = {
+ &I015_V1_1_601_SDGH_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_601_SDGH = { FIXED, 3, 0, 0, &hf_015_V1_1_601_SDGH, I015_V1_1_601_SDGH_PARTS, { NULL } };
+static int hf_015_V1_1_601_CI6 = -1;
+static int hf_015_V1_1_601_CI6_UCI6 = -1;
+static const FieldPart I015_V1_1_601_CI6_UCI6 = { 12, 16.0, FIELD_PART_UFLOAT, &hf_015_V1_1_601_CI6_UCI6, NULL };
+static int hf_015_V1_1_601_CI6_LCI6 = -1;
+static const FieldPart I015_V1_1_601_CI6_LCI6 = { 12, 16.0, FIELD_PART_UFLOAT, &hf_015_V1_1_601_CI6_LCI6, NULL };
+static const FieldPart *I015_V1_1_601_CI6_PARTS[] = {
+ &I015_V1_1_601_CI6_UCI6,
+ &I015_V1_1_601_CI6_LCI6,
+ NULL
+};
+static const AsterixField I015_V1_1_601_CI6 = { FIXED, 3, 0, 0, &hf_015_V1_1_601_CI6, I015_V1_1_601_CI6_PARTS, { NULL } };
+static int hf_015_V1_1_601_CI9 = -1;
+static int hf_015_V1_1_601_CI9_UCI9 = -1;
+static const FieldPart I015_V1_1_601_CI9_UCI9 = { 12, 16.0, FIELD_PART_UFLOAT, &hf_015_V1_1_601_CI9_UCI9, NULL };
+static int hf_015_V1_1_601_CI9_LCI9 = -1;
+static const FieldPart I015_V1_1_601_CI9_LCI9 = { 12, 16.0, FIELD_PART_UFLOAT, &hf_015_V1_1_601_CI9_LCI9, NULL };
+static const FieldPart *I015_V1_1_601_CI9_PARTS[] = {
+ &I015_V1_1_601_CI9_UCI9,
+ &I015_V1_1_601_CI9_LCI9,
+ NULL
+};
+static const AsterixField I015_V1_1_601_CI9 = { FIXED, 3, 0, 0, &hf_015_V1_1_601_CI9, I015_V1_1_601_CI9_PARTS, { NULL } };
+static int hf_015_V1_1_601_COGHHP = -1;
+static int hf_015_V1_1_601_COGHHP_X = -1;
+static const FieldPart I015_V1_1_601_COGHHP_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_601_COGHHP_X, NULL };
+static int hf_015_V1_1_601_COGHHP_Y = -1;
+static const FieldPart I015_V1_1_601_COGHHP_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_601_COGHHP_Y, NULL };
+static const FieldPart *I015_V1_1_601_COGHHP_PARTS[] = {
+ &I015_V1_1_601_COGHHP_X,
+ &I015_V1_1_601_COGHHP_Y,
+ NULL
+};
+static const AsterixField I015_V1_1_601_COGHHP = { FIXED, 2, 0, 0, &hf_015_V1_1_601_COGHHP, I015_V1_1_601_COGHHP_PARTS, { NULL } };
+static int hf_015_V1_1_601_COGHHV = -1;
+static int hf_015_V1_1_601_COGHHV_X = -1;
+static const FieldPart I015_V1_1_601_COGHHV_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_601_COGHHV_X, NULL };
+static int hf_015_V1_1_601_COGHHV_Y = -1;
+static const FieldPart I015_V1_1_601_COGHHV_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_601_COGHHV_Y, NULL };
+static const FieldPart *I015_V1_1_601_COGHHV_PARTS[] = {
+ &I015_V1_1_601_COGHHV_X,
+ &I015_V1_1_601_COGHHV_Y,
+ NULL
+};
+static const AsterixField I015_V1_1_601_COGHHV = { FIXED, 2, 0, 0, &hf_015_V1_1_601_COGHHV, I015_V1_1_601_COGHHV_PARTS, { NULL } };
+static int hf_015_V1_1_601_COGHHA = -1;
+static int hf_015_V1_1_601_COGHHA_X = -1;
+static const FieldPart I015_V1_1_601_COGHHA_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_601_COGHHA_X, NULL };
+static int hf_015_V1_1_601_COGHHA_Y = -1;
+static const FieldPart I015_V1_1_601_COGHHA_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_601_COGHHA_Y, NULL };
+static const FieldPart *I015_V1_1_601_COGHHA_PARTS[] = {
+ &I015_V1_1_601_COGHHA_X,
+ &I015_V1_1_601_COGHHA_Y,
+ NULL
+};
+static const AsterixField I015_V1_1_601_COGHHA = { FIXED, 2, 0, 0, &hf_015_V1_1_601_COGHHA, I015_V1_1_601_COGHHA_PARTS, { NULL } };
+static const AsterixField I015_V1_1_601 = { COMPOUND, 0, 0, 0, &hf_015_V1_1_601, NULL, { &I015_V1_1_601_GH, &I015_V1_1_601_RSGH, &I015_V1_1_601_SDGH, &I015_V1_1_601_CI6, &I015_V1_1_601_CI9, &I015_V1_1_601_COGHHP, &I015_V1_1_601_COGHHV, &I015_V1_1_601_COGHHA, NULL } };
+static int hf_015_V1_1_602 = -1;
+static int hf_015_V1_1_602_HV = -1;
+static int hf_015_V1_1_602_HV_X = -1;
+static const FieldPart I015_V1_1_602_HV_X = { 20, 0.01, FIELD_PART_FLOAT, &hf_015_V1_1_602_HV_X, NULL };
+static int hf_015_V1_1_602_HV_Y = -1;
+static const FieldPart I015_V1_1_602_HV_Y = { 20, 0.01, FIELD_PART_FLOAT, &hf_015_V1_1_602_HV_Y, NULL };
+static const FieldPart *I015_V1_1_602_HV_PARTS[] = {
+ &I015_V1_1_602_HV_X,
+ &I015_V1_1_602_HV_Y,
+ NULL
+};
+static const AsterixField I015_V1_1_602_HV = { FIXED, 5, 0, 0, &hf_015_V1_1_602_HV, I015_V1_1_602_HV_PARTS, { NULL } };
+static int hf_015_V1_1_602_RSHV = -1;
+static int hf_015_V1_1_602_RSHV_X = -1;
+static const FieldPart I015_V1_1_602_RSHV_X = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_1_602_RSHV_X, NULL };
+static int hf_015_V1_1_602_RSHV_Y = -1;
+static const FieldPart I015_V1_1_602_RSHV_Y = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_1_602_RSHV_Y, NULL };
+static int hf_015_V1_1_602_RSHV_CORSHVXY = -1;
+static const FieldPart I015_V1_1_602_RSHV_CORSHVXY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_602_RSHV_CORSHVXY, NULL };
+static const FieldPart *I015_V1_1_602_RSHV_PARTS[] = {
+ &I015_V1_1_602_RSHV_X,
+ &I015_V1_1_602_RSHV_Y,
+ &I015_V1_1_602_RSHV_CORSHVXY,
+ NULL
+};
+static const AsterixField I015_V1_1_602_RSHV = { FIXED, 5, 0, 0, &hf_015_V1_1_602_RSHV, I015_V1_1_602_RSHV_PARTS, { NULL } };
+static int hf_015_V1_1_602_SDHV = -1;
+static int hf_015_V1_1_602_SDHV_X = -1;
+static const FieldPart I015_V1_1_602_SDHV_X = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_1_602_SDHV_X, NULL };
+static int hf_015_V1_1_602_SDHV_Y = -1;
+static const FieldPart I015_V1_1_602_SDHV_Y = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_1_602_SDHV_Y, NULL };
+static int hf_015_V1_1_602_SDHV_COHVXY = -1;
+static const FieldPart I015_V1_1_602_SDHV_COHVXY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_602_SDHV_COHVXY, NULL };
+static const FieldPart *I015_V1_1_602_SDHV_PARTS[] = {
+ &I015_V1_1_602_SDHV_X,
+ &I015_V1_1_602_SDHV_Y,
+ &I015_V1_1_602_SDHV_COHVXY,
+ NULL
+};
+static const AsterixField I015_V1_1_602_SDHV = { FIXED, 5, 0, 0, &hf_015_V1_1_602_SDHV, I015_V1_1_602_SDHV_PARTS, { NULL } };
+static int hf_015_V1_1_602_COHVHP = -1;
+static int hf_015_V1_1_602_COHVHP_COHVXHPX = -1;
+static const FieldPart I015_V1_1_602_COHVHP_COHVXHPX = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_602_COHVHP_COHVXHPX, NULL };
+static int hf_015_V1_1_602_COHVHP_COHVXHPY = -1;
+static const FieldPart I015_V1_1_602_COHVHP_COHVXHPY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_602_COHVHP_COHVXHPY, NULL };
+static int hf_015_V1_1_602_COHVHP_COHVYHPX = -1;
+static const FieldPart I015_V1_1_602_COHVHP_COHVYHPX = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_602_COHVHP_COHVYHPX, NULL };
+static int hf_015_V1_1_602_COHVHP_COHVYHPY = -1;
+static const FieldPart I015_V1_1_602_COHVHP_COHVYHPY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_602_COHVHP_COHVYHPY, NULL };
+static const FieldPart *I015_V1_1_602_COHVHP_PARTS[] = {
+ &I015_V1_1_602_COHVHP_COHVXHPX,
+ &I015_V1_1_602_COHVHP_COHVXHPY,
+ &I015_V1_1_602_COHVHP_COHVYHPX,
+ &I015_V1_1_602_COHVHP_COHVYHPY,
+ NULL
+};
+static const AsterixField I015_V1_1_602_COHVHP = { FIXED, 4, 0, 0, &hf_015_V1_1_602_COHVHP, I015_V1_1_602_COHVHP_PARTS, { NULL } };
+static const AsterixField I015_V1_1_602 = { COMPOUND, 0, 0, 0, &hf_015_V1_1_602, NULL, { &I015_V1_1_602_HV, &I015_V1_1_602_RSHV, &I015_V1_1_602_SDHV, &I015_V1_1_602_COHVHP, NULL } };
+static int hf_015_V1_1_603 = -1;
+static int hf_015_V1_1_603_HA = -1;
+static int hf_015_V1_1_603_HA_X = -1;
+static const FieldPart I015_V1_1_603_HA_X = { 12, 0.0625, FIELD_PART_FLOAT, &hf_015_V1_1_603_HA_X, NULL };
+static int hf_015_V1_1_603_HA_Y = -1;
+static const FieldPart I015_V1_1_603_HA_Y = { 12, 0.0625, FIELD_PART_FLOAT, &hf_015_V1_1_603_HA_Y, NULL };
+static const FieldPart *I015_V1_1_603_HA_PARTS[] = {
+ &I015_V1_1_603_HA_X,
+ &I015_V1_1_603_HA_Y,
+ NULL
+};
+static const AsterixField I015_V1_1_603_HA = { FIXED, 3, 0, 0, &hf_015_V1_1_603_HA, I015_V1_1_603_HA_PARTS, { NULL } };
+static int hf_015_V1_1_603_SDHA = -1;
+static int hf_015_V1_1_603_SDHA_X = -1;
+static const FieldPart I015_V1_1_603_SDHA_X = { 12, 0.0625, FIELD_PART_UFLOAT, &hf_015_V1_1_603_SDHA_X, NULL };
+static int hf_015_V1_1_603_SDHA_Y = -1;
+static const FieldPart I015_V1_1_603_SDHA_Y = { 12, 0.0625, FIELD_PART_UFLOAT, &hf_015_V1_1_603_SDHA_Y, NULL };
+static int hf_015_V1_1_603_SDHA_COHAXY = -1;
+static const FieldPart I015_V1_1_603_SDHA_COHAXY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_603_SDHA_COHAXY, NULL };
+static const FieldPart *I015_V1_1_603_SDHA_PARTS[] = {
+ &I015_V1_1_603_SDHA_X,
+ &I015_V1_1_603_SDHA_Y,
+ &I015_V1_1_603_SDHA_COHAXY,
+ NULL
+};
+static const AsterixField I015_V1_1_603_SDHA = { FIXED, 4, 0, 0, &hf_015_V1_1_603_SDHA, I015_V1_1_603_SDHA_PARTS, { NULL } };
+static int hf_015_V1_1_603_COHAHP = -1;
+static int hf_015_V1_1_603_COHAHP_COHAXHPX = -1;
+static const FieldPart I015_V1_1_603_COHAHP_COHAXHPX = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_603_COHAHP_COHAXHPX, NULL };
+static int hf_015_V1_1_603_COHAHP_COHAXHPY = -1;
+static const FieldPart I015_V1_1_603_COHAHP_COHAXHPY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_603_COHAHP_COHAXHPY, NULL };
+static int hf_015_V1_1_603_COHAHP_COHAYHPX = -1;
+static const FieldPart I015_V1_1_603_COHAHP_COHAYHPX = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_603_COHAHP_COHAYHPX, NULL };
+static int hf_015_V1_1_603_COHAHP_COAYHPY = -1;
+static const FieldPart I015_V1_1_603_COHAHP_COAYHPY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_603_COHAHP_COAYHPY, NULL };
+static const FieldPart *I015_V1_1_603_COHAHP_PARTS[] = {
+ &I015_V1_1_603_COHAHP_COHAXHPX,
+ &I015_V1_1_603_COHAHP_COHAXHPY,
+ &I015_V1_1_603_COHAHP_COHAYHPX,
+ &I015_V1_1_603_COHAHP_COAYHPY,
+ NULL
+};
+static const AsterixField I015_V1_1_603_COHAHP = { FIXED, 4, 0, 0, &hf_015_V1_1_603_COHAHP, I015_V1_1_603_COHAHP_PARTS, { NULL } };
+static int hf_015_V1_1_603_COHAHV = -1;
+static int hf_015_V1_1_603_COHAHV_COHAXHVX = -1;
+static const FieldPart I015_V1_1_603_COHAHV_COHAXHVX = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_603_COHAHV_COHAXHVX, NULL };
+static int hf_015_V1_1_603_COHAHV_COHAXHVY = -1;
+static const FieldPart I015_V1_1_603_COHAHV_COHAXHVY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_603_COHAHV_COHAXHVY, NULL };
+static int hf_015_V1_1_603_COHAHV_COHAYHVX = -1;
+static const FieldPart I015_V1_1_603_COHAHV_COHAYHVX = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_603_COHAHV_COHAYHVX, NULL };
+static int hf_015_V1_1_603_COHAHV_COHAYHVY = -1;
+static const FieldPart I015_V1_1_603_COHAHV_COHAYHVY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_603_COHAHV_COHAYHVY, NULL };
+static const FieldPart *I015_V1_1_603_COHAHV_PARTS[] = {
+ &I015_V1_1_603_COHAHV_COHAXHVX,
+ &I015_V1_1_603_COHAHV_COHAXHVY,
+ &I015_V1_1_603_COHAHV_COHAYHVX,
+ &I015_V1_1_603_COHAHV_COHAYHVY,
+ NULL
+};
+static const AsterixField I015_V1_1_603_COHAHV = { FIXED, 4, 0, 0, &hf_015_V1_1_603_COHAHV, I015_V1_1_603_COHAHV_PARTS, { NULL } };
+static const AsterixField I015_V1_1_603 = { COMPOUND, 0, 0, 0, &hf_015_V1_1_603, NULL, { &I015_V1_1_603_HA, &I015_V1_1_603_SDHA, &I015_V1_1_603_COHAHP, &I015_V1_1_603_COHAHV, NULL } };
+static int hf_015_V1_1_604 = -1;
+static int hf_015_V1_1_604_VV = -1;
+static int hf_015_V1_1_604_VV_VALUE = -1;
+static const FieldPart I015_V1_1_604_VV_VALUE = { 24, 0.01, FIELD_PART_FLOAT, &hf_015_V1_1_604_VV_VALUE, NULL };
+static const FieldPart *I015_V1_1_604_VV_PARTS[] = {
+ &I015_V1_1_604_VV_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_604_VV = { FIXED, 3, 0, 0, &hf_015_V1_1_604_VV, I015_V1_1_604_VV_PARTS, { NULL } };
+static int hf_015_V1_1_604_RSVV = -1;
+static int hf_015_V1_1_604_RSVV_VALUE = -1;
+static const FieldPart I015_V1_1_604_RSVV_VALUE = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_1_604_RSVV_VALUE, NULL };
+static const FieldPart *I015_V1_1_604_RSVV_PARTS[] = {
+ &I015_V1_1_604_RSVV_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_604_RSVV = { FIXED, 2, 0, 0, &hf_015_V1_1_604_RSVV, I015_V1_1_604_RSVV_PARTS, { NULL } };
+static int hf_015_V1_1_604_SDVV = -1;
+static int hf_015_V1_1_604_SDVV_SDVV = -1;
+static const FieldPart I015_V1_1_604_SDVV_SDVV = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_1_604_SDVV_SDVV, NULL };
+static int hf_015_V1_1_604_SDVV_COVVGH = -1;
+static const FieldPart I015_V1_1_604_SDVV_COVVGH = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_604_SDVV_COVVGH, NULL };
+static const FieldPart *I015_V1_1_604_SDVV_PARTS[] = {
+ &I015_V1_1_604_SDVV_SDVV,
+ &I015_V1_1_604_SDVV_COVVGH,
+ NULL
+};
+static const AsterixField I015_V1_1_604_SDVV = { FIXED, 3, 0, 0, &hf_015_V1_1_604_SDVV, I015_V1_1_604_SDVV_PARTS, { NULL } };
+static int hf_015_V1_1_604_COVVHP = -1;
+static int hf_015_V1_1_604_COVVHP_X = -1;
+static const FieldPart I015_V1_1_604_COVVHP_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_604_COVVHP_X, NULL };
+static int hf_015_V1_1_604_COVVHP_Y = -1;
+static const FieldPart I015_V1_1_604_COVVHP_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_604_COVVHP_Y, NULL };
+static const FieldPart *I015_V1_1_604_COVVHP_PARTS[] = {
+ &I015_V1_1_604_COVVHP_X,
+ &I015_V1_1_604_COVVHP_Y,
+ NULL
+};
+static const AsterixField I015_V1_1_604_COVVHP = { FIXED, 2, 0, 0, &hf_015_V1_1_604_COVVHP, I015_V1_1_604_COVVHP_PARTS, { NULL } };
+static int hf_015_V1_1_604_COVVHV = -1;
+static int hf_015_V1_1_604_COVVHV_X = -1;
+static const FieldPart I015_V1_1_604_COVVHV_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_604_COVVHV_X, NULL };
+static int hf_015_V1_1_604_COVVHV_Y = -1;
+static const FieldPart I015_V1_1_604_COVVHV_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_604_COVVHV_Y, NULL };
+static const FieldPart *I015_V1_1_604_COVVHV_PARTS[] = {
+ &I015_V1_1_604_COVVHV_X,
+ &I015_V1_1_604_COVVHV_Y,
+ NULL
+};
+static const AsterixField I015_V1_1_604_COVVHV = { FIXED, 2, 0, 0, &hf_015_V1_1_604_COVVHV, I015_V1_1_604_COVVHV_PARTS, { NULL } };
+static int hf_015_V1_1_604_COVVHA = -1;
+static int hf_015_V1_1_604_COVVHA_X = -1;
+static const FieldPart I015_V1_1_604_COVVHA_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_604_COVVHA_X, NULL };
+static int hf_015_V1_1_604_COVVHA_Y = -1;
+static const FieldPart I015_V1_1_604_COVVHA_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_604_COVVHA_Y, NULL };
+static const FieldPart *I015_V1_1_604_COVVHA_PARTS[] = {
+ &I015_V1_1_604_COVVHA_X,
+ &I015_V1_1_604_COVVHA_Y,
+ NULL
+};
+static const AsterixField I015_V1_1_604_COVVHA = { FIXED, 2, 0, 0, &hf_015_V1_1_604_COVVHA, I015_V1_1_604_COVVHA_PARTS, { NULL } };
+static const AsterixField I015_V1_1_604 = { COMPOUND, 0, 0, 0, &hf_015_V1_1_604, NULL, { &I015_V1_1_604_VV, &I015_V1_1_604_RSVV, &I015_V1_1_604_SDVV, &I015_V1_1_604_COVVHP, &I015_V1_1_604_COVVHV, &I015_V1_1_604_COVVHA, NULL } };
+static int hf_015_V1_1_605 = -1;
+static int hf_015_V1_1_605_VA = -1;
+static int hf_015_V1_1_605_VA_VALUE = -1;
+static const FieldPart I015_V1_1_605_VA_VALUE = { 16, 0.01, FIELD_PART_FLOAT, &hf_015_V1_1_605_VA_VALUE, NULL };
+static const FieldPart *I015_V1_1_605_VA_PARTS[] = {
+ &I015_V1_1_605_VA_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_605_VA = { FIXED, 2, 0, 0, &hf_015_V1_1_605_VA, I015_V1_1_605_VA_PARTS, { NULL } };
+static int hf_015_V1_1_605_RSVA = -1;
+static int hf_015_V1_1_605_RSVA_SDVA = -1;
+static const FieldPart I015_V1_1_605_RSVA_SDVA = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_V1_1_605_RSVA_SDVA, NULL };
+static int hf_015_V1_1_605_RSVA_COVAGH = -1;
+static const FieldPart I015_V1_1_605_RSVA_COVAGH = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_605_RSVA_COVAGH, NULL };
+static int hf_015_V1_1_605_RSVA_COVAVV = -1;
+static const FieldPart I015_V1_1_605_RSVA_COVAVV = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_605_RSVA_COVAVV, NULL };
+static const FieldPart *I015_V1_1_605_RSVA_PARTS[] = {
+ &I015_V1_1_605_RSVA_SDVA,
+ &I015_V1_1_605_RSVA_COVAGH,
+ &I015_V1_1_605_RSVA_COVAVV,
+ NULL
+};
+static const AsterixField I015_V1_1_605_RSVA = { FIXED, 4, 0, 0, &hf_015_V1_1_605_RSVA, I015_V1_1_605_RSVA_PARTS, { NULL } };
+static int hf_015_V1_1_605_COVAHP = -1;
+static int hf_015_V1_1_605_COVAHP_X = -1;
+static const FieldPart I015_V1_1_605_COVAHP_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_605_COVAHP_X, NULL };
+static int hf_015_V1_1_605_COVAHP_Y = -1;
+static const FieldPart I015_V1_1_605_COVAHP_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_605_COVAHP_Y, NULL };
+static const FieldPart *I015_V1_1_605_COVAHP_PARTS[] = {
+ &I015_V1_1_605_COVAHP_X,
+ &I015_V1_1_605_COVAHP_Y,
+ NULL
+};
+static const AsterixField I015_V1_1_605_COVAHP = { FIXED, 2, 0, 0, &hf_015_V1_1_605_COVAHP, I015_V1_1_605_COVAHP_PARTS, { NULL } };
+static int hf_015_V1_1_605_COVAHV = -1;
+static int hf_015_V1_1_605_COVAHV_X = -1;
+static const FieldPart I015_V1_1_605_COVAHV_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_605_COVAHV_X, NULL };
+static int hf_015_V1_1_605_COVAHV_Y = -1;
+static const FieldPart I015_V1_1_605_COVAHV_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_605_COVAHV_Y, NULL };
+static const FieldPart *I015_V1_1_605_COVAHV_PARTS[] = {
+ &I015_V1_1_605_COVAHV_X,
+ &I015_V1_1_605_COVAHV_Y,
+ NULL
+};
+static const AsterixField I015_V1_1_605_COVAHV = { FIXED, 2, 0, 0, &hf_015_V1_1_605_COVAHV, I015_V1_1_605_COVAHV_PARTS, { NULL } };
+static int hf_015_V1_1_605_COVAHA = -1;
+static int hf_015_V1_1_605_COVAHA_X = -1;
+static const FieldPart I015_V1_1_605_COVAHA_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_605_COVAHA_X, NULL };
+static int hf_015_V1_1_605_COVAHA_Y = -1;
+static const FieldPart I015_V1_1_605_COVAHA_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_605_COVAHA_Y, NULL };
+static const FieldPart *I015_V1_1_605_COVAHA_PARTS[] = {
+ &I015_V1_1_605_COVAHA_X,
+ &I015_V1_1_605_COVAHA_Y,
+ NULL
+};
+static const AsterixField I015_V1_1_605_COVAHA = { FIXED, 2, 0, 0, &hf_015_V1_1_605_COVAHA, I015_V1_1_605_COVAHA_PARTS, { NULL } };
+static const AsterixField I015_V1_1_605 = { COMPOUND, 0, 0, 0, &hf_015_V1_1_605, NULL, { &I015_V1_1_605_VA, &I015_V1_1_605_RSVA, &I015_V1_1_605_COVAHP, &I015_V1_1_605_COVAHV, &I015_V1_1_605_COVAHA, NULL } };
+static int hf_015_V1_1_625 = -1;
+static int hf_015_V1_1_625_R = -1;
+static int hf_015_V1_1_625_R_VALUE = -1;
+static const FieldPart I015_V1_1_625_R_VALUE = { 24, 0.1, FIELD_PART_FLOAT, &hf_015_V1_1_625_R_VALUE, NULL };
+static const FieldPart *I015_V1_1_625_R_PARTS[] = {
+ &I015_V1_1_625_R_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_625_R = { FIXED, 3, 0, 0, &hf_015_V1_1_625_R, I015_V1_1_625_R_PARTS, { NULL } };
+static int hf_015_V1_1_625_RSR = -1;
+static int hf_015_V1_1_625_RSR_VALUE = -1;
+static const FieldPart I015_V1_1_625_RSR_VALUE = { 24, 0.1, FIELD_PART_UFLOAT, &hf_015_V1_1_625_RSR_VALUE, NULL };
+static const FieldPart *I015_V1_1_625_RSR_PARTS[] = {
+ &I015_V1_1_625_RSR_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_625_RSR = { FIXED, 3, 0, 0, &hf_015_V1_1_625_RSR, I015_V1_1_625_RSR_PARTS, { NULL } };
+static int hf_015_V1_1_625_SDR = -1;
+static int hf_015_V1_1_625_SDR_VALUE = -1;
+static const FieldPart I015_V1_1_625_SDR_VALUE = { 24, 0.1, FIELD_PART_UFLOAT, &hf_015_V1_1_625_SDR_VALUE, NULL };
+static const FieldPart *I015_V1_1_625_SDR_PARTS[] = {
+ &I015_V1_1_625_SDR_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_625_SDR = { FIXED, 3, 0, 0, &hf_015_V1_1_625_SDR, I015_V1_1_625_SDR_PARTS, { NULL } };
+static int hf_015_V1_1_625_RR = -1;
+static int hf_015_V1_1_625_RR_VALUE = -1;
+static const FieldPart I015_V1_1_625_RR_VALUE = { 24, 0.1, FIELD_PART_FLOAT, &hf_015_V1_1_625_RR_VALUE, NULL };
+static const FieldPart *I015_V1_1_625_RR_PARTS[] = {
+ &I015_V1_1_625_RR_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_625_RR = { FIXED, 3, 0, 0, &hf_015_V1_1_625_RR, I015_V1_1_625_RR_PARTS, { NULL } };
+static int hf_015_V1_1_625_RSRR = -1;
+static int hf_015_V1_1_625_RSRR_VALUE = -1;
+static const FieldPart I015_V1_1_625_RSRR_VALUE = { 24, 0.1, FIELD_PART_UFLOAT, &hf_015_V1_1_625_RSRR_VALUE, NULL };
+static const FieldPart *I015_V1_1_625_RSRR_PARTS[] = {
+ &I015_V1_1_625_RSRR_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_625_RSRR = { FIXED, 3, 0, 0, &hf_015_V1_1_625_RSRR, I015_V1_1_625_RSRR_PARTS, { NULL } };
+static int hf_015_V1_1_625_SDRR = -1;
+static int hf_015_V1_1_625_SDRR_SDRR = -1;
+static const FieldPart I015_V1_1_625_SDRR_SDRR = { 24, 0.1, FIELD_PART_UFLOAT, &hf_015_V1_1_625_SDRR_SDRR, NULL };
+static int hf_015_V1_1_625_SDRR_CORRR = -1;
+static const FieldPart I015_V1_1_625_SDRR_CORRR = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_625_SDRR_CORRR, NULL };
+static const FieldPart *I015_V1_1_625_SDRR_PARTS[] = {
+ &I015_V1_1_625_SDRR_SDRR,
+ &I015_V1_1_625_SDRR_CORRR,
+ NULL
+};
+static const AsterixField I015_V1_1_625_SDRR = { FIXED, 4, 0, 0, &hf_015_V1_1_625_SDRR, I015_V1_1_625_SDRR_PARTS, { NULL } };
+static int hf_015_V1_1_625_RA = -1;
+static int hf_015_V1_1_625_RA_VALUE = -1;
+static const FieldPart I015_V1_1_625_RA_VALUE = { 16, 0.015625, FIELD_PART_FLOAT, &hf_015_V1_1_625_RA_VALUE, NULL };
+static const FieldPart *I015_V1_1_625_RA_PARTS[] = {
+ &I015_V1_1_625_RA_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_625_RA = { FIXED, 2, 0, 0, &hf_015_V1_1_625_RA, I015_V1_1_625_RA_PARTS, { NULL } };
+static int hf_015_V1_1_625_SDRA = -1;
+static int hf_015_V1_1_625_SDRA_SDRA = -1;
+static const FieldPart I015_V1_1_625_SDRA_SDRA = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_015_V1_1_625_SDRA_SDRA, NULL };
+static int hf_015_V1_1_625_SDRA_CORAR = -1;
+static const FieldPart I015_V1_1_625_SDRA_CORAR = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_625_SDRA_CORAR, NULL };
+static int hf_015_V1_1_625_SDRA_CORARR = -1;
+static const FieldPart I015_V1_1_625_SDRA_CORARR = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_625_SDRA_CORARR, NULL };
+static const FieldPart *I015_V1_1_625_SDRA_PARTS[] = {
+ &I015_V1_1_625_SDRA_SDRA,
+ &I015_V1_1_625_SDRA_CORAR,
+ &I015_V1_1_625_SDRA_CORARR,
+ NULL
+};
+static const AsterixField I015_V1_1_625_SDRA = { FIXED, 4, 0, 0, &hf_015_V1_1_625_SDRA, I015_V1_1_625_SDRA_PARTS, { NULL } };
+static const AsterixField I015_V1_1_625 = { COMPOUND, 0, 0, 0, &hf_015_V1_1_625, NULL, { &I015_V1_1_625_R, &I015_V1_1_625_RSR, &I015_V1_1_625_SDR, &I015_V1_1_625_RR, &I015_V1_1_625_RSRR, &I015_V1_1_625_SDRR, &I015_V1_1_625_RA, &I015_V1_1_625_SDRA, NULL } };
+static int hf_015_V1_1_626 = -1;
+static int hf_015_V1_1_626_DV = -1;
+static int hf_015_V1_1_626_DV_VALUE = -1;
+static const FieldPart I015_V1_1_626_DV_VALUE = { 24, 0.01, FIELD_PART_FLOAT, &hf_015_V1_1_626_DV_VALUE, NULL };
+static const FieldPart *I015_V1_1_626_DV_PARTS[] = {
+ &I015_V1_1_626_DV_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_626_DV = { FIXED, 3, 0, 0, &hf_015_V1_1_626_DV, I015_V1_1_626_DV_PARTS, { NULL } };
+static int hf_015_V1_1_626_SDDV = -1;
+static int hf_015_V1_1_626_SDDV_VALUE = -1;
+static const FieldPart I015_V1_1_626_SDDV_VALUE = { 16, 0.015625, FIELD_PART_UFLOAT, &hf_015_V1_1_626_SDDV_VALUE, NULL };
+static const FieldPart *I015_V1_1_626_SDDV_PARTS[] = {
+ &I015_V1_1_626_SDDV_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_626_SDDV = { FIXED, 2, 0, 0, &hf_015_V1_1_626_SDDV, I015_V1_1_626_SDDV_PARTS, { NULL } };
+static int hf_015_V1_1_626_DA = -1;
+static int hf_015_V1_1_626_DA_VALUE = -1;
+static const FieldPart I015_V1_1_626_DA_VALUE = { 16, 0.015625, FIELD_PART_FLOAT, &hf_015_V1_1_626_DA_VALUE, NULL };
+static const FieldPart *I015_V1_1_626_DA_PARTS[] = {
+ &I015_V1_1_626_DA_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_626_DA = { FIXED, 2, 0, 0, &hf_015_V1_1_626_DA, I015_V1_1_626_DA_PARTS, { NULL } };
+static int hf_015_V1_1_626_SDDA = -1;
+static int hf_015_V1_1_626_SDDA_SDDA = -1;
+static const FieldPart I015_V1_1_626_SDDA_SDDA = { 16, 0.015625, FIELD_PART_UFLOAT, &hf_015_V1_1_626_SDDA_SDDA, NULL };
+static int hf_015_V1_1_626_SDDA_CODADV = -1;
+static const FieldPart I015_V1_1_626_SDDA_CODADV = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_626_SDDA_CODADV, NULL };
+static const FieldPart *I015_V1_1_626_SDDA_PARTS[] = {
+ &I015_V1_1_626_SDDA_SDDA,
+ &I015_V1_1_626_SDDA_CODADV,
+ NULL
+};
+static const AsterixField I015_V1_1_626_SDDA = { FIXED, 3, 0, 0, &hf_015_V1_1_626_SDDA, I015_V1_1_626_SDDA_PARTS, { NULL } };
+static int hf_015_V1_1_626_CODVR = -1;
+static int hf_015_V1_1_626_CODVR_VALUE = -1;
+static const FieldPart I015_V1_1_626_CODVR_VALUE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_626_CODVR_VALUE, NULL };
+static const FieldPart *I015_V1_1_626_CODVR_PARTS[] = {
+ &I015_V1_1_626_CODVR_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_626_CODVR = { FIXED, 1, 0, 0, &hf_015_V1_1_626_CODVR, I015_V1_1_626_CODVR_PARTS, { NULL } };
+static int hf_015_V1_1_626_CODVRR = -1;
+static int hf_015_V1_1_626_CODVRR_VALUE = -1;
+static const FieldPart I015_V1_1_626_CODVRR_VALUE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_626_CODVRR_VALUE, NULL };
+static const FieldPart *I015_V1_1_626_CODVRR_PARTS[] = {
+ &I015_V1_1_626_CODVRR_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_626_CODVRR = { FIXED, 1, 0, 0, &hf_015_V1_1_626_CODVRR, I015_V1_1_626_CODVRR_PARTS, { NULL } };
+static int hf_015_V1_1_626_CODVRA = -1;
+static int hf_015_V1_1_626_CODVRA_VALUE = -1;
+static const FieldPart I015_V1_1_626_CODVRA_VALUE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_626_CODVRA_VALUE, NULL };
+static const FieldPart *I015_V1_1_626_CODVRA_PARTS[] = {
+ &I015_V1_1_626_CODVRA_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_626_CODVRA = { FIXED, 1, 0, 0, &hf_015_V1_1_626_CODVRA, I015_V1_1_626_CODVRA_PARTS, { NULL } };
+static int hf_015_V1_1_626_CODAR = -1;
+static int hf_015_V1_1_626_CODAR_VALUE = -1;
+static const FieldPart I015_V1_1_626_CODAR_VALUE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_626_CODAR_VALUE, NULL };
+static const FieldPart *I015_V1_1_626_CODAR_PARTS[] = {
+ &I015_V1_1_626_CODAR_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_626_CODAR = { FIXED, 1, 0, 0, &hf_015_V1_1_626_CODAR, I015_V1_1_626_CODAR_PARTS, { NULL } };
+static int hf_015_V1_1_626_CODARR = -1;
+static int hf_015_V1_1_626_CODARR_VALUE = -1;
+static const FieldPart I015_V1_1_626_CODARR_VALUE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_626_CODARR_VALUE, NULL };
+static const FieldPart *I015_V1_1_626_CODARR_PARTS[] = {
+ &I015_V1_1_626_CODARR_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_626_CODARR = { FIXED, 1, 0, 0, &hf_015_V1_1_626_CODARR, I015_V1_1_626_CODARR_PARTS, { NULL } };
+static int hf_015_V1_1_626_CODARA = -1;
+static int hf_015_V1_1_626_CODARA_VALUE = -1;
+static const FieldPart I015_V1_1_626_CODARA_VALUE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_626_CODARA_VALUE, NULL };
+static const FieldPart *I015_V1_1_626_CODARA_PARTS[] = {
+ &I015_V1_1_626_CODARA_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_626_CODARA = { FIXED, 1, 0, 0, &hf_015_V1_1_626_CODARA, I015_V1_1_626_CODARA_PARTS, { NULL } };
+static const AsterixField I015_V1_1_626 = { COMPOUND, 0, 0, 0, &hf_015_V1_1_626, NULL, { &I015_V1_1_626_DV, &I015_V1_1_626_SDDV, &I015_V1_1_626_DA, &I015_V1_1_626_SDDA, &I015_V1_1_626_CODVR, &I015_V1_1_626_CODVRR, &I015_V1_1_626_CODVRA, &I015_V1_1_626_CODAR, &I015_V1_1_626_CODARR, &I015_V1_1_626_CODARA, NULL } };
+static int hf_015_V1_1_627 = -1;
+static int hf_015_V1_1_627_AZ = -1;
+static int hf_015_V1_1_627_AZ_VALUE = -1;
+static const FieldPart I015_V1_1_627_AZ_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_015_V1_1_627_AZ_VALUE, NULL };
+static const FieldPart *I015_V1_1_627_AZ_PARTS[] = {
+ &I015_V1_1_627_AZ_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_627_AZ = { FIXED, 2, 0, 0, &hf_015_V1_1_627_AZ, I015_V1_1_627_AZ_PARTS, { NULL } };
+static int hf_015_V1_1_627_RSAZ = -1;
+static int hf_015_V1_1_627_RSAZ_VALUE = -1;
+static const FieldPart I015_V1_1_627_RSAZ_VALUE = { 16, 0.0006866455078125, FIELD_PART_UFLOAT, &hf_015_V1_1_627_RSAZ_VALUE, NULL };
+static const FieldPart *I015_V1_1_627_RSAZ_PARTS[] = {
+ &I015_V1_1_627_RSAZ_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_627_RSAZ = { FIXED, 2, 0, 0, &hf_015_V1_1_627_RSAZ, I015_V1_1_627_RSAZ_PARTS, { NULL } };
+static int hf_015_V1_1_627_SDASZ = -1;
+static int hf_015_V1_1_627_SDASZ_VALUE = -1;
+static const FieldPart I015_V1_1_627_SDASZ_VALUE = { 16, 0.0006866455078125, FIELD_PART_UFLOAT, &hf_015_V1_1_627_SDASZ_VALUE, NULL };
+static const FieldPart *I015_V1_1_627_SDASZ_PARTS[] = {
+ &I015_V1_1_627_SDASZ_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_627_SDASZ = { FIXED, 2, 0, 0, &hf_015_V1_1_627_SDASZ, I015_V1_1_627_SDASZ_PARTS, { NULL } };
+static int hf_015_V1_1_627_AZR = -1;
+static int hf_015_V1_1_627_AZR_VALUE = -1;
+static const FieldPart I015_V1_1_627_AZR_VALUE = { 16, 0.00274658203125, FIELD_PART_FLOAT, &hf_015_V1_1_627_AZR_VALUE, NULL };
+static const FieldPart *I015_V1_1_627_AZR_PARTS[] = {
+ &I015_V1_1_627_AZR_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_627_AZR = { FIXED, 2, 0, 0, &hf_015_V1_1_627_AZR, I015_V1_1_627_AZR_PARTS, { NULL } };
+static int hf_015_V1_1_627_SDAZR = -1;
+static int hf_015_V1_1_627_SDAZR_SDAZR = -1;
+static const FieldPart I015_V1_1_627_SDAZR_SDAZR = { 16, 0.0006866455078125, FIELD_PART_UFLOAT, &hf_015_V1_1_627_SDAZR_SDAZR, NULL };
+static int hf_015_V1_1_627_SDAZR_COAZRAZ = -1;
+static const FieldPart I015_V1_1_627_SDAZR_COAZRAZ = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_627_SDAZR_COAZRAZ, NULL };
+static const FieldPart *I015_V1_1_627_SDAZR_PARTS[] = {
+ &I015_V1_1_627_SDAZR_SDAZR,
+ &I015_V1_1_627_SDAZR_COAZRAZ,
+ NULL
+};
+static const AsterixField I015_V1_1_627_SDAZR = { FIXED, 3, 0, 0, &hf_015_V1_1_627_SDAZR, I015_V1_1_627_SDAZR_PARTS, { NULL } };
+static int hf_015_V1_1_627_AZEX = -1;
+static int hf_015_V1_1_627_AZEX_S = -1;
+static const FieldPart I015_V1_1_627_AZEX_S = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_015_V1_1_627_AZEX_S, NULL };
+static int hf_015_V1_1_627_AZEX_E = -1;
+static const FieldPart I015_V1_1_627_AZEX_E = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_015_V1_1_627_AZEX_E, NULL };
+static const FieldPart *I015_V1_1_627_AZEX_PARTS[] = {
+ &I015_V1_1_627_AZEX_S,
+ &I015_V1_1_627_AZEX_E,
+ NULL
+};
+static const AsterixField I015_V1_1_627_AZEX = { FIXED, 4, 0, 0, &hf_015_V1_1_627_AZEX, I015_V1_1_627_AZEX_PARTS, { NULL } };
+static const AsterixField I015_V1_1_627 = { COMPOUND, 0, 0, 0, &hf_015_V1_1_627, NULL, { &I015_V1_1_627_AZ, &I015_V1_1_627_RSAZ, &I015_V1_1_627_SDASZ, &I015_V1_1_627_AZR, &I015_V1_1_627_SDAZR, &I015_V1_1_627_AZEX, NULL } };
+static int hf_015_V1_1_628 = -1;
+static int hf_015_V1_1_628_EL = -1;
+static int hf_015_V1_1_628_EL_VALUE = -1;
+static const FieldPart I015_V1_1_628_EL_VALUE = { 16, 0.00274658203125, FIELD_PART_FLOAT, &hf_015_V1_1_628_EL_VALUE, NULL };
+static const FieldPart *I015_V1_1_628_EL_PARTS[] = {
+ &I015_V1_1_628_EL_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_628_EL = { FIXED, 2, 0, 0, &hf_015_V1_1_628_EL, I015_V1_1_628_EL_PARTS, { NULL } };
+static int hf_015_V1_1_628_RSEL = -1;
+static int hf_015_V1_1_628_RSEL_VALUE = -1;
+static const FieldPart I015_V1_1_628_RSEL_VALUE = { 16, 0.0006866455078125, FIELD_PART_UFLOAT, &hf_015_V1_1_628_RSEL_VALUE, NULL };
+static const FieldPart *I015_V1_1_628_RSEL_PARTS[] = {
+ &I015_V1_1_628_RSEL_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_628_RSEL = { FIXED, 2, 0, 0, &hf_015_V1_1_628_RSEL, I015_V1_1_628_RSEL_PARTS, { NULL } };
+static int hf_015_V1_1_628_SDEL = -1;
+static int hf_015_V1_1_628_SDEL_VALUE = -1;
+static const FieldPart I015_V1_1_628_SDEL_VALUE = { 16, 0.0006866455078125, FIELD_PART_UFLOAT, &hf_015_V1_1_628_SDEL_VALUE, NULL };
+static const FieldPart *I015_V1_1_628_SDEL_PARTS[] = {
+ &I015_V1_1_628_SDEL_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_628_SDEL = { FIXED, 2, 0, 0, &hf_015_V1_1_628_SDEL, I015_V1_1_628_SDEL_PARTS, { NULL } };
+static int hf_015_V1_1_628_ER = -1;
+static int hf_015_V1_1_628_ER_VALUE = -1;
+static const FieldPart I015_V1_1_628_ER_VALUE = { 16, 0.00274658203125, FIELD_PART_FLOAT, &hf_015_V1_1_628_ER_VALUE, NULL };
+static const FieldPart *I015_V1_1_628_ER_PARTS[] = {
+ &I015_V1_1_628_ER_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_628_ER = { FIXED, 2, 0, 0, &hf_015_V1_1_628_ER, I015_V1_1_628_ER_PARTS, { NULL } };
+static int hf_015_V1_1_628_SDER = -1;
+static int hf_015_V1_1_628_SDER_SDELR = -1;
+static const FieldPart I015_V1_1_628_SDER_SDELR = { 16, 0.0006866455078125, FIELD_PART_UFLOAT, &hf_015_V1_1_628_SDER_SDELR, NULL };
+static int hf_015_V1_1_628_SDER_COELREL = -1;
+static const FieldPart I015_V1_1_628_SDER_COELREL = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_V1_1_628_SDER_COELREL, NULL };
+static const FieldPart *I015_V1_1_628_SDER_PARTS[] = {
+ &I015_V1_1_628_SDER_SDELR,
+ &I015_V1_1_628_SDER_COELREL,
+ NULL
+};
+static const AsterixField I015_V1_1_628_SDER = { FIXED, 3, 0, 0, &hf_015_V1_1_628_SDER, I015_V1_1_628_SDER_PARTS, { NULL } };
+static int hf_015_V1_1_628_ELEX = -1;
+static int hf_015_V1_1_628_ELEX_S = -1;
+static const FieldPart I015_V1_1_628_ELEX_S = { 16, 0.00274658203125, FIELD_PART_FLOAT, &hf_015_V1_1_628_ELEX_S, NULL };
+static int hf_015_V1_1_628_ELEX_E = -1;
+static const FieldPart I015_V1_1_628_ELEX_E = { 16, 0.00274658203125, FIELD_PART_FLOAT, &hf_015_V1_1_628_ELEX_E, NULL };
+static const FieldPart *I015_V1_1_628_ELEX_PARTS[] = {
+ &I015_V1_1_628_ELEX_S,
+ &I015_V1_1_628_ELEX_E,
+ NULL
+};
+static const AsterixField I015_V1_1_628_ELEX = { FIXED, 4, 0, 0, &hf_015_V1_1_628_ELEX, I015_V1_1_628_ELEX_PARTS, { NULL } };
+static const AsterixField I015_V1_1_628 = { COMPOUND, 0, 0, 0, &hf_015_V1_1_628, NULL, { &I015_V1_1_628_EL, &I015_V1_1_628_RSEL, &I015_V1_1_628_SDEL, &I015_V1_1_628_ER, &I015_V1_1_628_SDER, &I015_V1_1_628_ELEX, NULL } };
+static int hf_015_V1_1_630 = -1;
+static int hf_015_V1_1_630_DPP = -1;
+static int hf_015_V1_1_630_DPP_VALUE = -1;
+static const FieldPart I015_V1_1_630_DPP_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_015_V1_1_630_DPP_VALUE, NULL };
+static const FieldPart *I015_V1_1_630_DPP_PARTS[] = {
+ &I015_V1_1_630_DPP_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_630_DPP = { FIXED, 1, 0, 0, &hf_015_V1_1_630_DPP, I015_V1_1_630_DPP_PARTS, { NULL } };
+static int hf_015_V1_1_630_DPS = -1;
+static int hf_015_V1_1_630_DPS_VALUE = -1;
+static const FieldPart I015_V1_1_630_DPS_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_015_V1_1_630_DPS_VALUE, NULL };
+static const FieldPart *I015_V1_1_630_DPS_PARTS[] = {
+ &I015_V1_1_630_DPS_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_630_DPS = { FIXED, 1, 0, 0, &hf_015_V1_1_630_DPS, I015_V1_1_630_DPS_PARTS, { NULL } };
+static int hf_015_V1_1_630_RPP = -1;
+static int hf_015_V1_1_630_RPP_RPP = -1;
+static const FieldPart I015_V1_1_630_RPP_RPP = { 9, 1.0, FIELD_PART_FLOAT, &hf_015_V1_1_630_RPP_RPP, NULL };
+static const FieldPart *I015_V1_1_630_RPP_PARTS[] = {
+ &IXXX_7bit_spare,
+ &I015_V1_1_630_RPP_RPP,
+ NULL
+};
+static const AsterixField I015_V1_1_630_RPP = { FIXED, 2, 0, 0, &hf_015_V1_1_630_RPP, I015_V1_1_630_RPP_PARTS, { NULL } };
+static int hf_015_V1_1_630_RPS = -1;
+static int hf_015_V1_1_630_RPS_VALUE = -1;
+static const FieldPart I015_V1_1_630_RPS_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_015_V1_1_630_RPS_VALUE, NULL };
+static const FieldPart *I015_V1_1_630_RPS_PARTS[] = {
+ &I015_V1_1_630_RPS_VALUE,
+ NULL
+};
+static const AsterixField I015_V1_1_630_RPS = { FIXED, 1, 0, 0, &hf_015_V1_1_630_RPS, I015_V1_1_630_RPS_PARTS, { NULL } };
+static const AsterixField I015_V1_1_630 = { COMPOUND, 0, 0, 0, &hf_015_V1_1_630, NULL, { &I015_V1_1_630_DPP, &I015_V1_1_630_DPS, &I015_V1_1_630_RPP, &I015_V1_1_630_RPS, NULL } };
+static int hf_015_V1_1_631 = -1;
+static int hf_015_V1_1_631_AZCON = -1;
+static const FieldPart I015_V1_1_631_AZCON = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_015_V1_1_631_AZCON, NULL };
+static int hf_015_V1_1_631_ELCON = -1;
+static const FieldPart I015_V1_1_631_ELCON = { 16, 0.00274658203125, FIELD_PART_FLOAT, &hf_015_V1_1_631_ELCON, NULL };
+static int hf_015_V1_1_631_RGCONSTOP = -1;
+static const FieldPart I015_V1_1_631_RGCONSTOP = { 16, 0.152587890625, FIELD_PART_UFLOAT, &hf_015_V1_1_631_RGCONSTOP, NULL };
+static int hf_015_V1_1_631_RGCONSTART = -1;
+static const FieldPart I015_V1_1_631_RGCONSTART = { 16, 0.152587890625, FIELD_PART_UFLOAT, &hf_015_V1_1_631_RGCONSTART, NULL };
+static const FieldPart *I015_V1_1_631_PARTS[] = {
+ &I015_V1_1_631_AZCON,
+ &I015_V1_1_631_ELCON,
+ &I015_V1_1_631_RGCONSTOP,
+ &I015_V1_1_631_RGCONSTART,
+ NULL
+};
+static const AsterixField I015_V1_1_631 = { REPETITIVE, 8, 1, 0, &hf_015_V1_1_631, I015_V1_1_631_PARTS, { NULL } };
+static int hf_015_V1_1_SP = -1;
+static const AsterixField I015_V1_1_SP = { EXP, 0, 0, 1, &hf_015_V1_1_SP, NULL, { NULL } };
+
+/* Category 015, edition 1.1 (latest) */
+static int hf_015_000 = -1;
+static int hf_015_000_MT = -1;
+static const value_string valstr_015_000_MT[] = {
+ { 1, "Measurement Plot" },
+ { 2, "Measurement Track" },
+ { 3, "Sensor Centric Plot" },
+ { 4, "Sensor Centric Track" },
+ { 5, "Track End Message" },
+ { 0, NULL }
+};
+static const FieldPart I015_000_MT = { 7, 1.0, FIELD_PART_UINT, &hf_015_000_MT, NULL };
+static int hf_015_000_RG = -1;
+static const value_string valstr_015_000_RG[] = {
+ { 0, "Periodic Report" },
+ { 1, "Event Driven Report" },
+ { 0, NULL }
+};
+static const FieldPart I015_000_RG = { 1, 1.0, FIELD_PART_UINT, &hf_015_000_RG, NULL };
+static const FieldPart *I015_000_PARTS[] = {
+ &I015_000_MT,
+ &I015_000_RG,
+ NULL
+};
+static const AsterixField I015_000 = { FIXED, 1, 0, 0, &hf_015_000, I015_000_PARTS, { NULL } };
+static int hf_015_010 = -1;
+static int hf_015_010_SAC = -1;
+static const FieldPart I015_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_015_010_SAC, NULL };
+static int hf_015_010_SIC = -1;
+static const FieldPart I015_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_015_010_SIC, NULL };
+static const FieldPart *I015_010_PARTS[] = {
+ &I015_010_SAC,
+ &I015_010_SIC,
+ NULL
+};
+static const AsterixField I015_010 = { FIXED, 2, 0, 0, &hf_015_010, I015_010_PARTS, { NULL } };
+static int hf_015_015 = -1;
+static int hf_015_015_VALUE = -1;
+static const FieldPart I015_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_015_015_VALUE, NULL };
+static const FieldPart *I015_015_PARTS[] = {
+ &I015_015_VALUE,
+ NULL
+};
+static const AsterixField I015_015 = { FIXED, 1, 0, 0, &hf_015_015, I015_015_PARTS, { NULL } };
+static int hf_015_020 = -1;
+static int hf_015_020_MOMU = -1;
+static const value_string valstr_015_020_MOMU[] = {
+ { 0, "Mono-Static Sensor" },
+ { 1, "Multi-Static Sensor" },
+ { 2, "Other" },
+ { 3, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I015_020_MOMU = { 2, 1.0, FIELD_PART_UINT, &hf_015_020_MOMU, NULL };
+static int hf_015_020_TTAX = -1;
+static const value_string valstr_015_020_TTAX[] = {
+ { 0, "Actual Target Report" },
+ { 1, "Reference Target" },
+ { 2, "Synthetic Target" },
+ { 3, "Simulated / Replayed Target" },
+ { 0, NULL }
+};
+static const FieldPart I015_020_TTAX = { 2, 1.0, FIELD_PART_UINT, &hf_015_020_TTAX, NULL };
+static int hf_015_020_SCD = -1;
+static const value_string valstr_015_020_SCD[] = {
+ { 0, "Unknown" },
+ { 1, "Forward" },
+ { 2, "Backward" },
+ { 3, "Static" },
+ { 0, NULL }
+};
+static const FieldPart I015_020_SCD = { 2, 1.0, FIELD_PART_UINT, &hf_015_020_SCD, NULL };
+static const FieldPart *I015_020_PARTS[] = {
+ &I015_020_MOMU,
+ &I015_020_TTAX,
+ &I015_020_SCD,
+ &IXXX_1bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I015_020 = { FX, 1, 0, 0, &hf_015_020, I015_020_PARTS, { NULL } };
+static int hf_015_030 = -1;
+static int hf_015_030_Subitem = -1;
+static const FieldPart I015_030_Subitem = { 7, 1.0, FIELD_PART_HEX, &hf_015_030_Subitem, NULL };
+static const FieldPart *I015_030_PARTS[] = {
+ &I015_030_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I015_030 = { FX, 1, 0, 0, &hf_015_030, I015_030_PARTS, { NULL } };
+static int hf_015_050 = -1;
+static int hf_015_050_UPD = -1;
+static const FieldPart I015_050_UPD = { 14, 0.0078125, FIELD_PART_UFLOAT, &hf_015_050_UPD, NULL };
+static const FieldPart *I015_050_PARTS[] = {
+ &IXXX_2bit_spare,
+ &I015_050_UPD,
+ NULL
+};
+static const AsterixField I015_050 = { FIXED, 2, 0, 0, &hf_015_050, I015_050_PARTS, { NULL } };
+static int hf_015_145 = -1;
+static int hf_015_145_VALUE = -1;
+static const FieldPart I015_145_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_015_145_VALUE, NULL };
+static const FieldPart *I015_145_PARTS[] = {
+ &I015_145_VALUE,
+ NULL
+};
+static const AsterixField I015_145 = { FIXED, 3, 0, 0, &hf_015_145, I015_145_PARTS, { NULL } };
+static int hf_015_161 = -1;
+static int hf_015_161_VALUE = -1;
+static const FieldPart I015_161_VALUE = { 16, 1.0, FIELD_PART_UINT, &hf_015_161_VALUE, NULL };
+static const FieldPart *I015_161_PARTS[] = {
+ &I015_161_VALUE,
+ NULL
+};
+static const AsterixField I015_161 = { FIXED, 2, 0, 0, &hf_015_161, I015_161_PARTS, { NULL } };
+static int hf_015_170 = -1;
+static int hf_015_170_BIZ = -1;
+static const value_string valstr_015_170_BIZ[] = {
+ { 0, "Target not in Blind Zone" },
+ { 1, "Target in Blind Zone" },
+ { 0, NULL }
+};
+static const FieldPart I015_170_BIZ = { 1, 1.0, FIELD_PART_UINT, &hf_015_170_BIZ, NULL };
+static int hf_015_170_BAZ = -1;
+static const value_string valstr_015_170_BAZ[] = {
+ { 0, "Target not in Blanked Zone" },
+ { 1, "Target in Blanked Zone" },
+ { 0, NULL }
+};
+static const FieldPart I015_170_BAZ = { 1, 1.0, FIELD_PART_UINT, &hf_015_170_BAZ, NULL };
+static int hf_015_170_TUR = -1;
+static const value_string valstr_015_170_TUR[] = {
+ { 0, "Track Alive" },
+ { 1, "Track Terminated by User Request" },
+ { 0, NULL }
+};
+static const FieldPart I015_170_TUR = { 1, 1.0, FIELD_PART_UINT, &hf_015_170_TUR, NULL };
+static int hf_015_170_CSTP = -1;
+static const value_string valstr_015_170_CSTP[] = {
+ { 0, "Not extrapolated" },
+ { 1, "Extrapolated" },
+ { 0, NULL }
+};
+static const FieldPart I015_170_CSTP = { 1, 1.0, FIELD_PART_UINT, &hf_015_170_CSTP, NULL };
+static int hf_015_170_CSTH = -1;
+static const value_string valstr_015_170_CSTH[] = {
+ { 0, "Not extrapolated" },
+ { 1, "Extrapolated" },
+ { 0, NULL }
+};
+static const FieldPart I015_170_CSTH = { 1, 1.0, FIELD_PART_UINT, &hf_015_170_CSTH, NULL };
+static int hf_015_170_CNF = -1;
+static const value_string valstr_015_170_CNF[] = {
+ { 0, "Confirmed Track" },
+ { 1, "Tentative Track" },
+ { 0, NULL }
+};
+static const FieldPart I015_170_CNF = { 1, 1.0, FIELD_PART_UINT, &hf_015_170_CNF, NULL };
+static const FieldPart *I015_170_PARTS[] = {
+ &I015_170_BIZ,
+ &I015_170_BAZ,
+ &I015_170_TUR,
+ &IXXX_1bit_spare,
+ &I015_170_CSTP,
+ &I015_170_CSTH,
+ &I015_170_CNF,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I015_170 = { FX, 1, 0, 0, &hf_015_170, I015_170_PARTS, { NULL } };
+static int hf_015_270 = -1;
+static int hf_015_270_LEN = -1;
+static int hf_015_270_LEN_VALUE = -1;
+static const FieldPart I015_270_LEN_VALUE = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_270_LEN_VALUE, NULL };
+static const FieldPart *I015_270_LEN_PARTS[] = {
+ &I015_270_LEN_VALUE,
+ NULL
+};
+static const AsterixField I015_270_LEN = { FIXED, 2, 0, 0, &hf_015_270_LEN, I015_270_LEN_PARTS, { NULL } };
+static int hf_015_270_WDT = -1;
+static int hf_015_270_WDT_VALUE = -1;
+static const FieldPart I015_270_WDT_VALUE = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_270_WDT_VALUE, NULL };
+static const FieldPart *I015_270_WDT_PARTS[] = {
+ &I015_270_WDT_VALUE,
+ NULL
+};
+static const AsterixField I015_270_WDT = { FIXED, 2, 0, 0, &hf_015_270_WDT, I015_270_WDT_PARTS, { NULL } };
+static int hf_015_270_HGT = -1;
+static int hf_015_270_HGT_VALUE = -1;
+static const FieldPart I015_270_HGT_VALUE = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_270_HGT_VALUE, NULL };
+static const FieldPart *I015_270_HGT_PARTS[] = {
+ &I015_270_HGT_VALUE,
+ NULL
+};
+static const AsterixField I015_270_HGT = { FIXED, 2, 0, 0, &hf_015_270_HGT, I015_270_HGT_PARTS, { NULL } };
+static int hf_015_270_ORT = -1;
+static int hf_015_270_ORT_VALUE = -1;
+static const FieldPart I015_270_ORT_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_015_270_ORT_VALUE, NULL };
+static const FieldPart *I015_270_ORT_PARTS[] = {
+ &I015_270_ORT_VALUE,
+ NULL
+};
+static const AsterixField I015_270_ORT = { FIXED, 2, 0, 0, &hf_015_270_ORT, I015_270_ORT_PARTS, { NULL } };
+static const AsterixField I015_270 = { COMPOUND, 0, 0, 0, &hf_015_270, NULL, { &I015_270_LEN, &I015_270_WDT, &I015_270_HGT, &I015_270_ORT, NULL } };
+static int hf_015_300 = -1;
+static int hf_015_300_CLS = -1;
+static const FieldPart I015_300_CLS = { 9, 1.0, FIELD_PART_UINT, &hf_015_300_CLS, NULL };
+static int hf_015_300_PRB = -1;
+static const FieldPart I015_300_PRB = { 7, 1.0, FIELD_PART_UINT, &hf_015_300_PRB, NULL };
+static const FieldPart *I015_300_PARTS[] = {
+ &I015_300_CLS,
+ &I015_300_PRB,
+ NULL
+};
+static const AsterixField I015_300 = { REPETITIVE, 2, 1, 0, &hf_015_300, I015_300_PARTS, { NULL } };
+static int hf_015_400 = -1;
+static int hf_015_400_PID = -1;
+static const FieldPart I015_400_PID = { 16, 1.0, FIELD_PART_UINT, &hf_015_400_PID, NULL };
+static int hf_015_400_ON = -1;
+static const FieldPart I015_400_ON = { 24, 1.0, FIELD_PART_UINT, &hf_015_400_ON, NULL };
+static const FieldPart *I015_400_PARTS[] = {
+ &I015_400_PID,
+ &I015_400_ON,
+ NULL
+};
+static const AsterixField I015_400 = { FIXED, 5, 0, 0, &hf_015_400, I015_400_PARTS, { NULL } };
+static int hf_015_480 = -1;
+static int hf_015_480_VALUE = -1;
+static const FieldPart I015_480_VALUE = { 40, 1.0, FIELD_PART_HEX, &hf_015_480_VALUE, NULL };
+static const FieldPart *I015_480_PARTS[] = {
+ &I015_480_VALUE,
+ NULL
+};
+static const AsterixField I015_480 = { REPETITIVE, 5, 1, 0, &hf_015_480, I015_480_PARTS, { NULL } };
+static int hf_015_600 = -1;
+static int hf_015_600_P84 = -1;
+static int hf_015_600_P84_LATITUDE = -1;
+static const FieldPart I015_600_P84_LATITUDE = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_015_600_P84_LATITUDE, NULL };
+static int hf_015_600_P84_LONGITUDE = -1;
+static const FieldPart I015_600_P84_LONGITUDE = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_015_600_P84_LONGITUDE, NULL };
+static const FieldPart *I015_600_P84_PARTS[] = {
+ &I015_600_P84_LATITUDE,
+ &I015_600_P84_LONGITUDE,
+ NULL
+};
+static const AsterixField I015_600_P84 = { FIXED, 8, 0, 0, &hf_015_600_P84, I015_600_P84_PARTS, { NULL } };
+static int hf_015_600_HPR = -1;
+static int hf_015_600_HPR_RSHPX = -1;
+static const FieldPart I015_600_HPR_RSHPX = { 16, 0.5, FIELD_PART_UFLOAT, &hf_015_600_HPR_RSHPX, NULL };
+static int hf_015_600_HPR_RSHPY = -1;
+static const FieldPart I015_600_HPR_RSHPY = { 16, 0.5, FIELD_PART_UFLOAT, &hf_015_600_HPR_RSHPY, NULL };
+static int hf_015_600_HPR_CORSHPXY = -1;
+static const FieldPart I015_600_HPR_CORSHPXY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_600_HPR_CORSHPXY, NULL };
+static const FieldPart *I015_600_HPR_PARTS[] = {
+ &I015_600_HPR_RSHPX,
+ &I015_600_HPR_RSHPY,
+ &I015_600_HPR_CORSHPXY,
+ NULL
+};
+static const AsterixField I015_600_HPR = { FIXED, 5, 0, 0, &hf_015_600_HPR, I015_600_HPR_PARTS, { NULL } };
+static int hf_015_600_HPP = -1;
+static int hf_015_600_HPP_SDHPX = -1;
+static const FieldPart I015_600_HPP_SDHPX = { 16, 0.25, FIELD_PART_UFLOAT, &hf_015_600_HPP_SDHPX, NULL };
+static int hf_015_600_HPP_SDHPY = -1;
+static const FieldPart I015_600_HPP_SDHPY = { 16, 0.25, FIELD_PART_UFLOAT, &hf_015_600_HPP_SDHPY, NULL };
+static int hf_015_600_HPP_COSDHPXY = -1;
+static const FieldPart I015_600_HPP_COSDHPXY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_600_HPP_COSDHPXY, NULL };
+static const FieldPart *I015_600_HPP_PARTS[] = {
+ &I015_600_HPP_SDHPX,
+ &I015_600_HPP_SDHPY,
+ &I015_600_HPP_COSDHPXY,
+ NULL
+};
+static const AsterixField I015_600_HPP = { FIXED, 5, 0, 0, &hf_015_600_HPP, I015_600_HPP_PARTS, { NULL } };
+static const AsterixField I015_600 = { COMPOUND, 0, 0, 0, &hf_015_600, NULL, { &I015_600_P84, &I015_600_HPR, &I015_600_HPP, NULL } };
+static int hf_015_601 = -1;
+static int hf_015_601_GH = -1;
+static int hf_015_601_GH_VALUE = -1;
+static const FieldPart I015_601_GH_VALUE = { 24, 0.01, FIELD_PART_FLOAT, &hf_015_601_GH_VALUE, NULL };
+static const FieldPart *I015_601_GH_PARTS[] = {
+ &I015_601_GH_VALUE,
+ NULL
+};
+static const AsterixField I015_601_GH = { FIXED, 3, 0, 0, &hf_015_601_GH, I015_601_GH_PARTS, { NULL } };
+static int hf_015_601_RSGH = -1;
+static int hf_015_601_RSGH_VALUE = -1;
+static const FieldPart I015_601_RSGH_VALUE = { 24, 0.01, FIELD_PART_UFLOAT, &hf_015_601_RSGH_VALUE, NULL };
+static const FieldPart *I015_601_RSGH_PARTS[] = {
+ &I015_601_RSGH_VALUE,
+ NULL
+};
+static const AsterixField I015_601_RSGH = { FIXED, 3, 0, 0, &hf_015_601_RSGH, I015_601_RSGH_PARTS, { NULL } };
+static int hf_015_601_SDGH = -1;
+static int hf_015_601_SDGH_VALUE = -1;
+static const FieldPart I015_601_SDGH_VALUE = { 24, 0.01, FIELD_PART_UFLOAT, &hf_015_601_SDGH_VALUE, NULL };
+static const FieldPart *I015_601_SDGH_PARTS[] = {
+ &I015_601_SDGH_VALUE,
+ NULL
+};
+static const AsterixField I015_601_SDGH = { FIXED, 3, 0, 0, &hf_015_601_SDGH, I015_601_SDGH_PARTS, { NULL } };
+static int hf_015_601_CI6 = -1;
+static int hf_015_601_CI6_UCI6 = -1;
+static const FieldPart I015_601_CI6_UCI6 = { 12, 16.0, FIELD_PART_UFLOAT, &hf_015_601_CI6_UCI6, NULL };
+static int hf_015_601_CI6_LCI6 = -1;
+static const FieldPart I015_601_CI6_LCI6 = { 12, 16.0, FIELD_PART_UFLOAT, &hf_015_601_CI6_LCI6, NULL };
+static const FieldPart *I015_601_CI6_PARTS[] = {
+ &I015_601_CI6_UCI6,
+ &I015_601_CI6_LCI6,
+ NULL
+};
+static const AsterixField I015_601_CI6 = { FIXED, 3, 0, 0, &hf_015_601_CI6, I015_601_CI6_PARTS, { NULL } };
+static int hf_015_601_CI9 = -1;
+static int hf_015_601_CI9_UCI9 = -1;
+static const FieldPart I015_601_CI9_UCI9 = { 12, 16.0, FIELD_PART_UFLOAT, &hf_015_601_CI9_UCI9, NULL };
+static int hf_015_601_CI9_LCI9 = -1;
+static const FieldPart I015_601_CI9_LCI9 = { 12, 16.0, FIELD_PART_UFLOAT, &hf_015_601_CI9_LCI9, NULL };
+static const FieldPart *I015_601_CI9_PARTS[] = {
+ &I015_601_CI9_UCI9,
+ &I015_601_CI9_LCI9,
+ NULL
+};
+static const AsterixField I015_601_CI9 = { FIXED, 3, 0, 0, &hf_015_601_CI9, I015_601_CI9_PARTS, { NULL } };
+static int hf_015_601_COGHHP = -1;
+static int hf_015_601_COGHHP_X = -1;
+static const FieldPart I015_601_COGHHP_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_601_COGHHP_X, NULL };
+static int hf_015_601_COGHHP_Y = -1;
+static const FieldPart I015_601_COGHHP_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_601_COGHHP_Y, NULL };
+static const FieldPart *I015_601_COGHHP_PARTS[] = {
+ &I015_601_COGHHP_X,
+ &I015_601_COGHHP_Y,
+ NULL
+};
+static const AsterixField I015_601_COGHHP = { FIXED, 2, 0, 0, &hf_015_601_COGHHP, I015_601_COGHHP_PARTS, { NULL } };
+static int hf_015_601_COGHHV = -1;
+static int hf_015_601_COGHHV_X = -1;
+static const FieldPart I015_601_COGHHV_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_601_COGHHV_X, NULL };
+static int hf_015_601_COGHHV_Y = -1;
+static const FieldPart I015_601_COGHHV_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_601_COGHHV_Y, NULL };
+static const FieldPart *I015_601_COGHHV_PARTS[] = {
+ &I015_601_COGHHV_X,
+ &I015_601_COGHHV_Y,
+ NULL
+};
+static const AsterixField I015_601_COGHHV = { FIXED, 2, 0, 0, &hf_015_601_COGHHV, I015_601_COGHHV_PARTS, { NULL } };
+static int hf_015_601_COGHHA = -1;
+static int hf_015_601_COGHHA_X = -1;
+static const FieldPart I015_601_COGHHA_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_601_COGHHA_X, NULL };
+static int hf_015_601_COGHHA_Y = -1;
+static const FieldPart I015_601_COGHHA_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_601_COGHHA_Y, NULL };
+static const FieldPart *I015_601_COGHHA_PARTS[] = {
+ &I015_601_COGHHA_X,
+ &I015_601_COGHHA_Y,
+ NULL
+};
+static const AsterixField I015_601_COGHHA = { FIXED, 2, 0, 0, &hf_015_601_COGHHA, I015_601_COGHHA_PARTS, { NULL } };
+static const AsterixField I015_601 = { COMPOUND, 0, 0, 0, &hf_015_601, NULL, { &I015_601_GH, &I015_601_RSGH, &I015_601_SDGH, &I015_601_CI6, &I015_601_CI9, &I015_601_COGHHP, &I015_601_COGHHV, &I015_601_COGHHA, NULL } };
+static int hf_015_602 = -1;
+static int hf_015_602_HV = -1;
+static int hf_015_602_HV_X = -1;
+static const FieldPart I015_602_HV_X = { 20, 0.01, FIELD_PART_FLOAT, &hf_015_602_HV_X, NULL };
+static int hf_015_602_HV_Y = -1;
+static const FieldPart I015_602_HV_Y = { 20, 0.01, FIELD_PART_FLOAT, &hf_015_602_HV_Y, NULL };
+static const FieldPart *I015_602_HV_PARTS[] = {
+ &I015_602_HV_X,
+ &I015_602_HV_Y,
+ NULL
+};
+static const AsterixField I015_602_HV = { FIXED, 5, 0, 0, &hf_015_602_HV, I015_602_HV_PARTS, { NULL } };
+static int hf_015_602_RSHV = -1;
+static int hf_015_602_RSHV_X = -1;
+static const FieldPart I015_602_RSHV_X = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_602_RSHV_X, NULL };
+static int hf_015_602_RSHV_Y = -1;
+static const FieldPart I015_602_RSHV_Y = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_602_RSHV_Y, NULL };
+static int hf_015_602_RSHV_CORSHVXY = -1;
+static const FieldPart I015_602_RSHV_CORSHVXY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_602_RSHV_CORSHVXY, NULL };
+static const FieldPart *I015_602_RSHV_PARTS[] = {
+ &I015_602_RSHV_X,
+ &I015_602_RSHV_Y,
+ &I015_602_RSHV_CORSHVXY,
+ NULL
+};
+static const AsterixField I015_602_RSHV = { FIXED, 5, 0, 0, &hf_015_602_RSHV, I015_602_RSHV_PARTS, { NULL } };
+static int hf_015_602_SDHV = -1;
+static int hf_015_602_SDHV_X = -1;
+static const FieldPart I015_602_SDHV_X = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_602_SDHV_X, NULL };
+static int hf_015_602_SDHV_Y = -1;
+static const FieldPart I015_602_SDHV_Y = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_602_SDHV_Y, NULL };
+static int hf_015_602_SDHV_COHVXY = -1;
+static const FieldPart I015_602_SDHV_COHVXY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_602_SDHV_COHVXY, NULL };
+static const FieldPart *I015_602_SDHV_PARTS[] = {
+ &I015_602_SDHV_X,
+ &I015_602_SDHV_Y,
+ &I015_602_SDHV_COHVXY,
+ NULL
+};
+static const AsterixField I015_602_SDHV = { FIXED, 5, 0, 0, &hf_015_602_SDHV, I015_602_SDHV_PARTS, { NULL } };
+static int hf_015_602_COHVHP = -1;
+static int hf_015_602_COHVHP_COHVXHPX = -1;
+static const FieldPart I015_602_COHVHP_COHVXHPX = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_602_COHVHP_COHVXHPX, NULL };
+static int hf_015_602_COHVHP_COHVXHPY = -1;
+static const FieldPart I015_602_COHVHP_COHVXHPY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_602_COHVHP_COHVXHPY, NULL };
+static int hf_015_602_COHVHP_COHVYHPX = -1;
+static const FieldPart I015_602_COHVHP_COHVYHPX = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_602_COHVHP_COHVYHPX, NULL };
+static int hf_015_602_COHVHP_COHVYHPY = -1;
+static const FieldPart I015_602_COHVHP_COHVYHPY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_602_COHVHP_COHVYHPY, NULL };
+static const FieldPart *I015_602_COHVHP_PARTS[] = {
+ &I015_602_COHVHP_COHVXHPX,
+ &I015_602_COHVHP_COHVXHPY,
+ &I015_602_COHVHP_COHVYHPX,
+ &I015_602_COHVHP_COHVYHPY,
+ NULL
+};
+static const AsterixField I015_602_COHVHP = { FIXED, 4, 0, 0, &hf_015_602_COHVHP, I015_602_COHVHP_PARTS, { NULL } };
+static const AsterixField I015_602 = { COMPOUND, 0, 0, 0, &hf_015_602, NULL, { &I015_602_HV, &I015_602_RSHV, &I015_602_SDHV, &I015_602_COHVHP, NULL } };
+static int hf_015_603 = -1;
+static int hf_015_603_HA = -1;
+static int hf_015_603_HA_X = -1;
+static const FieldPart I015_603_HA_X = { 12, 0.0625, FIELD_PART_FLOAT, &hf_015_603_HA_X, NULL };
+static int hf_015_603_HA_Y = -1;
+static const FieldPart I015_603_HA_Y = { 12, 0.0625, FIELD_PART_FLOAT, &hf_015_603_HA_Y, NULL };
+static const FieldPart *I015_603_HA_PARTS[] = {
+ &I015_603_HA_X,
+ &I015_603_HA_Y,
+ NULL
+};
+static const AsterixField I015_603_HA = { FIXED, 3, 0, 0, &hf_015_603_HA, I015_603_HA_PARTS, { NULL } };
+static int hf_015_603_SDHA = -1;
+static int hf_015_603_SDHA_X = -1;
+static const FieldPart I015_603_SDHA_X = { 12, 0.0625, FIELD_PART_UFLOAT, &hf_015_603_SDHA_X, NULL };
+static int hf_015_603_SDHA_Y = -1;
+static const FieldPart I015_603_SDHA_Y = { 12, 0.0625, FIELD_PART_UFLOAT, &hf_015_603_SDHA_Y, NULL };
+static int hf_015_603_SDHA_COHAXY = -1;
+static const FieldPart I015_603_SDHA_COHAXY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_603_SDHA_COHAXY, NULL };
+static const FieldPart *I015_603_SDHA_PARTS[] = {
+ &I015_603_SDHA_X,
+ &I015_603_SDHA_Y,
+ &I015_603_SDHA_COHAXY,
+ NULL
+};
+static const AsterixField I015_603_SDHA = { FIXED, 4, 0, 0, &hf_015_603_SDHA, I015_603_SDHA_PARTS, { NULL } };
+static int hf_015_603_COHAHP = -1;
+static int hf_015_603_COHAHP_COHAXHPX = -1;
+static const FieldPart I015_603_COHAHP_COHAXHPX = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_603_COHAHP_COHAXHPX, NULL };
+static int hf_015_603_COHAHP_COHAXHPY = -1;
+static const FieldPart I015_603_COHAHP_COHAXHPY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_603_COHAHP_COHAXHPY, NULL };
+static int hf_015_603_COHAHP_COHAYHPX = -1;
+static const FieldPart I015_603_COHAHP_COHAYHPX = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_603_COHAHP_COHAYHPX, NULL };
+static int hf_015_603_COHAHP_COAYHPY = -1;
+static const FieldPart I015_603_COHAHP_COAYHPY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_603_COHAHP_COAYHPY, NULL };
+static const FieldPart *I015_603_COHAHP_PARTS[] = {
+ &I015_603_COHAHP_COHAXHPX,
+ &I015_603_COHAHP_COHAXHPY,
+ &I015_603_COHAHP_COHAYHPX,
+ &I015_603_COHAHP_COAYHPY,
+ NULL
+};
+static const AsterixField I015_603_COHAHP = { FIXED, 4, 0, 0, &hf_015_603_COHAHP, I015_603_COHAHP_PARTS, { NULL } };
+static int hf_015_603_COHAHV = -1;
+static int hf_015_603_COHAHV_COHAXHVX = -1;
+static const FieldPart I015_603_COHAHV_COHAXHVX = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_603_COHAHV_COHAXHVX, NULL };
+static int hf_015_603_COHAHV_COHAXHVY = -1;
+static const FieldPart I015_603_COHAHV_COHAXHVY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_603_COHAHV_COHAXHVY, NULL };
+static int hf_015_603_COHAHV_COHAYHVX = -1;
+static const FieldPart I015_603_COHAHV_COHAYHVX = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_603_COHAHV_COHAYHVX, NULL };
+static int hf_015_603_COHAHV_COHAYHVY = -1;
+static const FieldPart I015_603_COHAHV_COHAYHVY = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_603_COHAHV_COHAYHVY, NULL };
+static const FieldPart *I015_603_COHAHV_PARTS[] = {
+ &I015_603_COHAHV_COHAXHVX,
+ &I015_603_COHAHV_COHAXHVY,
+ &I015_603_COHAHV_COHAYHVX,
+ &I015_603_COHAHV_COHAYHVY,
+ NULL
+};
+static const AsterixField I015_603_COHAHV = { FIXED, 4, 0, 0, &hf_015_603_COHAHV, I015_603_COHAHV_PARTS, { NULL } };
+static const AsterixField I015_603 = { COMPOUND, 0, 0, 0, &hf_015_603, NULL, { &I015_603_HA, &I015_603_SDHA, &I015_603_COHAHP, &I015_603_COHAHV, NULL } };
+static int hf_015_604 = -1;
+static int hf_015_604_VV = -1;
+static int hf_015_604_VV_VALUE = -1;
+static const FieldPart I015_604_VV_VALUE = { 24, 0.01, FIELD_PART_FLOAT, &hf_015_604_VV_VALUE, NULL };
+static const FieldPart *I015_604_VV_PARTS[] = {
+ &I015_604_VV_VALUE,
+ NULL
+};
+static const AsterixField I015_604_VV = { FIXED, 3, 0, 0, &hf_015_604_VV, I015_604_VV_PARTS, { NULL } };
+static int hf_015_604_RSVV = -1;
+static int hf_015_604_RSVV_VALUE = -1;
+static const FieldPart I015_604_RSVV_VALUE = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_604_RSVV_VALUE, NULL };
+static const FieldPart *I015_604_RSVV_PARTS[] = {
+ &I015_604_RSVV_VALUE,
+ NULL
+};
+static const AsterixField I015_604_RSVV = { FIXED, 2, 0, 0, &hf_015_604_RSVV, I015_604_RSVV_PARTS, { NULL } };
+static int hf_015_604_SDVV = -1;
+static int hf_015_604_SDVV_SDVV = -1;
+static const FieldPart I015_604_SDVV_SDVV = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_604_SDVV_SDVV, NULL };
+static int hf_015_604_SDVV_COVVGH = -1;
+static const FieldPart I015_604_SDVV_COVVGH = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_604_SDVV_COVVGH, NULL };
+static const FieldPart *I015_604_SDVV_PARTS[] = {
+ &I015_604_SDVV_SDVV,
+ &I015_604_SDVV_COVVGH,
+ NULL
+};
+static const AsterixField I015_604_SDVV = { FIXED, 3, 0, 0, &hf_015_604_SDVV, I015_604_SDVV_PARTS, { NULL } };
+static int hf_015_604_COVVHP = -1;
+static int hf_015_604_COVVHP_X = -1;
+static const FieldPart I015_604_COVVHP_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_604_COVVHP_X, NULL };
+static int hf_015_604_COVVHP_Y = -1;
+static const FieldPart I015_604_COVVHP_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_604_COVVHP_Y, NULL };
+static const FieldPart *I015_604_COVVHP_PARTS[] = {
+ &I015_604_COVVHP_X,
+ &I015_604_COVVHP_Y,
+ NULL
+};
+static const AsterixField I015_604_COVVHP = { FIXED, 2, 0, 0, &hf_015_604_COVVHP, I015_604_COVVHP_PARTS, { NULL } };
+static int hf_015_604_COVVHV = -1;
+static int hf_015_604_COVVHV_X = -1;
+static const FieldPart I015_604_COVVHV_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_604_COVVHV_X, NULL };
+static int hf_015_604_COVVHV_Y = -1;
+static const FieldPart I015_604_COVVHV_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_604_COVVHV_Y, NULL };
+static const FieldPart *I015_604_COVVHV_PARTS[] = {
+ &I015_604_COVVHV_X,
+ &I015_604_COVVHV_Y,
+ NULL
+};
+static const AsterixField I015_604_COVVHV = { FIXED, 2, 0, 0, &hf_015_604_COVVHV, I015_604_COVVHV_PARTS, { NULL } };
+static int hf_015_604_COVVHA = -1;
+static int hf_015_604_COVVHA_X = -1;
+static const FieldPart I015_604_COVVHA_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_604_COVVHA_X, NULL };
+static int hf_015_604_COVVHA_Y = -1;
+static const FieldPart I015_604_COVVHA_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_604_COVVHA_Y, NULL };
+static const FieldPart *I015_604_COVVHA_PARTS[] = {
+ &I015_604_COVVHA_X,
+ &I015_604_COVVHA_Y,
+ NULL
+};
+static const AsterixField I015_604_COVVHA = { FIXED, 2, 0, 0, &hf_015_604_COVVHA, I015_604_COVVHA_PARTS, { NULL } };
+static const AsterixField I015_604 = { COMPOUND, 0, 0, 0, &hf_015_604, NULL, { &I015_604_VV, &I015_604_RSVV, &I015_604_SDVV, &I015_604_COVVHP, &I015_604_COVVHV, &I015_604_COVVHA, NULL } };
+static int hf_015_605 = -1;
+static int hf_015_605_VA = -1;
+static int hf_015_605_VA_VALUE = -1;
+static const FieldPart I015_605_VA_VALUE = { 16, 0.01, FIELD_PART_FLOAT, &hf_015_605_VA_VALUE, NULL };
+static const FieldPart *I015_605_VA_PARTS[] = {
+ &I015_605_VA_VALUE,
+ NULL
+};
+static const AsterixField I015_605_VA = { FIXED, 2, 0, 0, &hf_015_605_VA, I015_605_VA_PARTS, { NULL } };
+static int hf_015_605_RSVA = -1;
+static int hf_015_605_RSVA_SDVA = -1;
+static const FieldPart I015_605_RSVA_SDVA = { 16, 0.01, FIELD_PART_UFLOAT, &hf_015_605_RSVA_SDVA, NULL };
+static int hf_015_605_RSVA_COVAGH = -1;
+static const FieldPart I015_605_RSVA_COVAGH = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_605_RSVA_COVAGH, NULL };
+static int hf_015_605_RSVA_COVAVV = -1;
+static const FieldPart I015_605_RSVA_COVAVV = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_605_RSVA_COVAVV, NULL };
+static const FieldPart *I015_605_RSVA_PARTS[] = {
+ &I015_605_RSVA_SDVA,
+ &I015_605_RSVA_COVAGH,
+ &I015_605_RSVA_COVAVV,
+ NULL
+};
+static const AsterixField I015_605_RSVA = { FIXED, 4, 0, 0, &hf_015_605_RSVA, I015_605_RSVA_PARTS, { NULL } };
+static int hf_015_605_COVAHP = -1;
+static int hf_015_605_COVAHP_X = -1;
+static const FieldPart I015_605_COVAHP_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_605_COVAHP_X, NULL };
+static int hf_015_605_COVAHP_Y = -1;
+static const FieldPart I015_605_COVAHP_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_605_COVAHP_Y, NULL };
+static const FieldPart *I015_605_COVAHP_PARTS[] = {
+ &I015_605_COVAHP_X,
+ &I015_605_COVAHP_Y,
+ NULL
+};
+static const AsterixField I015_605_COVAHP = { FIXED, 2, 0, 0, &hf_015_605_COVAHP, I015_605_COVAHP_PARTS, { NULL } };
+static int hf_015_605_COVAHV = -1;
+static int hf_015_605_COVAHV_X = -1;
+static const FieldPart I015_605_COVAHV_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_605_COVAHV_X, NULL };
+static int hf_015_605_COVAHV_Y = -1;
+static const FieldPart I015_605_COVAHV_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_605_COVAHV_Y, NULL };
+static const FieldPart *I015_605_COVAHV_PARTS[] = {
+ &I015_605_COVAHV_X,
+ &I015_605_COVAHV_Y,
+ NULL
+};
+static const AsterixField I015_605_COVAHV = { FIXED, 2, 0, 0, &hf_015_605_COVAHV, I015_605_COVAHV_PARTS, { NULL } };
+static int hf_015_605_COVAHA = -1;
+static int hf_015_605_COVAHA_X = -1;
+static const FieldPart I015_605_COVAHA_X = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_605_COVAHA_X, NULL };
+static int hf_015_605_COVAHA_Y = -1;
+static const FieldPart I015_605_COVAHA_Y = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_605_COVAHA_Y, NULL };
+static const FieldPart *I015_605_COVAHA_PARTS[] = {
+ &I015_605_COVAHA_X,
+ &I015_605_COVAHA_Y,
+ NULL
+};
+static const AsterixField I015_605_COVAHA = { FIXED, 2, 0, 0, &hf_015_605_COVAHA, I015_605_COVAHA_PARTS, { NULL } };
+static const AsterixField I015_605 = { COMPOUND, 0, 0, 0, &hf_015_605, NULL, { &I015_605_VA, &I015_605_RSVA, &I015_605_COVAHP, &I015_605_COVAHV, &I015_605_COVAHA, NULL } };
+static int hf_015_625 = -1;
+static int hf_015_625_R = -1;
+static int hf_015_625_R_VALUE = -1;
+static const FieldPart I015_625_R_VALUE = { 24, 0.1, FIELD_PART_FLOAT, &hf_015_625_R_VALUE, NULL };
+static const FieldPart *I015_625_R_PARTS[] = {
+ &I015_625_R_VALUE,
+ NULL
+};
+static const AsterixField I015_625_R = { FIXED, 3, 0, 0, &hf_015_625_R, I015_625_R_PARTS, { NULL } };
+static int hf_015_625_RSR = -1;
+static int hf_015_625_RSR_VALUE = -1;
+static const FieldPart I015_625_RSR_VALUE = { 24, 0.1, FIELD_PART_UFLOAT, &hf_015_625_RSR_VALUE, NULL };
+static const FieldPart *I015_625_RSR_PARTS[] = {
+ &I015_625_RSR_VALUE,
+ NULL
+};
+static const AsterixField I015_625_RSR = { FIXED, 3, 0, 0, &hf_015_625_RSR, I015_625_RSR_PARTS, { NULL } };
+static int hf_015_625_SDR = -1;
+static int hf_015_625_SDR_VALUE = -1;
+static const FieldPart I015_625_SDR_VALUE = { 24, 0.1, FIELD_PART_UFLOAT, &hf_015_625_SDR_VALUE, NULL };
+static const FieldPart *I015_625_SDR_PARTS[] = {
+ &I015_625_SDR_VALUE,
+ NULL
+};
+static const AsterixField I015_625_SDR = { FIXED, 3, 0, 0, &hf_015_625_SDR, I015_625_SDR_PARTS, { NULL } };
+static int hf_015_625_RR = -1;
+static int hf_015_625_RR_VALUE = -1;
+static const FieldPart I015_625_RR_VALUE = { 24, 0.1, FIELD_PART_FLOAT, &hf_015_625_RR_VALUE, NULL };
+static const FieldPart *I015_625_RR_PARTS[] = {
+ &I015_625_RR_VALUE,
+ NULL
+};
+static const AsterixField I015_625_RR = { FIXED, 3, 0, 0, &hf_015_625_RR, I015_625_RR_PARTS, { NULL } };
+static int hf_015_625_RSRR = -1;
+static int hf_015_625_RSRR_VALUE = -1;
+static const FieldPart I015_625_RSRR_VALUE = { 24, 0.1, FIELD_PART_UFLOAT, &hf_015_625_RSRR_VALUE, NULL };
+static const FieldPart *I015_625_RSRR_PARTS[] = {
+ &I015_625_RSRR_VALUE,
+ NULL
+};
+static const AsterixField I015_625_RSRR = { FIXED, 3, 0, 0, &hf_015_625_RSRR, I015_625_RSRR_PARTS, { NULL } };
+static int hf_015_625_SDRR = -1;
+static int hf_015_625_SDRR_SDRR = -1;
+static const FieldPart I015_625_SDRR_SDRR = { 24, 0.1, FIELD_PART_UFLOAT, &hf_015_625_SDRR_SDRR, NULL };
+static int hf_015_625_SDRR_CORRR = -1;
+static const FieldPart I015_625_SDRR_CORRR = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_625_SDRR_CORRR, NULL };
+static const FieldPart *I015_625_SDRR_PARTS[] = {
+ &I015_625_SDRR_SDRR,
+ &I015_625_SDRR_CORRR,
+ NULL
+};
+static const AsterixField I015_625_SDRR = { FIXED, 4, 0, 0, &hf_015_625_SDRR, I015_625_SDRR_PARTS, { NULL } };
+static int hf_015_625_RA = -1;
+static int hf_015_625_RA_VALUE = -1;
+static const FieldPart I015_625_RA_VALUE = { 16, 0.015625, FIELD_PART_FLOAT, &hf_015_625_RA_VALUE, NULL };
+static const FieldPart *I015_625_RA_PARTS[] = {
+ &I015_625_RA_VALUE,
+ NULL
+};
+static const AsterixField I015_625_RA = { FIXED, 2, 0, 0, &hf_015_625_RA, I015_625_RA_PARTS, { NULL } };
+static int hf_015_625_SDRA = -1;
+static int hf_015_625_SDRA_SDRA = -1;
+static const FieldPart I015_625_SDRA_SDRA = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_015_625_SDRA_SDRA, NULL };
+static int hf_015_625_SDRA_CORAR = -1;
+static const FieldPart I015_625_SDRA_CORAR = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_625_SDRA_CORAR, NULL };
+static int hf_015_625_SDRA_CORARR = -1;
+static const FieldPart I015_625_SDRA_CORARR = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_625_SDRA_CORARR, NULL };
+static const FieldPart *I015_625_SDRA_PARTS[] = {
+ &I015_625_SDRA_SDRA,
+ &I015_625_SDRA_CORAR,
+ &I015_625_SDRA_CORARR,
+ NULL
+};
+static const AsterixField I015_625_SDRA = { FIXED, 4, 0, 0, &hf_015_625_SDRA, I015_625_SDRA_PARTS, { NULL } };
+static const AsterixField I015_625 = { COMPOUND, 0, 0, 0, &hf_015_625, NULL, { &I015_625_R, &I015_625_RSR, &I015_625_SDR, &I015_625_RR, &I015_625_RSRR, &I015_625_SDRR, &I015_625_RA, &I015_625_SDRA, NULL } };
+static int hf_015_626 = -1;
+static int hf_015_626_DV = -1;
+static int hf_015_626_DV_VALUE = -1;
+static const FieldPart I015_626_DV_VALUE = { 24, 0.01, FIELD_PART_FLOAT, &hf_015_626_DV_VALUE, NULL };
+static const FieldPart *I015_626_DV_PARTS[] = {
+ &I015_626_DV_VALUE,
+ NULL
+};
+static const AsterixField I015_626_DV = { FIXED, 3, 0, 0, &hf_015_626_DV, I015_626_DV_PARTS, { NULL } };
+static int hf_015_626_SDDV = -1;
+static int hf_015_626_SDDV_VALUE = -1;
+static const FieldPart I015_626_SDDV_VALUE = { 16, 0.015625, FIELD_PART_UFLOAT, &hf_015_626_SDDV_VALUE, NULL };
+static const FieldPart *I015_626_SDDV_PARTS[] = {
+ &I015_626_SDDV_VALUE,
+ NULL
+};
+static const AsterixField I015_626_SDDV = { FIXED, 2, 0, 0, &hf_015_626_SDDV, I015_626_SDDV_PARTS, { NULL } };
+static int hf_015_626_DA = -1;
+static int hf_015_626_DA_VALUE = -1;
+static const FieldPart I015_626_DA_VALUE = { 16, 0.015625, FIELD_PART_FLOAT, &hf_015_626_DA_VALUE, NULL };
+static const FieldPart *I015_626_DA_PARTS[] = {
+ &I015_626_DA_VALUE,
+ NULL
+};
+static const AsterixField I015_626_DA = { FIXED, 2, 0, 0, &hf_015_626_DA, I015_626_DA_PARTS, { NULL } };
+static int hf_015_626_SDDA = -1;
+static int hf_015_626_SDDA_SDDA = -1;
+static const FieldPart I015_626_SDDA_SDDA = { 16, 0.015625, FIELD_PART_UFLOAT, &hf_015_626_SDDA_SDDA, NULL };
+static int hf_015_626_SDDA_CODADV = -1;
+static const FieldPart I015_626_SDDA_CODADV = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_626_SDDA_CODADV, NULL };
+static const FieldPart *I015_626_SDDA_PARTS[] = {
+ &I015_626_SDDA_SDDA,
+ &I015_626_SDDA_CODADV,
+ NULL
+};
+static const AsterixField I015_626_SDDA = { FIXED, 3, 0, 0, &hf_015_626_SDDA, I015_626_SDDA_PARTS, { NULL } };
+static int hf_015_626_CODVR = -1;
+static int hf_015_626_CODVR_VALUE = -1;
+static const FieldPart I015_626_CODVR_VALUE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_626_CODVR_VALUE, NULL };
+static const FieldPart *I015_626_CODVR_PARTS[] = {
+ &I015_626_CODVR_VALUE,
+ NULL
+};
+static const AsterixField I015_626_CODVR = { FIXED, 1, 0, 0, &hf_015_626_CODVR, I015_626_CODVR_PARTS, { NULL } };
+static int hf_015_626_CODVRR = -1;
+static int hf_015_626_CODVRR_VALUE = -1;
+static const FieldPart I015_626_CODVRR_VALUE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_626_CODVRR_VALUE, NULL };
+static const FieldPart *I015_626_CODVRR_PARTS[] = {
+ &I015_626_CODVRR_VALUE,
+ NULL
+};
+static const AsterixField I015_626_CODVRR = { FIXED, 1, 0, 0, &hf_015_626_CODVRR, I015_626_CODVRR_PARTS, { NULL } };
+static int hf_015_626_CODVRA = -1;
+static int hf_015_626_CODVRA_VALUE = -1;
+static const FieldPart I015_626_CODVRA_VALUE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_626_CODVRA_VALUE, NULL };
+static const FieldPart *I015_626_CODVRA_PARTS[] = {
+ &I015_626_CODVRA_VALUE,
+ NULL
+};
+static const AsterixField I015_626_CODVRA = { FIXED, 1, 0, 0, &hf_015_626_CODVRA, I015_626_CODVRA_PARTS, { NULL } };
+static int hf_015_626_CODAR = -1;
+static int hf_015_626_CODAR_VALUE = -1;
+static const FieldPart I015_626_CODAR_VALUE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_626_CODAR_VALUE, NULL };
+static const FieldPart *I015_626_CODAR_PARTS[] = {
+ &I015_626_CODAR_VALUE,
+ NULL
+};
+static const AsterixField I015_626_CODAR = { FIXED, 1, 0, 0, &hf_015_626_CODAR, I015_626_CODAR_PARTS, { NULL } };
+static int hf_015_626_CODARR = -1;
+static int hf_015_626_CODARR_VALUE = -1;
+static const FieldPart I015_626_CODARR_VALUE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_626_CODARR_VALUE, NULL };
+static const FieldPart *I015_626_CODARR_PARTS[] = {
+ &I015_626_CODARR_VALUE,
+ NULL
+};
+static const AsterixField I015_626_CODARR = { FIXED, 1, 0, 0, &hf_015_626_CODARR, I015_626_CODARR_PARTS, { NULL } };
+static int hf_015_626_CODARA = -1;
+static int hf_015_626_CODARA_VALUE = -1;
+static const FieldPart I015_626_CODARA_VALUE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_626_CODARA_VALUE, NULL };
+static const FieldPart *I015_626_CODARA_PARTS[] = {
+ &I015_626_CODARA_VALUE,
+ NULL
+};
+static const AsterixField I015_626_CODARA = { FIXED, 1, 0, 0, &hf_015_626_CODARA, I015_626_CODARA_PARTS, { NULL } };
+static const AsterixField I015_626 = { COMPOUND, 0, 0, 0, &hf_015_626, NULL, { &I015_626_DV, &I015_626_SDDV, &I015_626_DA, &I015_626_SDDA, &I015_626_CODVR, &I015_626_CODVRR, &I015_626_CODVRA, &I015_626_CODAR, &I015_626_CODARR, &I015_626_CODARA, NULL } };
+static int hf_015_627 = -1;
+static int hf_015_627_AZ = -1;
+static int hf_015_627_AZ_VALUE = -1;
+static const FieldPart I015_627_AZ_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_015_627_AZ_VALUE, NULL };
+static const FieldPart *I015_627_AZ_PARTS[] = {
+ &I015_627_AZ_VALUE,
+ NULL
+};
+static const AsterixField I015_627_AZ = { FIXED, 2, 0, 0, &hf_015_627_AZ, I015_627_AZ_PARTS, { NULL } };
+static int hf_015_627_RSAZ = -1;
+static int hf_015_627_RSAZ_VALUE = -1;
+static const FieldPart I015_627_RSAZ_VALUE = { 16, 0.0006866455078125, FIELD_PART_UFLOAT, &hf_015_627_RSAZ_VALUE, NULL };
+static const FieldPart *I015_627_RSAZ_PARTS[] = {
+ &I015_627_RSAZ_VALUE,
+ NULL
+};
+static const AsterixField I015_627_RSAZ = { FIXED, 2, 0, 0, &hf_015_627_RSAZ, I015_627_RSAZ_PARTS, { NULL } };
+static int hf_015_627_SDASZ = -1;
+static int hf_015_627_SDASZ_VALUE = -1;
+static const FieldPart I015_627_SDASZ_VALUE = { 16, 0.0006866455078125, FIELD_PART_UFLOAT, &hf_015_627_SDASZ_VALUE, NULL };
+static const FieldPart *I015_627_SDASZ_PARTS[] = {
+ &I015_627_SDASZ_VALUE,
+ NULL
+};
+static const AsterixField I015_627_SDASZ = { FIXED, 2, 0, 0, &hf_015_627_SDASZ, I015_627_SDASZ_PARTS, { NULL } };
+static int hf_015_627_AZR = -1;
+static int hf_015_627_AZR_VALUE = -1;
+static const FieldPart I015_627_AZR_VALUE = { 16, 0.00274658203125, FIELD_PART_FLOAT, &hf_015_627_AZR_VALUE, NULL };
+static const FieldPart *I015_627_AZR_PARTS[] = {
+ &I015_627_AZR_VALUE,
+ NULL
+};
+static const AsterixField I015_627_AZR = { FIXED, 2, 0, 0, &hf_015_627_AZR, I015_627_AZR_PARTS, { NULL } };
+static int hf_015_627_SDAZR = -1;
+static int hf_015_627_SDAZR_SDAZR = -1;
+static const FieldPart I015_627_SDAZR_SDAZR = { 16, 0.0006866455078125, FIELD_PART_UFLOAT, &hf_015_627_SDAZR_SDAZR, NULL };
+static int hf_015_627_SDAZR_COAZRAZ = -1;
+static const FieldPart I015_627_SDAZR_COAZRAZ = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_627_SDAZR_COAZRAZ, NULL };
+static const FieldPart *I015_627_SDAZR_PARTS[] = {
+ &I015_627_SDAZR_SDAZR,
+ &I015_627_SDAZR_COAZRAZ,
+ NULL
+};
+static const AsterixField I015_627_SDAZR = { FIXED, 3, 0, 0, &hf_015_627_SDAZR, I015_627_SDAZR_PARTS, { NULL } };
+static int hf_015_627_AZEX = -1;
+static int hf_015_627_AZEX_S = -1;
+static const FieldPart I015_627_AZEX_S = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_015_627_AZEX_S, NULL };
+static int hf_015_627_AZEX_E = -1;
+static const FieldPart I015_627_AZEX_E = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_015_627_AZEX_E, NULL };
+static const FieldPart *I015_627_AZEX_PARTS[] = {
+ &I015_627_AZEX_S,
+ &I015_627_AZEX_E,
+ NULL
+};
+static const AsterixField I015_627_AZEX = { FIXED, 4, 0, 0, &hf_015_627_AZEX, I015_627_AZEX_PARTS, { NULL } };
+static const AsterixField I015_627 = { COMPOUND, 0, 0, 0, &hf_015_627, NULL, { &I015_627_AZ, &I015_627_RSAZ, &I015_627_SDASZ, &I015_627_AZR, &I015_627_SDAZR, &I015_627_AZEX, NULL } };
+static int hf_015_628 = -1;
+static int hf_015_628_EL = -1;
+static int hf_015_628_EL_VALUE = -1;
+static const FieldPart I015_628_EL_VALUE = { 16, 0.00274658203125, FIELD_PART_FLOAT, &hf_015_628_EL_VALUE, NULL };
+static const FieldPart *I015_628_EL_PARTS[] = {
+ &I015_628_EL_VALUE,
+ NULL
+};
+static const AsterixField I015_628_EL = { FIXED, 2, 0, 0, &hf_015_628_EL, I015_628_EL_PARTS, { NULL } };
+static int hf_015_628_RSEL = -1;
+static int hf_015_628_RSEL_VALUE = -1;
+static const FieldPart I015_628_RSEL_VALUE = { 16, 0.0006866455078125, FIELD_PART_UFLOAT, &hf_015_628_RSEL_VALUE, NULL };
+static const FieldPart *I015_628_RSEL_PARTS[] = {
+ &I015_628_RSEL_VALUE,
+ NULL
+};
+static const AsterixField I015_628_RSEL = { FIXED, 2, 0, 0, &hf_015_628_RSEL, I015_628_RSEL_PARTS, { NULL } };
+static int hf_015_628_SDEL = -1;
+static int hf_015_628_SDEL_VALUE = -1;
+static const FieldPart I015_628_SDEL_VALUE = { 16, 0.0006866455078125, FIELD_PART_UFLOAT, &hf_015_628_SDEL_VALUE, NULL };
+static const FieldPart *I015_628_SDEL_PARTS[] = {
+ &I015_628_SDEL_VALUE,
+ NULL
+};
+static const AsterixField I015_628_SDEL = { FIXED, 2, 0, 0, &hf_015_628_SDEL, I015_628_SDEL_PARTS, { NULL } };
+static int hf_015_628_ER = -1;
+static int hf_015_628_ER_VALUE = -1;
+static const FieldPart I015_628_ER_VALUE = { 16, 0.00274658203125, FIELD_PART_FLOAT, &hf_015_628_ER_VALUE, NULL };
+static const FieldPart *I015_628_ER_PARTS[] = {
+ &I015_628_ER_VALUE,
+ NULL
+};
+static const AsterixField I015_628_ER = { FIXED, 2, 0, 0, &hf_015_628_ER, I015_628_ER_PARTS, { NULL } };
+static int hf_015_628_SDER = -1;
+static int hf_015_628_SDER_SDELR = -1;
+static const FieldPart I015_628_SDER_SDELR = { 16, 0.0006866455078125, FIELD_PART_UFLOAT, &hf_015_628_SDER_SDELR, NULL };
+static int hf_015_628_SDER_COELREL = -1;
+static const FieldPart I015_628_SDER_COELREL = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_015_628_SDER_COELREL, NULL };
+static const FieldPart *I015_628_SDER_PARTS[] = {
+ &I015_628_SDER_SDELR,
+ &I015_628_SDER_COELREL,
+ NULL
+};
+static const AsterixField I015_628_SDER = { FIXED, 3, 0, 0, &hf_015_628_SDER, I015_628_SDER_PARTS, { NULL } };
+static int hf_015_628_ELEX = -1;
+static int hf_015_628_ELEX_S = -1;
+static const FieldPart I015_628_ELEX_S = { 16, 0.00274658203125, FIELD_PART_FLOAT, &hf_015_628_ELEX_S, NULL };
+static int hf_015_628_ELEX_E = -1;
+static const FieldPart I015_628_ELEX_E = { 16, 0.00274658203125, FIELD_PART_FLOAT, &hf_015_628_ELEX_E, NULL };
+static const FieldPart *I015_628_ELEX_PARTS[] = {
+ &I015_628_ELEX_S,
+ &I015_628_ELEX_E,
+ NULL
+};
+static const AsterixField I015_628_ELEX = { FIXED, 4, 0, 0, &hf_015_628_ELEX, I015_628_ELEX_PARTS, { NULL } };
+static const AsterixField I015_628 = { COMPOUND, 0, 0, 0, &hf_015_628, NULL, { &I015_628_EL, &I015_628_RSEL, &I015_628_SDEL, &I015_628_ER, &I015_628_SDER, &I015_628_ELEX, NULL } };
+static int hf_015_630 = -1;
+static int hf_015_630_DPP = -1;
+static int hf_015_630_DPP_VALUE = -1;
+static const FieldPart I015_630_DPP_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_015_630_DPP_VALUE, NULL };
+static const FieldPart *I015_630_DPP_PARTS[] = {
+ &I015_630_DPP_VALUE,
+ NULL
+};
+static const AsterixField I015_630_DPP = { FIXED, 1, 0, 0, &hf_015_630_DPP, I015_630_DPP_PARTS, { NULL } };
+static int hf_015_630_DPS = -1;
+static int hf_015_630_DPS_VALUE = -1;
+static const FieldPart I015_630_DPS_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_015_630_DPS_VALUE, NULL };
+static const FieldPart *I015_630_DPS_PARTS[] = {
+ &I015_630_DPS_VALUE,
+ NULL
+};
+static const AsterixField I015_630_DPS = { FIXED, 1, 0, 0, &hf_015_630_DPS, I015_630_DPS_PARTS, { NULL } };
+static int hf_015_630_RPP = -1;
+static int hf_015_630_RPP_RPP = -1;
+static const FieldPart I015_630_RPP_RPP = { 9, 1.0, FIELD_PART_FLOAT, &hf_015_630_RPP_RPP, NULL };
+static const FieldPart *I015_630_RPP_PARTS[] = {
+ &IXXX_7bit_spare,
+ &I015_630_RPP_RPP,
+ NULL
+};
+static const AsterixField I015_630_RPP = { FIXED, 2, 0, 0, &hf_015_630_RPP, I015_630_RPP_PARTS, { NULL } };
+static int hf_015_630_RPS = -1;
+static int hf_015_630_RPS_VALUE = -1;
+static const FieldPart I015_630_RPS_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_015_630_RPS_VALUE, NULL };
+static const FieldPart *I015_630_RPS_PARTS[] = {
+ &I015_630_RPS_VALUE,
+ NULL
+};
+static const AsterixField I015_630_RPS = { FIXED, 1, 0, 0, &hf_015_630_RPS, I015_630_RPS_PARTS, { NULL } };
+static const AsterixField I015_630 = { COMPOUND, 0, 0, 0, &hf_015_630, NULL, { &I015_630_DPP, &I015_630_DPS, &I015_630_RPP, &I015_630_RPS, NULL } };
+static int hf_015_631 = -1;
+static int hf_015_631_AZCON = -1;
+static const FieldPart I015_631_AZCON = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_015_631_AZCON, NULL };
+static int hf_015_631_ELCON = -1;
+static const FieldPart I015_631_ELCON = { 16, 0.00274658203125, FIELD_PART_FLOAT, &hf_015_631_ELCON, NULL };
+static int hf_015_631_RGCONSTOP = -1;
+static const FieldPart I015_631_RGCONSTOP = { 16, 0.152587890625, FIELD_PART_UFLOAT, &hf_015_631_RGCONSTOP, NULL };
+static int hf_015_631_RGCONSTART = -1;
+static const FieldPart I015_631_RGCONSTART = { 16, 0.152587890625, FIELD_PART_UFLOAT, &hf_015_631_RGCONSTART, NULL };
+static const FieldPart *I015_631_PARTS[] = {
+ &I015_631_AZCON,
+ &I015_631_ELCON,
+ &I015_631_RGCONSTOP,
+ &I015_631_RGCONSTART,
+ NULL
+};
+static const AsterixField I015_631 = { REPETITIVE, 8, 1, 0, &hf_015_631, I015_631_PARTS, { NULL } };
+static int hf_015_SP = -1;
+static const AsterixField I015_SP = { EXP, 0, 0, 1, &hf_015_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I015_V1_1_uap[] = {
+ &I015_V1_1_010,
+ &I015_V1_1_000,
+ &I015_V1_1_015,
+ &I015_V1_1_020,
+ &I015_V1_1_030,
+ &I015_V1_1_145,
+ &I015_V1_1_161,
+ &I015_V1_1_170,
+ &I015_V1_1_050,
+ &I015_V1_1_270,
+ &I015_V1_1_300,
+ &I015_V1_1_400,
+ &I015_V1_1_600,
+ &I015_V1_1_601,
+ &I015_V1_1_602,
+ &I015_V1_1_603,
+ &I015_V1_1_604,
+ &I015_V1_1_605,
+ &I015_V1_1_480,
+ &I015_V1_1_625,
+ &I015_V1_1_626,
+ &I015_V1_1_627,
+ &I015_V1_1_628,
+ &I015_V1_1_630,
+ &I015_V1_1_631,
+ &I015_V1_1_SP,
+ NULL
+};
+static const AsterixField **I015_V1_1[] = {
+ I015_V1_1_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I015_uap[] = {
+ &I015_010,
+ &I015_000,
+ &I015_015,
+ &I015_020,
+ &I015_030,
+ &I015_145,
+ &I015_161,
+ &I015_170,
+ &I015_050,
+ &I015_270,
+ &I015_300,
+ &I015_400,
+ &I015_600,
+ &I015_601,
+ &I015_602,
+ &I015_603,
+ &I015_604,
+ &I015_605,
+ &I015_480,
+ &I015_625,
+ &I015_626,
+ &I015_627,
+ &I015_628,
+ &I015_630,
+ &I015_631,
+ &I015_SP,
+ NULL
+};
+static const AsterixField **I015[] = {
+ I015_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 016, edition 1.0 */
+static int hf_016_V1_0_000 = -1;
+static int hf_016_V1_0_000_VALUE = -1;
+static const value_string valstr_016_V1_0_000_VALUE[] = {
+ { 1, "System Configuration" },
+ { 2, "Transmitter / Receiver Configuration" },
+ { 0, NULL }
+};
+static const FieldPart I016_V1_0_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_016_V1_0_000_VALUE, NULL };
+static const FieldPart *I016_V1_0_000_PARTS[] = {
+ &I016_V1_0_000_VALUE,
+ NULL
+};
+static const AsterixField I016_V1_0_000 = { FIXED, 1, 0, 0, &hf_016_V1_0_000, I016_V1_0_000_PARTS, { NULL } };
+static int hf_016_V1_0_010 = -1;
+static int hf_016_V1_0_010_SAC = -1;
+static const FieldPart I016_V1_0_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_016_V1_0_010_SAC, NULL };
+static int hf_016_V1_0_010_SIC = -1;
+static const FieldPart I016_V1_0_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_016_V1_0_010_SIC, NULL };
+static const FieldPart *I016_V1_0_010_PARTS[] = {
+ &I016_V1_0_010_SAC,
+ &I016_V1_0_010_SIC,
+ NULL
+};
+static const AsterixField I016_V1_0_010 = { FIXED, 2, 0, 0, &hf_016_V1_0_010, I016_V1_0_010_PARTS, { NULL } };
+static int hf_016_V1_0_015 = -1;
+static int hf_016_V1_0_015_VALUE = -1;
+static const FieldPart I016_V1_0_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_016_V1_0_015_VALUE, NULL };
+static const FieldPart *I016_V1_0_015_PARTS[] = {
+ &I016_V1_0_015_VALUE,
+ NULL
+};
+static const AsterixField I016_V1_0_015 = { FIXED, 1, 0, 0, &hf_016_V1_0_015, I016_V1_0_015_PARTS, { NULL } };
+static int hf_016_V1_0_140 = -1;
+static int hf_016_V1_0_140_VALUE = -1;
+static const FieldPart I016_V1_0_140_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_016_V1_0_140_VALUE, NULL };
+static const FieldPart *I016_V1_0_140_PARTS[] = {
+ &I016_V1_0_140_VALUE,
+ NULL
+};
+static const AsterixField I016_V1_0_140 = { FIXED, 3, 0, 0, &hf_016_V1_0_140, I016_V1_0_140_PARTS, { NULL } };
+static int hf_016_V1_0_200 = -1;
+static int hf_016_V1_0_200_VALUE = -1;
+static const FieldPart I016_V1_0_200_VALUE = { 8, 1.0, FIELD_PART_UFLOAT, &hf_016_V1_0_200_VALUE, NULL };
+static const FieldPart *I016_V1_0_200_PARTS[] = {
+ &I016_V1_0_200_VALUE,
+ NULL
+};
+static const AsterixField I016_V1_0_200 = { FIXED, 1, 0, 0, &hf_016_V1_0_200, I016_V1_0_200_PARTS, { NULL } };
+static int hf_016_V1_0_300 = -1;
+static int hf_016_V1_0_300_PID = -1;
+static const FieldPart I016_V1_0_300_PID = { 16, 1.0, FIELD_PART_HEX, &hf_016_V1_0_300_PID, NULL };
+static int hf_016_V1_0_300_TID = -1;
+static const FieldPart I016_V1_0_300_TID = { 16, 1.0, FIELD_PART_HEX, &hf_016_V1_0_300_TID, NULL };
+static int hf_016_V1_0_300_RID = -1;
+static const FieldPart I016_V1_0_300_RID = { 16, 1.0, FIELD_PART_HEX, &hf_016_V1_0_300_RID, NULL };
+static const FieldPart *I016_V1_0_300_PARTS[] = {
+ &I016_V1_0_300_PID,
+ &I016_V1_0_300_TID,
+ &I016_V1_0_300_RID,
+ NULL
+};
+static const AsterixField I016_V1_0_300 = { REPETITIVE, 6, 1, 0, &hf_016_V1_0_300, I016_V1_0_300_PARTS, { NULL } };
+static int hf_016_V1_0_400 = -1;
+static int hf_016_V1_0_400_LAT = -1;
+static const FieldPart I016_V1_0_400_LAT = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_016_V1_0_400_LAT, NULL };
+static int hf_016_V1_0_400_LON = -1;
+static const FieldPart I016_V1_0_400_LON = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_016_V1_0_400_LON, NULL };
+static const FieldPart *I016_V1_0_400_PARTS[] = {
+ &I016_V1_0_400_LAT,
+ &I016_V1_0_400_LON,
+ NULL
+};
+static const AsterixField I016_V1_0_400 = { FIXED, 8, 0, 0, &hf_016_V1_0_400, I016_V1_0_400_PARTS, { NULL } };
+static int hf_016_V1_0_405 = -1;
+static int hf_016_V1_0_405_VALUE = -1;
+static const FieldPart I016_V1_0_405_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_016_V1_0_405_VALUE, NULL };
+static const FieldPart *I016_V1_0_405_PARTS[] = {
+ &I016_V1_0_405_VALUE,
+ NULL
+};
+static const AsterixField I016_V1_0_405 = { FIXED, 2, 0, 0, &hf_016_V1_0_405, I016_V1_0_405_PARTS, { NULL } };
+static int hf_016_V1_0_410 = -1;
+static int hf_016_V1_0_410_TID = -1;
+static const FieldPart I016_V1_0_410_TID = { 16, 1.0, FIELD_PART_HEX, &hf_016_V1_0_410_TID, NULL };
+static int hf_016_V1_0_410_LAT = -1;
+static const FieldPart I016_V1_0_410_LAT = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_016_V1_0_410_LAT, NULL };
+static int hf_016_V1_0_410_LON = -1;
+static const FieldPart I016_V1_0_410_LON = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_016_V1_0_410_LON, NULL };
+static int hf_016_V1_0_410_ALT = -1;
+static const FieldPart I016_V1_0_410_ALT = { 16, 0.25, FIELD_PART_FLOAT, &hf_016_V1_0_410_ALT, NULL };
+static int hf_016_V1_0_410_TTO = -1;
+static const FieldPart I016_V1_0_410_TTO = { 32, 2.0, FIELD_PART_FLOAT, &hf_016_V1_0_410_TTO, NULL };
+static int hf_016_V1_0_410_ATO = -1;
+static const FieldPart I016_V1_0_410_ATO = { 20, 1.0, FIELD_PART_UFLOAT, &hf_016_V1_0_410_ATO, NULL };
+static int hf_016_V1_0_410_PCI = -1;
+static const FieldPart I016_V1_0_410_PCI = { 16, 1.0, FIELD_PART_UINT, &hf_016_V1_0_410_PCI, NULL };
+static const FieldPart *I016_V1_0_410_PARTS[] = {
+ &I016_V1_0_410_TID,
+ &I016_V1_0_410_LAT,
+ &I016_V1_0_410_LON,
+ &I016_V1_0_410_ALT,
+ &I016_V1_0_410_TTO,
+ &IXXX_4bit_spare,
+ &I016_V1_0_410_ATO,
+ &I016_V1_0_410_PCI,
+ NULL
+};
+static const AsterixField I016_V1_0_410 = { REPETITIVE, 21, 1, 0, &hf_016_V1_0_410, I016_V1_0_410_PARTS, { NULL } };
+static int hf_016_V1_0_420 = -1;
+static int hf_016_V1_0_420_RID = -1;
+static const FieldPart I016_V1_0_420_RID = { 16, 1.0, FIELD_PART_HEX, &hf_016_V1_0_420_RID, NULL };
+static int hf_016_V1_0_420_LAT = -1;
+static const FieldPart I016_V1_0_420_LAT = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_016_V1_0_420_LAT, NULL };
+static int hf_016_V1_0_420_LON = -1;
+static const FieldPart I016_V1_0_420_LON = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_016_V1_0_420_LON, NULL };
+static int hf_016_V1_0_420_ALT = -1;
+static const FieldPart I016_V1_0_420_ALT = { 16, 0.25, FIELD_PART_FLOAT, &hf_016_V1_0_420_ALT, NULL };
+static const FieldPart *I016_V1_0_420_PARTS[] = {
+ &I016_V1_0_420_RID,
+ &I016_V1_0_420_LAT,
+ &I016_V1_0_420_LON,
+ &I016_V1_0_420_ALT,
+ NULL
+};
+static const AsterixField I016_V1_0_420 = { REPETITIVE, 12, 1, 0, &hf_016_V1_0_420, I016_V1_0_420_PARTS, { NULL } };
+static int hf_016_V1_0_SP = -1;
+static const AsterixField I016_V1_0_SP = { EXP, 0, 0, 1, &hf_016_V1_0_SP, NULL, { NULL } };
+
+/* Category 016, edition 1.0 (latest) */
+static int hf_016_000 = -1;
+static int hf_016_000_VALUE = -1;
+static const value_string valstr_016_000_VALUE[] = {
+ { 1, "System Configuration" },
+ { 2, "Transmitter / Receiver Configuration" },
+ { 0, NULL }
+};
+static const FieldPart I016_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_016_000_VALUE, NULL };
+static const FieldPart *I016_000_PARTS[] = {
+ &I016_000_VALUE,
+ NULL
+};
+static const AsterixField I016_000 = { FIXED, 1, 0, 0, &hf_016_000, I016_000_PARTS, { NULL } };
+static int hf_016_010 = -1;
+static int hf_016_010_SAC = -1;
+static const FieldPart I016_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_016_010_SAC, NULL };
+static int hf_016_010_SIC = -1;
+static const FieldPart I016_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_016_010_SIC, NULL };
+static const FieldPart *I016_010_PARTS[] = {
+ &I016_010_SAC,
+ &I016_010_SIC,
+ NULL
+};
+static const AsterixField I016_010 = { FIXED, 2, 0, 0, &hf_016_010, I016_010_PARTS, { NULL } };
+static int hf_016_015 = -1;
+static int hf_016_015_VALUE = -1;
+static const FieldPart I016_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_016_015_VALUE, NULL };
+static const FieldPart *I016_015_PARTS[] = {
+ &I016_015_VALUE,
+ NULL
+};
+static const AsterixField I016_015 = { FIXED, 1, 0, 0, &hf_016_015, I016_015_PARTS, { NULL } };
+static int hf_016_140 = -1;
+static int hf_016_140_VALUE = -1;
+static const FieldPart I016_140_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_016_140_VALUE, NULL };
+static const FieldPart *I016_140_PARTS[] = {
+ &I016_140_VALUE,
+ NULL
+};
+static const AsterixField I016_140 = { FIXED, 3, 0, 0, &hf_016_140, I016_140_PARTS, { NULL } };
+static int hf_016_200 = -1;
+static int hf_016_200_VALUE = -1;
+static const FieldPart I016_200_VALUE = { 8, 1.0, FIELD_PART_UFLOAT, &hf_016_200_VALUE, NULL };
+static const FieldPart *I016_200_PARTS[] = {
+ &I016_200_VALUE,
+ NULL
+};
+static const AsterixField I016_200 = { FIXED, 1, 0, 0, &hf_016_200, I016_200_PARTS, { NULL } };
+static int hf_016_300 = -1;
+static int hf_016_300_PID = -1;
+static const FieldPart I016_300_PID = { 16, 1.0, FIELD_PART_HEX, &hf_016_300_PID, NULL };
+static int hf_016_300_TID = -1;
+static const FieldPart I016_300_TID = { 16, 1.0, FIELD_PART_HEX, &hf_016_300_TID, NULL };
+static int hf_016_300_RID = -1;
+static const FieldPart I016_300_RID = { 16, 1.0, FIELD_PART_HEX, &hf_016_300_RID, NULL };
+static const FieldPart *I016_300_PARTS[] = {
+ &I016_300_PID,
+ &I016_300_TID,
+ &I016_300_RID,
+ NULL
+};
+static const AsterixField I016_300 = { REPETITIVE, 6, 1, 0, &hf_016_300, I016_300_PARTS, { NULL } };
+static int hf_016_400 = -1;
+static int hf_016_400_LAT = -1;
+static const FieldPart I016_400_LAT = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_016_400_LAT, NULL };
+static int hf_016_400_LON = -1;
+static const FieldPart I016_400_LON = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_016_400_LON, NULL };
+static const FieldPart *I016_400_PARTS[] = {
+ &I016_400_LAT,
+ &I016_400_LON,
+ NULL
+};
+static const AsterixField I016_400 = { FIXED, 8, 0, 0, &hf_016_400, I016_400_PARTS, { NULL } };
+static int hf_016_405 = -1;
+static int hf_016_405_VALUE = -1;
+static const FieldPart I016_405_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_016_405_VALUE, NULL };
+static const FieldPart *I016_405_PARTS[] = {
+ &I016_405_VALUE,
+ NULL
+};
+static const AsterixField I016_405 = { FIXED, 2, 0, 0, &hf_016_405, I016_405_PARTS, { NULL } };
+static int hf_016_410 = -1;
+static int hf_016_410_TID = -1;
+static const FieldPart I016_410_TID = { 16, 1.0, FIELD_PART_HEX, &hf_016_410_TID, NULL };
+static int hf_016_410_LAT = -1;
+static const FieldPart I016_410_LAT = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_016_410_LAT, NULL };
+static int hf_016_410_LON = -1;
+static const FieldPart I016_410_LON = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_016_410_LON, NULL };
+static int hf_016_410_ALT = -1;
+static const FieldPart I016_410_ALT = { 16, 0.25, FIELD_PART_FLOAT, &hf_016_410_ALT, NULL };
+static int hf_016_410_TTO = -1;
+static const FieldPart I016_410_TTO = { 32, 2.0, FIELD_PART_FLOAT, &hf_016_410_TTO, NULL };
+static int hf_016_410_ATO = -1;
+static const FieldPart I016_410_ATO = { 20, 1.0, FIELD_PART_UFLOAT, &hf_016_410_ATO, NULL };
+static int hf_016_410_PCI = -1;
+static const FieldPart I016_410_PCI = { 16, 1.0, FIELD_PART_UINT, &hf_016_410_PCI, NULL };
+static const FieldPart *I016_410_PARTS[] = {
+ &I016_410_TID,
+ &I016_410_LAT,
+ &I016_410_LON,
+ &I016_410_ALT,
+ &I016_410_TTO,
+ &IXXX_4bit_spare,
+ &I016_410_ATO,
+ &I016_410_PCI,
+ NULL
+};
+static const AsterixField I016_410 = { REPETITIVE, 21, 1, 0, &hf_016_410, I016_410_PARTS, { NULL } };
+static int hf_016_420 = -1;
+static int hf_016_420_RID = -1;
+static const FieldPart I016_420_RID = { 16, 1.0, FIELD_PART_HEX, &hf_016_420_RID, NULL };
+static int hf_016_420_LAT = -1;
+static const FieldPart I016_420_LAT = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_016_420_LAT, NULL };
+static int hf_016_420_LON = -1;
+static const FieldPart I016_420_LON = { 32, 0.00000008381903171539306640625, FIELD_PART_FLOAT, &hf_016_420_LON, NULL };
+static int hf_016_420_ALT = -1;
+static const FieldPart I016_420_ALT = { 16, 0.25, FIELD_PART_FLOAT, &hf_016_420_ALT, NULL };
+static const FieldPart *I016_420_PARTS[] = {
+ &I016_420_RID,
+ &I016_420_LAT,
+ &I016_420_LON,
+ &I016_420_ALT,
+ NULL
+};
+static const AsterixField I016_420 = { REPETITIVE, 12, 1, 0, &hf_016_420, I016_420_PARTS, { NULL } };
+static int hf_016_SP = -1;
+static const AsterixField I016_SP = { EXP, 0, 0, 1, &hf_016_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I016_V1_0_uap[] = {
+ &I016_V1_0_010,
+ &I016_V1_0_015,
+ &I016_V1_0_000,
+ &I016_V1_0_140,
+ &I016_V1_0_200,
+ &I016_V1_0_300,
+ &I016_V1_0_400,
+ &I016_V1_0_405,
+ &I016_V1_0_410,
+ &I016_V1_0_420,
+ &I016_V1_0_SP,
+ NULL
+};
+static const AsterixField **I016_V1_0[] = {
+ I016_V1_0_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I016_uap[] = {
+ &I016_010,
+ &I016_015,
+ &I016_000,
+ &I016_140,
+ &I016_200,
+ &I016_300,
+ &I016_400,
+ &I016_405,
+ &I016_410,
+ &I016_420,
+ &I016_SP,
+ NULL
+};
+static const AsterixField **I016[] = {
+ I016_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 018, edition 1.7 */
+static int hf_018_V1_7_000 = -1;
+static int hf_018_V1_7_000_VALUE = -1;
+static const value_string valstr_018_V1_7_000_VALUE[] = {
+ { 0, "Associate_req" },
+ { 1, "Associate_resp" },
+ { 2, "Release_req" },
+ { 3, "Release_resp" },
+ { 4, "Abort_req" },
+ { 5, "Keep_alive" },
+ { 16, "Aircraft_report" },
+ { 17, "Aircraft_command" },
+ { 18, "II_code_change" },
+ { 32, "Uplink_packet" },
+ { 33, "Cancel_uplink_packet" },
+ { 34, "Uplink_packet_ack" },
+ { 35, "Downlink_packet" },
+ { 38, "Data_XON" },
+ { 39, "Data_XOFF" },
+ { 48, "Uplink_broadcast" },
+ { 49, "Cancel_uplink_broadcast" },
+ { 50, "Uplink_broadcast_ack" },
+ { 52, "Downlink_broadcast" },
+ { 64, "GICB_extraction" },
+ { 65, "Cancel_GICB_extraction" },
+ { 66, "GICB_extraction_ack" },
+ { 67, "GICB_response" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_018_V1_7_000_VALUE, NULL };
+static const FieldPart *I018_V1_7_000_PARTS[] = {
+ &I018_V1_7_000_VALUE,
+ NULL
+};
+static const AsterixField I018_V1_7_000 = { FIXED, 1, 0, 0, &hf_018_V1_7_000, I018_V1_7_000_PARTS, { NULL } };
+static int hf_018_V1_7_001 = -1;
+static int hf_018_V1_7_001_CAUSE = -1;
+static const value_string valstr_018_V1_7_001_CAUSE[] = {
+ { 0, "Accepted, the request is accepted and is under processing" },
+ { 1, "Rejected, the request has not been accepted" },
+ { 2, "Cancelled, the request has been cancelled" },
+ { 3, "Finished, the request has been accepted and successfully processed" },
+ { 4, "Delayed, the request processing is temporarily delayed but the request is still valid" },
+ { 5, "In Progress, the request is being successfully processed" },
+ { 6, "In Progress, the request is being successfully processed" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_001_CAUSE = { 4, 1.0, FIELD_PART_UINT, &hf_018_V1_7_001_CAUSE, NULL };
+static int hf_018_V1_7_001_DIAG = -1;
+static const value_string valstr_018_V1_7_001_DIAG[] = {
+ { 0, "No diagnostic available" },
+ { 1, "Aircraft Exit" },
+ { 2, "Incorrect aircraft address" },
+ { 3, "Impossibility to process the message" },
+ { 4, "Insufficient or change in data link capability" },
+ { 5, "Invalid LV field" },
+ { 6, "Duplicate request number" },
+ { 7, "Unknown request number" },
+ { 8, "Timer T3 expiry" },
+ { 9, "Expiry of I/R delivery timer" },
+ { 10, "Uplink flow disabled by UC" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_001_DIAG = { 4, 1.0, FIELD_PART_UINT, &hf_018_V1_7_001_DIAG, NULL };
+static const FieldPart *I018_V1_7_001_PARTS[] = {
+ &I018_V1_7_001_CAUSE,
+ &I018_V1_7_001_DIAG,
+ NULL
+};
+static const AsterixField I018_V1_7_001 = { FIXED, 1, 0, 0, &hf_018_V1_7_001, I018_V1_7_001_PARTS, { NULL } };
+static int hf_018_V1_7_002 = -1;
+static int hf_018_V1_7_002_VALUE = -1;
+static const FieldPart I018_V1_7_002_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_018_V1_7_002_VALUE, NULL };
+static const FieldPart *I018_V1_7_002_PARTS[] = {
+ &I018_V1_7_002_VALUE,
+ NULL
+};
+static const AsterixField I018_V1_7_002 = { FIXED, 3, 0, 0, &hf_018_V1_7_002, I018_V1_7_002_PARTS, { NULL } };
+static int hf_018_V1_7_004 = -1;
+static int hf_018_V1_7_004_PREVIOUSII = -1;
+static const FieldPart I018_V1_7_004_PREVIOUSII = { 4, 1.0, FIELD_PART_HEX, &hf_018_V1_7_004_PREVIOUSII, NULL };
+static int hf_018_V1_7_004_CURRENTII = -1;
+static const FieldPart I018_V1_7_004_CURRENTII = { 4, 1.0, FIELD_PART_HEX, &hf_018_V1_7_004_CURRENTII, NULL };
+static const FieldPart *I018_V1_7_004_PARTS[] = {
+ &I018_V1_7_004_PREVIOUSII,
+ &I018_V1_7_004_CURRENTII,
+ NULL
+};
+static const AsterixField I018_V1_7_004 = { FIXED, 1, 0, 0, &hf_018_V1_7_004, I018_V1_7_004_PARTS, { NULL } };
+static int hf_018_V1_7_005 = -1;
+static int hf_018_V1_7_005_VALUE = -1;
+static const FieldPart I018_V1_7_005_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_018_V1_7_005_VALUE, NULL };
+static const FieldPart *I018_V1_7_005_PARTS[] = {
+ &I018_V1_7_005_VALUE,
+ NULL
+};
+static const AsterixField I018_V1_7_005 = { FIXED, 3, 0, 0, &hf_018_V1_7_005, I018_V1_7_005_PARTS, { NULL } };
+static int hf_018_V1_7_006 = -1;
+static int hf_018_V1_7_006_VALUE = -1;
+static const FieldPart I018_V1_7_006_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_018_V1_7_006_VALUE, NULL };
+static const FieldPart *I018_V1_7_006_PARTS[] = {
+ &I018_V1_7_006_VALUE,
+ NULL
+};
+static const AsterixField I018_V1_7_006 = { REPETITIVE, 3, 1, 0, &hf_018_V1_7_006, I018_V1_7_006_PARTS, { NULL } };
+static int hf_018_V1_7_007 = -1;
+static int hf_018_V1_7_007_UM = -1;
+static const value_string valstr_018_V1_7_007_UM[] = {
+ { 0, "UC shall be ignored" },
+ { 1, "UC shall be taken into account" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_007_UM = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_007_UM, NULL };
+static int hf_018_V1_7_007_DM = -1;
+static const value_string valstr_018_V1_7_007_DM[] = {
+ { 0, "DC shall be ignored" },
+ { 1, "DC shall be taken into account" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_007_DM = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_007_DM, NULL };
+static int hf_018_V1_7_007_UC = -1;
+static const value_string valstr_018_V1_7_007_UC[] = {
+ { 0, "the uplink flow shall be enabled" },
+ { 1, "the uplink flow shall be stopped" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_007_UC = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_007_UC, NULL };
+static int hf_018_V1_7_007_DC = -1;
+static const value_string valstr_018_V1_7_007_DC[] = {
+ { 0, "the downlink flow shall be enabled" },
+ { 1, "the downlink flow shall be stopped" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_007_DC = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_007_DC, NULL };
+static const FieldPart *I018_V1_7_007_PARTS[] = {
+ &I018_V1_7_007_UM,
+ &I018_V1_7_007_DM,
+ &I018_V1_7_007_UC,
+ &I018_V1_7_007_DC,
+ &IXXX_4bit_spare,
+ NULL
+};
+static const AsterixField I018_V1_7_007 = { FIXED, 1, 0, 0, &hf_018_V1_7_007, I018_V1_7_007_PARTS, { NULL } };
+static int hf_018_V1_7_008 = -1;
+static int hf_018_V1_7_008_UDS = -1;
+static const value_string valstr_018_V1_7_008_UDS[] = {
+ { 0, "The interrogator is enabled to uplink frames" },
+ { 1, "The interrogator is disabled to uplink frames" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_008_UDS = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_008_UDS, NULL };
+static int hf_018_V1_7_008_DDS = -1;
+static const value_string valstr_018_V1_7_008_DDS[] = {
+ { 0, "The interrogator is enabled to extract frames" },
+ { 1, "The interrogator is disabled to extract frames" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_008_DDS = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_008_DDS, NULL };
+static int hf_018_V1_7_008_UCS = -1;
+static const value_string valstr_018_V1_7_008_UCS[] = {
+ { 0, "The interrogator is enabled to uplink frames" },
+ { 1, "The interrogator is disabled to uplink frames" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_008_UCS = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_008_UCS, NULL };
+static int hf_018_V1_7_008_DCS = -1;
+static const value_string valstr_018_V1_7_008_DCS[] = {
+ { 0, "The interrogator is enabled to extract frames" },
+ { 1, "The interrogator is disabled to extract frames" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_008_DCS = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_008_DCS, NULL };
+static int hf_018_V1_7_008_EI = -1;
+static const value_string valstr_018_V1_7_008_EI[] = {
+ { 0, "The aircraft is in the Datalink coverage map of the interrogator" },
+ { 1, "The aircraft is not in the Datalink coverage map of the interrogator" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_008_EI = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_008_EI, NULL };
+static int hf_018_V1_7_008_IC = -1;
+static const value_string valstr_018_V1_7_008_IC[] = {
+ { 0, "The interrogators current ability to uplink/downlink frames (UCS/DCS) and the content of the Aircraft_report could be changed using D_Data_link_command" },
+ { 1, "The interrogators current ability to uplink/downlink frames (UCS/DCS) and the content of the Aircraft_report cannot be changed using D_Data_link_command" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_008_IC = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_008_IC, NULL };
+static const FieldPart *I018_V1_7_008_PARTS[] = {
+ &I018_V1_7_008_UDS,
+ &I018_V1_7_008_DDS,
+ &I018_V1_7_008_UCS,
+ &I018_V1_7_008_DCS,
+ &IXXX_2bit_spare,
+ &I018_V1_7_008_EI,
+ &IXXX_FX,
+ &I018_V1_7_008_IC,
+ &IXXX_6bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I018_V1_7_008 = { FX, 1, 0, 0, &hf_018_V1_7_008, I018_V1_7_008_PARTS, { NULL } };
+static int hf_018_V1_7_009 = -1;
+static int hf_018_V1_7_009_SR = -1;
+static const value_string valstr_018_V1_7_009_SR[] = {
+ { 0, "The next Aircraft_report may not include D_Data_link_status" },
+ { 1, "The next Aircraft_report shall include D_Data_link_status" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_009_SR = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_009_SR, NULL };
+static int hf_018_V1_7_009_AR = -1;
+static const value_string valstr_018_V1_7_009_AR[] = {
+ { 0, "The next Aircraft_report may not include D_COM" },
+ { 1, "The next Aircraft_report shall include D_COM" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_009_AR = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_009_AR, NULL };
+static int hf_018_V1_7_009_ER = -1;
+static const value_string valstr_018_V1_7_009_ER[] = {
+ { 0, "The next Aircraft_report may not include D_ECA" },
+ { 1, "The next Aircraft_report shall include D_ECA" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_009_ER = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_009_ER, NULL };
+static int hf_018_V1_7_009_FR = -1;
+static const value_string valstr_018_V1_7_009_FR[] = {
+ { 0, "The next Aircraft_report may not include D_CQF" },
+ { 1, "The next Aircraft_report shall include D_CQF" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_009_FR = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_009_FR, NULL };
+static int hf_018_V1_7_009_MR = -1;
+static const value_string valstr_018_V1_7_009_MR[] = {
+ { 0, "The next Aircraft_report may not include D_CQF_method" },
+ { 1, "The next Aircraft_report shall include D_CQF_method" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_009_MR = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_009_MR, NULL };
+static int hf_018_V1_7_009_PR = -1;
+static const value_string valstr_018_V1_7_009_PR[] = {
+ { 0, "The next Aircraft_report may not include D_Polar_position" },
+ { 1, "The next Aircraft_report shall include D_Polar_position" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_009_PR = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_009_PR, NULL };
+static int hf_018_V1_7_009_CR = -1;
+static const value_string valstr_018_V1_7_009_CR[] = {
+ { 0, "The next Aircraft_report may not include D_Cartesian_position" },
+ { 1, "The next Aircraft_report shall include D_Cartesian_position" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_009_CR = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_009_CR, NULL };
+static int hf_018_V1_7_009_ID = -1;
+static const value_string valstr_018_V1_7_009_ID[] = {
+ { 0, "The next Aircraft_report may not include Aircraft_ID" },
+ { 1, "The next Aircraft_report shall include Aircraft_ID" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_009_ID = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_009_ID, NULL };
+static int hf_018_V1_7_009_MA = -1;
+static const value_string valstr_018_V1_7_009_MA[] = {
+ { 0, "The next Aircraft_report may not include Mode_A" },
+ { 1, "The next Aircraft_report shall include Mode_A" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_009_MA = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_009_MA, NULL };
+static int hf_018_V1_7_009_SP = -1;
+static const value_string valstr_018_V1_7_009_SP[] = {
+ { 0, "The next Aircraft_report may not include Speed" },
+ { 1, "The next Aircraft_report shall include Speed" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_009_SP = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_009_SP, NULL };
+static int hf_018_V1_7_009_HG = -1;
+static const value_string valstr_018_V1_7_009_HG[] = {
+ { 0, "The next Aircraft_report may not include Height" },
+ { 1, "The next Aircraft_report shall include Height" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_009_HG = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_009_HG, NULL };
+static int hf_018_V1_7_009_HD = -1;
+static const value_string valstr_018_V1_7_009_HD[] = {
+ { 0, "The next Aircraft_report may not include Heading" },
+ { 1, "The next Aircraft_report shall include Heading" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_009_HD = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_009_HD, NULL };
+static const FieldPart *I018_V1_7_009_PARTS[] = {
+ &I018_V1_7_009_SR,
+ &I018_V1_7_009_AR,
+ &I018_V1_7_009_ER,
+ &I018_V1_7_009_FR,
+ &I018_V1_7_009_MR,
+ &I018_V1_7_009_PR,
+ &I018_V1_7_009_CR,
+ &IXXX_FX,
+ &I018_V1_7_009_ID,
+ &I018_V1_7_009_MA,
+ &I018_V1_7_009_SP,
+ &I018_V1_7_009_HG,
+ &I018_V1_7_009_HD,
+ &IXXX_2bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I018_V1_7_009 = { FX, 1, 0, 0, &hf_018_V1_7_009, I018_V1_7_009_PARTS, { NULL } };
+static int hf_018_V1_7_010 = -1;
+static int hf_018_V1_7_010_COM = -1;
+static const value_string valstr_018_V1_7_010_COM[] = {
+ { 0, "No communications capability (surveillance only)" },
+ { 1, "Comm. A and Comm. B capability" },
+ { 2, "Comm. A, Comm. B and Uplink ELM" },
+ { 3, "Comm. A, Comm. B and Uplink ELM and Downlink ELM" },
+ { 4, "Level 5 Transponder capability" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_010_COM = { 3, 1.0, FIELD_PART_UINT, &hf_018_V1_7_010_COM, NULL };
+static const FieldPart *I018_V1_7_010_PARTS[] = {
+ &IXXX_5bit_spare,
+ &I018_V1_7_010_COM,
+ NULL
+};
+static const AsterixField I018_V1_7_010 = { FIXED, 1, 0, 0, &hf_018_V1_7_010, I018_V1_7_010_PARTS, { NULL } };
+static int hf_018_V1_7_011 = -1;
+static int hf_018_V1_7_011_VALUE = -1;
+static const FieldPart I018_V1_7_011_VALUE = { 56, 1.0, FIELD_PART_HEX, &hf_018_V1_7_011_VALUE, NULL };
+static const FieldPart *I018_V1_7_011_PARTS[] = {
+ &I018_V1_7_011_VALUE,
+ NULL
+};
+static const AsterixField I018_V1_7_011 = { FIXED, 7, 0, 0, &hf_018_V1_7_011, I018_V1_7_011_PARTS, { NULL } };
+static int hf_018_V1_7_012 = -1;
+static int hf_018_V1_7_012_FS = -1;
+static const value_string valstr_018_V1_7_012_FS[] = {
+ { 0, "Aircraft is airborne" },
+ { 1, "Aircraft is on the ground" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_012_FS = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_012_FS, NULL };
+static int hf_018_V1_7_012_CQF = -1;
+static const value_string valstr_018_V1_7_012_CQF[] = {
+ { 0, "The CQF calculation method is not supported" },
+ { 1, "The CQF is minimum" },
+ { 126, "The CQF is maximum" },
+ { 127, "The CQF is undefined according to the calculation method" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_012_CQF = { 7, 1.0, FIELD_PART_UINT, &hf_018_V1_7_012_CQF, NULL };
+static const FieldPart *I018_V1_7_012_PARTS[] = {
+ &I018_V1_7_012_FS,
+ &I018_V1_7_012_CQF,
+ NULL
+};
+static const AsterixField I018_V1_7_012 = { FIXED, 1, 0, 0, &hf_018_V1_7_012, I018_V1_7_012_PARTS, { NULL } };
+static int hf_018_V1_7_013 = -1;
+static int hf_018_V1_7_013_VALUE = -1;
+static const FieldPart I018_V1_7_013_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_018_V1_7_013_VALUE, NULL };
+static const FieldPart *I018_V1_7_013_PARTS[] = {
+ &I018_V1_7_013_VALUE,
+ NULL
+};
+static const AsterixField I018_V1_7_013 = { FIXED, 1, 0, 0, &hf_018_V1_7_013, I018_V1_7_013_PARTS, { NULL } };
+static int hf_018_V1_7_014 = -1;
+static int hf_018_V1_7_014_RHO = -1;
+static const FieldPart I018_V1_7_014_RHO = { 16, 0.00390625, FIELD_PART_UFLOAT, &hf_018_V1_7_014_RHO, NULL };
+static int hf_018_V1_7_014_THETA = -1;
+static const FieldPart I018_V1_7_014_THETA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_018_V1_7_014_THETA, NULL };
+static const FieldPart *I018_V1_7_014_PARTS[] = {
+ &I018_V1_7_014_RHO,
+ &I018_V1_7_014_THETA,
+ NULL
+};
+static const AsterixField I018_V1_7_014 = { FIXED, 4, 0, 0, &hf_018_V1_7_014, I018_V1_7_014_PARTS, { NULL } };
+static int hf_018_V1_7_015 = -1;
+static int hf_018_V1_7_015_X = -1;
+static const FieldPart I018_V1_7_015_X = { 16, 0.0078125, FIELD_PART_FLOAT, &hf_018_V1_7_015_X, NULL };
+static int hf_018_V1_7_015_Y = -1;
+static const FieldPart I018_V1_7_015_Y = { 16, 0.0078125, FIELD_PART_FLOAT, &hf_018_V1_7_015_Y, NULL };
+static const FieldPart *I018_V1_7_015_PARTS[] = {
+ &I018_V1_7_015_X,
+ &I018_V1_7_015_Y,
+ NULL
+};
+static const AsterixField I018_V1_7_015 = { FIXED, 4, 0, 0, &hf_018_V1_7_015, I018_V1_7_015_PARTS, { NULL } };
+static int hf_018_V1_7_016 = -1;
+static int hf_018_V1_7_016_VALUE = -1;
+static const FieldPart I018_V1_7_016_VALUE = { 32, 1.0, FIELD_PART_UINT, &hf_018_V1_7_016_VALUE, NULL };
+static const FieldPart *I018_V1_7_016_PARTS[] = {
+ &I018_V1_7_016_VALUE,
+ NULL
+};
+static const AsterixField I018_V1_7_016 = { FIXED, 4, 0, 0, &hf_018_V1_7_016, I018_V1_7_016_PARTS, { NULL } };
+static int hf_018_V1_7_017 = -1;
+static int hf_018_V1_7_017_VALUE = -1;
+static const FieldPart I018_V1_7_017_VALUE = { 32, 1.0, FIELD_PART_UINT, &hf_018_V1_7_017_VALUE, NULL };
+static const FieldPart *I018_V1_7_017_PARTS[] = {
+ &I018_V1_7_017_VALUE,
+ NULL
+};
+static const AsterixField I018_V1_7_017 = { REPETITIVE, 4, 1, 0, &hf_018_V1_7_017, I018_V1_7_017_PARTS, { NULL } };
+static int hf_018_V1_7_018 = -1;
+static int hf_018_V1_7_018_PR = -1;
+static const FieldPart I018_V1_7_018_PR = { 5, 1.0, FIELD_PART_UINT, &hf_018_V1_7_018_PR, NULL };
+static int hf_018_V1_7_018_PT = -1;
+static const value_string valstr_018_V1_7_018_PT[] = {
+ { 0, "SVC packets" },
+ { 1, "MSP packets" },
+ { 2, "Route packets" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_018_PT = { 2, 1.0, FIELD_PART_UINT, &hf_018_V1_7_018_PT, NULL };
+static const FieldPart *I018_V1_7_018_PARTS[] = {
+ &IXXX_1bit_spare,
+ &I018_V1_7_018_PR,
+ &I018_V1_7_018_PT,
+ NULL
+};
+static const AsterixField I018_V1_7_018 = { FIXED, 1, 0, 0, &hf_018_V1_7_018, I018_V1_7_018_PARTS, { NULL } };
+static int hf_018_V1_7_019 = -1;
+static const AsterixField I018_V1_7_019 = { EXP, 0, 0, 1, &hf_018_V1_7_019, NULL, { NULL } };
+static int hf_018_V1_7_020 = -1;
+static int hf_018_V1_7_020_VALUE = -1;
+static const FieldPart I018_V1_7_020_VALUE = { 32, 1.0, FIELD_PART_UINT, &hf_018_V1_7_020_VALUE, NULL };
+static const FieldPart *I018_V1_7_020_PARTS[] = {
+ &I018_V1_7_020_VALUE,
+ NULL
+};
+static const AsterixField I018_V1_7_020 = { FIXED, 4, 0, 0, &hf_018_V1_7_020, I018_V1_7_020_PARTS, { NULL } };
+static int hf_018_V1_7_021 = -1;
+static int hf_018_V1_7_021_PRIORITY = -1;
+static const FieldPart I018_V1_7_021_PRIORITY = { 4, 1.0, FIELD_PART_UINT, &hf_018_V1_7_021_PRIORITY, NULL };
+static int hf_018_V1_7_021_POWER = -1;
+static const FieldPart I018_V1_7_021_POWER = { 4, 1.0, FIELD_PART_UINT, &hf_018_V1_7_021_POWER, NULL };
+static int hf_018_V1_7_021_DURATION = -1;
+static const FieldPart I018_V1_7_021_DURATION = { 8, 1.0, FIELD_PART_UFLOAT, &hf_018_V1_7_021_DURATION, NULL };
+static int hf_018_V1_7_021_COVERAGE = -1;
+static const FieldPart I018_V1_7_021_COVERAGE = { 32, 1.0, FIELD_PART_HEX, &hf_018_V1_7_021_COVERAGE, NULL };
+static const FieldPart *I018_V1_7_021_PARTS[] = {
+ &I018_V1_7_021_PRIORITY,
+ &I018_V1_7_021_POWER,
+ &I018_V1_7_021_DURATION,
+ &I018_V1_7_021_COVERAGE,
+ NULL
+};
+static const AsterixField I018_V1_7_021 = { FIXED, 6, 0, 0, &hf_018_V1_7_021, I018_V1_7_021_PARTS, { NULL } };
+static int hf_018_V1_7_022 = -1;
+static int hf_018_V1_7_022_PREFIX = -1;
+static const FieldPart I018_V1_7_022_PREFIX = { 27, 1.0, FIELD_PART_HEX, &hf_018_V1_7_022_PREFIX, NULL };
+static const FieldPart *I018_V1_7_022_PARTS[] = {
+ &IXXX_5bit_spare,
+ &I018_V1_7_022_PREFIX,
+ NULL
+};
+static const AsterixField I018_V1_7_022 = { FIXED, 4, 0, 0, &hf_018_V1_7_022, I018_V1_7_022_PARTS, { NULL } };
+static int hf_018_V1_7_023 = -1;
+static int hf_018_V1_7_023_VALUE = -1;
+static const FieldPart I018_V1_7_023_VALUE = { 56, 1.0, FIELD_PART_HEX, &hf_018_V1_7_023_VALUE, NULL };
+static const FieldPart *I018_V1_7_023_PARTS[] = {
+ &I018_V1_7_023_VALUE,
+ NULL
+};
+static const AsterixField I018_V1_7_023 = { FIXED, 7, 0, 0, &hf_018_V1_7_023, I018_V1_7_023_PARTS, { NULL } };
+static int hf_018_V1_7_025 = -1;
+static int hf_018_V1_7_025_VALUE = -1;
+static const FieldPart I018_V1_7_025_VALUE = { 32, 1.0, FIELD_PART_UINT, &hf_018_V1_7_025_VALUE, NULL };
+static const FieldPart *I018_V1_7_025_PARTS[] = {
+ &I018_V1_7_025_VALUE,
+ NULL
+};
+static const AsterixField I018_V1_7_025 = { FIXED, 4, 0, 0, &hf_018_V1_7_025, I018_V1_7_025_PARTS, { NULL } };
+static int hf_018_V1_7_027 = -1;
+static int hf_018_V1_7_027_VALUE = -1;
+static const FieldPart I018_V1_7_027_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_018_V1_7_027_VALUE, NULL };
+static const FieldPart *I018_V1_7_027_PARTS[] = {
+ &I018_V1_7_027_VALUE,
+ NULL
+};
+static const AsterixField I018_V1_7_027 = { FIXED, 1, 0, 0, &hf_018_V1_7_027, I018_V1_7_027_PARTS, { NULL } };
+static int hf_018_V1_7_028 = -1;
+static int hf_018_V1_7_028_VALUE = -1;
+static const FieldPart I018_V1_7_028_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_018_V1_7_028_VALUE, NULL };
+static const FieldPart *I018_V1_7_028_PARTS[] = {
+ &I018_V1_7_028_VALUE,
+ NULL
+};
+static const AsterixField I018_V1_7_028 = { FIXED, 2, 0, 0, &hf_018_V1_7_028, I018_V1_7_028_PARTS, { NULL } };
+static int hf_018_V1_7_029 = -1;
+static int hf_018_V1_7_029_VALUE = -1;
+static const FieldPart I018_V1_7_029_VALUE = { 56, 1.0, FIELD_PART_HEX, &hf_018_V1_7_029_VALUE, NULL };
+static const FieldPart *I018_V1_7_029_PARTS[] = {
+ &I018_V1_7_029_VALUE,
+ NULL
+};
+static const AsterixField I018_V1_7_029 = { FIXED, 7, 0, 0, &hf_018_V1_7_029, I018_V1_7_029_PARTS, { NULL } };
+static int hf_018_V1_7_030 = -1;
+static int hf_018_V1_7_030_PRIORITY = -1;
+static const FieldPart I018_V1_7_030_PRIORITY = { 5, 1.0, FIELD_PART_UINT, &hf_018_V1_7_030_PRIORITY, NULL };
+static int hf_018_V1_7_030_PC = -1;
+static const value_string valstr_018_V1_7_030_PC[] = {
+ { 0, "The periodicity may not be strictly respected" },
+ { 1, "The periodicity shall be strictly respected" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_030_PC = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_030_PC, NULL };
+static int hf_018_V1_7_030_AU = -1;
+static const value_string valstr_018_V1_7_030_AU[] = {
+ { 0, "GICB extractions should be sent only when required by the periodicity" },
+ { 1, "If a GICB extraction is done due to external conditions, an update will also be sent, even if it does not match the expected periodicity" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_030_AU = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_030_AU, NULL };
+static int hf_018_V1_7_030_NE = -1;
+static const value_string valstr_018_V1_7_030_NE[] = {
+ { 0, "The GICB extraction is attempted according to the periodicity" },
+ { 1, "There will no GICB attempts" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_030_NE = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_030_NE, NULL };
+static int hf_018_V1_7_030_RD = -1;
+static const value_string valstr_018_V1_7_030_RD[] = {
+ { 0, "The extracted GICB must be sent only on the Data Link line" },
+ { 1, "The extracted GICB must be sent only on the Surveillance line" },
+ { 2, "The extracted GICB must be sent both on the Data Link and on the Surveillance lines" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_030_RD = { 2, 1.0, FIELD_PART_UINT, &hf_018_V1_7_030_RD, NULL };
+static const FieldPart *I018_V1_7_030_PARTS[] = {
+ &I018_V1_7_030_PRIORITY,
+ &IXXX_3bit_spare,
+ &I018_V1_7_030_PC,
+ &I018_V1_7_030_AU,
+ &I018_V1_7_030_NE,
+ &I018_V1_7_030_RD,
+ &IXXX_3bit_spare,
+ NULL
+};
+static const AsterixField I018_V1_7_030 = { FIXED, 2, 0, 0, &hf_018_V1_7_030, I018_V1_7_030_PARTS, { NULL } };
+static int hf_018_V1_7_031 = -1;
+static int hf_018_V1_7_031_VALUE = -1;
+static const FieldPart I018_V1_7_031_VALUE = { 48, 1.0, FIELD_PART_HEX, &hf_018_V1_7_031_VALUE, NULL };
+static const FieldPart *I018_V1_7_031_PARTS[] = {
+ &I018_V1_7_031_VALUE,
+ NULL
+};
+static const AsterixField I018_V1_7_031 = { FIXED, 6, 0, 0, &hf_018_V1_7_031, I018_V1_7_031_PARTS, { NULL } };
+static int hf_018_V1_7_032 = -1;
+static int hf_018_V1_7_032_V = -1;
+static const value_string valstr_018_V1_7_032_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_032_V = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_032_V, NULL };
+static int hf_018_V1_7_032_G = -1;
+static const value_string valstr_018_V1_7_032_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_032_G = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_032_G, NULL };
+static int hf_018_V1_7_032_L = -1;
+static const value_string valstr_018_V1_7_032_L[] = {
+ { 0, "Mode-3/A code derived from the reply of the transponder" },
+ { 1, "Mode-3/A code not extracted during the last scan" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_032_L = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_032_L, NULL };
+static int hf_018_V1_7_032_MOD3A = -1;
+static const FieldPart I018_V1_7_032_MOD3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_018_V1_7_032_MOD3A, NULL };
+static const FieldPart *I018_V1_7_032_PARTS[] = {
+ &I018_V1_7_032_V,
+ &I018_V1_7_032_G,
+ &I018_V1_7_032_L,
+ &IXXX_1bit_spare,
+ &I018_V1_7_032_MOD3A,
+ NULL
+};
+static const AsterixField I018_V1_7_032 = { FIXED, 2, 0, 0, &hf_018_V1_7_032, I018_V1_7_032_PARTS, { NULL } };
+static int hf_018_V1_7_033 = -1;
+static int hf_018_V1_7_033_V = -1;
+static const value_string valstr_018_V1_7_033_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_033_V = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_033_V, NULL };
+static int hf_018_V1_7_033_G = -1;
+static const value_string valstr_018_V1_7_033_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I018_V1_7_033_G = { 1, 1.0, FIELD_PART_UINT, &hf_018_V1_7_033_G, NULL };
+static int hf_018_V1_7_033_FL = -1;
+static const FieldPart I018_V1_7_033_FL = { 14, 0.25, FIELD_PART_FLOAT, &hf_018_V1_7_033_FL, NULL };
+static const FieldPart *I018_V1_7_033_PARTS[] = {
+ &I018_V1_7_033_V,
+ &I018_V1_7_033_G,
+ &I018_V1_7_033_FL,
+ NULL
+};
+static const AsterixField I018_V1_7_033 = { FIXED, 2, 0, 0, &hf_018_V1_7_033, I018_V1_7_033_PARTS, { NULL } };
+static int hf_018_V1_7_034 = -1;
+static int hf_018_V1_7_034_VALUE = -1;
+static const FieldPart I018_V1_7_034_VALUE = { 16, 0.00006103515625, FIELD_PART_UFLOAT, &hf_018_V1_7_034_VALUE, NULL };
+static const FieldPart *I018_V1_7_034_PARTS[] = {
+ &I018_V1_7_034_VALUE,
+ NULL
+};
+static const AsterixField I018_V1_7_034 = { FIXED, 2, 0, 0, &hf_018_V1_7_034, I018_V1_7_034_PARTS, { NULL } };
+static int hf_018_V1_7_035 = -1;
+static int hf_018_V1_7_035_VALUE = -1;
+static const FieldPart I018_V1_7_035_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_018_V1_7_035_VALUE, NULL };
+static const FieldPart *I018_V1_7_035_PARTS[] = {
+ &I018_V1_7_035_VALUE,
+ NULL
+};
+static const AsterixField I018_V1_7_035 = { FIXED, 2, 0, 0, &hf_018_V1_7_035, I018_V1_7_035_PARTS, { NULL } };
+static int hf_018_V1_7_036 = -1;
+static int hf_018_V1_7_036_SAC = -1;
+static const FieldPart I018_V1_7_036_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_018_V1_7_036_SAC, NULL };
+static int hf_018_V1_7_036_SIC = -1;
+static const FieldPart I018_V1_7_036_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_018_V1_7_036_SIC, NULL };
+static const FieldPart *I018_V1_7_036_PARTS[] = {
+ &I018_V1_7_036_SAC,
+ &I018_V1_7_036_SIC,
+ NULL
+};
+static const AsterixField I018_V1_7_036 = { FIXED, 2, 0, 0, &hf_018_V1_7_036, I018_V1_7_036_PARTS, { NULL } };
+static int hf_018_V1_7_037 = -1;
+static int hf_018_V1_7_037_SAC = -1;
+static const FieldPart I018_V1_7_037_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_018_V1_7_037_SAC, NULL };
+static int hf_018_V1_7_037_SIC = -1;
+static const FieldPart I018_V1_7_037_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_018_V1_7_037_SIC, NULL };
+static const FieldPart *I018_V1_7_037_PARTS[] = {
+ &I018_V1_7_037_SAC,
+ &I018_V1_7_037_SIC,
+ NULL
+};
+static const AsterixField I018_V1_7_037 = { FIXED, 2, 0, 0, &hf_018_V1_7_037, I018_V1_7_037_PARTS, { NULL } };
+
+/* Category 018, edition 1.7 (latest) */
+static int hf_018_000 = -1;
+static int hf_018_000_VALUE = -1;
+static const value_string valstr_018_000_VALUE[] = {
+ { 0, "Associate_req" },
+ { 1, "Associate_resp" },
+ { 2, "Release_req" },
+ { 3, "Release_resp" },
+ { 4, "Abort_req" },
+ { 5, "Keep_alive" },
+ { 16, "Aircraft_report" },
+ { 17, "Aircraft_command" },
+ { 18, "II_code_change" },
+ { 32, "Uplink_packet" },
+ { 33, "Cancel_uplink_packet" },
+ { 34, "Uplink_packet_ack" },
+ { 35, "Downlink_packet" },
+ { 38, "Data_XON" },
+ { 39, "Data_XOFF" },
+ { 48, "Uplink_broadcast" },
+ { 49, "Cancel_uplink_broadcast" },
+ { 50, "Uplink_broadcast_ack" },
+ { 52, "Downlink_broadcast" },
+ { 64, "GICB_extraction" },
+ { 65, "Cancel_GICB_extraction" },
+ { 66, "GICB_extraction_ack" },
+ { 67, "GICB_response" },
+ { 0, NULL }
+};
+static const FieldPart I018_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_018_000_VALUE, NULL };
+static const FieldPart *I018_000_PARTS[] = {
+ &I018_000_VALUE,
+ NULL
+};
+static const AsterixField I018_000 = { FIXED, 1, 0, 0, &hf_018_000, I018_000_PARTS, { NULL } };
+static int hf_018_001 = -1;
+static int hf_018_001_CAUSE = -1;
+static const value_string valstr_018_001_CAUSE[] = {
+ { 0, "Accepted, the request is accepted and is under processing" },
+ { 1, "Rejected, the request has not been accepted" },
+ { 2, "Cancelled, the request has been cancelled" },
+ { 3, "Finished, the request has been accepted and successfully processed" },
+ { 4, "Delayed, the request processing is temporarily delayed but the request is still valid" },
+ { 5, "In Progress, the request is being successfully processed" },
+ { 6, "In Progress, the request is being successfully processed" },
+ { 0, NULL }
+};
+static const FieldPart I018_001_CAUSE = { 4, 1.0, FIELD_PART_UINT, &hf_018_001_CAUSE, NULL };
+static int hf_018_001_DIAG = -1;
+static const value_string valstr_018_001_DIAG[] = {
+ { 0, "No diagnostic available" },
+ { 1, "Aircraft Exit" },
+ { 2, "Incorrect aircraft address" },
+ { 3, "Impossibility to process the message" },
+ { 4, "Insufficient or change in data link capability" },
+ { 5, "Invalid LV field" },
+ { 6, "Duplicate request number" },
+ { 7, "Unknown request number" },
+ { 8, "Timer T3 expiry" },
+ { 9, "Expiry of I/R delivery timer" },
+ { 10, "Uplink flow disabled by UC" },
+ { 0, NULL }
+};
+static const FieldPart I018_001_DIAG = { 4, 1.0, FIELD_PART_UINT, &hf_018_001_DIAG, NULL };
+static const FieldPart *I018_001_PARTS[] = {
+ &I018_001_CAUSE,
+ &I018_001_DIAG,
+ NULL
+};
+static const AsterixField I018_001 = { FIXED, 1, 0, 0, &hf_018_001, I018_001_PARTS, { NULL } };
+static int hf_018_002 = -1;
+static int hf_018_002_VALUE = -1;
+static const FieldPart I018_002_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_018_002_VALUE, NULL };
+static const FieldPart *I018_002_PARTS[] = {
+ &I018_002_VALUE,
+ NULL
+};
+static const AsterixField I018_002 = { FIXED, 3, 0, 0, &hf_018_002, I018_002_PARTS, { NULL } };
+static int hf_018_004 = -1;
+static int hf_018_004_PREVIOUSII = -1;
+static const FieldPart I018_004_PREVIOUSII = { 4, 1.0, FIELD_PART_HEX, &hf_018_004_PREVIOUSII, NULL };
+static int hf_018_004_CURRENTII = -1;
+static const FieldPart I018_004_CURRENTII = { 4, 1.0, FIELD_PART_HEX, &hf_018_004_CURRENTII, NULL };
+static const FieldPart *I018_004_PARTS[] = {
+ &I018_004_PREVIOUSII,
+ &I018_004_CURRENTII,
+ NULL
+};
+static const AsterixField I018_004 = { FIXED, 1, 0, 0, &hf_018_004, I018_004_PARTS, { NULL } };
+static int hf_018_005 = -1;
+static int hf_018_005_VALUE = -1;
+static const FieldPart I018_005_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_018_005_VALUE, NULL };
+static const FieldPart *I018_005_PARTS[] = {
+ &I018_005_VALUE,
+ NULL
+};
+static const AsterixField I018_005 = { FIXED, 3, 0, 0, &hf_018_005, I018_005_PARTS, { NULL } };
+static int hf_018_006 = -1;
+static int hf_018_006_VALUE = -1;
+static const FieldPart I018_006_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_018_006_VALUE, NULL };
+static const FieldPart *I018_006_PARTS[] = {
+ &I018_006_VALUE,
+ NULL
+};
+static const AsterixField I018_006 = { REPETITIVE, 3, 1, 0, &hf_018_006, I018_006_PARTS, { NULL } };
+static int hf_018_007 = -1;
+static int hf_018_007_UM = -1;
+static const value_string valstr_018_007_UM[] = {
+ { 0, "UC shall be ignored" },
+ { 1, "UC shall be taken into account" },
+ { 0, NULL }
+};
+static const FieldPart I018_007_UM = { 1, 1.0, FIELD_PART_UINT, &hf_018_007_UM, NULL };
+static int hf_018_007_DM = -1;
+static const value_string valstr_018_007_DM[] = {
+ { 0, "DC shall be ignored" },
+ { 1, "DC shall be taken into account" },
+ { 0, NULL }
+};
+static const FieldPart I018_007_DM = { 1, 1.0, FIELD_PART_UINT, &hf_018_007_DM, NULL };
+static int hf_018_007_UC = -1;
+static const value_string valstr_018_007_UC[] = {
+ { 0, "the uplink flow shall be enabled" },
+ { 1, "the uplink flow shall be stopped" },
+ { 0, NULL }
+};
+static const FieldPart I018_007_UC = { 1, 1.0, FIELD_PART_UINT, &hf_018_007_UC, NULL };
+static int hf_018_007_DC = -1;
+static const value_string valstr_018_007_DC[] = {
+ { 0, "the downlink flow shall be enabled" },
+ { 1, "the downlink flow shall be stopped" },
+ { 0, NULL }
+};
+static const FieldPart I018_007_DC = { 1, 1.0, FIELD_PART_UINT, &hf_018_007_DC, NULL };
+static const FieldPart *I018_007_PARTS[] = {
+ &I018_007_UM,
+ &I018_007_DM,
+ &I018_007_UC,
+ &I018_007_DC,
+ &IXXX_4bit_spare,
+ NULL
+};
+static const AsterixField I018_007 = { FIXED, 1, 0, 0, &hf_018_007, I018_007_PARTS, { NULL } };
+static int hf_018_008 = -1;
+static int hf_018_008_UDS = -1;
+static const value_string valstr_018_008_UDS[] = {
+ { 0, "The interrogator is enabled to uplink frames" },
+ { 1, "The interrogator is disabled to uplink frames" },
+ { 0, NULL }
+};
+static const FieldPart I018_008_UDS = { 1, 1.0, FIELD_PART_UINT, &hf_018_008_UDS, NULL };
+static int hf_018_008_DDS = -1;
+static const value_string valstr_018_008_DDS[] = {
+ { 0, "The interrogator is enabled to extract frames" },
+ { 1, "The interrogator is disabled to extract frames" },
+ { 0, NULL }
+};
+static const FieldPart I018_008_DDS = { 1, 1.0, FIELD_PART_UINT, &hf_018_008_DDS, NULL };
+static int hf_018_008_UCS = -1;
+static const value_string valstr_018_008_UCS[] = {
+ { 0, "The interrogator is enabled to uplink frames" },
+ { 1, "The interrogator is disabled to uplink frames" },
+ { 0, NULL }
+};
+static const FieldPart I018_008_UCS = { 1, 1.0, FIELD_PART_UINT, &hf_018_008_UCS, NULL };
+static int hf_018_008_DCS = -1;
+static const value_string valstr_018_008_DCS[] = {
+ { 0, "The interrogator is enabled to extract frames" },
+ { 1, "The interrogator is disabled to extract frames" },
+ { 0, NULL }
+};
+static const FieldPart I018_008_DCS = { 1, 1.0, FIELD_PART_UINT, &hf_018_008_DCS, NULL };
+static int hf_018_008_EI = -1;
+static const value_string valstr_018_008_EI[] = {
+ { 0, "The aircraft is in the Datalink coverage map of the interrogator" },
+ { 1, "The aircraft is not in the Datalink coverage map of the interrogator" },
+ { 0, NULL }
+};
+static const FieldPart I018_008_EI = { 1, 1.0, FIELD_PART_UINT, &hf_018_008_EI, NULL };
+static int hf_018_008_IC = -1;
+static const value_string valstr_018_008_IC[] = {
+ { 0, "The interrogators current ability to uplink/downlink frames (UCS/DCS) and the content of the Aircraft_report could be changed using D_Data_link_command" },
+ { 1, "The interrogators current ability to uplink/downlink frames (UCS/DCS) and the content of the Aircraft_report cannot be changed using D_Data_link_command" },
+ { 0, NULL }
+};
+static const FieldPart I018_008_IC = { 1, 1.0, FIELD_PART_UINT, &hf_018_008_IC, NULL };
+static const FieldPart *I018_008_PARTS[] = {
+ &I018_008_UDS,
+ &I018_008_DDS,
+ &I018_008_UCS,
+ &I018_008_DCS,
+ &IXXX_2bit_spare,
+ &I018_008_EI,
+ &IXXX_FX,
+ &I018_008_IC,
+ &IXXX_6bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I018_008 = { FX, 1, 0, 0, &hf_018_008, I018_008_PARTS, { NULL } };
+static int hf_018_009 = -1;
+static int hf_018_009_SR = -1;
+static const value_string valstr_018_009_SR[] = {
+ { 0, "The next Aircraft_report may not include D_Data_link_status" },
+ { 1, "The next Aircraft_report shall include D_Data_link_status" },
+ { 0, NULL }
+};
+static const FieldPart I018_009_SR = { 1, 1.0, FIELD_PART_UINT, &hf_018_009_SR, NULL };
+static int hf_018_009_AR = -1;
+static const value_string valstr_018_009_AR[] = {
+ { 0, "The next Aircraft_report may not include D_COM" },
+ { 1, "The next Aircraft_report shall include D_COM" },
+ { 0, NULL }
+};
+static const FieldPart I018_009_AR = { 1, 1.0, FIELD_PART_UINT, &hf_018_009_AR, NULL };
+static int hf_018_009_ER = -1;
+static const value_string valstr_018_009_ER[] = {
+ { 0, "The next Aircraft_report may not include D_ECA" },
+ { 1, "The next Aircraft_report shall include D_ECA" },
+ { 0, NULL }
+};
+static const FieldPart I018_009_ER = { 1, 1.0, FIELD_PART_UINT, &hf_018_009_ER, NULL };
+static int hf_018_009_FR = -1;
+static const value_string valstr_018_009_FR[] = {
+ { 0, "The next Aircraft_report may not include D_CQF" },
+ { 1, "The next Aircraft_report shall include D_CQF" },
+ { 0, NULL }
+};
+static const FieldPart I018_009_FR = { 1, 1.0, FIELD_PART_UINT, &hf_018_009_FR, NULL };
+static int hf_018_009_MR = -1;
+static const value_string valstr_018_009_MR[] = {
+ { 0, "The next Aircraft_report may not include D_CQF_method" },
+ { 1, "The next Aircraft_report shall include D_CQF_method" },
+ { 0, NULL }
+};
+static const FieldPart I018_009_MR = { 1, 1.0, FIELD_PART_UINT, &hf_018_009_MR, NULL };
+static int hf_018_009_PR = -1;
+static const value_string valstr_018_009_PR[] = {
+ { 0, "The next Aircraft_report may not include D_Polar_position" },
+ { 1, "The next Aircraft_report shall include D_Polar_position" },
+ { 0, NULL }
+};
+static const FieldPart I018_009_PR = { 1, 1.0, FIELD_PART_UINT, &hf_018_009_PR, NULL };
+static int hf_018_009_CR = -1;
+static const value_string valstr_018_009_CR[] = {
+ { 0, "The next Aircraft_report may not include D_Cartesian_position" },
+ { 1, "The next Aircraft_report shall include D_Cartesian_position" },
+ { 0, NULL }
+};
+static const FieldPart I018_009_CR = { 1, 1.0, FIELD_PART_UINT, &hf_018_009_CR, NULL };
+static int hf_018_009_ID = -1;
+static const value_string valstr_018_009_ID[] = {
+ { 0, "The next Aircraft_report may not include Aircraft_ID" },
+ { 1, "The next Aircraft_report shall include Aircraft_ID" },
+ { 0, NULL }
+};
+static const FieldPart I018_009_ID = { 1, 1.0, FIELD_PART_UINT, &hf_018_009_ID, NULL };
+static int hf_018_009_MA = -1;
+static const value_string valstr_018_009_MA[] = {
+ { 0, "The next Aircraft_report may not include Mode_A" },
+ { 1, "The next Aircraft_report shall include Mode_A" },
+ { 0, NULL }
+};
+static const FieldPart I018_009_MA = { 1, 1.0, FIELD_PART_UINT, &hf_018_009_MA, NULL };
+static int hf_018_009_SP = -1;
+static const value_string valstr_018_009_SP[] = {
+ { 0, "The next Aircraft_report may not include Speed" },
+ { 1, "The next Aircraft_report shall include Speed" },
+ { 0, NULL }
+};
+static const FieldPart I018_009_SP = { 1, 1.0, FIELD_PART_UINT, &hf_018_009_SP, NULL };
+static int hf_018_009_HG = -1;
+static const value_string valstr_018_009_HG[] = {
+ { 0, "The next Aircraft_report may not include Height" },
+ { 1, "The next Aircraft_report shall include Height" },
+ { 0, NULL }
+};
+static const FieldPart I018_009_HG = { 1, 1.0, FIELD_PART_UINT, &hf_018_009_HG, NULL };
+static int hf_018_009_HD = -1;
+static const value_string valstr_018_009_HD[] = {
+ { 0, "The next Aircraft_report may not include Heading" },
+ { 1, "The next Aircraft_report shall include Heading" },
+ { 0, NULL }
+};
+static const FieldPart I018_009_HD = { 1, 1.0, FIELD_PART_UINT, &hf_018_009_HD, NULL };
+static const FieldPart *I018_009_PARTS[] = {
+ &I018_009_SR,
+ &I018_009_AR,
+ &I018_009_ER,
+ &I018_009_FR,
+ &I018_009_MR,
+ &I018_009_PR,
+ &I018_009_CR,
+ &IXXX_FX,
+ &I018_009_ID,
+ &I018_009_MA,
+ &I018_009_SP,
+ &I018_009_HG,
+ &I018_009_HD,
+ &IXXX_2bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I018_009 = { FX, 1, 0, 0, &hf_018_009, I018_009_PARTS, { NULL } };
+static int hf_018_010 = -1;
+static int hf_018_010_COM = -1;
+static const value_string valstr_018_010_COM[] = {
+ { 0, "No communications capability (surveillance only)" },
+ { 1, "Comm. A and Comm. B capability" },
+ { 2, "Comm. A, Comm. B and Uplink ELM" },
+ { 3, "Comm. A, Comm. B and Uplink ELM and Downlink ELM" },
+ { 4, "Level 5 Transponder capability" },
+ { 0, NULL }
+};
+static const FieldPart I018_010_COM = { 3, 1.0, FIELD_PART_UINT, &hf_018_010_COM, NULL };
+static const FieldPart *I018_010_PARTS[] = {
+ &IXXX_5bit_spare,
+ &I018_010_COM,
+ NULL
+};
+static const AsterixField I018_010 = { FIXED, 1, 0, 0, &hf_018_010, I018_010_PARTS, { NULL } };
+static int hf_018_011 = -1;
+static int hf_018_011_VALUE = -1;
+static const FieldPart I018_011_VALUE = { 56, 1.0, FIELD_PART_HEX, &hf_018_011_VALUE, NULL };
+static const FieldPart *I018_011_PARTS[] = {
+ &I018_011_VALUE,
+ NULL
+};
+static const AsterixField I018_011 = { FIXED, 7, 0, 0, &hf_018_011, I018_011_PARTS, { NULL } };
+static int hf_018_012 = -1;
+static int hf_018_012_FS = -1;
+static const value_string valstr_018_012_FS[] = {
+ { 0, "Aircraft is airborne" },
+ { 1, "Aircraft is on the ground" },
+ { 0, NULL }
+};
+static const FieldPart I018_012_FS = { 1, 1.0, FIELD_PART_UINT, &hf_018_012_FS, NULL };
+static int hf_018_012_CQF = -1;
+static const value_string valstr_018_012_CQF[] = {
+ { 0, "The CQF calculation method is not supported" },
+ { 1, "The CQF is minimum" },
+ { 126, "The CQF is maximum" },
+ { 127, "The CQF is undefined according to the calculation method" },
+ { 0, NULL }
+};
+static const FieldPart I018_012_CQF = { 7, 1.0, FIELD_PART_UINT, &hf_018_012_CQF, NULL };
+static const FieldPart *I018_012_PARTS[] = {
+ &I018_012_FS,
+ &I018_012_CQF,
+ NULL
+};
+static const AsterixField I018_012 = { FIXED, 1, 0, 0, &hf_018_012, I018_012_PARTS, { NULL } };
+static int hf_018_013 = -1;
+static int hf_018_013_VALUE = -1;
+static const FieldPart I018_013_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_018_013_VALUE, NULL };
+static const FieldPart *I018_013_PARTS[] = {
+ &I018_013_VALUE,
+ NULL
+};
+static const AsterixField I018_013 = { FIXED, 1, 0, 0, &hf_018_013, I018_013_PARTS, { NULL } };
+static int hf_018_014 = -1;
+static int hf_018_014_RHO = -1;
+static const FieldPart I018_014_RHO = { 16, 0.00390625, FIELD_PART_UFLOAT, &hf_018_014_RHO, NULL };
+static int hf_018_014_THETA = -1;
+static const FieldPart I018_014_THETA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_018_014_THETA, NULL };
+static const FieldPart *I018_014_PARTS[] = {
+ &I018_014_RHO,
+ &I018_014_THETA,
+ NULL
+};
+static const AsterixField I018_014 = { FIXED, 4, 0, 0, &hf_018_014, I018_014_PARTS, { NULL } };
+static int hf_018_015 = -1;
+static int hf_018_015_X = -1;
+static const FieldPart I018_015_X = { 16, 0.0078125, FIELD_PART_FLOAT, &hf_018_015_X, NULL };
+static int hf_018_015_Y = -1;
+static const FieldPart I018_015_Y = { 16, 0.0078125, FIELD_PART_FLOAT, &hf_018_015_Y, NULL };
+static const FieldPart *I018_015_PARTS[] = {
+ &I018_015_X,
+ &I018_015_Y,
+ NULL
+};
+static const AsterixField I018_015 = { FIXED, 4, 0, 0, &hf_018_015, I018_015_PARTS, { NULL } };
+static int hf_018_016 = -1;
+static int hf_018_016_VALUE = -1;
+static const FieldPart I018_016_VALUE = { 32, 1.0, FIELD_PART_UINT, &hf_018_016_VALUE, NULL };
+static const FieldPart *I018_016_PARTS[] = {
+ &I018_016_VALUE,
+ NULL
+};
+static const AsterixField I018_016 = { FIXED, 4, 0, 0, &hf_018_016, I018_016_PARTS, { NULL } };
+static int hf_018_017 = -1;
+static int hf_018_017_VALUE = -1;
+static const FieldPart I018_017_VALUE = { 32, 1.0, FIELD_PART_UINT, &hf_018_017_VALUE, NULL };
+static const FieldPart *I018_017_PARTS[] = {
+ &I018_017_VALUE,
+ NULL
+};
+static const AsterixField I018_017 = { REPETITIVE, 4, 1, 0, &hf_018_017, I018_017_PARTS, { NULL } };
+static int hf_018_018 = -1;
+static int hf_018_018_PR = -1;
+static const FieldPart I018_018_PR = { 5, 1.0, FIELD_PART_UINT, &hf_018_018_PR, NULL };
+static int hf_018_018_PT = -1;
+static const value_string valstr_018_018_PT[] = {
+ { 0, "SVC packets" },
+ { 1, "MSP packets" },
+ { 2, "Route packets" },
+ { 0, NULL }
+};
+static const FieldPart I018_018_PT = { 2, 1.0, FIELD_PART_UINT, &hf_018_018_PT, NULL };
+static const FieldPart *I018_018_PARTS[] = {
+ &IXXX_1bit_spare,
+ &I018_018_PR,
+ &I018_018_PT,
+ NULL
+};
+static const AsterixField I018_018 = { FIXED, 1, 0, 0, &hf_018_018, I018_018_PARTS, { NULL } };
+static int hf_018_019 = -1;
+static const AsterixField I018_019 = { EXP, 0, 0, 1, &hf_018_019, NULL, { NULL } };
+static int hf_018_020 = -1;
+static int hf_018_020_VALUE = -1;
+static const FieldPart I018_020_VALUE = { 32, 1.0, FIELD_PART_UINT, &hf_018_020_VALUE, NULL };
+static const FieldPart *I018_020_PARTS[] = {
+ &I018_020_VALUE,
+ NULL
+};
+static const AsterixField I018_020 = { FIXED, 4, 0, 0, &hf_018_020, I018_020_PARTS, { NULL } };
+static int hf_018_021 = -1;
+static int hf_018_021_PRIORITY = -1;
+static const FieldPart I018_021_PRIORITY = { 4, 1.0, FIELD_PART_UINT, &hf_018_021_PRIORITY, NULL };
+static int hf_018_021_POWER = -1;
+static const FieldPart I018_021_POWER = { 4, 1.0, FIELD_PART_UINT, &hf_018_021_POWER, NULL };
+static int hf_018_021_DURATION = -1;
+static const FieldPart I018_021_DURATION = { 8, 1.0, FIELD_PART_UFLOAT, &hf_018_021_DURATION, NULL };
+static int hf_018_021_COVERAGE = -1;
+static const FieldPart I018_021_COVERAGE = { 32, 1.0, FIELD_PART_HEX, &hf_018_021_COVERAGE, NULL };
+static const FieldPart *I018_021_PARTS[] = {
+ &I018_021_PRIORITY,
+ &I018_021_POWER,
+ &I018_021_DURATION,
+ &I018_021_COVERAGE,
+ NULL
+};
+static const AsterixField I018_021 = { FIXED, 6, 0, 0, &hf_018_021, I018_021_PARTS, { NULL } };
+static int hf_018_022 = -1;
+static int hf_018_022_PREFIX = -1;
+static const FieldPart I018_022_PREFIX = { 27, 1.0, FIELD_PART_HEX, &hf_018_022_PREFIX, NULL };
+static const FieldPart *I018_022_PARTS[] = {
+ &IXXX_5bit_spare,
+ &I018_022_PREFIX,
+ NULL
+};
+static const AsterixField I018_022 = { FIXED, 4, 0, 0, &hf_018_022, I018_022_PARTS, { NULL } };
+static int hf_018_023 = -1;
+static int hf_018_023_VALUE = -1;
+static const FieldPart I018_023_VALUE = { 56, 1.0, FIELD_PART_HEX, &hf_018_023_VALUE, NULL };
+static const FieldPart *I018_023_PARTS[] = {
+ &I018_023_VALUE,
+ NULL
+};
+static const AsterixField I018_023 = { FIXED, 7, 0, 0, &hf_018_023, I018_023_PARTS, { NULL } };
+static int hf_018_025 = -1;
+static int hf_018_025_VALUE = -1;
+static const FieldPart I018_025_VALUE = { 32, 1.0, FIELD_PART_UINT, &hf_018_025_VALUE, NULL };
+static const FieldPart *I018_025_PARTS[] = {
+ &I018_025_VALUE,
+ NULL
+};
+static const AsterixField I018_025 = { FIXED, 4, 0, 0, &hf_018_025, I018_025_PARTS, { NULL } };
+static int hf_018_027 = -1;
+static int hf_018_027_VALUE = -1;
+static const FieldPart I018_027_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_018_027_VALUE, NULL };
+static const FieldPart *I018_027_PARTS[] = {
+ &I018_027_VALUE,
+ NULL
+};
+static const AsterixField I018_027 = { FIXED, 1, 0, 0, &hf_018_027, I018_027_PARTS, { NULL } };
+static int hf_018_028 = -1;
+static int hf_018_028_VALUE = -1;
+static const FieldPart I018_028_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_018_028_VALUE, NULL };
+static const FieldPart *I018_028_PARTS[] = {
+ &I018_028_VALUE,
+ NULL
+};
+static const AsterixField I018_028 = { FIXED, 2, 0, 0, &hf_018_028, I018_028_PARTS, { NULL } };
+static int hf_018_029 = -1;
+static int hf_018_029_VALUE = -1;
+static const FieldPart I018_029_VALUE = { 56, 1.0, FIELD_PART_HEX, &hf_018_029_VALUE, NULL };
+static const FieldPart *I018_029_PARTS[] = {
+ &I018_029_VALUE,
+ NULL
+};
+static const AsterixField I018_029 = { FIXED, 7, 0, 0, &hf_018_029, I018_029_PARTS, { NULL } };
+static int hf_018_030 = -1;
+static int hf_018_030_PRIORITY = -1;
+static const FieldPart I018_030_PRIORITY = { 5, 1.0, FIELD_PART_UINT, &hf_018_030_PRIORITY, NULL };
+static int hf_018_030_PC = -1;
+static const value_string valstr_018_030_PC[] = {
+ { 0, "The periodicity may not be strictly respected" },
+ { 1, "The periodicity shall be strictly respected" },
+ { 0, NULL }
+};
+static const FieldPart I018_030_PC = { 1, 1.0, FIELD_PART_UINT, &hf_018_030_PC, NULL };
+static int hf_018_030_AU = -1;
+static const value_string valstr_018_030_AU[] = {
+ { 0, "GICB extractions should be sent only when required by the periodicity" },
+ { 1, "If a GICB extraction is done due to external conditions, an update will also be sent, even if it does not match the expected periodicity" },
+ { 0, NULL }
+};
+static const FieldPart I018_030_AU = { 1, 1.0, FIELD_PART_UINT, &hf_018_030_AU, NULL };
+static int hf_018_030_NE = -1;
+static const value_string valstr_018_030_NE[] = {
+ { 0, "The GICB extraction is attempted according to the periodicity" },
+ { 1, "There will no GICB attempts" },
+ { 0, NULL }
+};
+static const FieldPart I018_030_NE = { 1, 1.0, FIELD_PART_UINT, &hf_018_030_NE, NULL };
+static int hf_018_030_RD = -1;
+static const value_string valstr_018_030_RD[] = {
+ { 0, "The extracted GICB must be sent only on the Data Link line" },
+ { 1, "The extracted GICB must be sent only on the Surveillance line" },
+ { 2, "The extracted GICB must be sent both on the Data Link and on the Surveillance lines" },
+ { 0, NULL }
+};
+static const FieldPart I018_030_RD = { 2, 1.0, FIELD_PART_UINT, &hf_018_030_RD, NULL };
+static const FieldPart *I018_030_PARTS[] = {
+ &I018_030_PRIORITY,
+ &IXXX_3bit_spare,
+ &I018_030_PC,
+ &I018_030_AU,
+ &I018_030_NE,
+ &I018_030_RD,
+ &IXXX_3bit_spare,
+ NULL
+};
+static const AsterixField I018_030 = { FIXED, 2, 0, 0, &hf_018_030, I018_030_PARTS, { NULL } };
+static int hf_018_031 = -1;
+static int hf_018_031_VALUE = -1;
+static const FieldPart I018_031_VALUE = { 48, 1.0, FIELD_PART_HEX, &hf_018_031_VALUE, NULL };
+static const FieldPart *I018_031_PARTS[] = {
+ &I018_031_VALUE,
+ NULL
+};
+static const AsterixField I018_031 = { FIXED, 6, 0, 0, &hf_018_031, I018_031_PARTS, { NULL } };
+static int hf_018_032 = -1;
+static int hf_018_032_V = -1;
+static const value_string valstr_018_032_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I018_032_V = { 1, 1.0, FIELD_PART_UINT, &hf_018_032_V, NULL };
+static int hf_018_032_G = -1;
+static const value_string valstr_018_032_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I018_032_G = { 1, 1.0, FIELD_PART_UINT, &hf_018_032_G, NULL };
+static int hf_018_032_L = -1;
+static const value_string valstr_018_032_L[] = {
+ { 0, "Mode-3/A code derived from the reply of the transponder" },
+ { 1, "Mode-3/A code not extracted during the last scan" },
+ { 0, NULL }
+};
+static const FieldPart I018_032_L = { 1, 1.0, FIELD_PART_UINT, &hf_018_032_L, NULL };
+static int hf_018_032_MOD3A = -1;
+static const FieldPart I018_032_MOD3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_018_032_MOD3A, NULL };
+static const FieldPart *I018_032_PARTS[] = {
+ &I018_032_V,
+ &I018_032_G,
+ &I018_032_L,
+ &IXXX_1bit_spare,
+ &I018_032_MOD3A,
+ NULL
+};
+static const AsterixField I018_032 = { FIXED, 2, 0, 0, &hf_018_032, I018_032_PARTS, { NULL } };
+static int hf_018_033 = -1;
+static int hf_018_033_V = -1;
+static const value_string valstr_018_033_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I018_033_V = { 1, 1.0, FIELD_PART_UINT, &hf_018_033_V, NULL };
+static int hf_018_033_G = -1;
+static const value_string valstr_018_033_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I018_033_G = { 1, 1.0, FIELD_PART_UINT, &hf_018_033_G, NULL };
+static int hf_018_033_FL = -1;
+static const FieldPart I018_033_FL = { 14, 0.25, FIELD_PART_FLOAT, &hf_018_033_FL, NULL };
+static const FieldPart *I018_033_PARTS[] = {
+ &I018_033_V,
+ &I018_033_G,
+ &I018_033_FL,
+ NULL
+};
+static const AsterixField I018_033 = { FIXED, 2, 0, 0, &hf_018_033, I018_033_PARTS, { NULL } };
+static int hf_018_034 = -1;
+static int hf_018_034_VALUE = -1;
+static const FieldPart I018_034_VALUE = { 16, 0.00006103515625, FIELD_PART_UFLOAT, &hf_018_034_VALUE, NULL };
+static const FieldPart *I018_034_PARTS[] = {
+ &I018_034_VALUE,
+ NULL
+};
+static const AsterixField I018_034 = { FIXED, 2, 0, 0, &hf_018_034, I018_034_PARTS, { NULL } };
+static int hf_018_035 = -1;
+static int hf_018_035_VALUE = -1;
+static const FieldPart I018_035_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_018_035_VALUE, NULL };
+static const FieldPart *I018_035_PARTS[] = {
+ &I018_035_VALUE,
+ NULL
+};
+static const AsterixField I018_035 = { FIXED, 2, 0, 0, &hf_018_035, I018_035_PARTS, { NULL } };
+static int hf_018_036 = -1;
+static int hf_018_036_SAC = -1;
+static const FieldPart I018_036_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_018_036_SAC, NULL };
+static int hf_018_036_SIC = -1;
+static const FieldPart I018_036_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_018_036_SIC, NULL };
+static const FieldPart *I018_036_PARTS[] = {
+ &I018_036_SAC,
+ &I018_036_SIC,
+ NULL
+};
+static const AsterixField I018_036 = { FIXED, 2, 0, 0, &hf_018_036, I018_036_PARTS, { NULL } };
+static int hf_018_037 = -1;
+static int hf_018_037_SAC = -1;
+static const FieldPart I018_037_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_018_037_SAC, NULL };
+static int hf_018_037_SIC = -1;
+static const FieldPart I018_037_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_018_037_SIC, NULL };
+static const FieldPart *I018_037_PARTS[] = {
+ &I018_037_SAC,
+ &I018_037_SIC,
+ NULL
+};
+static const AsterixField I018_037 = { FIXED, 2, 0, 0, &hf_018_037, I018_037_PARTS, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I018_V1_7_uap[] = {
+ &I018_V1_7_036,
+ &I018_V1_7_037,
+ &I018_V1_7_000,
+ &I018_V1_7_001,
+ &I018_V1_7_005,
+ &I018_V1_7_016,
+ &I018_V1_7_017,
+ &I018_V1_7_018,
+ &I018_V1_7_019,
+ &I018_V1_7_028,
+ &I018_V1_7_030,
+ &I018_V1_7_025,
+ &I018_V1_7_027,
+ &I018_V1_7_029,
+ &I018_V1_7_002,
+ &I018_V1_7_006,
+ &I018_V1_7_007,
+ &I018_V1_7_008,
+ &I018_V1_7_009,
+ &I018_V1_7_010,
+ &I018_V1_7_011,
+ &I018_V1_7_014,
+ &I018_V1_7_015,
+ &I018_V1_7_020,
+ &I018_V1_7_021,
+ &I018_V1_7_022,
+ &I018_V1_7_023,
+ &I018_V1_7_004,
+ &I018_V1_7_031,
+ &I018_V1_7_032,
+ &I018_V1_7_033,
+ &I018_V1_7_034,
+ &I018_V1_7_035,
+ &I018_V1_7_012,
+ &I018_V1_7_013,
+ NULL
+};
+static const AsterixField **I018_V1_7[] = {
+ I018_V1_7_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I018_uap[] = {
+ &I018_036,
+ &I018_037,
+ &I018_000,
+ &I018_001,
+ &I018_005,
+ &I018_016,
+ &I018_017,
+ &I018_018,
+ &I018_019,
+ &I018_028,
+ &I018_030,
+ &I018_025,
+ &I018_027,
+ &I018_029,
+ &I018_002,
+ &I018_006,
+ &I018_007,
+ &I018_008,
+ &I018_009,
+ &I018_010,
+ &I018_011,
+ &I018_014,
+ &I018_015,
+ &I018_020,
+ &I018_021,
+ &I018_022,
+ &I018_023,
+ &I018_004,
+ &I018_031,
+ &I018_032,
+ &I018_033,
+ &I018_034,
+ &I018_035,
+ &I018_012,
+ &I018_013,
+ NULL
+};
+static const AsterixField **I018[] = {
+ I018_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 019, edition 1.3 */
+static int hf_019_V1_3_000 = -1;
+static int hf_019_V1_3_000_VALUE = -1;
+static const value_string valstr_019_V1_3_000_VALUE[] = {
+ { 1, "Start of Update Cycle" },
+ { 2, "Periodic Status Message" },
+ { 3, "Event-triggered Status Message" },
+ { 0, NULL }
+};
+static const FieldPart I019_V1_3_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_019_V1_3_000_VALUE, NULL };
+static const FieldPart *I019_V1_3_000_PARTS[] = {
+ &I019_V1_3_000_VALUE,
+ NULL
+};
+static const AsterixField I019_V1_3_000 = { FIXED, 1, 0, 0, &hf_019_V1_3_000, I019_V1_3_000_PARTS, { NULL } };
+static int hf_019_V1_3_010 = -1;
+static int hf_019_V1_3_010_SAC = -1;
+static const FieldPart I019_V1_3_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_019_V1_3_010_SAC, NULL };
+static int hf_019_V1_3_010_SIC = -1;
+static const FieldPart I019_V1_3_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_019_V1_3_010_SIC, NULL };
+static const FieldPart *I019_V1_3_010_PARTS[] = {
+ &I019_V1_3_010_SAC,
+ &I019_V1_3_010_SIC,
+ NULL
+};
+static const AsterixField I019_V1_3_010 = { FIXED, 2, 0, 0, &hf_019_V1_3_010, I019_V1_3_010_PARTS, { NULL } };
+static int hf_019_V1_3_140 = -1;
+static int hf_019_V1_3_140_VALUE = -1;
+static const FieldPart I019_V1_3_140_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_019_V1_3_140_VALUE, NULL };
+static const FieldPart *I019_V1_3_140_PARTS[] = {
+ &I019_V1_3_140_VALUE,
+ NULL
+};
+static const AsterixField I019_V1_3_140 = { FIXED, 3, 0, 0, &hf_019_V1_3_140, I019_V1_3_140_PARTS, { NULL } };
+static int hf_019_V1_3_550 = -1;
+static int hf_019_V1_3_550_NOGO = -1;
+static const value_string valstr_019_V1_3_550_NOGO[] = {
+ { 0, "Operational" },
+ { 1, "Degraded" },
+ { 2, "NOGO" },
+ { 3, "Undefined" },
+ { 0, NULL }
+};
+static const FieldPart I019_V1_3_550_NOGO = { 2, 1.0, FIELD_PART_UINT, &hf_019_V1_3_550_NOGO, NULL };
+static int hf_019_V1_3_550_OVL = -1;
+static const value_string valstr_019_V1_3_550_OVL[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I019_V1_3_550_OVL = { 1, 1.0, FIELD_PART_UINT, &hf_019_V1_3_550_OVL, NULL };
+static int hf_019_V1_3_550_TSV = -1;
+static const value_string valstr_019_V1_3_550_TSV[] = {
+ { 0, "Valid" },
+ { 1, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I019_V1_3_550_TSV = { 1, 1.0, FIELD_PART_UINT, &hf_019_V1_3_550_TSV, NULL };
+static int hf_019_V1_3_550_TTF = -1;
+static const value_string valstr_019_V1_3_550_TTF[] = {
+ { 0, "Test Target Operative" },
+ { 1, "Test Target Failure" },
+ { 0, NULL }
+};
+static const FieldPart I019_V1_3_550_TTF = { 1, 1.0, FIELD_PART_UINT, &hf_019_V1_3_550_TTF, NULL };
+static const FieldPart *I019_V1_3_550_PARTS[] = {
+ &I019_V1_3_550_NOGO,
+ &I019_V1_3_550_OVL,
+ &I019_V1_3_550_TSV,
+ &I019_V1_3_550_TTF,
+ &IXXX_3bit_spare,
+ NULL
+};
+static const AsterixField I019_V1_3_550 = { FIXED, 1, 0, 0, &hf_019_V1_3_550, I019_V1_3_550_PARTS, { NULL } };
+static int hf_019_V1_3_551 = -1;
+static int hf_019_V1_3_551_TP1A = -1;
+static const value_string valstr_019_V1_3_551_TP1A[] = {
+ { 0, "Standby" },
+ { 1, "Exec" },
+ { 0, NULL }
+};
+static const FieldPart I019_V1_3_551_TP1A = { 1, 1.0, FIELD_PART_UINT, &hf_019_V1_3_551_TP1A, NULL };
+static int hf_019_V1_3_551_TP1B = -1;
+static const value_string valstr_019_V1_3_551_TP1B[] = {
+ { 0, "Faulted" },
+ { 1, "Good" },
+ { 0, NULL }
+};
+static const FieldPart I019_V1_3_551_TP1B = { 1, 1.0, FIELD_PART_UINT, &hf_019_V1_3_551_TP1B, NULL };
+static int hf_019_V1_3_551_TP2A = -1;
+static const value_string valstr_019_V1_3_551_TP2A[] = {
+ { 0, "Standby" },
+ { 1, "Exec" },
+ { 0, NULL }
+};
+static const FieldPart I019_V1_3_551_TP2A = { 1, 1.0, FIELD_PART_UINT, &hf_019_V1_3_551_TP2A, NULL };
+static int hf_019_V1_3_551_TP2B = -1;
+static const value_string valstr_019_V1_3_551_TP2B[] = {
+ { 0, "Faulted" },
+ { 1, "Good" },
+ { 0, NULL }
+};
+static const FieldPart I019_V1_3_551_TP2B = { 1, 1.0, FIELD_PART_UINT, &hf_019_V1_3_551_TP2B, NULL };
+static int hf_019_V1_3_551_TP3A = -1;
+static const value_string valstr_019_V1_3_551_TP3A[] = {
+ { 0, "Standby" },
+ { 1, "Exec" },
+ { 0, NULL }
+};
+static const FieldPart I019_V1_3_551_TP3A = { 1, 1.0, FIELD_PART_UINT, &hf_019_V1_3_551_TP3A, NULL };
+static int hf_019_V1_3_551_TP3B = -1;
+static const value_string valstr_019_V1_3_551_TP3B[] = {
+ { 0, "Faulted" },
+ { 1, "Good" },
+ { 0, NULL }
+};
+static const FieldPart I019_V1_3_551_TP3B = { 1, 1.0, FIELD_PART_UINT, &hf_019_V1_3_551_TP3B, NULL };
+static int hf_019_V1_3_551_TP4A = -1;
+static const value_string valstr_019_V1_3_551_TP4A[] = {
+ { 0, "Standby" },
+ { 1, "Exec" },
+ { 0, NULL }
+};
+static const FieldPart I019_V1_3_551_TP4A = { 1, 1.0, FIELD_PART_UINT, &hf_019_V1_3_551_TP4A, NULL };
+static int hf_019_V1_3_551_TP4B = -1;
+static const value_string valstr_019_V1_3_551_TP4B[] = {
+ { 0, "Faulted" },
+ { 1, "Good" },
+ { 0, NULL }
+};
+static const FieldPart I019_V1_3_551_TP4B = { 1, 1.0, FIELD_PART_UINT, &hf_019_V1_3_551_TP4B, NULL };
+static const FieldPart *I019_V1_3_551_PARTS[] = {
+ &I019_V1_3_551_TP1A,
+ &I019_V1_3_551_TP1B,
+ &I019_V1_3_551_TP2A,
+ &I019_V1_3_551_TP2B,
+ &I019_V1_3_551_TP3A,
+ &I019_V1_3_551_TP3B,
+ &I019_V1_3_551_TP4A,
+ &I019_V1_3_551_TP4B,
+ NULL
+};
+static const AsterixField I019_V1_3_551 = { FIXED, 1, 0, 0, &hf_019_V1_3_551, I019_V1_3_551_PARTS, { NULL } };
+static int hf_019_V1_3_552 = -1;
+static int hf_019_V1_3_552_RSI = -1;
+static const FieldPart I019_V1_3_552_RSI = { 8, 1.0, FIELD_PART_HEX, &hf_019_V1_3_552_RSI, NULL };
+static int hf_019_V1_3_552_RS1090 = -1;
+static const value_string valstr_019_V1_3_552_RS1090[] = {
+ { 0, "Not present" },
+ { 1, "Present" },
+ { 0, NULL }
+};
+static const FieldPart I019_V1_3_552_RS1090 = { 1, 1.0, FIELD_PART_UINT, &hf_019_V1_3_552_RS1090, NULL };
+static int hf_019_V1_3_552_TX1030 = -1;
+static const value_string valstr_019_V1_3_552_TX1030[] = {
+ { 0, "Not present" },
+ { 1, "Present" },
+ { 0, NULL }
+};
+static const FieldPart I019_V1_3_552_TX1030 = { 1, 1.0, FIELD_PART_UINT, &hf_019_V1_3_552_TX1030, NULL };
+static int hf_019_V1_3_552_TX1090 = -1;
+static const value_string valstr_019_V1_3_552_TX1090[] = {
+ { 0, "Not present" },
+ { 1, "Present" },
+ { 0, NULL }
+};
+static const FieldPart I019_V1_3_552_TX1090 = { 1, 1.0, FIELD_PART_UINT, &hf_019_V1_3_552_TX1090, NULL };
+static int hf_019_V1_3_552_RSS = -1;
+static const value_string valstr_019_V1_3_552_RSS[] = {
+ { 0, "Faulted" },
+ { 1, "Good" },
+ { 0, NULL }
+};
+static const FieldPart I019_V1_3_552_RSS = { 1, 1.0, FIELD_PART_UINT, &hf_019_V1_3_552_RSS, NULL };
+static int hf_019_V1_3_552_RSO = -1;
+static const value_string valstr_019_V1_3_552_RSO[] = {
+ { 0, "Offline" },
+ { 1, "Online" },
+ { 0, NULL }
+};
+static const FieldPart I019_V1_3_552_RSO = { 1, 1.0, FIELD_PART_UINT, &hf_019_V1_3_552_RSO, NULL };
+static const FieldPart *I019_V1_3_552_PARTS[] = {
+ &I019_V1_3_552_RSI,
+ &IXXX_1bit_spare,
+ &I019_V1_3_552_RS1090,
+ &I019_V1_3_552_TX1030,
+ &I019_V1_3_552_TX1090,
+ &I019_V1_3_552_RSS,
+ &I019_V1_3_552_RSO,
+ &IXXX_2bit_spare,
+ NULL
+};
+static const AsterixField I019_V1_3_552 = { REPETITIVE, 2, 1, 0, &hf_019_V1_3_552, I019_V1_3_552_PARTS, { NULL } };
+static int hf_019_V1_3_553 = -1;
+static int hf_019_V1_3_553_REFTR1 = -1;
+static const value_string valstr_019_V1_3_553_REFTR1[] = {
+ { 1, "Warning" },
+ { 2, "Faulted" },
+ { 3, "Good" },
+ { 0, NULL }
+};
+static const FieldPart I019_V1_3_553_REFTR1 = { 2, 1.0, FIELD_PART_UINT, &hf_019_V1_3_553_REFTR1, NULL };
+static int hf_019_V1_3_553_REFTR2 = -1;
+static const value_string valstr_019_V1_3_553_REFTR2[] = {
+ { 1, "Warning" },
+ { 2, "Faulted" },
+ { 3, "Good" },
+ { 0, NULL }
+};
+static const FieldPart I019_V1_3_553_REFTR2 = { 2, 1.0, FIELD_PART_UINT, &hf_019_V1_3_553_REFTR2, NULL };
+static int hf_019_V1_3_553_REFTR3 = -1;
+static const value_string valstr_019_V1_3_553_REFTR3[] = {
+ { 1, "Warning" },
+ { 2, "Faulted" },
+ { 3, "Good" },
+ { 0, NULL }
+};
+static const FieldPart I019_V1_3_553_REFTR3 = { 2, 1.0, FIELD_PART_UINT, &hf_019_V1_3_553_REFTR3, NULL };
+static int hf_019_V1_3_553_REFTR4 = -1;
+static const value_string valstr_019_V1_3_553_REFTR4[] = {
+ { 1, "Warning" },
+ { 2, "Faulted" },
+ { 3, "Good" },
+ { 0, NULL }
+};
+static const FieldPart I019_V1_3_553_REFTR4 = { 2, 1.0, FIELD_PART_UINT, &hf_019_V1_3_553_REFTR4, NULL };
+static const FieldPart *I019_V1_3_553_PARTS[] = {
+ &I019_V1_3_553_REFTR1,
+ &IXXX_2bit_spare,
+ &I019_V1_3_553_REFTR2,
+ &IXXX_1bit_spare,
+ &IXXX_FX,
+ &I019_V1_3_553_REFTR3,
+ &IXXX_2bit_spare,
+ &I019_V1_3_553_REFTR4,
+ &IXXX_1bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I019_V1_3_553 = { FX, 1, 0, 0, &hf_019_V1_3_553, I019_V1_3_553_PARTS, { NULL } };
+static int hf_019_V1_3_600 = -1;
+static int hf_019_V1_3_600_LAT = -1;
+static const FieldPart I019_V1_3_600_LAT = { 32, 0.0000001676380634307861328125, FIELD_PART_FLOAT, &hf_019_V1_3_600_LAT, NULL };
+static int hf_019_V1_3_600_LON = -1;
+static const FieldPart I019_V1_3_600_LON = { 32, 0.0000001676380634307861328125, FIELD_PART_FLOAT, &hf_019_V1_3_600_LON, NULL };
+static const FieldPart *I019_V1_3_600_PARTS[] = {
+ &I019_V1_3_600_LAT,
+ &I019_V1_3_600_LON,
+ NULL
+};
+static const AsterixField I019_V1_3_600 = { FIXED, 8, 0, 0, &hf_019_V1_3_600, I019_V1_3_600_PARTS, { NULL } };
+static int hf_019_V1_3_610 = -1;
+static int hf_019_V1_3_610_VALUE = -1;
+static const FieldPart I019_V1_3_610_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_019_V1_3_610_VALUE, NULL };
+static const FieldPart *I019_V1_3_610_PARTS[] = {
+ &I019_V1_3_610_VALUE,
+ NULL
+};
+static const AsterixField I019_V1_3_610 = { FIXED, 2, 0, 0, &hf_019_V1_3_610, I019_V1_3_610_PARTS, { NULL } };
+static int hf_019_V1_3_620 = -1;
+static int hf_019_V1_3_620_VALUE = -1;
+static const FieldPart I019_V1_3_620_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_019_V1_3_620_VALUE, NULL };
+static const FieldPart *I019_V1_3_620_PARTS[] = {
+ &I019_V1_3_620_VALUE,
+ NULL
+};
+static const AsterixField I019_V1_3_620 = { FIXED, 1, 0, 0, &hf_019_V1_3_620, I019_V1_3_620_PARTS, { NULL } };
+static int hf_019_V1_3_RE = -1;
+static const AsterixField I019_V1_3_RE = { EXP, 0, 0, 1, &hf_019_V1_3_RE, NULL, { NULL } };
+static int hf_019_V1_3_SP = -1;
+static const AsterixField I019_V1_3_SP = { EXP, 0, 0, 1, &hf_019_V1_3_SP, NULL, { NULL } };
+
+/* Category 019, edition 1.3 (latest) */
+static int hf_019_000 = -1;
+static int hf_019_000_VALUE = -1;
+static const value_string valstr_019_000_VALUE[] = {
+ { 1, "Start of Update Cycle" },
+ { 2, "Periodic Status Message" },
+ { 3, "Event-triggered Status Message" },
+ { 0, NULL }
+};
+static const FieldPart I019_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_019_000_VALUE, NULL };
+static const FieldPart *I019_000_PARTS[] = {
+ &I019_000_VALUE,
+ NULL
+};
+static const AsterixField I019_000 = { FIXED, 1, 0, 0, &hf_019_000, I019_000_PARTS, { NULL } };
+static int hf_019_010 = -1;
+static int hf_019_010_SAC = -1;
+static const FieldPart I019_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_019_010_SAC, NULL };
+static int hf_019_010_SIC = -1;
+static const FieldPart I019_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_019_010_SIC, NULL };
+static const FieldPart *I019_010_PARTS[] = {
+ &I019_010_SAC,
+ &I019_010_SIC,
+ NULL
+};
+static const AsterixField I019_010 = { FIXED, 2, 0, 0, &hf_019_010, I019_010_PARTS, { NULL } };
+static int hf_019_140 = -1;
+static int hf_019_140_VALUE = -1;
+static const FieldPart I019_140_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_019_140_VALUE, NULL };
+static const FieldPart *I019_140_PARTS[] = {
+ &I019_140_VALUE,
+ NULL
+};
+static const AsterixField I019_140 = { FIXED, 3, 0, 0, &hf_019_140, I019_140_PARTS, { NULL } };
+static int hf_019_550 = -1;
+static int hf_019_550_NOGO = -1;
+static const value_string valstr_019_550_NOGO[] = {
+ { 0, "Operational" },
+ { 1, "Degraded" },
+ { 2, "NOGO" },
+ { 3, "Undefined" },
+ { 0, NULL }
+};
+static const FieldPart I019_550_NOGO = { 2, 1.0, FIELD_PART_UINT, &hf_019_550_NOGO, NULL };
+static int hf_019_550_OVL = -1;
+static const value_string valstr_019_550_OVL[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I019_550_OVL = { 1, 1.0, FIELD_PART_UINT, &hf_019_550_OVL, NULL };
+static int hf_019_550_TSV = -1;
+static const value_string valstr_019_550_TSV[] = {
+ { 0, "Valid" },
+ { 1, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I019_550_TSV = { 1, 1.0, FIELD_PART_UINT, &hf_019_550_TSV, NULL };
+static int hf_019_550_TTF = -1;
+static const value_string valstr_019_550_TTF[] = {
+ { 0, "Test Target Operative" },
+ { 1, "Test Target Failure" },
+ { 0, NULL }
+};
+static const FieldPart I019_550_TTF = { 1, 1.0, FIELD_PART_UINT, &hf_019_550_TTF, NULL };
+static const FieldPart *I019_550_PARTS[] = {
+ &I019_550_NOGO,
+ &I019_550_OVL,
+ &I019_550_TSV,
+ &I019_550_TTF,
+ &IXXX_3bit_spare,
+ NULL
+};
+static const AsterixField I019_550 = { FIXED, 1, 0, 0, &hf_019_550, I019_550_PARTS, { NULL } };
+static int hf_019_551 = -1;
+static int hf_019_551_TP1A = -1;
+static const value_string valstr_019_551_TP1A[] = {
+ { 0, "Standby" },
+ { 1, "Exec" },
+ { 0, NULL }
+};
+static const FieldPart I019_551_TP1A = { 1, 1.0, FIELD_PART_UINT, &hf_019_551_TP1A, NULL };
+static int hf_019_551_TP1B = -1;
+static const value_string valstr_019_551_TP1B[] = {
+ { 0, "Faulted" },
+ { 1, "Good" },
+ { 0, NULL }
+};
+static const FieldPart I019_551_TP1B = { 1, 1.0, FIELD_PART_UINT, &hf_019_551_TP1B, NULL };
+static int hf_019_551_TP2A = -1;
+static const value_string valstr_019_551_TP2A[] = {
+ { 0, "Standby" },
+ { 1, "Exec" },
+ { 0, NULL }
+};
+static const FieldPart I019_551_TP2A = { 1, 1.0, FIELD_PART_UINT, &hf_019_551_TP2A, NULL };
+static int hf_019_551_TP2B = -1;
+static const value_string valstr_019_551_TP2B[] = {
+ { 0, "Faulted" },
+ { 1, "Good" },
+ { 0, NULL }
+};
+static const FieldPart I019_551_TP2B = { 1, 1.0, FIELD_PART_UINT, &hf_019_551_TP2B, NULL };
+static int hf_019_551_TP3A = -1;
+static const value_string valstr_019_551_TP3A[] = {
+ { 0, "Standby" },
+ { 1, "Exec" },
+ { 0, NULL }
+};
+static const FieldPart I019_551_TP3A = { 1, 1.0, FIELD_PART_UINT, &hf_019_551_TP3A, NULL };
+static int hf_019_551_TP3B = -1;
+static const value_string valstr_019_551_TP3B[] = {
+ { 0, "Faulted" },
+ { 1, "Good" },
+ { 0, NULL }
+};
+static const FieldPart I019_551_TP3B = { 1, 1.0, FIELD_PART_UINT, &hf_019_551_TP3B, NULL };
+static int hf_019_551_TP4A = -1;
+static const value_string valstr_019_551_TP4A[] = {
+ { 0, "Standby" },
+ { 1, "Exec" },
+ { 0, NULL }
+};
+static const FieldPart I019_551_TP4A = { 1, 1.0, FIELD_PART_UINT, &hf_019_551_TP4A, NULL };
+static int hf_019_551_TP4B = -1;
+static const value_string valstr_019_551_TP4B[] = {
+ { 0, "Faulted" },
+ { 1, "Good" },
+ { 0, NULL }
+};
+static const FieldPart I019_551_TP4B = { 1, 1.0, FIELD_PART_UINT, &hf_019_551_TP4B, NULL };
+static const FieldPart *I019_551_PARTS[] = {
+ &I019_551_TP1A,
+ &I019_551_TP1B,
+ &I019_551_TP2A,
+ &I019_551_TP2B,
+ &I019_551_TP3A,
+ &I019_551_TP3B,
+ &I019_551_TP4A,
+ &I019_551_TP4B,
+ NULL
+};
+static const AsterixField I019_551 = { FIXED, 1, 0, 0, &hf_019_551, I019_551_PARTS, { NULL } };
+static int hf_019_552 = -1;
+static int hf_019_552_RSI = -1;
+static const FieldPart I019_552_RSI = { 8, 1.0, FIELD_PART_HEX, &hf_019_552_RSI, NULL };
+static int hf_019_552_RS1090 = -1;
+static const value_string valstr_019_552_RS1090[] = {
+ { 0, "Not present" },
+ { 1, "Present" },
+ { 0, NULL }
+};
+static const FieldPart I019_552_RS1090 = { 1, 1.0, FIELD_PART_UINT, &hf_019_552_RS1090, NULL };
+static int hf_019_552_TX1030 = -1;
+static const value_string valstr_019_552_TX1030[] = {
+ { 0, "Not present" },
+ { 1, "Present" },
+ { 0, NULL }
+};
+static const FieldPart I019_552_TX1030 = { 1, 1.0, FIELD_PART_UINT, &hf_019_552_TX1030, NULL };
+static int hf_019_552_TX1090 = -1;
+static const value_string valstr_019_552_TX1090[] = {
+ { 0, "Not present" },
+ { 1, "Present" },
+ { 0, NULL }
+};
+static const FieldPart I019_552_TX1090 = { 1, 1.0, FIELD_PART_UINT, &hf_019_552_TX1090, NULL };
+static int hf_019_552_RSS = -1;
+static const value_string valstr_019_552_RSS[] = {
+ { 0, "Faulted" },
+ { 1, "Good" },
+ { 0, NULL }
+};
+static const FieldPart I019_552_RSS = { 1, 1.0, FIELD_PART_UINT, &hf_019_552_RSS, NULL };
+static int hf_019_552_RSO = -1;
+static const value_string valstr_019_552_RSO[] = {
+ { 0, "Offline" },
+ { 1, "Online" },
+ { 0, NULL }
+};
+static const FieldPart I019_552_RSO = { 1, 1.0, FIELD_PART_UINT, &hf_019_552_RSO, NULL };
+static const FieldPart *I019_552_PARTS[] = {
+ &I019_552_RSI,
+ &IXXX_1bit_spare,
+ &I019_552_RS1090,
+ &I019_552_TX1030,
+ &I019_552_TX1090,
+ &I019_552_RSS,
+ &I019_552_RSO,
+ &IXXX_2bit_spare,
+ NULL
+};
+static const AsterixField I019_552 = { REPETITIVE, 2, 1, 0, &hf_019_552, I019_552_PARTS, { NULL } };
+static int hf_019_553 = -1;
+static int hf_019_553_REFTR1 = -1;
+static const value_string valstr_019_553_REFTR1[] = {
+ { 1, "Warning" },
+ { 2, "Faulted" },
+ { 3, "Good" },
+ { 0, NULL }
+};
+static const FieldPart I019_553_REFTR1 = { 2, 1.0, FIELD_PART_UINT, &hf_019_553_REFTR1, NULL };
+static int hf_019_553_REFTR2 = -1;
+static const value_string valstr_019_553_REFTR2[] = {
+ { 1, "Warning" },
+ { 2, "Faulted" },
+ { 3, "Good" },
+ { 0, NULL }
+};
+static const FieldPart I019_553_REFTR2 = { 2, 1.0, FIELD_PART_UINT, &hf_019_553_REFTR2, NULL };
+static int hf_019_553_REFTR3 = -1;
+static const value_string valstr_019_553_REFTR3[] = {
+ { 1, "Warning" },
+ { 2, "Faulted" },
+ { 3, "Good" },
+ { 0, NULL }
+};
+static const FieldPart I019_553_REFTR3 = { 2, 1.0, FIELD_PART_UINT, &hf_019_553_REFTR3, NULL };
+static int hf_019_553_REFTR4 = -1;
+static const value_string valstr_019_553_REFTR4[] = {
+ { 1, "Warning" },
+ { 2, "Faulted" },
+ { 3, "Good" },
+ { 0, NULL }
+};
+static const FieldPart I019_553_REFTR4 = { 2, 1.0, FIELD_PART_UINT, &hf_019_553_REFTR4, NULL };
+static const FieldPart *I019_553_PARTS[] = {
+ &I019_553_REFTR1,
+ &IXXX_2bit_spare,
+ &I019_553_REFTR2,
+ &IXXX_1bit_spare,
+ &IXXX_FX,
+ &I019_553_REFTR3,
+ &IXXX_2bit_spare,
+ &I019_553_REFTR4,
+ &IXXX_1bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I019_553 = { FX, 1, 0, 0, &hf_019_553, I019_553_PARTS, { NULL } };
+static int hf_019_600 = -1;
+static int hf_019_600_LAT = -1;
+static const FieldPart I019_600_LAT = { 32, 0.0000001676380634307861328125, FIELD_PART_FLOAT, &hf_019_600_LAT, NULL };
+static int hf_019_600_LON = -1;
+static const FieldPart I019_600_LON = { 32, 0.0000001676380634307861328125, FIELD_PART_FLOAT, &hf_019_600_LON, NULL };
+static const FieldPart *I019_600_PARTS[] = {
+ &I019_600_LAT,
+ &I019_600_LON,
+ NULL
+};
+static const AsterixField I019_600 = { FIXED, 8, 0, 0, &hf_019_600, I019_600_PARTS, { NULL } };
+static int hf_019_610 = -1;
+static int hf_019_610_VALUE = -1;
+static const FieldPart I019_610_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_019_610_VALUE, NULL };
+static const FieldPart *I019_610_PARTS[] = {
+ &I019_610_VALUE,
+ NULL
+};
+static const AsterixField I019_610 = { FIXED, 2, 0, 0, &hf_019_610, I019_610_PARTS, { NULL } };
+static int hf_019_620 = -1;
+static int hf_019_620_VALUE = -1;
+static const FieldPart I019_620_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_019_620_VALUE, NULL };
+static const FieldPart *I019_620_PARTS[] = {
+ &I019_620_VALUE,
+ NULL
+};
+static const AsterixField I019_620 = { FIXED, 1, 0, 0, &hf_019_620, I019_620_PARTS, { NULL } };
+static int hf_019_RE = -1;
+static const AsterixField I019_RE = { EXP, 0, 0, 1, &hf_019_RE, NULL, { NULL } };
+static int hf_019_SP = -1;
+static const AsterixField I019_SP = { EXP, 0, 0, 1, &hf_019_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I019_V1_3_uap[] = {
+ &I019_V1_3_010,
+ &I019_V1_3_000,
+ &I019_V1_3_140,
+ &I019_V1_3_550,
+ &I019_V1_3_551,
+ &I019_V1_3_552,
+ &I019_V1_3_553,
+ &I019_V1_3_600,
+ &I019_V1_3_610,
+ &I019_V1_3_620,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I019_V1_3_RE,
+ &I019_V1_3_SP,
+ NULL
+};
+static const AsterixField **I019_V1_3[] = {
+ I019_V1_3_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I019_uap[] = {
+ &I019_010,
+ &I019_000,
+ &I019_140,
+ &I019_550,
+ &I019_551,
+ &I019_552,
+ &I019_553,
+ &I019_600,
+ &I019_610,
+ &I019_620,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I019_RE,
+ &I019_SP,
+ NULL
+};
+static const AsterixField **I019[] = {
+ I019_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 020, edition 1.9 */
+static int hf_020_V1_9_010 = -1;
+static int hf_020_V1_9_010_SAC = -1;
+static const FieldPart I020_V1_9_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_020_V1_9_010_SAC, NULL };
+static int hf_020_V1_9_010_SIC = -1;
+static const FieldPart I020_V1_9_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_020_V1_9_010_SIC, NULL };
+static const FieldPart *I020_V1_9_010_PARTS[] = {
+ &I020_V1_9_010_SAC,
+ &I020_V1_9_010_SIC,
+ NULL
+};
+static const AsterixField I020_V1_9_010 = { FIXED, 2, 0, 0, &hf_020_V1_9_010, I020_V1_9_010_PARTS, { NULL } };
+static int hf_020_V1_9_020 = -1;
+static int hf_020_V1_9_020_SSR = -1;
+static const value_string valstr_020_V1_9_020_SSR[] = {
+ { 0, "Non-Mode S 1090MHz multilateration" },
+ { 1, "No Non-Mode S 1090MHz multilat" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_020_SSR = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_020_SSR, NULL };
+static int hf_020_V1_9_020_MS = -1;
+static const value_string valstr_020_V1_9_020_MS[] = {
+ { 0, "Mode-S 1090 MHz multilateration" },
+ { 1, "No Mode-S 1090 MHz multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_020_MS = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_020_MS, NULL };
+static int hf_020_V1_9_020_HF = -1;
+static const value_string valstr_020_V1_9_020_HF[] = {
+ { 0, "HF multilateration" },
+ { 1, "No HF multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_020_HF = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_020_HF, NULL };
+static int hf_020_V1_9_020_VDL4 = -1;
+static const value_string valstr_020_V1_9_020_VDL4[] = {
+ { 0, "VDL Mode 4 multilateration" },
+ { 1, "No VDL Mode 4 multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_020_VDL4 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_020_VDL4, NULL };
+static int hf_020_V1_9_020_UAT = -1;
+static const value_string valstr_020_V1_9_020_UAT[] = {
+ { 0, "UAT multilateration" },
+ { 1, "No UAT multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_020_UAT = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_020_UAT, NULL };
+static int hf_020_V1_9_020_DME = -1;
+static const value_string valstr_020_V1_9_020_DME[] = {
+ { 0, "DME/TACAN multilateration" },
+ { 1, "No DME/TACAN multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_020_DME = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_020_DME, NULL };
+static int hf_020_V1_9_020_OT = -1;
+static const value_string valstr_020_V1_9_020_OT[] = {
+ { 0, "Other Technology Multilateration" },
+ { 1, "No Other Technology Multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_020_OT = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_020_OT, NULL };
+static int hf_020_V1_9_020_RAB = -1;
+static const value_string valstr_020_V1_9_020_RAB[] = {
+ { 0, "Report from target transponder" },
+ { 1, "Report from field monitor (element transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_020_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_020_RAB, NULL };
+static int hf_020_V1_9_020_SPI = -1;
+static const value_string valstr_020_V1_9_020_SPI[] = {
+ { 0, "Absence of SPI" },
+ { 1, "Special Position Identification" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_020_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_020_SPI, NULL };
+static int hf_020_V1_9_020_CHN = -1;
+static const value_string valstr_020_V1_9_020_CHN[] = {
+ { 0, "Chain 1" },
+ { 1, "Chain 2" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_020_CHN = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_020_CHN, NULL };
+static int hf_020_V1_9_020_GBS = -1;
+static const value_string valstr_020_V1_9_020_GBS[] = {
+ { 0, "Transponder Ground bit not set" },
+ { 1, "Transponder Ground bit set" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_020_GBS = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_020_GBS, NULL };
+static int hf_020_V1_9_020_CRT = -1;
+static const value_string valstr_020_V1_9_020_CRT[] = {
+ { 0, "No Corrupted reply in multilateration" },
+ { 1, "Corrupted replies in multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_020_CRT = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_020_CRT, NULL };
+static int hf_020_V1_9_020_SIM = -1;
+static const value_string valstr_020_V1_9_020_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_020_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_020_SIM, NULL };
+static int hf_020_V1_9_020_TST = -1;
+static const value_string valstr_020_V1_9_020_TST[] = {
+ { 0, "Default" },
+ { 1, "Test Target" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_020_TST = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_020_TST, NULL };
+static const FieldPart *I020_V1_9_020_PARTS[] = {
+ &I020_V1_9_020_SSR,
+ &I020_V1_9_020_MS,
+ &I020_V1_9_020_HF,
+ &I020_V1_9_020_VDL4,
+ &I020_V1_9_020_UAT,
+ &I020_V1_9_020_DME,
+ &I020_V1_9_020_OT,
+ &IXXX_FX,
+ &I020_V1_9_020_RAB,
+ &I020_V1_9_020_SPI,
+ &I020_V1_9_020_CHN,
+ &I020_V1_9_020_GBS,
+ &I020_V1_9_020_CRT,
+ &I020_V1_9_020_SIM,
+ &I020_V1_9_020_TST,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I020_V1_9_020 = { FX, 1, 0, 0, &hf_020_V1_9_020, I020_V1_9_020_PARTS, { NULL } };
+static int hf_020_V1_9_030 = -1;
+static int hf_020_V1_9_030_Subitem = -1;
+static const value_string valstr_020_V1_9_030_Subitem[] = {
+ { 0, "Not defined; never used" },
+ { 1, "Multipath Reply (Reflection)" },
+ { 3, "Split plot" },
+ { 10, "Phantom SSR plot" },
+ { 11, "Non-Matching Mode-3/A Code" },
+ { 12, "Mode C code / Mode S altitude code abnormal value compared to the track" },
+ { 15, "Transponder anomaly detected" },
+ { 16, "Duplicated or Illegal Mode S Aircraft Address" },
+ { 17, "Mode S error correction applied" },
+ { 18, "Undecodable Mode C code / Mode S altitude code" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_030_Subitem = { 7, 1.0, FIELD_PART_UINT, &hf_020_V1_9_030_Subitem, NULL };
+static const FieldPart *I020_V1_9_030_PARTS[] = {
+ &I020_V1_9_030_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I020_V1_9_030 = { FX, 1, 0, 0, &hf_020_V1_9_030, I020_V1_9_030_PARTS, { NULL } };
+static int hf_020_V1_9_041 = -1;
+static int hf_020_V1_9_041_LAT = -1;
+static const FieldPart I020_V1_9_041_LAT = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_020_V1_9_041_LAT, NULL };
+static int hf_020_V1_9_041_LON = -1;
+static const FieldPart I020_V1_9_041_LON = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_020_V1_9_041_LON, NULL };
+static const FieldPart *I020_V1_9_041_PARTS[] = {
+ &I020_V1_9_041_LAT,
+ &I020_V1_9_041_LON,
+ NULL
+};
+static const AsterixField I020_V1_9_041 = { FIXED, 8, 0, 0, &hf_020_V1_9_041, I020_V1_9_041_PARTS, { NULL } };
+static int hf_020_V1_9_042 = -1;
+static int hf_020_V1_9_042_X = -1;
+static const FieldPart I020_V1_9_042_X = { 24, 0.5, FIELD_PART_FLOAT, &hf_020_V1_9_042_X, NULL };
+static int hf_020_V1_9_042_Y = -1;
+static const FieldPart I020_V1_9_042_Y = { 24, 0.5, FIELD_PART_FLOAT, &hf_020_V1_9_042_Y, NULL };
+static const FieldPart *I020_V1_9_042_PARTS[] = {
+ &I020_V1_9_042_X,
+ &I020_V1_9_042_Y,
+ NULL
+};
+static const AsterixField I020_V1_9_042 = { FIXED, 6, 0, 0, &hf_020_V1_9_042, I020_V1_9_042_PARTS, { NULL } };
+static int hf_020_V1_9_050 = -1;
+static int hf_020_V1_9_050_V = -1;
+static const value_string valstr_020_V1_9_050_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_050_V = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_050_V, NULL };
+static int hf_020_V1_9_050_G = -1;
+static const value_string valstr_020_V1_9_050_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_050_G = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_050_G, NULL };
+static int hf_020_V1_9_050_L = -1;
+static const value_string valstr_020_V1_9_050_L[] = {
+ { 0, "Mode-2 code derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-2 code as provided by a local tracker n" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_050_L = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_050_L, NULL };
+static int hf_020_V1_9_050_MODE2 = -1;
+static const FieldPart I020_V1_9_050_MODE2 = { 12, 1.0, FIELD_PART_SQUAWK, &hf_020_V1_9_050_MODE2, NULL };
+static const FieldPart *I020_V1_9_050_PARTS[] = {
+ &I020_V1_9_050_V,
+ &I020_V1_9_050_G,
+ &I020_V1_9_050_L,
+ &IXXX_1bit_spare,
+ &I020_V1_9_050_MODE2,
+ NULL
+};
+static const AsterixField I020_V1_9_050 = { FIXED, 2, 0, 0, &hf_020_V1_9_050, I020_V1_9_050_PARTS, { NULL } };
+static int hf_020_V1_9_055 = -1;
+static int hf_020_V1_9_055_V = -1;
+static const value_string valstr_020_V1_9_055_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_055_V = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_055_V, NULL };
+static int hf_020_V1_9_055_G = -1;
+static const value_string valstr_020_V1_9_055_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_055_G = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_055_G, NULL };
+static int hf_020_V1_9_055_L = -1;
+static const value_string valstr_020_V1_9_055_L[] = {
+ { 0, "Mode-1 code derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-1 code as provided by a local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_055_L = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_055_L, NULL };
+static int hf_020_V1_9_055_MODE1 = -1;
+static const FieldPart I020_V1_9_055_MODE1 = { 5, 1.0, FIELD_PART_HEX, &hf_020_V1_9_055_MODE1, NULL };
+static const FieldPart *I020_V1_9_055_PARTS[] = {
+ &I020_V1_9_055_V,
+ &I020_V1_9_055_G,
+ &I020_V1_9_055_L,
+ &I020_V1_9_055_MODE1,
+ NULL
+};
+static const AsterixField I020_V1_9_055 = { FIXED, 1, 0, 0, &hf_020_V1_9_055, I020_V1_9_055_PARTS, { NULL } };
+static int hf_020_V1_9_070 = -1;
+static int hf_020_V1_9_070_V = -1;
+static const value_string valstr_020_V1_9_070_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_070_V = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_070_V, NULL };
+static int hf_020_V1_9_070_G = -1;
+static const value_string valstr_020_V1_9_070_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_070_G = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_070_G, NULL };
+static int hf_020_V1_9_070_L = -1;
+static const value_string valstr_020_V1_9_070_L[] = {
+ { 0, "Mode-3/A code derived from the reply of the transponder" },
+ { 1, "Mode-3/A code not extracted during the last update period" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_070_L = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_070_L, NULL };
+static int hf_020_V1_9_070_MODE3A = -1;
+static const FieldPart I020_V1_9_070_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_020_V1_9_070_MODE3A, NULL };
+static const FieldPart *I020_V1_9_070_PARTS[] = {
+ &I020_V1_9_070_V,
+ &I020_V1_9_070_G,
+ &I020_V1_9_070_L,
+ &IXXX_1bit_spare,
+ &I020_V1_9_070_MODE3A,
+ NULL
+};
+static const AsterixField I020_V1_9_070 = { FIXED, 2, 0, 0, &hf_020_V1_9_070, I020_V1_9_070_PARTS, { NULL } };
+static int hf_020_V1_9_090 = -1;
+static int hf_020_V1_9_090_V = -1;
+static const value_string valstr_020_V1_9_090_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_090_V = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_090_V, NULL };
+static int hf_020_V1_9_090_G = -1;
+static const value_string valstr_020_V1_9_090_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_090_G = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_090_G, NULL };
+static int hf_020_V1_9_090_FL = -1;
+static const FieldPart I020_V1_9_090_FL = { 14, 0.25, FIELD_PART_FLOAT, &hf_020_V1_9_090_FL, NULL };
+static const FieldPart *I020_V1_9_090_PARTS[] = {
+ &I020_V1_9_090_V,
+ &I020_V1_9_090_G,
+ &I020_V1_9_090_FL,
+ NULL
+};
+static const AsterixField I020_V1_9_090 = { FIXED, 2, 0, 0, &hf_020_V1_9_090, I020_V1_9_090_PARTS, { NULL } };
+static int hf_020_V1_9_100 = -1;
+static int hf_020_V1_9_100_V = -1;
+static const value_string valstr_020_V1_9_100_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_100_V = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_100_V, NULL };
+static int hf_020_V1_9_100_G = -1;
+static const value_string valstr_020_V1_9_100_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_100_G = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_100_G, NULL };
+static int hf_020_V1_9_100_MODEC = -1;
+static const FieldPart I020_V1_9_100_MODEC = { 12, 1.0, FIELD_PART_HEX, &hf_020_V1_9_100_MODEC, NULL };
+static int hf_020_V1_9_100_QC1 = -1;
+static const value_string valstr_020_V1_9_100_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_100_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_100_QC1, NULL };
+static int hf_020_V1_9_100_QA1 = -1;
+static const value_string valstr_020_V1_9_100_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_100_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_100_QA1, NULL };
+static int hf_020_V1_9_100_QC2 = -1;
+static const value_string valstr_020_V1_9_100_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_100_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_100_QC2, NULL };
+static int hf_020_V1_9_100_QA2 = -1;
+static const value_string valstr_020_V1_9_100_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_100_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_100_QA2, NULL };
+static int hf_020_V1_9_100_QC4 = -1;
+static const value_string valstr_020_V1_9_100_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_100_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_100_QC4, NULL };
+static int hf_020_V1_9_100_QA4 = -1;
+static const value_string valstr_020_V1_9_100_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_100_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_100_QA4, NULL };
+static int hf_020_V1_9_100_QB1 = -1;
+static const value_string valstr_020_V1_9_100_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_100_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_100_QB1, NULL };
+static int hf_020_V1_9_100_QD1 = -1;
+static const value_string valstr_020_V1_9_100_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_100_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_100_QD1, NULL };
+static int hf_020_V1_9_100_QB2 = -1;
+static const value_string valstr_020_V1_9_100_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_100_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_100_QB2, NULL };
+static int hf_020_V1_9_100_QD2 = -1;
+static const value_string valstr_020_V1_9_100_QD2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_100_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_100_QD2, NULL };
+static int hf_020_V1_9_100_QB4 = -1;
+static const value_string valstr_020_V1_9_100_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_100_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_100_QB4, NULL };
+static int hf_020_V1_9_100_QD4 = -1;
+static const value_string valstr_020_V1_9_100_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_100_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_100_QD4, NULL };
+static const FieldPart *I020_V1_9_100_PARTS[] = {
+ &I020_V1_9_100_V,
+ &I020_V1_9_100_G,
+ &IXXX_2bit_spare,
+ &I020_V1_9_100_MODEC,
+ &IXXX_4bit_spare,
+ &I020_V1_9_100_QC1,
+ &I020_V1_9_100_QA1,
+ &I020_V1_9_100_QC2,
+ &I020_V1_9_100_QA2,
+ &I020_V1_9_100_QC4,
+ &I020_V1_9_100_QA4,
+ &I020_V1_9_100_QB1,
+ &I020_V1_9_100_QD1,
+ &I020_V1_9_100_QB2,
+ &I020_V1_9_100_QD2,
+ &I020_V1_9_100_QB4,
+ &I020_V1_9_100_QD4,
+ NULL
+};
+static const AsterixField I020_V1_9_100 = { FIXED, 4, 0, 0, &hf_020_V1_9_100, I020_V1_9_100_PARTS, { NULL } };
+static int hf_020_V1_9_105 = -1;
+static int hf_020_V1_9_105_VALUE = -1;
+static const FieldPart I020_V1_9_105_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_020_V1_9_105_VALUE, NULL };
+static const FieldPart *I020_V1_9_105_PARTS[] = {
+ &I020_V1_9_105_VALUE,
+ NULL
+};
+static const AsterixField I020_V1_9_105 = { FIXED, 2, 0, 0, &hf_020_V1_9_105, I020_V1_9_105_PARTS, { NULL } };
+static int hf_020_V1_9_110 = -1;
+static int hf_020_V1_9_110_VALUE = -1;
+static const FieldPart I020_V1_9_110_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_020_V1_9_110_VALUE, NULL };
+static const FieldPart *I020_V1_9_110_PARTS[] = {
+ &I020_V1_9_110_VALUE,
+ NULL
+};
+static const AsterixField I020_V1_9_110 = { FIXED, 2, 0, 0, &hf_020_V1_9_110, I020_V1_9_110_PARTS, { NULL } };
+static int hf_020_V1_9_140 = -1;
+static int hf_020_V1_9_140_VALUE = -1;
+static const FieldPart I020_V1_9_140_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_020_V1_9_140_VALUE, NULL };
+static const FieldPart *I020_V1_9_140_PARTS[] = {
+ &I020_V1_9_140_VALUE,
+ NULL
+};
+static const AsterixField I020_V1_9_140 = { FIXED, 3, 0, 0, &hf_020_V1_9_140, I020_V1_9_140_PARTS, { NULL } };
+static int hf_020_V1_9_161 = -1;
+static int hf_020_V1_9_161_TRN = -1;
+static const FieldPart I020_V1_9_161_TRN = { 12, 1.0, FIELD_PART_HEX, &hf_020_V1_9_161_TRN, NULL };
+static const FieldPart *I020_V1_9_161_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I020_V1_9_161_TRN,
+ NULL
+};
+static const AsterixField I020_V1_9_161 = { FIXED, 2, 0, 0, &hf_020_V1_9_161, I020_V1_9_161_PARTS, { NULL } };
+static int hf_020_V1_9_170 = -1;
+static int hf_020_V1_9_170_CNF = -1;
+static const value_string valstr_020_V1_9_170_CNF[] = {
+ { 0, "Confirmed track" },
+ { 1, "Track in initiation phase" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_170_CNF = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_170_CNF, NULL };
+static int hf_020_V1_9_170_TRE = -1;
+static const value_string valstr_020_V1_9_170_TRE[] = {
+ { 0, "Default" },
+ { 1, "Last report for a track" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_170_TRE = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_170_TRE, NULL };
+static int hf_020_V1_9_170_CST = -1;
+static const value_string valstr_020_V1_9_170_CST[] = {
+ { 0, "Not extrapolated" },
+ { 1, "Extrapolated" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_170_CST = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_170_CST, NULL };
+static int hf_020_V1_9_170_CDM = -1;
+static const value_string valstr_020_V1_9_170_CDM[] = {
+ { 0, "Maintaining" },
+ { 1, "Climbing" },
+ { 2, "Descending" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_170_CDM = { 2, 1.0, FIELD_PART_UINT, &hf_020_V1_9_170_CDM, NULL };
+static int hf_020_V1_9_170_MAH = -1;
+static const value_string valstr_020_V1_9_170_MAH[] = {
+ { 0, "Default" },
+ { 1, "Horizontal manoeuvre" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_170_MAH = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_170_MAH, NULL };
+static int hf_020_V1_9_170_STH = -1;
+static const value_string valstr_020_V1_9_170_STH[] = {
+ { 0, "Measured position" },
+ { 1, "Smoothed position" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_170_STH = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_170_STH, NULL };
+static int hf_020_V1_9_170_GHO = -1;
+static const value_string valstr_020_V1_9_170_GHO[] = {
+ { 0, "Default" },
+ { 1, "Ghost track" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_170_GHO = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_170_GHO, NULL };
+static const FieldPart *I020_V1_9_170_PARTS[] = {
+ &I020_V1_9_170_CNF,
+ &I020_V1_9_170_TRE,
+ &I020_V1_9_170_CST,
+ &I020_V1_9_170_CDM,
+ &I020_V1_9_170_MAH,
+ &I020_V1_9_170_STH,
+ &IXXX_FX,
+ &I020_V1_9_170_GHO,
+ &IXXX_6bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I020_V1_9_170 = { FX, 1, 0, 0, &hf_020_V1_9_170, I020_V1_9_170_PARTS, { NULL } };
+static int hf_020_V1_9_202 = -1;
+static int hf_020_V1_9_202_VX = -1;
+static const FieldPart I020_V1_9_202_VX = { 16, 0.25, FIELD_PART_FLOAT, &hf_020_V1_9_202_VX, NULL };
+static int hf_020_V1_9_202_VY = -1;
+static const FieldPart I020_V1_9_202_VY = { 16, 0.25, FIELD_PART_FLOAT, &hf_020_V1_9_202_VY, NULL };
+static const FieldPart *I020_V1_9_202_PARTS[] = {
+ &I020_V1_9_202_VX,
+ &I020_V1_9_202_VY,
+ NULL
+};
+static const AsterixField I020_V1_9_202 = { FIXED, 4, 0, 0, &hf_020_V1_9_202, I020_V1_9_202_PARTS, { NULL } };
+static int hf_020_V1_9_210 = -1;
+static int hf_020_V1_9_210_AX = -1;
+static const FieldPart I020_V1_9_210_AX = { 8, 0.25, FIELD_PART_FLOAT, &hf_020_V1_9_210_AX, NULL };
+static int hf_020_V1_9_210_AY = -1;
+static const FieldPart I020_V1_9_210_AY = { 8, 0.25, FIELD_PART_FLOAT, &hf_020_V1_9_210_AY, NULL };
+static const FieldPart *I020_V1_9_210_PARTS[] = {
+ &I020_V1_9_210_AX,
+ &I020_V1_9_210_AY,
+ NULL
+};
+static const AsterixField I020_V1_9_210 = { FIXED, 2, 0, 0, &hf_020_V1_9_210, I020_V1_9_210_PARTS, { NULL } };
+static int hf_020_V1_9_220 = -1;
+static int hf_020_V1_9_220_VALUE = -1;
+static const FieldPart I020_V1_9_220_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_020_V1_9_220_VALUE, NULL };
+static const FieldPart *I020_V1_9_220_PARTS[] = {
+ &I020_V1_9_220_VALUE,
+ NULL
+};
+static const AsterixField I020_V1_9_220 = { FIXED, 3, 0, 0, &hf_020_V1_9_220, I020_V1_9_220_PARTS, { NULL } };
+static int hf_020_V1_9_230 = -1;
+static int hf_020_V1_9_230_COM = -1;
+static const value_string valstr_020_V1_9_230_COM[] = {
+ { 0, "No communications capability (surveillance only)" },
+ { 1, "Comm. A and Comm. B capability" },
+ { 2, "Comm. A, Comm. B and Uplink ELM" },
+ { 3, "Comm. A, Comm. B, Uplink ELM and Downlink ELM" },
+ { 4, "Level 5 Transponder capability" },
+ { 5, "Not assigned" },
+ { 6, "Not assigned" },
+ { 7, "Not assigned" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_230_COM = { 3, 1.0, FIELD_PART_UINT, &hf_020_V1_9_230_COM, NULL };
+static int hf_020_V1_9_230_STAT = -1;
+static const value_string valstr_020_V1_9_230_STAT[] = {
+ { 0, "No alert, no SPI, aircraft airborne" },
+ { 1, "No alert, no SPI, aircraft on ground" },
+ { 2, "Alert, no SPI, aircraft airborne" },
+ { 3, "Alert, no SPI, aircraft on ground" },
+ { 4, "Alert, SPI, aircraft airborne or on ground" },
+ { 5, "No alert, SPI, aircraft airborne or on ground" },
+ { 6, "Not assigned" },
+ { 7, "Information not yet extracted" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_230_STAT = { 3, 1.0, FIELD_PART_UINT, &hf_020_V1_9_230_STAT, NULL };
+static int hf_020_V1_9_230_MSSC = -1;
+static const value_string valstr_020_V1_9_230_MSSC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_230_MSSC = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_230_MSSC, NULL };
+static int hf_020_V1_9_230_ARC = -1;
+static const value_string valstr_020_V1_9_230_ARC[] = {
+ { 0, "100 ft resolution" },
+ { 1, "25 ft resolution" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_230_ARC = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_230_ARC, NULL };
+static int hf_020_V1_9_230_AIC = -1;
+static const value_string valstr_020_V1_9_230_AIC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_230_AIC = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_230_AIC, NULL };
+static int hf_020_V1_9_230_B1A = -1;
+static const FieldPart I020_V1_9_230_B1A = { 1, 1.0, FIELD_PART_HEX, &hf_020_V1_9_230_B1A, NULL };
+static int hf_020_V1_9_230_B1B = -1;
+static const FieldPart I020_V1_9_230_B1B = { 4, 1.0, FIELD_PART_HEX, &hf_020_V1_9_230_B1B, NULL };
+static const FieldPart *I020_V1_9_230_PARTS[] = {
+ &I020_V1_9_230_COM,
+ &I020_V1_9_230_STAT,
+ &IXXX_2bit_spare,
+ &I020_V1_9_230_MSSC,
+ &I020_V1_9_230_ARC,
+ &I020_V1_9_230_AIC,
+ &I020_V1_9_230_B1A,
+ &I020_V1_9_230_B1B,
+ NULL
+};
+static const AsterixField I020_V1_9_230 = { FIXED, 2, 0, 0, &hf_020_V1_9_230, I020_V1_9_230_PARTS, { NULL } };
+static int hf_020_V1_9_245 = -1;
+static int hf_020_V1_9_245_STI = -1;
+static const value_string valstr_020_V1_9_245_STI[] = {
+ { 0, "Callsign or registration not downlinked from transponder" },
+ { 1, "Registration downlinked from transponder" },
+ { 2, "Callsign downlinked from transponder" },
+ { 3, "Not defined" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_245_STI = { 2, 1.0, FIELD_PART_UINT, &hf_020_V1_9_245_STI, NULL };
+static int hf_020_V1_9_245_CHR = -1;
+static const FieldPart I020_V1_9_245_CHR = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_020_V1_9_245_CHR, NULL };
+static const FieldPart *I020_V1_9_245_PARTS[] = {
+ &I020_V1_9_245_STI,
+ &IXXX_6bit_spare,
+ &I020_V1_9_245_CHR,
+ NULL
+};
+static const AsterixField I020_V1_9_245 = { FIXED, 7, 0, 0, &hf_020_V1_9_245, I020_V1_9_245_PARTS, { NULL } };
+static int hf_020_V1_9_250 = -1;
+static int hf_020_V1_9_250_MBDATA = -1;
+static const FieldPart I020_V1_9_250_MBDATA = { 56, 1.0, FIELD_PART_HEX, &hf_020_V1_9_250_MBDATA, NULL };
+static int hf_020_V1_9_250_BDS1 = -1;
+static const FieldPart I020_V1_9_250_BDS1 = { 4, 1.0, FIELD_PART_HEX, &hf_020_V1_9_250_BDS1, NULL };
+static int hf_020_V1_9_250_BDS2 = -1;
+static const FieldPart I020_V1_9_250_BDS2 = { 4, 1.0, FIELD_PART_HEX, &hf_020_V1_9_250_BDS2, NULL };
+static const FieldPart *I020_V1_9_250_PARTS[] = {
+ &I020_V1_9_250_MBDATA,
+ &I020_V1_9_250_BDS1,
+ &I020_V1_9_250_BDS2,
+ NULL
+};
+static const AsterixField I020_V1_9_250 = { REPETITIVE, 8, 1, 0, &hf_020_V1_9_250, I020_V1_9_250_PARTS, { NULL } };
+static int hf_020_V1_9_260 = -1;
+static int hf_020_V1_9_260_VALUE = -1;
+static const FieldPart I020_V1_9_260_VALUE = { 56, 1.0, FIELD_PART_HEX, &hf_020_V1_9_260_VALUE, NULL };
+static const FieldPart *I020_V1_9_260_PARTS[] = {
+ &I020_V1_9_260_VALUE,
+ NULL
+};
+static const AsterixField I020_V1_9_260 = { FIXED, 7, 0, 0, &hf_020_V1_9_260, I020_V1_9_260_PARTS, { NULL } };
+static int hf_020_V1_9_300 = -1;
+static int hf_020_V1_9_300_VALUE = -1;
+static const value_string valstr_020_V1_9_300_VALUE[] = {
+ { 0, "Unknown" },
+ { 1, "ATC equipment maintenance" },
+ { 2, "Airport maintenance" },
+ { 3, "Fire" },
+ { 4, "Bird scarer" },
+ { 5, "Snow plough" },
+ { 6, "Runway sweeper" },
+ { 7, "Emergency" },
+ { 8, "Police" },
+ { 9, "Bus" },
+ { 10, "Tug (push/tow)" },
+ { 11, "Grass cutter" },
+ { 12, "Fuel" },
+ { 13, "Baggage" },
+ { 14, "Catering" },
+ { 15, "Aircraft maintenance" },
+ { 16, "Flyco (follow me)" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_300_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_020_V1_9_300_VALUE, NULL };
+static const FieldPart *I020_V1_9_300_PARTS[] = {
+ &I020_V1_9_300_VALUE,
+ NULL
+};
+static const AsterixField I020_V1_9_300 = { FIXED, 1, 0, 0, &hf_020_V1_9_300, I020_V1_9_300_PARTS, { NULL } };
+static int hf_020_V1_9_310 = -1;
+static int hf_020_V1_9_310_TRB = -1;
+static const value_string valstr_020_V1_9_310_TRB[] = {
+ { 0, "Default" },
+ { 1, "In Trouble" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_310_TRB = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_310_TRB, NULL };
+static int hf_020_V1_9_310_MSG = -1;
+static const value_string valstr_020_V1_9_310_MSG[] = {
+ { 1, "Towing aircraft" },
+ { 2, "FOLLOW-ME operation" },
+ { 3, "Runway check" },
+ { 4, "Emergency operation (fire, medical...)" },
+ { 5, "Work in progress (maintenance, birds scarer, sweepers...)" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_310_MSG = { 7, 1.0, FIELD_PART_UINT, &hf_020_V1_9_310_MSG, NULL };
+static const FieldPart *I020_V1_9_310_PARTS[] = {
+ &I020_V1_9_310_TRB,
+ &I020_V1_9_310_MSG,
+ NULL
+};
+static const AsterixField I020_V1_9_310 = { FIXED, 1, 0, 0, &hf_020_V1_9_310, I020_V1_9_310_PARTS, { NULL } };
+static int hf_020_V1_9_400 = -1;
+static int hf_020_V1_9_400_BIT1 = -1;
+static const value_string valstr_020_V1_9_400_BIT1[] = {
+ { 0, "TU1/RU1 has NOT contributed to the target detection" },
+ { 1, "TU1/RU1 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_400_BIT1 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_400_BIT1, NULL };
+static int hf_020_V1_9_400_BIT2 = -1;
+static const value_string valstr_020_V1_9_400_BIT2[] = {
+ { 0, "TU2/RU2 has NOT contributed to the target detection" },
+ { 1, "TU2/RU2 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_400_BIT2 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_400_BIT2, NULL };
+static int hf_020_V1_9_400_BIT3 = -1;
+static const value_string valstr_020_V1_9_400_BIT3[] = {
+ { 0, "TU3/RU3 has NOT contributed to the target detection" },
+ { 1, "TU3/RU3 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_400_BIT3 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_400_BIT3, NULL };
+static int hf_020_V1_9_400_BIT4 = -1;
+static const value_string valstr_020_V1_9_400_BIT4[] = {
+ { 0, "TU4/RU4 has NOT contributed to the target detection" },
+ { 1, "TU4/RU4 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_400_BIT4 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_400_BIT4, NULL };
+static int hf_020_V1_9_400_BIT5 = -1;
+static const value_string valstr_020_V1_9_400_BIT5[] = {
+ { 0, "TU5/RU5 has NOT contributed to the target detection" },
+ { 1, "TU5/RU5 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_400_BIT5 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_400_BIT5, NULL };
+static int hf_020_V1_9_400_BIT6 = -1;
+static const value_string valstr_020_V1_9_400_BIT6[] = {
+ { 0, "TU6/RU6 has NOT contributed to the target detection" },
+ { 1, "TU6/RU6 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_400_BIT6 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_400_BIT6, NULL };
+static int hf_020_V1_9_400_BIT7 = -1;
+static const value_string valstr_020_V1_9_400_BIT7[] = {
+ { 0, "TU7/RU7 has NOT contributed to the target detection" },
+ { 1, "TU7/RU7 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_400_BIT7 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_400_BIT7, NULL };
+static int hf_020_V1_9_400_BIT8 = -1;
+static const value_string valstr_020_V1_9_400_BIT8[] = {
+ { 0, "TU8/RU8 has NOT contributed to the target detection" },
+ { 1, "TU8/RU8 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_9_400_BIT8 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_9_400_BIT8, NULL };
+static const FieldPart *I020_V1_9_400_PARTS[] = {
+ &I020_V1_9_400_BIT1,
+ &I020_V1_9_400_BIT2,
+ &I020_V1_9_400_BIT3,
+ &I020_V1_9_400_BIT4,
+ &I020_V1_9_400_BIT5,
+ &I020_V1_9_400_BIT6,
+ &I020_V1_9_400_BIT7,
+ &I020_V1_9_400_BIT8,
+ NULL
+};
+static const AsterixField I020_V1_9_400 = { REPETITIVE, 1, 1, 0, &hf_020_V1_9_400, I020_V1_9_400_PARTS, { NULL } };
+static int hf_020_V1_9_500 = -1;
+static int hf_020_V1_9_500_DOP = -1;
+static int hf_020_V1_9_500_DOP_X = -1;
+static const FieldPart I020_V1_9_500_DOP_X = { 16, 0.25, FIELD_PART_UFLOAT, &hf_020_V1_9_500_DOP_X, NULL };
+static int hf_020_V1_9_500_DOP_Y = -1;
+static const FieldPart I020_V1_9_500_DOP_Y = { 16, 0.25, FIELD_PART_UFLOAT, &hf_020_V1_9_500_DOP_Y, NULL };
+static int hf_020_V1_9_500_DOP_XY = -1;
+static const FieldPart I020_V1_9_500_DOP_XY = { 16, 0.25, FIELD_PART_UFLOAT, &hf_020_V1_9_500_DOP_XY, NULL };
+static const FieldPart *I020_V1_9_500_DOP_PARTS[] = {
+ &I020_V1_9_500_DOP_X,
+ &I020_V1_9_500_DOP_Y,
+ &I020_V1_9_500_DOP_XY,
+ NULL
+};
+static const AsterixField I020_V1_9_500_DOP = { FIXED, 6, 0, 0, &hf_020_V1_9_500_DOP, I020_V1_9_500_DOP_PARTS, { NULL } };
+static int hf_020_V1_9_500_SDP = -1;
+static int hf_020_V1_9_500_SDP_X = -1;
+static const FieldPart I020_V1_9_500_SDP_X = { 16, 0.25, FIELD_PART_UFLOAT, &hf_020_V1_9_500_SDP_X, NULL };
+static int hf_020_V1_9_500_SDP_Y = -1;
+static const FieldPart I020_V1_9_500_SDP_Y = { 16, 0.25, FIELD_PART_UFLOAT, &hf_020_V1_9_500_SDP_Y, NULL };
+static int hf_020_V1_9_500_SDP_XY = -1;
+static const FieldPart I020_V1_9_500_SDP_XY = { 16, 0.25, FIELD_PART_UFLOAT, &hf_020_V1_9_500_SDP_XY, NULL };
+static const FieldPart *I020_V1_9_500_SDP_PARTS[] = {
+ &I020_V1_9_500_SDP_X,
+ &I020_V1_9_500_SDP_Y,
+ &I020_V1_9_500_SDP_XY,
+ NULL
+};
+static const AsterixField I020_V1_9_500_SDP = { FIXED, 6, 0, 0, &hf_020_V1_9_500_SDP, I020_V1_9_500_SDP_PARTS, { NULL } };
+static int hf_020_V1_9_500_SDH = -1;
+static int hf_020_V1_9_500_SDH_VALUE = -1;
+static const FieldPart I020_V1_9_500_SDH_VALUE = { 16, 0.5, FIELD_PART_UFLOAT, &hf_020_V1_9_500_SDH_VALUE, NULL };
+static const FieldPart *I020_V1_9_500_SDH_PARTS[] = {
+ &I020_V1_9_500_SDH_VALUE,
+ NULL
+};
+static const AsterixField I020_V1_9_500_SDH = { FIXED, 2, 0, 0, &hf_020_V1_9_500_SDH, I020_V1_9_500_SDH_PARTS, { NULL } };
+static const AsterixField I020_V1_9_500 = { COMPOUND, 0, 0, 0, &hf_020_V1_9_500, NULL, { &I020_V1_9_500_DOP, &I020_V1_9_500_SDP, &I020_V1_9_500_SDH, NULL } };
+static int hf_020_V1_9_RE = -1;
+static const AsterixField I020_V1_9_RE = { EXP, 0, 0, 1, &hf_020_V1_9_RE, NULL, { NULL } };
+static int hf_020_V1_9_SP = -1;
+static const AsterixField I020_V1_9_SP = { EXP, 0, 0, 1, &hf_020_V1_9_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I020_V1_9_uap[] = {
+ &I020_V1_9_010,
+ &I020_V1_9_020,
+ &I020_V1_9_140,
+ &I020_V1_9_041,
+ &I020_V1_9_042,
+ &I020_V1_9_161,
+ &I020_V1_9_170,
+ &I020_V1_9_070,
+ &I020_V1_9_202,
+ &I020_V1_9_090,
+ &I020_V1_9_100,
+ &I020_V1_9_220,
+ &I020_V1_9_245,
+ &I020_V1_9_110,
+ &I020_V1_9_105,
+ &I020_V1_9_210,
+ &I020_V1_9_300,
+ &I020_V1_9_310,
+ &I020_V1_9_500,
+ &I020_V1_9_400,
+ &I020_V1_9_250,
+ &I020_V1_9_230,
+ &I020_V1_9_260,
+ &I020_V1_9_030,
+ &I020_V1_9_055,
+ &I020_V1_9_050,
+ &I020_V1_9_RE,
+ &I020_V1_9_SP,
+ NULL
+};
+static const AsterixField **I020_V1_9[] = {
+ I020_V1_9_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 020, edition 1.10 */
+static int hf_020_V1_10_010 = -1;
+static int hf_020_V1_10_010_SAC = -1;
+static const FieldPart I020_V1_10_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_020_V1_10_010_SAC, NULL };
+static int hf_020_V1_10_010_SIC = -1;
+static const FieldPart I020_V1_10_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_020_V1_10_010_SIC, NULL };
+static const FieldPart *I020_V1_10_010_PARTS[] = {
+ &I020_V1_10_010_SAC,
+ &I020_V1_10_010_SIC,
+ NULL
+};
+static const AsterixField I020_V1_10_010 = { FIXED, 2, 0, 0, &hf_020_V1_10_010, I020_V1_10_010_PARTS, { NULL } };
+static int hf_020_V1_10_020 = -1;
+static int hf_020_V1_10_020_SSR = -1;
+static const value_string valstr_020_V1_10_020_SSR[] = {
+ { 0, "Non-Mode S 1090MHz multilateration" },
+ { 1, "No Non-Mode S 1090MHz multilat" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_020_SSR = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_020_SSR, NULL };
+static int hf_020_V1_10_020_MS = -1;
+static const value_string valstr_020_V1_10_020_MS[] = {
+ { 0, "Mode-S 1090 MHz multilateration" },
+ { 1, "No Mode-S 1090 MHz multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_020_MS = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_020_MS, NULL };
+static int hf_020_V1_10_020_HF = -1;
+static const value_string valstr_020_V1_10_020_HF[] = {
+ { 0, "HF multilateration" },
+ { 1, "No HF multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_020_HF = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_020_HF, NULL };
+static int hf_020_V1_10_020_VDL4 = -1;
+static const value_string valstr_020_V1_10_020_VDL4[] = {
+ { 0, "VDL Mode 4 multilateration" },
+ { 1, "No VDL Mode 4 multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_020_VDL4 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_020_VDL4, NULL };
+static int hf_020_V1_10_020_UAT = -1;
+static const value_string valstr_020_V1_10_020_UAT[] = {
+ { 0, "UAT multilateration" },
+ { 1, "No UAT multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_020_UAT = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_020_UAT, NULL };
+static int hf_020_V1_10_020_DME = -1;
+static const value_string valstr_020_V1_10_020_DME[] = {
+ { 0, "DME/TACAN multilateration" },
+ { 1, "No DME/TACAN multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_020_DME = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_020_DME, NULL };
+static int hf_020_V1_10_020_OT = -1;
+static const value_string valstr_020_V1_10_020_OT[] = {
+ { 0, "Other Technology Multilateration" },
+ { 1, "No Other Technology Multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_020_OT = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_020_OT, NULL };
+static int hf_020_V1_10_020_RAB = -1;
+static const value_string valstr_020_V1_10_020_RAB[] = {
+ { 0, "Report from target transponder" },
+ { 1, "Report from field monitor (element transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_020_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_020_RAB, NULL };
+static int hf_020_V1_10_020_SPI = -1;
+static const value_string valstr_020_V1_10_020_SPI[] = {
+ { 0, "Absence of SPI" },
+ { 1, "Special Position Identification" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_020_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_020_SPI, NULL };
+static int hf_020_V1_10_020_CHN = -1;
+static const value_string valstr_020_V1_10_020_CHN[] = {
+ { 0, "Chain 1" },
+ { 1, "Chain 2" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_020_CHN = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_020_CHN, NULL };
+static int hf_020_V1_10_020_GBS = -1;
+static const value_string valstr_020_V1_10_020_GBS[] = {
+ { 0, "Transponder Ground bit not set" },
+ { 1, "Transponder Ground bit set" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_020_GBS = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_020_GBS, NULL };
+static int hf_020_V1_10_020_CRT = -1;
+static const value_string valstr_020_V1_10_020_CRT[] = {
+ { 0, "No Corrupted reply in multilateration" },
+ { 1, "Corrupted replies in multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_020_CRT = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_020_CRT, NULL };
+static int hf_020_V1_10_020_SIM = -1;
+static const value_string valstr_020_V1_10_020_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_020_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_020_SIM, NULL };
+static int hf_020_V1_10_020_TST = -1;
+static const value_string valstr_020_V1_10_020_TST[] = {
+ { 0, "Default" },
+ { 1, "Test Target" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_020_TST = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_020_TST, NULL };
+static const FieldPart *I020_V1_10_020_PARTS[] = {
+ &I020_V1_10_020_SSR,
+ &I020_V1_10_020_MS,
+ &I020_V1_10_020_HF,
+ &I020_V1_10_020_VDL4,
+ &I020_V1_10_020_UAT,
+ &I020_V1_10_020_DME,
+ &I020_V1_10_020_OT,
+ &IXXX_FX,
+ &I020_V1_10_020_RAB,
+ &I020_V1_10_020_SPI,
+ &I020_V1_10_020_CHN,
+ &I020_V1_10_020_GBS,
+ &I020_V1_10_020_CRT,
+ &I020_V1_10_020_SIM,
+ &I020_V1_10_020_TST,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I020_V1_10_020 = { FX, 1, 0, 0, &hf_020_V1_10_020, I020_V1_10_020_PARTS, { NULL } };
+static int hf_020_V1_10_030 = -1;
+static int hf_020_V1_10_030_Subitem = -1;
+static const value_string valstr_020_V1_10_030_Subitem[] = {
+ { 0, "Not defined; never used" },
+ { 1, "Multipath Reply (Reflection)" },
+ { 3, "Split plot" },
+ { 10, "Phantom SSR plot" },
+ { 11, "Non-Matching Mode-3/A Code" },
+ { 12, "Mode C code / Mode S altitude code abnormal value compared to the track" },
+ { 15, "Transponder anomaly detected" },
+ { 16, "Duplicated or Illegal Mode S Aircraft Address" },
+ { 17, "Mode S error correction applied" },
+ { 18, "Undecodable Mode C code / Mode S altitude code" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_030_Subitem = { 7, 1.0, FIELD_PART_UINT, &hf_020_V1_10_030_Subitem, NULL };
+static const FieldPart *I020_V1_10_030_PARTS[] = {
+ &I020_V1_10_030_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I020_V1_10_030 = { FX, 1, 0, 0, &hf_020_V1_10_030, I020_V1_10_030_PARTS, { NULL } };
+static int hf_020_V1_10_041 = -1;
+static int hf_020_V1_10_041_LAT = -1;
+static const FieldPart I020_V1_10_041_LAT = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_020_V1_10_041_LAT, NULL };
+static int hf_020_V1_10_041_LON = -1;
+static const FieldPart I020_V1_10_041_LON = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_020_V1_10_041_LON, NULL };
+static const FieldPart *I020_V1_10_041_PARTS[] = {
+ &I020_V1_10_041_LAT,
+ &I020_V1_10_041_LON,
+ NULL
+};
+static const AsterixField I020_V1_10_041 = { FIXED, 8, 0, 0, &hf_020_V1_10_041, I020_V1_10_041_PARTS, { NULL } };
+static int hf_020_V1_10_042 = -1;
+static int hf_020_V1_10_042_X = -1;
+static const FieldPart I020_V1_10_042_X = { 24, 0.5, FIELD_PART_FLOAT, &hf_020_V1_10_042_X, NULL };
+static int hf_020_V1_10_042_Y = -1;
+static const FieldPart I020_V1_10_042_Y = { 24, 0.5, FIELD_PART_FLOAT, &hf_020_V1_10_042_Y, NULL };
+static const FieldPart *I020_V1_10_042_PARTS[] = {
+ &I020_V1_10_042_X,
+ &I020_V1_10_042_Y,
+ NULL
+};
+static const AsterixField I020_V1_10_042 = { FIXED, 6, 0, 0, &hf_020_V1_10_042, I020_V1_10_042_PARTS, { NULL } };
+static int hf_020_V1_10_050 = -1;
+static int hf_020_V1_10_050_V = -1;
+static const value_string valstr_020_V1_10_050_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_050_V = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_050_V, NULL };
+static int hf_020_V1_10_050_G = -1;
+static const value_string valstr_020_V1_10_050_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_050_G = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_050_G, NULL };
+static int hf_020_V1_10_050_L = -1;
+static const value_string valstr_020_V1_10_050_L[] = {
+ { 0, "Mode-2 code derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-2 code as provided by a local tracker n" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_050_L = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_050_L, NULL };
+static int hf_020_V1_10_050_MODE2 = -1;
+static const FieldPart I020_V1_10_050_MODE2 = { 12, 1.0, FIELD_PART_SQUAWK, &hf_020_V1_10_050_MODE2, NULL };
+static const FieldPart *I020_V1_10_050_PARTS[] = {
+ &I020_V1_10_050_V,
+ &I020_V1_10_050_G,
+ &I020_V1_10_050_L,
+ &IXXX_1bit_spare,
+ &I020_V1_10_050_MODE2,
+ NULL
+};
+static const AsterixField I020_V1_10_050 = { FIXED, 2, 0, 0, &hf_020_V1_10_050, I020_V1_10_050_PARTS, { NULL } };
+static int hf_020_V1_10_055 = -1;
+static int hf_020_V1_10_055_V = -1;
+static const value_string valstr_020_V1_10_055_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_055_V = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_055_V, NULL };
+static int hf_020_V1_10_055_G = -1;
+static const value_string valstr_020_V1_10_055_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_055_G = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_055_G, NULL };
+static int hf_020_V1_10_055_L = -1;
+static const value_string valstr_020_V1_10_055_L[] = {
+ { 0, "Mode-1 code derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-1 code as provided by a local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_055_L = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_055_L, NULL };
+static int hf_020_V1_10_055_MODE1 = -1;
+static const FieldPart I020_V1_10_055_MODE1 = { 5, 1.0, FIELD_PART_HEX, &hf_020_V1_10_055_MODE1, NULL };
+static const FieldPart *I020_V1_10_055_PARTS[] = {
+ &I020_V1_10_055_V,
+ &I020_V1_10_055_G,
+ &I020_V1_10_055_L,
+ &I020_V1_10_055_MODE1,
+ NULL
+};
+static const AsterixField I020_V1_10_055 = { FIXED, 1, 0, 0, &hf_020_V1_10_055, I020_V1_10_055_PARTS, { NULL } };
+static int hf_020_V1_10_070 = -1;
+static int hf_020_V1_10_070_V = -1;
+static const value_string valstr_020_V1_10_070_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_070_V = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_070_V, NULL };
+static int hf_020_V1_10_070_G = -1;
+static const value_string valstr_020_V1_10_070_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_070_G = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_070_G, NULL };
+static int hf_020_V1_10_070_L = -1;
+static const value_string valstr_020_V1_10_070_L[] = {
+ { 0, "Mode-3/A code derived from the reply of the transponder" },
+ { 1, "Mode-3/A code not extracted during the last update period" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_070_L = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_070_L, NULL };
+static int hf_020_V1_10_070_MODE3A = -1;
+static const FieldPart I020_V1_10_070_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_020_V1_10_070_MODE3A, NULL };
+static const FieldPart *I020_V1_10_070_PARTS[] = {
+ &I020_V1_10_070_V,
+ &I020_V1_10_070_G,
+ &I020_V1_10_070_L,
+ &IXXX_1bit_spare,
+ &I020_V1_10_070_MODE3A,
+ NULL
+};
+static const AsterixField I020_V1_10_070 = { FIXED, 2, 0, 0, &hf_020_V1_10_070, I020_V1_10_070_PARTS, { NULL } };
+static int hf_020_V1_10_090 = -1;
+static int hf_020_V1_10_090_V = -1;
+static const value_string valstr_020_V1_10_090_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_090_V = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_090_V, NULL };
+static int hf_020_V1_10_090_G = -1;
+static const value_string valstr_020_V1_10_090_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_090_G = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_090_G, NULL };
+static int hf_020_V1_10_090_FL = -1;
+static const FieldPart I020_V1_10_090_FL = { 14, 0.25, FIELD_PART_FLOAT, &hf_020_V1_10_090_FL, NULL };
+static const FieldPart *I020_V1_10_090_PARTS[] = {
+ &I020_V1_10_090_V,
+ &I020_V1_10_090_G,
+ &I020_V1_10_090_FL,
+ NULL
+};
+static const AsterixField I020_V1_10_090 = { FIXED, 2, 0, 0, &hf_020_V1_10_090, I020_V1_10_090_PARTS, { NULL } };
+static int hf_020_V1_10_100 = -1;
+static int hf_020_V1_10_100_V = -1;
+static const value_string valstr_020_V1_10_100_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_100_V = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_100_V, NULL };
+static int hf_020_V1_10_100_G = -1;
+static const value_string valstr_020_V1_10_100_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_100_G = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_100_G, NULL };
+static int hf_020_V1_10_100_MODEC = -1;
+static const FieldPart I020_V1_10_100_MODEC = { 12, 1.0, FIELD_PART_HEX, &hf_020_V1_10_100_MODEC, NULL };
+static int hf_020_V1_10_100_QC1 = -1;
+static const value_string valstr_020_V1_10_100_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_100_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_100_QC1, NULL };
+static int hf_020_V1_10_100_QA1 = -1;
+static const value_string valstr_020_V1_10_100_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_100_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_100_QA1, NULL };
+static int hf_020_V1_10_100_QC2 = -1;
+static const value_string valstr_020_V1_10_100_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_100_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_100_QC2, NULL };
+static int hf_020_V1_10_100_QA2 = -1;
+static const value_string valstr_020_V1_10_100_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_100_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_100_QA2, NULL };
+static int hf_020_V1_10_100_QC4 = -1;
+static const value_string valstr_020_V1_10_100_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_100_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_100_QC4, NULL };
+static int hf_020_V1_10_100_QA4 = -1;
+static const value_string valstr_020_V1_10_100_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_100_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_100_QA4, NULL };
+static int hf_020_V1_10_100_QB1 = -1;
+static const value_string valstr_020_V1_10_100_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_100_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_100_QB1, NULL };
+static int hf_020_V1_10_100_QD1 = -1;
+static const value_string valstr_020_V1_10_100_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_100_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_100_QD1, NULL };
+static int hf_020_V1_10_100_QB2 = -1;
+static const value_string valstr_020_V1_10_100_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_100_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_100_QB2, NULL };
+static int hf_020_V1_10_100_QD2 = -1;
+static const value_string valstr_020_V1_10_100_QD2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_100_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_100_QD2, NULL };
+static int hf_020_V1_10_100_QB4 = -1;
+static const value_string valstr_020_V1_10_100_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_100_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_100_QB4, NULL };
+static int hf_020_V1_10_100_QD4 = -1;
+static const value_string valstr_020_V1_10_100_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_100_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_100_QD4, NULL };
+static const FieldPart *I020_V1_10_100_PARTS[] = {
+ &I020_V1_10_100_V,
+ &I020_V1_10_100_G,
+ &IXXX_2bit_spare,
+ &I020_V1_10_100_MODEC,
+ &IXXX_4bit_spare,
+ &I020_V1_10_100_QC1,
+ &I020_V1_10_100_QA1,
+ &I020_V1_10_100_QC2,
+ &I020_V1_10_100_QA2,
+ &I020_V1_10_100_QC4,
+ &I020_V1_10_100_QA4,
+ &I020_V1_10_100_QB1,
+ &I020_V1_10_100_QD1,
+ &I020_V1_10_100_QB2,
+ &I020_V1_10_100_QD2,
+ &I020_V1_10_100_QB4,
+ &I020_V1_10_100_QD4,
+ NULL
+};
+static const AsterixField I020_V1_10_100 = { FIXED, 4, 0, 0, &hf_020_V1_10_100, I020_V1_10_100_PARTS, { NULL } };
+static int hf_020_V1_10_105 = -1;
+static int hf_020_V1_10_105_VALUE = -1;
+static const FieldPart I020_V1_10_105_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_020_V1_10_105_VALUE, NULL };
+static const FieldPart *I020_V1_10_105_PARTS[] = {
+ &I020_V1_10_105_VALUE,
+ NULL
+};
+static const AsterixField I020_V1_10_105 = { FIXED, 2, 0, 0, &hf_020_V1_10_105, I020_V1_10_105_PARTS, { NULL } };
+static int hf_020_V1_10_110 = -1;
+static int hf_020_V1_10_110_VALUE = -1;
+static const FieldPart I020_V1_10_110_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_020_V1_10_110_VALUE, NULL };
+static const FieldPart *I020_V1_10_110_PARTS[] = {
+ &I020_V1_10_110_VALUE,
+ NULL
+};
+static const AsterixField I020_V1_10_110 = { FIXED, 2, 0, 0, &hf_020_V1_10_110, I020_V1_10_110_PARTS, { NULL } };
+static int hf_020_V1_10_140 = -1;
+static int hf_020_V1_10_140_VALUE = -1;
+static const FieldPart I020_V1_10_140_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_020_V1_10_140_VALUE, NULL };
+static const FieldPart *I020_V1_10_140_PARTS[] = {
+ &I020_V1_10_140_VALUE,
+ NULL
+};
+static const AsterixField I020_V1_10_140 = { FIXED, 3, 0, 0, &hf_020_V1_10_140, I020_V1_10_140_PARTS, { NULL } };
+static int hf_020_V1_10_161 = -1;
+static int hf_020_V1_10_161_TRN = -1;
+static const FieldPart I020_V1_10_161_TRN = { 12, 1.0, FIELD_PART_HEX, &hf_020_V1_10_161_TRN, NULL };
+static const FieldPart *I020_V1_10_161_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I020_V1_10_161_TRN,
+ NULL
+};
+static const AsterixField I020_V1_10_161 = { FIXED, 2, 0, 0, &hf_020_V1_10_161, I020_V1_10_161_PARTS, { NULL } };
+static int hf_020_V1_10_170 = -1;
+static int hf_020_V1_10_170_CNF = -1;
+static const value_string valstr_020_V1_10_170_CNF[] = {
+ { 0, "Confirmed track" },
+ { 1, "Track in initiation phase" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_170_CNF = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_170_CNF, NULL };
+static int hf_020_V1_10_170_TRE = -1;
+static const value_string valstr_020_V1_10_170_TRE[] = {
+ { 0, "Default" },
+ { 1, "Last report for a track" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_170_TRE = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_170_TRE, NULL };
+static int hf_020_V1_10_170_CST = -1;
+static const value_string valstr_020_V1_10_170_CST[] = {
+ { 0, "Not Coasted" },
+ { 1, "Coasted" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_170_CST = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_170_CST, NULL };
+static int hf_020_V1_10_170_CDM = -1;
+static const value_string valstr_020_V1_10_170_CDM[] = {
+ { 0, "Maintaining" },
+ { 1, "Climbing" },
+ { 2, "Descending" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_170_CDM = { 2, 1.0, FIELD_PART_UINT, &hf_020_V1_10_170_CDM, NULL };
+static int hf_020_V1_10_170_MAH = -1;
+static const value_string valstr_020_V1_10_170_MAH[] = {
+ { 0, "Default" },
+ { 1, "Horizontal manoeuvre" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_170_MAH = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_170_MAH, NULL };
+static int hf_020_V1_10_170_STH = -1;
+static const value_string valstr_020_V1_10_170_STH[] = {
+ { 0, "Measured position" },
+ { 1, "Smoothed position" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_170_STH = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_170_STH, NULL };
+static int hf_020_V1_10_170_GHO = -1;
+static const value_string valstr_020_V1_10_170_GHO[] = {
+ { 0, "Default" },
+ { 1, "Ghost track" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_170_GHO = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_170_GHO, NULL };
+static const FieldPart *I020_V1_10_170_PARTS[] = {
+ &I020_V1_10_170_CNF,
+ &I020_V1_10_170_TRE,
+ &I020_V1_10_170_CST,
+ &I020_V1_10_170_CDM,
+ &I020_V1_10_170_MAH,
+ &I020_V1_10_170_STH,
+ &IXXX_FX,
+ &I020_V1_10_170_GHO,
+ &IXXX_6bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I020_V1_10_170 = { FX, 1, 0, 0, &hf_020_V1_10_170, I020_V1_10_170_PARTS, { NULL } };
+static int hf_020_V1_10_202 = -1;
+static int hf_020_V1_10_202_VX = -1;
+static const FieldPart I020_V1_10_202_VX = { 16, 0.25, FIELD_PART_FLOAT, &hf_020_V1_10_202_VX, NULL };
+static int hf_020_V1_10_202_VY = -1;
+static const FieldPart I020_V1_10_202_VY = { 16, 0.25, FIELD_PART_FLOAT, &hf_020_V1_10_202_VY, NULL };
+static const FieldPart *I020_V1_10_202_PARTS[] = {
+ &I020_V1_10_202_VX,
+ &I020_V1_10_202_VY,
+ NULL
+};
+static const AsterixField I020_V1_10_202 = { FIXED, 4, 0, 0, &hf_020_V1_10_202, I020_V1_10_202_PARTS, { NULL } };
+static int hf_020_V1_10_210 = -1;
+static int hf_020_V1_10_210_AX = -1;
+static const FieldPart I020_V1_10_210_AX = { 8, 0.25, FIELD_PART_FLOAT, &hf_020_V1_10_210_AX, NULL };
+static int hf_020_V1_10_210_AY = -1;
+static const FieldPart I020_V1_10_210_AY = { 8, 0.25, FIELD_PART_FLOAT, &hf_020_V1_10_210_AY, NULL };
+static const FieldPart *I020_V1_10_210_PARTS[] = {
+ &I020_V1_10_210_AX,
+ &I020_V1_10_210_AY,
+ NULL
+};
+static const AsterixField I020_V1_10_210 = { FIXED, 2, 0, 0, &hf_020_V1_10_210, I020_V1_10_210_PARTS, { NULL } };
+static int hf_020_V1_10_220 = -1;
+static int hf_020_V1_10_220_VALUE = -1;
+static const FieldPart I020_V1_10_220_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_020_V1_10_220_VALUE, NULL };
+static const FieldPart *I020_V1_10_220_PARTS[] = {
+ &I020_V1_10_220_VALUE,
+ NULL
+};
+static const AsterixField I020_V1_10_220 = { FIXED, 3, 0, 0, &hf_020_V1_10_220, I020_V1_10_220_PARTS, { NULL } };
+static int hf_020_V1_10_230 = -1;
+static int hf_020_V1_10_230_COM = -1;
+static const value_string valstr_020_V1_10_230_COM[] = {
+ { 0, "No communications capability (surveillance only)" },
+ { 1, "Comm. A and Comm. B capability" },
+ { 2, "Comm. A, Comm. B and Uplink ELM" },
+ { 3, "Comm. A, Comm. B, Uplink ELM and Downlink ELM" },
+ { 4, "Level 5 Transponder capability" },
+ { 5, "Not assigned" },
+ { 6, "Not assigned" },
+ { 7, "Not assigned" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_230_COM = { 3, 1.0, FIELD_PART_UINT, &hf_020_V1_10_230_COM, NULL };
+static int hf_020_V1_10_230_STAT = -1;
+static const value_string valstr_020_V1_10_230_STAT[] = {
+ { 0, "No alert, no SPI, aircraft airborne" },
+ { 1, "No alert, no SPI, aircraft on ground" },
+ { 2, "Alert, no SPI, aircraft airborne" },
+ { 3, "Alert, no SPI, aircraft on ground" },
+ { 4, "Alert, SPI, aircraft airborne or on ground" },
+ { 5, "No alert, SPI, aircraft airborne or on ground" },
+ { 6, "Not assigned" },
+ { 7, "Information not yet extracted" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_230_STAT = { 3, 1.0, FIELD_PART_UINT, &hf_020_V1_10_230_STAT, NULL };
+static int hf_020_V1_10_230_MSSC = -1;
+static const value_string valstr_020_V1_10_230_MSSC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_230_MSSC = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_230_MSSC, NULL };
+static int hf_020_V1_10_230_ARC = -1;
+static const value_string valstr_020_V1_10_230_ARC[] = {
+ { 0, "100 ft resolution" },
+ { 1, "25 ft resolution" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_230_ARC = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_230_ARC, NULL };
+static int hf_020_V1_10_230_AIC = -1;
+static const value_string valstr_020_V1_10_230_AIC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_230_AIC = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_230_AIC, NULL };
+static int hf_020_V1_10_230_B1A = -1;
+static const FieldPart I020_V1_10_230_B1A = { 1, 1.0, FIELD_PART_HEX, &hf_020_V1_10_230_B1A, NULL };
+static int hf_020_V1_10_230_B1B = -1;
+static const FieldPart I020_V1_10_230_B1B = { 4, 1.0, FIELD_PART_HEX, &hf_020_V1_10_230_B1B, NULL };
+static const FieldPart *I020_V1_10_230_PARTS[] = {
+ &I020_V1_10_230_COM,
+ &I020_V1_10_230_STAT,
+ &IXXX_2bit_spare,
+ &I020_V1_10_230_MSSC,
+ &I020_V1_10_230_ARC,
+ &I020_V1_10_230_AIC,
+ &I020_V1_10_230_B1A,
+ &I020_V1_10_230_B1B,
+ NULL
+};
+static const AsterixField I020_V1_10_230 = { FIXED, 2, 0, 0, &hf_020_V1_10_230, I020_V1_10_230_PARTS, { NULL } };
+static int hf_020_V1_10_245 = -1;
+static int hf_020_V1_10_245_STI = -1;
+static const value_string valstr_020_V1_10_245_STI[] = {
+ { 0, "Callsign or registration not downlinked from transponder" },
+ { 1, "Registration downlinked from transponder" },
+ { 2, "Callsign downlinked from transponder" },
+ { 3, "Not defined" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_245_STI = { 2, 1.0, FIELD_PART_UINT, &hf_020_V1_10_245_STI, NULL };
+static int hf_020_V1_10_245_CHR = -1;
+static const FieldPart I020_V1_10_245_CHR = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_020_V1_10_245_CHR, NULL };
+static const FieldPart *I020_V1_10_245_PARTS[] = {
+ &I020_V1_10_245_STI,
+ &IXXX_6bit_spare,
+ &I020_V1_10_245_CHR,
+ NULL
+};
+static const AsterixField I020_V1_10_245 = { FIXED, 7, 0, 0, &hf_020_V1_10_245, I020_V1_10_245_PARTS, { NULL } };
+static int hf_020_V1_10_250 = -1;
+static int hf_020_V1_10_250_MBDATA = -1;
+static const FieldPart I020_V1_10_250_MBDATA = { 56, 1.0, FIELD_PART_HEX, &hf_020_V1_10_250_MBDATA, NULL };
+static int hf_020_V1_10_250_BDS1 = -1;
+static const FieldPart I020_V1_10_250_BDS1 = { 4, 1.0, FIELD_PART_HEX, &hf_020_V1_10_250_BDS1, NULL };
+static int hf_020_V1_10_250_BDS2 = -1;
+static const FieldPart I020_V1_10_250_BDS2 = { 4, 1.0, FIELD_PART_HEX, &hf_020_V1_10_250_BDS2, NULL };
+static const FieldPart *I020_V1_10_250_PARTS[] = {
+ &I020_V1_10_250_MBDATA,
+ &I020_V1_10_250_BDS1,
+ &I020_V1_10_250_BDS2,
+ NULL
+};
+static const AsterixField I020_V1_10_250 = { REPETITIVE, 8, 1, 0, &hf_020_V1_10_250, I020_V1_10_250_PARTS, { NULL } };
+static int hf_020_V1_10_260 = -1;
+static int hf_020_V1_10_260_VALUE = -1;
+static const FieldPart I020_V1_10_260_VALUE = { 56, 1.0, FIELD_PART_HEX, &hf_020_V1_10_260_VALUE, NULL };
+static const FieldPart *I020_V1_10_260_PARTS[] = {
+ &I020_V1_10_260_VALUE,
+ NULL
+};
+static const AsterixField I020_V1_10_260 = { FIXED, 7, 0, 0, &hf_020_V1_10_260, I020_V1_10_260_PARTS, { NULL } };
+static int hf_020_V1_10_300 = -1;
+static int hf_020_V1_10_300_VALUE = -1;
+static const value_string valstr_020_V1_10_300_VALUE[] = {
+ { 0, "Unknown" },
+ { 1, "ATC equipment maintenance" },
+ { 2, "Airport maintenance" },
+ { 3, "Fire" },
+ { 4, "Bird scarer" },
+ { 5, "Snow plough" },
+ { 6, "Runway sweeper" },
+ { 7, "Emergency" },
+ { 8, "Police" },
+ { 9, "Bus" },
+ { 10, "Tug (push/tow)" },
+ { 11, "Grass cutter" },
+ { 12, "Fuel" },
+ { 13, "Baggage" },
+ { 14, "Catering" },
+ { 15, "Aircraft maintenance" },
+ { 16, "Flyco (follow me)" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_300_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_020_V1_10_300_VALUE, NULL };
+static const FieldPart *I020_V1_10_300_PARTS[] = {
+ &I020_V1_10_300_VALUE,
+ NULL
+};
+static const AsterixField I020_V1_10_300 = { FIXED, 1, 0, 0, &hf_020_V1_10_300, I020_V1_10_300_PARTS, { NULL } };
+static int hf_020_V1_10_310 = -1;
+static int hf_020_V1_10_310_TRB = -1;
+static const value_string valstr_020_V1_10_310_TRB[] = {
+ { 0, "Default" },
+ { 1, "In Trouble" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_310_TRB = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_310_TRB, NULL };
+static int hf_020_V1_10_310_MSG = -1;
+static const value_string valstr_020_V1_10_310_MSG[] = {
+ { 1, "Towing aircraft" },
+ { 2, "FOLLOW-ME operation" },
+ { 3, "Runway check" },
+ { 4, "Emergency operation (fire, medical...)" },
+ { 5, "Work in progress (maintenance, birds scarer, sweepers...)" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_310_MSG = { 7, 1.0, FIELD_PART_UINT, &hf_020_V1_10_310_MSG, NULL };
+static const FieldPart *I020_V1_10_310_PARTS[] = {
+ &I020_V1_10_310_TRB,
+ &I020_V1_10_310_MSG,
+ NULL
+};
+static const AsterixField I020_V1_10_310 = { FIXED, 1, 0, 0, &hf_020_V1_10_310, I020_V1_10_310_PARTS, { NULL } };
+static int hf_020_V1_10_400 = -1;
+static int hf_020_V1_10_400_BIT1 = -1;
+static const value_string valstr_020_V1_10_400_BIT1[] = {
+ { 0, "TU1/RU1 has NOT contributed to the target detection" },
+ { 1, "TU1/RU1 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_400_BIT1 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_400_BIT1, NULL };
+static int hf_020_V1_10_400_BIT2 = -1;
+static const value_string valstr_020_V1_10_400_BIT2[] = {
+ { 0, "TU2/RU2 has NOT contributed to the target detection" },
+ { 1, "TU2/RU2 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_400_BIT2 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_400_BIT2, NULL };
+static int hf_020_V1_10_400_BIT3 = -1;
+static const value_string valstr_020_V1_10_400_BIT3[] = {
+ { 0, "TU3/RU3 has NOT contributed to the target detection" },
+ { 1, "TU3/RU3 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_400_BIT3 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_400_BIT3, NULL };
+static int hf_020_V1_10_400_BIT4 = -1;
+static const value_string valstr_020_V1_10_400_BIT4[] = {
+ { 0, "TU4/RU4 has NOT contributed to the target detection" },
+ { 1, "TU4/RU4 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_400_BIT4 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_400_BIT4, NULL };
+static int hf_020_V1_10_400_BIT5 = -1;
+static const value_string valstr_020_V1_10_400_BIT5[] = {
+ { 0, "TU5/RU5 has NOT contributed to the target detection" },
+ { 1, "TU5/RU5 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_400_BIT5 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_400_BIT5, NULL };
+static int hf_020_V1_10_400_BIT6 = -1;
+static const value_string valstr_020_V1_10_400_BIT6[] = {
+ { 0, "TU6/RU6 has NOT contributed to the target detection" },
+ { 1, "TU6/RU6 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_400_BIT6 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_400_BIT6, NULL };
+static int hf_020_V1_10_400_BIT7 = -1;
+static const value_string valstr_020_V1_10_400_BIT7[] = {
+ { 0, "TU7/RU7 has NOT contributed to the target detection" },
+ { 1, "TU7/RU7 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_400_BIT7 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_400_BIT7, NULL };
+static int hf_020_V1_10_400_BIT8 = -1;
+static const value_string valstr_020_V1_10_400_BIT8[] = {
+ { 0, "TU8/RU8 has NOT contributed to the target detection" },
+ { 1, "TU8/RU8 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_V1_10_400_BIT8 = { 1, 1.0, FIELD_PART_UINT, &hf_020_V1_10_400_BIT8, NULL };
+static const FieldPart *I020_V1_10_400_PARTS[] = {
+ &I020_V1_10_400_BIT1,
+ &I020_V1_10_400_BIT2,
+ &I020_V1_10_400_BIT3,
+ &I020_V1_10_400_BIT4,
+ &I020_V1_10_400_BIT5,
+ &I020_V1_10_400_BIT6,
+ &I020_V1_10_400_BIT7,
+ &I020_V1_10_400_BIT8,
+ NULL
+};
+static const AsterixField I020_V1_10_400 = { REPETITIVE, 1, 1, 0, &hf_020_V1_10_400, I020_V1_10_400_PARTS, { NULL } };
+static int hf_020_V1_10_500 = -1;
+static int hf_020_V1_10_500_DOP = -1;
+static int hf_020_V1_10_500_DOP_X = -1;
+static const FieldPart I020_V1_10_500_DOP_X = { 16, 0.25, FIELD_PART_UFLOAT, &hf_020_V1_10_500_DOP_X, NULL };
+static int hf_020_V1_10_500_DOP_Y = -1;
+static const FieldPart I020_V1_10_500_DOP_Y = { 16, 0.25, FIELD_PART_UFLOAT, &hf_020_V1_10_500_DOP_Y, NULL };
+static int hf_020_V1_10_500_DOP_XY = -1;
+static const FieldPart I020_V1_10_500_DOP_XY = { 16, 0.25, FIELD_PART_UFLOAT, &hf_020_V1_10_500_DOP_XY, NULL };
+static const FieldPart *I020_V1_10_500_DOP_PARTS[] = {
+ &I020_V1_10_500_DOP_X,
+ &I020_V1_10_500_DOP_Y,
+ &I020_V1_10_500_DOP_XY,
+ NULL
+};
+static const AsterixField I020_V1_10_500_DOP = { FIXED, 6, 0, 0, &hf_020_V1_10_500_DOP, I020_V1_10_500_DOP_PARTS, { NULL } };
+static int hf_020_V1_10_500_SDP = -1;
+static int hf_020_V1_10_500_SDP_X = -1;
+static const FieldPart I020_V1_10_500_SDP_X = { 16, 0.25, FIELD_PART_UFLOAT, &hf_020_V1_10_500_SDP_X, NULL };
+static int hf_020_V1_10_500_SDP_Y = -1;
+static const FieldPart I020_V1_10_500_SDP_Y = { 16, 0.25, FIELD_PART_UFLOAT, &hf_020_V1_10_500_SDP_Y, NULL };
+static int hf_020_V1_10_500_SDP_XY = -1;
+static const FieldPart I020_V1_10_500_SDP_XY = { 16, 0.25, FIELD_PART_UFLOAT, &hf_020_V1_10_500_SDP_XY, NULL };
+static const FieldPart *I020_V1_10_500_SDP_PARTS[] = {
+ &I020_V1_10_500_SDP_X,
+ &I020_V1_10_500_SDP_Y,
+ &I020_V1_10_500_SDP_XY,
+ NULL
+};
+static const AsterixField I020_V1_10_500_SDP = { FIXED, 6, 0, 0, &hf_020_V1_10_500_SDP, I020_V1_10_500_SDP_PARTS, { NULL } };
+static int hf_020_V1_10_500_SDH = -1;
+static int hf_020_V1_10_500_SDH_VALUE = -1;
+static const FieldPart I020_V1_10_500_SDH_VALUE = { 16, 0.5, FIELD_PART_UFLOAT, &hf_020_V1_10_500_SDH_VALUE, NULL };
+static const FieldPart *I020_V1_10_500_SDH_PARTS[] = {
+ &I020_V1_10_500_SDH_VALUE,
+ NULL
+};
+static const AsterixField I020_V1_10_500_SDH = { FIXED, 2, 0, 0, &hf_020_V1_10_500_SDH, I020_V1_10_500_SDH_PARTS, { NULL } };
+static const AsterixField I020_V1_10_500 = { COMPOUND, 0, 0, 0, &hf_020_V1_10_500, NULL, { &I020_V1_10_500_DOP, &I020_V1_10_500_SDP, &I020_V1_10_500_SDH, NULL } };
+static int hf_020_V1_10_RE = -1;
+static const AsterixField I020_V1_10_RE = { EXP, 0, 0, 1, &hf_020_V1_10_RE, NULL, { NULL } };
+static int hf_020_V1_10_SP = -1;
+static const AsterixField I020_V1_10_SP = { EXP, 0, 0, 1, &hf_020_V1_10_SP, NULL, { NULL } };
+
+/* Category 020, edition 1.10 (latest) */
+static int hf_020_010 = -1;
+static int hf_020_010_SAC = -1;
+static const FieldPart I020_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_020_010_SAC, NULL };
+static int hf_020_010_SIC = -1;
+static const FieldPart I020_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_020_010_SIC, NULL };
+static const FieldPart *I020_010_PARTS[] = {
+ &I020_010_SAC,
+ &I020_010_SIC,
+ NULL
+};
+static const AsterixField I020_010 = { FIXED, 2, 0, 0, &hf_020_010, I020_010_PARTS, { NULL } };
+static int hf_020_020 = -1;
+static int hf_020_020_SSR = -1;
+static const value_string valstr_020_020_SSR[] = {
+ { 0, "Non-Mode S 1090MHz multilateration" },
+ { 1, "No Non-Mode S 1090MHz multilat" },
+ { 0, NULL }
+};
+static const FieldPart I020_020_SSR = { 1, 1.0, FIELD_PART_UINT, &hf_020_020_SSR, NULL };
+static int hf_020_020_MS = -1;
+static const value_string valstr_020_020_MS[] = {
+ { 0, "Mode-S 1090 MHz multilateration" },
+ { 1, "No Mode-S 1090 MHz multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I020_020_MS = { 1, 1.0, FIELD_PART_UINT, &hf_020_020_MS, NULL };
+static int hf_020_020_HF = -1;
+static const value_string valstr_020_020_HF[] = {
+ { 0, "HF multilateration" },
+ { 1, "No HF multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I020_020_HF = { 1, 1.0, FIELD_PART_UINT, &hf_020_020_HF, NULL };
+static int hf_020_020_VDL4 = -1;
+static const value_string valstr_020_020_VDL4[] = {
+ { 0, "VDL Mode 4 multilateration" },
+ { 1, "No VDL Mode 4 multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I020_020_VDL4 = { 1, 1.0, FIELD_PART_UINT, &hf_020_020_VDL4, NULL };
+static int hf_020_020_UAT = -1;
+static const value_string valstr_020_020_UAT[] = {
+ { 0, "UAT multilateration" },
+ { 1, "No UAT multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I020_020_UAT = { 1, 1.0, FIELD_PART_UINT, &hf_020_020_UAT, NULL };
+static int hf_020_020_DME = -1;
+static const value_string valstr_020_020_DME[] = {
+ { 0, "DME/TACAN multilateration" },
+ { 1, "No DME/TACAN multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I020_020_DME = { 1, 1.0, FIELD_PART_UINT, &hf_020_020_DME, NULL };
+static int hf_020_020_OT = -1;
+static const value_string valstr_020_020_OT[] = {
+ { 0, "Other Technology Multilateration" },
+ { 1, "No Other Technology Multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I020_020_OT = { 1, 1.0, FIELD_PART_UINT, &hf_020_020_OT, NULL };
+static int hf_020_020_RAB = -1;
+static const value_string valstr_020_020_RAB[] = {
+ { 0, "Report from target transponder" },
+ { 1, "Report from field monitor (element transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I020_020_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_020_020_RAB, NULL };
+static int hf_020_020_SPI = -1;
+static const value_string valstr_020_020_SPI[] = {
+ { 0, "Absence of SPI" },
+ { 1, "Special Position Identification" },
+ { 0, NULL }
+};
+static const FieldPart I020_020_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_020_020_SPI, NULL };
+static int hf_020_020_CHN = -1;
+static const value_string valstr_020_020_CHN[] = {
+ { 0, "Chain 1" },
+ { 1, "Chain 2" },
+ { 0, NULL }
+};
+static const FieldPart I020_020_CHN = { 1, 1.0, FIELD_PART_UINT, &hf_020_020_CHN, NULL };
+static int hf_020_020_GBS = -1;
+static const value_string valstr_020_020_GBS[] = {
+ { 0, "Transponder Ground bit not set" },
+ { 1, "Transponder Ground bit set" },
+ { 0, NULL }
+};
+static const FieldPart I020_020_GBS = { 1, 1.0, FIELD_PART_UINT, &hf_020_020_GBS, NULL };
+static int hf_020_020_CRT = -1;
+static const value_string valstr_020_020_CRT[] = {
+ { 0, "No Corrupted reply in multilateration" },
+ { 1, "Corrupted replies in multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I020_020_CRT = { 1, 1.0, FIELD_PART_UINT, &hf_020_020_CRT, NULL };
+static int hf_020_020_SIM = -1;
+static const value_string valstr_020_020_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I020_020_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_020_020_SIM, NULL };
+static int hf_020_020_TST = -1;
+static const value_string valstr_020_020_TST[] = {
+ { 0, "Default" },
+ { 1, "Test Target" },
+ { 0, NULL }
+};
+static const FieldPart I020_020_TST = { 1, 1.0, FIELD_PART_UINT, &hf_020_020_TST, NULL };
+static const FieldPart *I020_020_PARTS[] = {
+ &I020_020_SSR,
+ &I020_020_MS,
+ &I020_020_HF,
+ &I020_020_VDL4,
+ &I020_020_UAT,
+ &I020_020_DME,
+ &I020_020_OT,
+ &IXXX_FX,
+ &I020_020_RAB,
+ &I020_020_SPI,
+ &I020_020_CHN,
+ &I020_020_GBS,
+ &I020_020_CRT,
+ &I020_020_SIM,
+ &I020_020_TST,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I020_020 = { FX, 1, 0, 0, &hf_020_020, I020_020_PARTS, { NULL } };
+static int hf_020_030 = -1;
+static int hf_020_030_Subitem = -1;
+static const value_string valstr_020_030_Subitem[] = {
+ { 0, "Not defined; never used" },
+ { 1, "Multipath Reply (Reflection)" },
+ { 3, "Split plot" },
+ { 10, "Phantom SSR plot" },
+ { 11, "Non-Matching Mode-3/A Code" },
+ { 12, "Mode C code / Mode S altitude code abnormal value compared to the track" },
+ { 15, "Transponder anomaly detected" },
+ { 16, "Duplicated or Illegal Mode S Aircraft Address" },
+ { 17, "Mode S error correction applied" },
+ { 18, "Undecodable Mode C code / Mode S altitude code" },
+ { 0, NULL }
+};
+static const FieldPart I020_030_Subitem = { 7, 1.0, FIELD_PART_UINT, &hf_020_030_Subitem, NULL };
+static const FieldPart *I020_030_PARTS[] = {
+ &I020_030_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I020_030 = { FX, 1, 0, 0, &hf_020_030, I020_030_PARTS, { NULL } };
+static int hf_020_041 = -1;
+static int hf_020_041_LAT = -1;
+static const FieldPart I020_041_LAT = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_020_041_LAT, NULL };
+static int hf_020_041_LON = -1;
+static const FieldPart I020_041_LON = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_020_041_LON, NULL };
+static const FieldPart *I020_041_PARTS[] = {
+ &I020_041_LAT,
+ &I020_041_LON,
+ NULL
+};
+static const AsterixField I020_041 = { FIXED, 8, 0, 0, &hf_020_041, I020_041_PARTS, { NULL } };
+static int hf_020_042 = -1;
+static int hf_020_042_X = -1;
+static const FieldPart I020_042_X = { 24, 0.5, FIELD_PART_FLOAT, &hf_020_042_X, NULL };
+static int hf_020_042_Y = -1;
+static const FieldPart I020_042_Y = { 24, 0.5, FIELD_PART_FLOAT, &hf_020_042_Y, NULL };
+static const FieldPart *I020_042_PARTS[] = {
+ &I020_042_X,
+ &I020_042_Y,
+ NULL
+};
+static const AsterixField I020_042 = { FIXED, 6, 0, 0, &hf_020_042, I020_042_PARTS, { NULL } };
+static int hf_020_050 = -1;
+static int hf_020_050_V = -1;
+static const value_string valstr_020_050_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I020_050_V = { 1, 1.0, FIELD_PART_UINT, &hf_020_050_V, NULL };
+static int hf_020_050_G = -1;
+static const value_string valstr_020_050_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I020_050_G = { 1, 1.0, FIELD_PART_UINT, &hf_020_050_G, NULL };
+static int hf_020_050_L = -1;
+static const value_string valstr_020_050_L[] = {
+ { 0, "Mode-2 code derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-2 code as provided by a local tracker n" },
+ { 0, NULL }
+};
+static const FieldPart I020_050_L = { 1, 1.0, FIELD_PART_UINT, &hf_020_050_L, NULL };
+static int hf_020_050_MODE2 = -1;
+static const FieldPart I020_050_MODE2 = { 12, 1.0, FIELD_PART_SQUAWK, &hf_020_050_MODE2, NULL };
+static const FieldPart *I020_050_PARTS[] = {
+ &I020_050_V,
+ &I020_050_G,
+ &I020_050_L,
+ &IXXX_1bit_spare,
+ &I020_050_MODE2,
+ NULL
+};
+static const AsterixField I020_050 = { FIXED, 2, 0, 0, &hf_020_050, I020_050_PARTS, { NULL } };
+static int hf_020_055 = -1;
+static int hf_020_055_V = -1;
+static const value_string valstr_020_055_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I020_055_V = { 1, 1.0, FIELD_PART_UINT, &hf_020_055_V, NULL };
+static int hf_020_055_G = -1;
+static const value_string valstr_020_055_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I020_055_G = { 1, 1.0, FIELD_PART_UINT, &hf_020_055_G, NULL };
+static int hf_020_055_L = -1;
+static const value_string valstr_020_055_L[] = {
+ { 0, "Mode-1 code derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-1 code as provided by a local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I020_055_L = { 1, 1.0, FIELD_PART_UINT, &hf_020_055_L, NULL };
+static int hf_020_055_MODE1 = -1;
+static const FieldPart I020_055_MODE1 = { 5, 1.0, FIELD_PART_HEX, &hf_020_055_MODE1, NULL };
+static const FieldPart *I020_055_PARTS[] = {
+ &I020_055_V,
+ &I020_055_G,
+ &I020_055_L,
+ &I020_055_MODE1,
+ NULL
+};
+static const AsterixField I020_055 = { FIXED, 1, 0, 0, &hf_020_055, I020_055_PARTS, { NULL } };
+static int hf_020_070 = -1;
+static int hf_020_070_V = -1;
+static const value_string valstr_020_070_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I020_070_V = { 1, 1.0, FIELD_PART_UINT, &hf_020_070_V, NULL };
+static int hf_020_070_G = -1;
+static const value_string valstr_020_070_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I020_070_G = { 1, 1.0, FIELD_PART_UINT, &hf_020_070_G, NULL };
+static int hf_020_070_L = -1;
+static const value_string valstr_020_070_L[] = {
+ { 0, "Mode-3/A code derived from the reply of the transponder" },
+ { 1, "Mode-3/A code not extracted during the last update period" },
+ { 0, NULL }
+};
+static const FieldPart I020_070_L = { 1, 1.0, FIELD_PART_UINT, &hf_020_070_L, NULL };
+static int hf_020_070_MODE3A = -1;
+static const FieldPart I020_070_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_020_070_MODE3A, NULL };
+static const FieldPart *I020_070_PARTS[] = {
+ &I020_070_V,
+ &I020_070_G,
+ &I020_070_L,
+ &IXXX_1bit_spare,
+ &I020_070_MODE3A,
+ NULL
+};
+static const AsterixField I020_070 = { FIXED, 2, 0, 0, &hf_020_070, I020_070_PARTS, { NULL } };
+static int hf_020_090 = -1;
+static int hf_020_090_V = -1;
+static const value_string valstr_020_090_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I020_090_V = { 1, 1.0, FIELD_PART_UINT, &hf_020_090_V, NULL };
+static int hf_020_090_G = -1;
+static const value_string valstr_020_090_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I020_090_G = { 1, 1.0, FIELD_PART_UINT, &hf_020_090_G, NULL };
+static int hf_020_090_FL = -1;
+static const FieldPart I020_090_FL = { 14, 0.25, FIELD_PART_FLOAT, &hf_020_090_FL, NULL };
+static const FieldPart *I020_090_PARTS[] = {
+ &I020_090_V,
+ &I020_090_G,
+ &I020_090_FL,
+ NULL
+};
+static const AsterixField I020_090 = { FIXED, 2, 0, 0, &hf_020_090, I020_090_PARTS, { NULL } };
+static int hf_020_100 = -1;
+static int hf_020_100_V = -1;
+static const value_string valstr_020_100_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I020_100_V = { 1, 1.0, FIELD_PART_UINT, &hf_020_100_V, NULL };
+static int hf_020_100_G = -1;
+static const value_string valstr_020_100_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I020_100_G = { 1, 1.0, FIELD_PART_UINT, &hf_020_100_G, NULL };
+static int hf_020_100_MODEC = -1;
+static const FieldPart I020_100_MODEC = { 12, 1.0, FIELD_PART_HEX, &hf_020_100_MODEC, NULL };
+static int hf_020_100_QC1 = -1;
+static const value_string valstr_020_100_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I020_100_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_020_100_QC1, NULL };
+static int hf_020_100_QA1 = -1;
+static const value_string valstr_020_100_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I020_100_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_020_100_QA1, NULL };
+static int hf_020_100_QC2 = -1;
+static const value_string valstr_020_100_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I020_100_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_020_100_QC2, NULL };
+static int hf_020_100_QA2 = -1;
+static const value_string valstr_020_100_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I020_100_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_020_100_QA2, NULL };
+static int hf_020_100_QC4 = -1;
+static const value_string valstr_020_100_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I020_100_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_020_100_QC4, NULL };
+static int hf_020_100_QA4 = -1;
+static const value_string valstr_020_100_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I020_100_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_020_100_QA4, NULL };
+static int hf_020_100_QB1 = -1;
+static const value_string valstr_020_100_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I020_100_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_020_100_QB1, NULL };
+static int hf_020_100_QD1 = -1;
+static const value_string valstr_020_100_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I020_100_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_020_100_QD1, NULL };
+static int hf_020_100_QB2 = -1;
+static const value_string valstr_020_100_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I020_100_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_020_100_QB2, NULL };
+static int hf_020_100_QD2 = -1;
+static const value_string valstr_020_100_QD2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I020_100_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_020_100_QD2, NULL };
+static int hf_020_100_QB4 = -1;
+static const value_string valstr_020_100_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I020_100_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_020_100_QB4, NULL };
+static int hf_020_100_QD4 = -1;
+static const value_string valstr_020_100_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I020_100_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_020_100_QD4, NULL };
+static const FieldPart *I020_100_PARTS[] = {
+ &I020_100_V,
+ &I020_100_G,
+ &IXXX_2bit_spare,
+ &I020_100_MODEC,
+ &IXXX_4bit_spare,
+ &I020_100_QC1,
+ &I020_100_QA1,
+ &I020_100_QC2,
+ &I020_100_QA2,
+ &I020_100_QC4,
+ &I020_100_QA4,
+ &I020_100_QB1,
+ &I020_100_QD1,
+ &I020_100_QB2,
+ &I020_100_QD2,
+ &I020_100_QB4,
+ &I020_100_QD4,
+ NULL
+};
+static const AsterixField I020_100 = { FIXED, 4, 0, 0, &hf_020_100, I020_100_PARTS, { NULL } };
+static int hf_020_105 = -1;
+static int hf_020_105_VALUE = -1;
+static const FieldPart I020_105_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_020_105_VALUE, NULL };
+static const FieldPart *I020_105_PARTS[] = {
+ &I020_105_VALUE,
+ NULL
+};
+static const AsterixField I020_105 = { FIXED, 2, 0, 0, &hf_020_105, I020_105_PARTS, { NULL } };
+static int hf_020_110 = -1;
+static int hf_020_110_VALUE = -1;
+static const FieldPart I020_110_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_020_110_VALUE, NULL };
+static const FieldPart *I020_110_PARTS[] = {
+ &I020_110_VALUE,
+ NULL
+};
+static const AsterixField I020_110 = { FIXED, 2, 0, 0, &hf_020_110, I020_110_PARTS, { NULL } };
+static int hf_020_140 = -1;
+static int hf_020_140_VALUE = -1;
+static const FieldPart I020_140_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_020_140_VALUE, NULL };
+static const FieldPart *I020_140_PARTS[] = {
+ &I020_140_VALUE,
+ NULL
+};
+static const AsterixField I020_140 = { FIXED, 3, 0, 0, &hf_020_140, I020_140_PARTS, { NULL } };
+static int hf_020_161 = -1;
+static int hf_020_161_TRN = -1;
+static const FieldPart I020_161_TRN = { 12, 1.0, FIELD_PART_HEX, &hf_020_161_TRN, NULL };
+static const FieldPart *I020_161_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I020_161_TRN,
+ NULL
+};
+static const AsterixField I020_161 = { FIXED, 2, 0, 0, &hf_020_161, I020_161_PARTS, { NULL } };
+static int hf_020_170 = -1;
+static int hf_020_170_CNF = -1;
+static const value_string valstr_020_170_CNF[] = {
+ { 0, "Confirmed track" },
+ { 1, "Track in initiation phase" },
+ { 0, NULL }
+};
+static const FieldPart I020_170_CNF = { 1, 1.0, FIELD_PART_UINT, &hf_020_170_CNF, NULL };
+static int hf_020_170_TRE = -1;
+static const value_string valstr_020_170_TRE[] = {
+ { 0, "Default" },
+ { 1, "Last report for a track" },
+ { 0, NULL }
+};
+static const FieldPart I020_170_TRE = { 1, 1.0, FIELD_PART_UINT, &hf_020_170_TRE, NULL };
+static int hf_020_170_CST = -1;
+static const value_string valstr_020_170_CST[] = {
+ { 0, "Not Coasted" },
+ { 1, "Coasted" },
+ { 0, NULL }
+};
+static const FieldPart I020_170_CST = { 1, 1.0, FIELD_PART_UINT, &hf_020_170_CST, NULL };
+static int hf_020_170_CDM = -1;
+static const value_string valstr_020_170_CDM[] = {
+ { 0, "Maintaining" },
+ { 1, "Climbing" },
+ { 2, "Descending" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I020_170_CDM = { 2, 1.0, FIELD_PART_UINT, &hf_020_170_CDM, NULL };
+static int hf_020_170_MAH = -1;
+static const value_string valstr_020_170_MAH[] = {
+ { 0, "Default" },
+ { 1, "Horizontal manoeuvre" },
+ { 0, NULL }
+};
+static const FieldPart I020_170_MAH = { 1, 1.0, FIELD_PART_UINT, &hf_020_170_MAH, NULL };
+static int hf_020_170_STH = -1;
+static const value_string valstr_020_170_STH[] = {
+ { 0, "Measured position" },
+ { 1, "Smoothed position" },
+ { 0, NULL }
+};
+static const FieldPart I020_170_STH = { 1, 1.0, FIELD_PART_UINT, &hf_020_170_STH, NULL };
+static int hf_020_170_GHO = -1;
+static const value_string valstr_020_170_GHO[] = {
+ { 0, "Default" },
+ { 1, "Ghost track" },
+ { 0, NULL }
+};
+static const FieldPart I020_170_GHO = { 1, 1.0, FIELD_PART_UINT, &hf_020_170_GHO, NULL };
+static const FieldPart *I020_170_PARTS[] = {
+ &I020_170_CNF,
+ &I020_170_TRE,
+ &I020_170_CST,
+ &I020_170_CDM,
+ &I020_170_MAH,
+ &I020_170_STH,
+ &IXXX_FX,
+ &I020_170_GHO,
+ &IXXX_6bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I020_170 = { FX, 1, 0, 0, &hf_020_170, I020_170_PARTS, { NULL } };
+static int hf_020_202 = -1;
+static int hf_020_202_VX = -1;
+static const FieldPart I020_202_VX = { 16, 0.25, FIELD_PART_FLOAT, &hf_020_202_VX, NULL };
+static int hf_020_202_VY = -1;
+static const FieldPart I020_202_VY = { 16, 0.25, FIELD_PART_FLOAT, &hf_020_202_VY, NULL };
+static const FieldPart *I020_202_PARTS[] = {
+ &I020_202_VX,
+ &I020_202_VY,
+ NULL
+};
+static const AsterixField I020_202 = { FIXED, 4, 0, 0, &hf_020_202, I020_202_PARTS, { NULL } };
+static int hf_020_210 = -1;
+static int hf_020_210_AX = -1;
+static const FieldPart I020_210_AX = { 8, 0.25, FIELD_PART_FLOAT, &hf_020_210_AX, NULL };
+static int hf_020_210_AY = -1;
+static const FieldPart I020_210_AY = { 8, 0.25, FIELD_PART_FLOAT, &hf_020_210_AY, NULL };
+static const FieldPart *I020_210_PARTS[] = {
+ &I020_210_AX,
+ &I020_210_AY,
+ NULL
+};
+static const AsterixField I020_210 = { FIXED, 2, 0, 0, &hf_020_210, I020_210_PARTS, { NULL } };
+static int hf_020_220 = -1;
+static int hf_020_220_VALUE = -1;
+static const FieldPart I020_220_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_020_220_VALUE, NULL };
+static const FieldPart *I020_220_PARTS[] = {
+ &I020_220_VALUE,
+ NULL
+};
+static const AsterixField I020_220 = { FIXED, 3, 0, 0, &hf_020_220, I020_220_PARTS, { NULL } };
+static int hf_020_230 = -1;
+static int hf_020_230_COM = -1;
+static const value_string valstr_020_230_COM[] = {
+ { 0, "No communications capability (surveillance only)" },
+ { 1, "Comm. A and Comm. B capability" },
+ { 2, "Comm. A, Comm. B and Uplink ELM" },
+ { 3, "Comm. A, Comm. B, Uplink ELM and Downlink ELM" },
+ { 4, "Level 5 Transponder capability" },
+ { 5, "Not assigned" },
+ { 6, "Not assigned" },
+ { 7, "Not assigned" },
+ { 0, NULL }
+};
+static const FieldPart I020_230_COM = { 3, 1.0, FIELD_PART_UINT, &hf_020_230_COM, NULL };
+static int hf_020_230_STAT = -1;
+static const value_string valstr_020_230_STAT[] = {
+ { 0, "No alert, no SPI, aircraft airborne" },
+ { 1, "No alert, no SPI, aircraft on ground" },
+ { 2, "Alert, no SPI, aircraft airborne" },
+ { 3, "Alert, no SPI, aircraft on ground" },
+ { 4, "Alert, SPI, aircraft airborne or on ground" },
+ { 5, "No alert, SPI, aircraft airborne or on ground" },
+ { 6, "Not assigned" },
+ { 7, "Information not yet extracted" },
+ { 0, NULL }
+};
+static const FieldPart I020_230_STAT = { 3, 1.0, FIELD_PART_UINT, &hf_020_230_STAT, NULL };
+static int hf_020_230_MSSC = -1;
+static const value_string valstr_020_230_MSSC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I020_230_MSSC = { 1, 1.0, FIELD_PART_UINT, &hf_020_230_MSSC, NULL };
+static int hf_020_230_ARC = -1;
+static const value_string valstr_020_230_ARC[] = {
+ { 0, "100 ft resolution" },
+ { 1, "25 ft resolution" },
+ { 0, NULL }
+};
+static const FieldPart I020_230_ARC = { 1, 1.0, FIELD_PART_UINT, &hf_020_230_ARC, NULL };
+static int hf_020_230_AIC = -1;
+static const value_string valstr_020_230_AIC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I020_230_AIC = { 1, 1.0, FIELD_PART_UINT, &hf_020_230_AIC, NULL };
+static int hf_020_230_B1A = -1;
+static const FieldPart I020_230_B1A = { 1, 1.0, FIELD_PART_HEX, &hf_020_230_B1A, NULL };
+static int hf_020_230_B1B = -1;
+static const FieldPart I020_230_B1B = { 4, 1.0, FIELD_PART_HEX, &hf_020_230_B1B, NULL };
+static const FieldPart *I020_230_PARTS[] = {
+ &I020_230_COM,
+ &I020_230_STAT,
+ &IXXX_2bit_spare,
+ &I020_230_MSSC,
+ &I020_230_ARC,
+ &I020_230_AIC,
+ &I020_230_B1A,
+ &I020_230_B1B,
+ NULL
+};
+static const AsterixField I020_230 = { FIXED, 2, 0, 0, &hf_020_230, I020_230_PARTS, { NULL } };
+static int hf_020_245 = -1;
+static int hf_020_245_STI = -1;
+static const value_string valstr_020_245_STI[] = {
+ { 0, "Callsign or registration not downlinked from transponder" },
+ { 1, "Registration downlinked from transponder" },
+ { 2, "Callsign downlinked from transponder" },
+ { 3, "Not defined" },
+ { 0, NULL }
+};
+static const FieldPart I020_245_STI = { 2, 1.0, FIELD_PART_UINT, &hf_020_245_STI, NULL };
+static int hf_020_245_CHR = -1;
+static const FieldPart I020_245_CHR = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_020_245_CHR, NULL };
+static const FieldPart *I020_245_PARTS[] = {
+ &I020_245_STI,
+ &IXXX_6bit_spare,
+ &I020_245_CHR,
+ NULL
+};
+static const AsterixField I020_245 = { FIXED, 7, 0, 0, &hf_020_245, I020_245_PARTS, { NULL } };
+static int hf_020_250 = -1;
+static int hf_020_250_MBDATA = -1;
+static const FieldPart I020_250_MBDATA = { 56, 1.0, FIELD_PART_HEX, &hf_020_250_MBDATA, NULL };
+static int hf_020_250_BDS1 = -1;
+static const FieldPart I020_250_BDS1 = { 4, 1.0, FIELD_PART_HEX, &hf_020_250_BDS1, NULL };
+static int hf_020_250_BDS2 = -1;
+static const FieldPart I020_250_BDS2 = { 4, 1.0, FIELD_PART_HEX, &hf_020_250_BDS2, NULL };
+static const FieldPart *I020_250_PARTS[] = {
+ &I020_250_MBDATA,
+ &I020_250_BDS1,
+ &I020_250_BDS2,
+ NULL
+};
+static const AsterixField I020_250 = { REPETITIVE, 8, 1, 0, &hf_020_250, I020_250_PARTS, { NULL } };
+static int hf_020_260 = -1;
+static int hf_020_260_VALUE = -1;
+static const FieldPart I020_260_VALUE = { 56, 1.0, FIELD_PART_HEX, &hf_020_260_VALUE, NULL };
+static const FieldPart *I020_260_PARTS[] = {
+ &I020_260_VALUE,
+ NULL
+};
+static const AsterixField I020_260 = { FIXED, 7, 0, 0, &hf_020_260, I020_260_PARTS, { NULL } };
+static int hf_020_300 = -1;
+static int hf_020_300_VALUE = -1;
+static const value_string valstr_020_300_VALUE[] = {
+ { 0, "Unknown" },
+ { 1, "ATC equipment maintenance" },
+ { 2, "Airport maintenance" },
+ { 3, "Fire" },
+ { 4, "Bird scarer" },
+ { 5, "Snow plough" },
+ { 6, "Runway sweeper" },
+ { 7, "Emergency" },
+ { 8, "Police" },
+ { 9, "Bus" },
+ { 10, "Tug (push/tow)" },
+ { 11, "Grass cutter" },
+ { 12, "Fuel" },
+ { 13, "Baggage" },
+ { 14, "Catering" },
+ { 15, "Aircraft maintenance" },
+ { 16, "Flyco (follow me)" },
+ { 0, NULL }
+};
+static const FieldPart I020_300_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_020_300_VALUE, NULL };
+static const FieldPart *I020_300_PARTS[] = {
+ &I020_300_VALUE,
+ NULL
+};
+static const AsterixField I020_300 = { FIXED, 1, 0, 0, &hf_020_300, I020_300_PARTS, { NULL } };
+static int hf_020_310 = -1;
+static int hf_020_310_TRB = -1;
+static const value_string valstr_020_310_TRB[] = {
+ { 0, "Default" },
+ { 1, "In Trouble" },
+ { 0, NULL }
+};
+static const FieldPart I020_310_TRB = { 1, 1.0, FIELD_PART_UINT, &hf_020_310_TRB, NULL };
+static int hf_020_310_MSG = -1;
+static const value_string valstr_020_310_MSG[] = {
+ { 1, "Towing aircraft" },
+ { 2, "FOLLOW-ME operation" },
+ { 3, "Runway check" },
+ { 4, "Emergency operation (fire, medical...)" },
+ { 5, "Work in progress (maintenance, birds scarer, sweepers...)" },
+ { 0, NULL }
+};
+static const FieldPart I020_310_MSG = { 7, 1.0, FIELD_PART_UINT, &hf_020_310_MSG, NULL };
+static const FieldPart *I020_310_PARTS[] = {
+ &I020_310_TRB,
+ &I020_310_MSG,
+ NULL
+};
+static const AsterixField I020_310 = { FIXED, 1, 0, 0, &hf_020_310, I020_310_PARTS, { NULL } };
+static int hf_020_400 = -1;
+static int hf_020_400_BIT1 = -1;
+static const value_string valstr_020_400_BIT1[] = {
+ { 0, "TU1/RU1 has NOT contributed to the target detection" },
+ { 1, "TU1/RU1 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_400_BIT1 = { 1, 1.0, FIELD_PART_UINT, &hf_020_400_BIT1, NULL };
+static int hf_020_400_BIT2 = -1;
+static const value_string valstr_020_400_BIT2[] = {
+ { 0, "TU2/RU2 has NOT contributed to the target detection" },
+ { 1, "TU2/RU2 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_400_BIT2 = { 1, 1.0, FIELD_PART_UINT, &hf_020_400_BIT2, NULL };
+static int hf_020_400_BIT3 = -1;
+static const value_string valstr_020_400_BIT3[] = {
+ { 0, "TU3/RU3 has NOT contributed to the target detection" },
+ { 1, "TU3/RU3 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_400_BIT3 = { 1, 1.0, FIELD_PART_UINT, &hf_020_400_BIT3, NULL };
+static int hf_020_400_BIT4 = -1;
+static const value_string valstr_020_400_BIT4[] = {
+ { 0, "TU4/RU4 has NOT contributed to the target detection" },
+ { 1, "TU4/RU4 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_400_BIT4 = { 1, 1.0, FIELD_PART_UINT, &hf_020_400_BIT4, NULL };
+static int hf_020_400_BIT5 = -1;
+static const value_string valstr_020_400_BIT5[] = {
+ { 0, "TU5/RU5 has NOT contributed to the target detection" },
+ { 1, "TU5/RU5 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_400_BIT5 = { 1, 1.0, FIELD_PART_UINT, &hf_020_400_BIT5, NULL };
+static int hf_020_400_BIT6 = -1;
+static const value_string valstr_020_400_BIT6[] = {
+ { 0, "TU6/RU6 has NOT contributed to the target detection" },
+ { 1, "TU6/RU6 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_400_BIT6 = { 1, 1.0, FIELD_PART_UINT, &hf_020_400_BIT6, NULL };
+static int hf_020_400_BIT7 = -1;
+static const value_string valstr_020_400_BIT7[] = {
+ { 0, "TU7/RU7 has NOT contributed to the target detection" },
+ { 1, "TU7/RU7 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_400_BIT7 = { 1, 1.0, FIELD_PART_UINT, &hf_020_400_BIT7, NULL };
+static int hf_020_400_BIT8 = -1;
+static const value_string valstr_020_400_BIT8[] = {
+ { 0, "TU8/RU8 has NOT contributed to the target detection" },
+ { 1, "TU8/RU8 has contributed to the target detection" },
+ { 0, NULL }
+};
+static const FieldPart I020_400_BIT8 = { 1, 1.0, FIELD_PART_UINT, &hf_020_400_BIT8, NULL };
+static const FieldPart *I020_400_PARTS[] = {
+ &I020_400_BIT1,
+ &I020_400_BIT2,
+ &I020_400_BIT3,
+ &I020_400_BIT4,
+ &I020_400_BIT5,
+ &I020_400_BIT6,
+ &I020_400_BIT7,
+ &I020_400_BIT8,
+ NULL
+};
+static const AsterixField I020_400 = { REPETITIVE, 1, 1, 0, &hf_020_400, I020_400_PARTS, { NULL } };
+static int hf_020_500 = -1;
+static int hf_020_500_DOP = -1;
+static int hf_020_500_DOP_X = -1;
+static const FieldPart I020_500_DOP_X = { 16, 0.25, FIELD_PART_UFLOAT, &hf_020_500_DOP_X, NULL };
+static int hf_020_500_DOP_Y = -1;
+static const FieldPart I020_500_DOP_Y = { 16, 0.25, FIELD_PART_UFLOAT, &hf_020_500_DOP_Y, NULL };
+static int hf_020_500_DOP_XY = -1;
+static const FieldPart I020_500_DOP_XY = { 16, 0.25, FIELD_PART_UFLOAT, &hf_020_500_DOP_XY, NULL };
+static const FieldPart *I020_500_DOP_PARTS[] = {
+ &I020_500_DOP_X,
+ &I020_500_DOP_Y,
+ &I020_500_DOP_XY,
+ NULL
+};
+static const AsterixField I020_500_DOP = { FIXED, 6, 0, 0, &hf_020_500_DOP, I020_500_DOP_PARTS, { NULL } };
+static int hf_020_500_SDP = -1;
+static int hf_020_500_SDP_X = -1;
+static const FieldPart I020_500_SDP_X = { 16, 0.25, FIELD_PART_UFLOAT, &hf_020_500_SDP_X, NULL };
+static int hf_020_500_SDP_Y = -1;
+static const FieldPart I020_500_SDP_Y = { 16, 0.25, FIELD_PART_UFLOAT, &hf_020_500_SDP_Y, NULL };
+static int hf_020_500_SDP_XY = -1;
+static const FieldPart I020_500_SDP_XY = { 16, 0.25, FIELD_PART_UFLOAT, &hf_020_500_SDP_XY, NULL };
+static const FieldPart *I020_500_SDP_PARTS[] = {
+ &I020_500_SDP_X,
+ &I020_500_SDP_Y,
+ &I020_500_SDP_XY,
+ NULL
+};
+static const AsterixField I020_500_SDP = { FIXED, 6, 0, 0, &hf_020_500_SDP, I020_500_SDP_PARTS, { NULL } };
+static int hf_020_500_SDH = -1;
+static int hf_020_500_SDH_VALUE = -1;
+static const FieldPart I020_500_SDH_VALUE = { 16, 0.5, FIELD_PART_UFLOAT, &hf_020_500_SDH_VALUE, NULL };
+static const FieldPart *I020_500_SDH_PARTS[] = {
+ &I020_500_SDH_VALUE,
+ NULL
+};
+static const AsterixField I020_500_SDH = { FIXED, 2, 0, 0, &hf_020_500_SDH, I020_500_SDH_PARTS, { NULL } };
+static const AsterixField I020_500 = { COMPOUND, 0, 0, 0, &hf_020_500, NULL, { &I020_500_DOP, &I020_500_SDP, &I020_500_SDH, NULL } };
+static int hf_020_RE = -1;
+static const AsterixField I020_RE = { EXP, 0, 0, 1, &hf_020_RE, NULL, { NULL } };
+static int hf_020_SP = -1;
+static const AsterixField I020_SP = { EXP, 0, 0, 1, &hf_020_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I020_V1_10_uap[] = {
+ &I020_V1_10_010,
+ &I020_V1_10_020,
+ &I020_V1_10_140,
+ &I020_V1_10_041,
+ &I020_V1_10_042,
+ &I020_V1_10_161,
+ &I020_V1_10_170,
+ &I020_V1_10_070,
+ &I020_V1_10_202,
+ &I020_V1_10_090,
+ &I020_V1_10_100,
+ &I020_V1_10_220,
+ &I020_V1_10_245,
+ &I020_V1_10_110,
+ &I020_V1_10_105,
+ &I020_V1_10_210,
+ &I020_V1_10_300,
+ &I020_V1_10_310,
+ &I020_V1_10_500,
+ &I020_V1_10_400,
+ &I020_V1_10_250,
+ &I020_V1_10_230,
+ &I020_V1_10_260,
+ &I020_V1_10_030,
+ &I020_V1_10_055,
+ &I020_V1_10_050,
+ &I020_V1_10_RE,
+ &I020_V1_10_SP,
+ NULL
+};
+static const AsterixField **I020_V1_10[] = {
+ I020_V1_10_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I020_uap[] = {
+ &I020_010,
+ &I020_020,
+ &I020_140,
+ &I020_041,
+ &I020_042,
+ &I020_161,
+ &I020_170,
+ &I020_070,
+ &I020_202,
+ &I020_090,
+ &I020_100,
+ &I020_220,
+ &I020_245,
+ &I020_110,
+ &I020_105,
+ &I020_210,
+ &I020_300,
+ &I020_310,
+ &I020_500,
+ &I020_400,
+ &I020_250,
+ &I020_230,
+ &I020_260,
+ &I020_030,
+ &I020_055,
+ &I020_050,
+ &I020_RE,
+ &I020_SP,
+ NULL
+};
+static const AsterixField **I020[] = {
+ I020_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 021, edition 0.23 */
+static int hf_021_V0_23_010 = -1;
+static int hf_021_V0_23_010_SAC = -1;
+static const FieldPart I021_V0_23_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_021_V0_23_010_SAC, NULL };
+static int hf_021_V0_23_010_SIC = -1;
+static const FieldPart I021_V0_23_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_021_V0_23_010_SIC, NULL };
+static const FieldPart *I021_V0_23_010_PARTS[] = {
+ &I021_V0_23_010_SAC,
+ &I021_V0_23_010_SIC,
+ NULL
+};
+static const AsterixField I021_V0_23_010 = { FIXED, 2, 0, 0, &hf_021_V0_23_010, I021_V0_23_010_PARTS, { NULL } };
+static int hf_021_V0_23_020 = -1;
+static int hf_021_V0_23_020_VALUE = -1;
+static const value_string valstr_021_V0_23_020_VALUE[] = {
+ { 1, "Light aircraft <= 7000 kg" },
+ { 2, "Reserved" },
+ { 3, "7000 kg < Medium aircraft < 136000 kg" },
+ { 4, "Reserved" },
+ { 5, "136000 kg <= Heavy aircraft" },
+ { 6, "Highly manoeuvrable (5g acceleration capability) and high speed (>400 knots cruise)" },
+ { 7, "Reserved" },
+ { 8, "Reserved" },
+ { 9, "Reserved" },
+ { 10, "Rotocraft" },
+ { 11, "Glider / sailplane" },
+ { 12, "Lighter-than-air" },
+ { 13, "Unmanned aerial vehicle" },
+ { 14, "Space / transatmospheric vehicle" },
+ { 15, "Ultralight / handglider / paraglider" },
+ { 16, "Parachutist / skydiver" },
+ { 17, "Reserved" },
+ { 18, "Reserved" },
+ { 19, "Reserved" },
+ { 20, "Surface emergency vehicle" },
+ { 21, "Surface service vehicle" },
+ { 22, "Fixed ground or tethered obstruction" },
+ { 23, "Reserved" },
+ { 24, "Reserved" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_020_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_V0_23_020_VALUE, NULL };
+static const FieldPart *I021_V0_23_020_PARTS[] = {
+ &I021_V0_23_020_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_23_020 = { FIXED, 1, 0, 0, &hf_021_V0_23_020, I021_V0_23_020_PARTS, { NULL } };
+static int hf_021_V0_23_030 = -1;
+static int hf_021_V0_23_030_VALUE = -1;
+static const FieldPart I021_V0_23_030_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V0_23_030_VALUE, NULL };
+static const FieldPart *I021_V0_23_030_PARTS[] = {
+ &I021_V0_23_030_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_23_030 = { FIXED, 3, 0, 0, &hf_021_V0_23_030, I021_V0_23_030_PARTS, { NULL } };
+static int hf_021_V0_23_032 = -1;
+static int hf_021_V0_23_032_VALUE = -1;
+static const FieldPart I021_V0_23_032_VALUE = { 8, 0.00390625, FIELD_PART_UFLOAT, &hf_021_V0_23_032_VALUE, NULL };
+static const FieldPart *I021_V0_23_032_PARTS[] = {
+ &I021_V0_23_032_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_23_032 = { FIXED, 1, 0, 0, &hf_021_V0_23_032, I021_V0_23_032_PARTS, { NULL } };
+static int hf_021_V0_23_040 = -1;
+static int hf_021_V0_23_040_DCR = -1;
+static const value_string valstr_021_V0_23_040_DCR[] = {
+ { 0, "No differential correction (ADS-B)" },
+ { 1, "Differential correction (ADS-B)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_040_DCR = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_23_040_DCR, NULL };
+static int hf_021_V0_23_040_GBS = -1;
+static const value_string valstr_021_V0_23_040_GBS[] = {
+ { 0, "Ground Bit not set" },
+ { 1, "Ground Bit set" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_040_GBS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_23_040_GBS, NULL };
+static int hf_021_V0_23_040_SIM = -1;
+static const value_string valstr_021_V0_23_040_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_040_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_23_040_SIM, NULL };
+static int hf_021_V0_23_040_TST = -1;
+static const value_string valstr_021_V0_23_040_TST[] = {
+ { 0, "Default" },
+ { 1, "Test Target" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_040_TST = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_23_040_TST, NULL };
+static int hf_021_V0_23_040_RAB = -1;
+static const value_string valstr_021_V0_23_040_RAB[] = {
+ { 0, "Report from target transponder" },
+ { 1, "Report from field monitor (fixed transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_040_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_23_040_RAB, NULL };
+static int hf_021_V0_23_040_SAA = -1;
+static const value_string valstr_021_V0_23_040_SAA[] = {
+ { 0, "Equipment capable to provide Selected Altitude" },
+ { 1, "Equipment not capable to provide Selected Altitude" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_040_SAA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_23_040_SAA, NULL };
+static int hf_021_V0_23_040_SPI = -1;
+static const value_string valstr_021_V0_23_040_SPI[] = {
+ { 0, "Absence of SPI" },
+ { 1, "Special Position Identification" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_040_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_23_040_SPI, NULL };
+static int hf_021_V0_23_040_ATP = -1;
+static const value_string valstr_021_V0_23_040_ATP[] = {
+ { 0, "Non unique address" },
+ { 1, "24-Bit ICAO address" },
+ { 2, "Surface vehicle address" },
+ { 3, "Anonymous address" },
+ { 4, "Reserved for future use" },
+ { 5, "Reserved for future use" },
+ { 6, "Reserved for future use" },
+ { 7, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_040_ATP = { 3, 1.0, FIELD_PART_UINT, &hf_021_V0_23_040_ATP, NULL };
+static int hf_021_V0_23_040_ARC = -1;
+static const value_string valstr_021_V0_23_040_ARC[] = {
+ { 0, "Unknown" },
+ { 1, "25 ft" },
+ { 2, "100 ft" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_040_ARC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_23_040_ARC, NULL };
+static const FieldPart *I021_V0_23_040_PARTS[] = {
+ &I021_V0_23_040_DCR,
+ &I021_V0_23_040_GBS,
+ &I021_V0_23_040_SIM,
+ &I021_V0_23_040_TST,
+ &I021_V0_23_040_RAB,
+ &I021_V0_23_040_SAA,
+ &I021_V0_23_040_SPI,
+ &IXXX_1bit_spare,
+ &I021_V0_23_040_ATP,
+ &I021_V0_23_040_ARC,
+ &IXXX_3bit_spare,
+ NULL
+};
+static const AsterixField I021_V0_23_040 = { FIXED, 2, 0, 0, &hf_021_V0_23_040, I021_V0_23_040_PARTS, { NULL } };
+static int hf_021_V0_23_080 = -1;
+static int hf_021_V0_23_080_VALUE = -1;
+static const FieldPart I021_V0_23_080_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_021_V0_23_080_VALUE, NULL };
+static const FieldPart *I021_V0_23_080_PARTS[] = {
+ &I021_V0_23_080_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_23_080 = { FIXED, 3, 0, 0, &hf_021_V0_23_080, I021_V0_23_080_PARTS, { NULL } };
+static int hf_021_V0_23_090 = -1;
+static int hf_021_V0_23_090_AC = -1;
+static const value_string valstr_021_V0_23_090_AC[] = {
+ { 0, "Unknown" },
+ { 1, "ACAS not operational" },
+ { 2, "ACAS operartional" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_090_AC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_23_090_AC, NULL };
+static int hf_021_V0_23_090_MN = -1;
+static const value_string valstr_021_V0_23_090_MN[] = {
+ { 0, "Unknown" },
+ { 1, "Multiple Navigation not operational" },
+ { 2, "Multiple Navigation operartional" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_090_MN = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_23_090_MN, NULL };
+static int hf_021_V0_23_090_DC = -1;
+static const value_string valstr_021_V0_23_090_DC[] = {
+ { 0, "Unknown" },
+ { 1, "Differencial Correction" },
+ { 2, "NO Differencial Correction" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_090_DC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_23_090_DC, NULL };
+static int hf_021_V0_23_090_PA = -1;
+static const FieldPart I021_V0_23_090_PA = { 4, 1.0, FIELD_PART_FLOAT, &hf_021_V0_23_090_PA, NULL };
+static const FieldPart *I021_V0_23_090_PARTS[] = {
+ &I021_V0_23_090_AC,
+ &I021_V0_23_090_MN,
+ &I021_V0_23_090_DC,
+ &IXXX_6bit_spare,
+ &I021_V0_23_090_PA,
+ NULL
+};
+static const AsterixField I021_V0_23_090 = { FIXED, 2, 0, 0, &hf_021_V0_23_090, I021_V0_23_090_PARTS, { NULL } };
+static int hf_021_V0_23_095 = -1;
+static int hf_021_V0_23_095_VALUE = -1;
+static const FieldPart I021_V0_23_095_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_021_V0_23_095_VALUE, NULL };
+static const FieldPart *I021_V0_23_095_PARTS[] = {
+ &I021_V0_23_095_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_23_095 = { FIXED, 1, 0, 0, &hf_021_V0_23_095, I021_V0_23_095_PARTS, { NULL } };
+static int hf_021_V0_23_110 = -1;
+static int hf_021_V0_23_110_TIS = -1;
+static int hf_021_V0_23_110_TIS_NAV = -1;
+static const value_string valstr_021_V0_23_110_TIS_NAV[] = {
+ { 0, "Trajectory Intent Data is available for this aircraft" },
+ { 1, "Trajectory Intent Data is not available for this aircraft" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_110_TIS_NAV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_23_110_TIS_NAV, NULL };
+static int hf_021_V0_23_110_TIS_NVB = -1;
+static const value_string valstr_021_V0_23_110_TIS_NVB[] = {
+ { 0, "Trajectory Intent Data is valid" },
+ { 1, "Trajectory Intent Data is not valid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_110_TIS_NVB = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_23_110_TIS_NVB, NULL };
+static const FieldPart *I021_V0_23_110_TIS_PARTS[] = {
+ &I021_V0_23_110_TIS_NAV,
+ &I021_V0_23_110_TIS_NVB,
+ &IXXX_5bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V0_23_110_TIS = { FX, 1, 0, 0, &hf_021_V0_23_110_TIS, I021_V0_23_110_TIS_PARTS, { NULL } };
+static int hf_021_V0_23_110_TID = -1;
+static int hf_021_V0_23_110_TID_TCA = -1;
+static const value_string valstr_021_V0_23_110_TID_TCA[] = {
+ { 0, "TCP number available" },
+ { 1, "TCP number not available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_110_TID_TCA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_23_110_TID_TCA, NULL };
+static int hf_021_V0_23_110_TID_NC = -1;
+static const value_string valstr_021_V0_23_110_TID_NC[] = {
+ { 0, "TCP compliance" },
+ { 1, "TCP non-compliance" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_110_TID_NC = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_23_110_TID_NC, NULL };
+static int hf_021_V0_23_110_TID_TCPN = -1;
+static const FieldPart I021_V0_23_110_TID_TCPN = { 6, 1.0, FIELD_PART_HEX, &hf_021_V0_23_110_TID_TCPN, NULL };
+static int hf_021_V0_23_110_TID_ALT = -1;
+static const FieldPart I021_V0_23_110_TID_ALT = { 16, 10.0, FIELD_PART_FLOAT, &hf_021_V0_23_110_TID_ALT, NULL };
+static int hf_021_V0_23_110_TID_LAT = -1;
+static const FieldPart I021_V0_23_110_TID_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V0_23_110_TID_LAT, NULL };
+static int hf_021_V0_23_110_TID_LON = -1;
+static const FieldPart I021_V0_23_110_TID_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V0_23_110_TID_LON, NULL };
+static int hf_021_V0_23_110_TID_PT = -1;
+static const value_string valstr_021_V0_23_110_TID_PT[] = {
+ { 0, "Unknown" },
+ { 1, "Fly by waypoint (LT)" },
+ { 2, "Fly over waypoint (LT)" },
+ { 3, "Hold pattern (LT)" },
+ { 4, "Procedure hold (LT)" },
+ { 5, "Procedure turn (LT)" },
+ { 6, "RF leg (LT)" },
+ { 7, "Top of climb (VT)" },
+ { 8, "Top of descent (VT)" },
+ { 9, "Start of level (VT)" },
+ { 10, "Cross-over altitude (VT)" },
+ { 11, "Transition altitude (VT)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_110_TID_PT = { 4, 1.0, FIELD_PART_UINT, &hf_021_V0_23_110_TID_PT, NULL };
+static int hf_021_V0_23_110_TID_TD = -1;
+static const value_string valstr_021_V0_23_110_TID_TD[] = {
+ { 0, "N/A" },
+ { 1, "Turn right" },
+ { 2, "Turn left" },
+ { 3, "No turn" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_110_TID_TD = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_23_110_TID_TD, NULL };
+static int hf_021_V0_23_110_TID_TRA = -1;
+static const value_string valstr_021_V0_23_110_TID_TRA[] = {
+ { 0, "TTR not available" },
+ { 1, "TTR available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_110_TID_TRA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_23_110_TID_TRA, NULL };
+static int hf_021_V0_23_110_TID_TOA = -1;
+static const value_string valstr_021_V0_23_110_TID_TOA[] = {
+ { 0, "TOV available" },
+ { 1, "TOV not available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_110_TID_TOA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_23_110_TID_TOA, NULL };
+static int hf_021_V0_23_110_TID_TOV = -1;
+static const FieldPart I021_V0_23_110_TID_TOV = { 24, 1.0, FIELD_PART_UFLOAT, &hf_021_V0_23_110_TID_TOV, NULL };
+static int hf_021_V0_23_110_TID_TTR = -1;
+static const FieldPart I021_V0_23_110_TID_TTR = { 16, 0.01, FIELD_PART_UFLOAT, &hf_021_V0_23_110_TID_TTR, NULL };
+static const FieldPart *I021_V0_23_110_TID_PARTS[] = {
+ &I021_V0_23_110_TID_TCA,
+ &I021_V0_23_110_TID_NC,
+ &I021_V0_23_110_TID_TCPN,
+ &I021_V0_23_110_TID_ALT,
+ &I021_V0_23_110_TID_LAT,
+ &I021_V0_23_110_TID_LON,
+ &I021_V0_23_110_TID_PT,
+ &I021_V0_23_110_TID_TD,
+ &I021_V0_23_110_TID_TRA,
+ &I021_V0_23_110_TID_TOA,
+ &I021_V0_23_110_TID_TOV,
+ &I021_V0_23_110_TID_TTR,
+ NULL
+};
+static const AsterixField I021_V0_23_110_TID = { REPETITIVE, 15, 1, 0, &hf_021_V0_23_110_TID, I021_V0_23_110_TID_PARTS, { NULL } };
+static const AsterixField I021_V0_23_110 = { COMPOUND, 0, 0, 0, &hf_021_V0_23_110, NULL, { &I021_V0_23_110_TIS, &I021_V0_23_110_TID, NULL } };
+static int hf_021_V0_23_130 = -1;
+static int hf_021_V0_23_130_LAT = -1;
+static const FieldPart I021_V0_23_130_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V0_23_130_LAT, NULL };
+static int hf_021_V0_23_130_LON = -1;
+static const FieldPart I021_V0_23_130_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V0_23_130_LON, NULL };
+static const FieldPart *I021_V0_23_130_PARTS[] = {
+ &I021_V0_23_130_LAT,
+ &I021_V0_23_130_LON,
+ NULL
+};
+static const AsterixField I021_V0_23_130 = { FIXED, 6, 0, 0, &hf_021_V0_23_130, I021_V0_23_130_PARTS, { NULL } };
+static int hf_021_V0_23_140 = -1;
+static int hf_021_V0_23_140_VALUE = -1;
+static const FieldPart I021_V0_23_140_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_021_V0_23_140_VALUE, NULL };
+static const FieldPart *I021_V0_23_140_PARTS[] = {
+ &I021_V0_23_140_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_23_140 = { FIXED, 2, 0, 0, &hf_021_V0_23_140, I021_V0_23_140_PARTS, { NULL } };
+static int hf_021_V0_23_145 = -1;
+static int hf_021_V0_23_145_VALUE = -1;
+static const FieldPart I021_V0_23_145_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_021_V0_23_145_VALUE, NULL };
+static const FieldPart *I021_V0_23_145_PARTS[] = {
+ &I021_V0_23_145_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_23_145 = { FIXED, 2, 0, 0, &hf_021_V0_23_145, I021_V0_23_145_PARTS, { NULL } };
+static int hf_021_V0_23_146 = -1;
+static int hf_021_V0_23_146_SAS = -1;
+static const value_string valstr_021_V0_23_146_SAS[] = {
+ { 0, "No source information provided" },
+ { 1, "Source Information provided" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_146_SAS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_23_146_SAS, NULL };
+static int hf_021_V0_23_146_SRC = -1;
+static const value_string valstr_021_V0_23_146_SRC[] = {
+ { 0, "Unknown" },
+ { 1, "Aircraft Altitude (Holding Altitude)" },
+ { 2, "MCP/FCU Selected Altitude" },
+ { 3, "FMS Selected Altitude" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_146_SRC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_23_146_SRC, NULL };
+static int hf_021_V0_23_146_ALT = -1;
+static const FieldPart I021_V0_23_146_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_021_V0_23_146_ALT, NULL };
+static const FieldPart *I021_V0_23_146_PARTS[] = {
+ &I021_V0_23_146_SAS,
+ &I021_V0_23_146_SRC,
+ &I021_V0_23_146_ALT,
+ NULL
+};
+static const AsterixField I021_V0_23_146 = { FIXED, 2, 0, 0, &hf_021_V0_23_146, I021_V0_23_146_PARTS, { NULL } };
+static int hf_021_V0_23_148 = -1;
+static int hf_021_V0_23_148_MV = -1;
+static const value_string valstr_021_V0_23_148_MV[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_148_MV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_23_148_MV, NULL };
+static int hf_021_V0_23_148_AH = -1;
+static const value_string valstr_021_V0_23_148_AH[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_148_AH = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_23_148_AH, NULL };
+static int hf_021_V0_23_148_AM = -1;
+static const value_string valstr_021_V0_23_148_AM[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_148_AM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_23_148_AM, NULL };
+static int hf_021_V0_23_148_ALT = -1;
+static const FieldPart I021_V0_23_148_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_021_V0_23_148_ALT, NULL };
+static const FieldPart *I021_V0_23_148_PARTS[] = {
+ &I021_V0_23_148_MV,
+ &I021_V0_23_148_AH,
+ &I021_V0_23_148_AM,
+ &I021_V0_23_148_ALT,
+ NULL
+};
+static const AsterixField I021_V0_23_148 = { FIXED, 2, 0, 0, &hf_021_V0_23_148, I021_V0_23_148_PARTS, { NULL } };
+static int hf_021_V0_23_150 = -1;
+static int hf_021_V0_23_150_IM = -1;
+static const value_string valstr_021_V0_23_150_IM[] = {
+ { 0, "Air Speed = IAS, LSB (Bit-1) = 2 -14 NM/s" },
+ { 1, "Air Speed = Mach, LSB (Bit-1) = 0.001" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_150_IM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_23_150_IM, NULL };
+static int hf_021_V0_23_150_AS = -1;
+static const FieldPart I021_V0_23_150_AS = { 15, 1.0, FIELD_PART_HEX, &hf_021_V0_23_150_AS, NULL };
+static const FieldPart *I021_V0_23_150_PARTS[] = {
+ &I021_V0_23_150_IM,
+ &I021_V0_23_150_AS,
+ NULL
+};
+static const AsterixField I021_V0_23_150 = { FIXED, 2, 0, 0, &hf_021_V0_23_150, I021_V0_23_150_PARTS, { NULL } };
+static int hf_021_V0_23_151 = -1;
+static int hf_021_V0_23_151_VALUE = -1;
+static const FieldPart I021_V0_23_151_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_V0_23_151_VALUE, NULL };
+static const FieldPart *I021_V0_23_151_PARTS[] = {
+ &I021_V0_23_151_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_23_151 = { FIXED, 2, 0, 0, &hf_021_V0_23_151, I021_V0_23_151_PARTS, { NULL } };
+static int hf_021_V0_23_152 = -1;
+static int hf_021_V0_23_152_VALUE = -1;
+static const FieldPart I021_V0_23_152_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_021_V0_23_152_VALUE, NULL };
+static const FieldPart *I021_V0_23_152_PARTS[] = {
+ &I021_V0_23_152_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_23_152 = { FIXED, 2, 0, 0, &hf_021_V0_23_152, I021_V0_23_152_PARTS, { NULL } };
+static int hf_021_V0_23_155 = -1;
+static int hf_021_V0_23_155_VALUE = -1;
+static const FieldPart I021_V0_23_155_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_021_V0_23_155_VALUE, NULL };
+static const FieldPart *I021_V0_23_155_PARTS[] = {
+ &I021_V0_23_155_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_23_155 = { FIXED, 2, 0, 0, &hf_021_V0_23_155, I021_V0_23_155_PARTS, { NULL } };
+static int hf_021_V0_23_157 = -1;
+static int hf_021_V0_23_157_VALUE = -1;
+static const FieldPart I021_V0_23_157_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_021_V0_23_157_VALUE, NULL };
+static const FieldPart *I021_V0_23_157_PARTS[] = {
+ &I021_V0_23_157_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_23_157 = { FIXED, 2, 0, 0, &hf_021_V0_23_157, I021_V0_23_157_PARTS, { NULL } };
+static int hf_021_V0_23_160 = -1;
+static int hf_021_V0_23_160_GS = -1;
+static const FieldPart I021_V0_23_160_GS = { 16, 0.00006103515625, FIELD_PART_FLOAT, &hf_021_V0_23_160_GS, NULL };
+static int hf_021_V0_23_160_TA = -1;
+static const FieldPart I021_V0_23_160_TA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_021_V0_23_160_TA, NULL };
+static const FieldPart *I021_V0_23_160_PARTS[] = {
+ &I021_V0_23_160_GS,
+ &I021_V0_23_160_TA,
+ NULL
+};
+static const AsterixField I021_V0_23_160 = { FIXED, 4, 0, 0, &hf_021_V0_23_160, I021_V0_23_160_PARTS, { NULL } };
+static int hf_021_V0_23_165 = -1;
+static int hf_021_V0_23_165_TI = -1;
+static const value_string valstr_021_V0_23_165_TI[] = {
+ { 0, "Not available" },
+ { 1, "Left" },
+ { 2, "Right" },
+ { 3, "Straight" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_165_TI = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_23_165_TI, NULL };
+static int hf_021_V0_23_165_ROT = -1;
+static const FieldPart I021_V0_23_165_ROT = { 7, 0.25, FIELD_PART_FLOAT, &hf_021_V0_23_165_ROT, NULL };
+static const FieldPart *I021_V0_23_165_PARTS[] = {
+ &I021_V0_23_165_TI,
+ &IXXX_5bit_spare,
+ &IXXX_FX,
+ &I021_V0_23_165_ROT,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V0_23_165 = { FX, 1, 0, 0, &hf_021_V0_23_165, I021_V0_23_165_PARTS, { NULL } };
+static int hf_021_V0_23_170 = -1;
+static int hf_021_V0_23_170_VALUE = -1;
+static const FieldPart I021_V0_23_170_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_021_V0_23_170_VALUE, NULL };
+static const FieldPart *I021_V0_23_170_PARTS[] = {
+ &I021_V0_23_170_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_23_170 = { FIXED, 6, 0, 0, &hf_021_V0_23_170, I021_V0_23_170_PARTS, { NULL } };
+static int hf_021_V0_23_200 = -1;
+static int hf_021_V0_23_200_VALUE = -1;
+static const value_string valstr_021_V0_23_200_VALUE[] = {
+ { 0, "No emergency / not reported" },
+ { 1, "General emergency" },
+ { 2, "Lifeguard / medical" },
+ { 3, "Minimum fuel" },
+ { 4, "No communications" },
+ { 5, "Unlawful interference" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_200_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_V0_23_200_VALUE, NULL };
+static const FieldPart *I021_V0_23_200_PARTS[] = {
+ &I021_V0_23_200_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_23_200 = { FIXED, 1, 0, 0, &hf_021_V0_23_200, I021_V0_23_200_PARTS, { NULL } };
+static int hf_021_V0_23_210 = -1;
+static int hf_021_V0_23_210_DTI = -1;
+static const value_string valstr_021_V0_23_210_DTI[] = {
+ { 0, "Unknown" },
+ { 1, "Aircraft equiped with CDTI" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_210_DTI = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_23_210_DTI, NULL };
+static int hf_021_V0_23_210_MDS = -1;
+static const value_string valstr_021_V0_23_210_MDS[] = {
+ { 0, "Not used" },
+ { 1, "Used" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_210_MDS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_23_210_MDS, NULL };
+static int hf_021_V0_23_210_UAT = -1;
+static const value_string valstr_021_V0_23_210_UAT[] = {
+ { 0, "Not used" },
+ { 1, "Used" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_210_UAT = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_23_210_UAT, NULL };
+static int hf_021_V0_23_210_VDL = -1;
+static const value_string valstr_021_V0_23_210_VDL[] = {
+ { 0, "Not used" },
+ { 1, "Used" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_210_VDL = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_23_210_VDL, NULL };
+static int hf_021_V0_23_210_OTR = -1;
+static const value_string valstr_021_V0_23_210_OTR[] = {
+ { 0, "Not used" },
+ { 1, "Used" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_23_210_OTR = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_23_210_OTR, NULL };
+static const FieldPart *I021_V0_23_210_PARTS[] = {
+ &IXXX_3bit_spare,
+ &I021_V0_23_210_DTI,
+ &I021_V0_23_210_MDS,
+ &I021_V0_23_210_UAT,
+ &I021_V0_23_210_VDL,
+ &I021_V0_23_210_OTR,
+ NULL
+};
+static const AsterixField I021_V0_23_210 = { FIXED, 1, 0, 0, &hf_021_V0_23_210, I021_V0_23_210_PARTS, { NULL } };
+static int hf_021_V0_23_220 = -1;
+static int hf_021_V0_23_220_WS = -1;
+static int hf_021_V0_23_220_WS_VALUE = -1;
+static const FieldPart I021_V0_23_220_WS_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_V0_23_220_WS_VALUE, NULL };
+static const FieldPart *I021_V0_23_220_WS_PARTS[] = {
+ &I021_V0_23_220_WS_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_23_220_WS = { FIXED, 2, 0, 0, &hf_021_V0_23_220_WS, I021_V0_23_220_WS_PARTS, { NULL } };
+static int hf_021_V0_23_220_WD = -1;
+static int hf_021_V0_23_220_WD_VALUE = -1;
+static const FieldPart I021_V0_23_220_WD_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_V0_23_220_WD_VALUE, NULL };
+static const FieldPart *I021_V0_23_220_WD_PARTS[] = {
+ &I021_V0_23_220_WD_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_23_220_WD = { FIXED, 2, 0, 0, &hf_021_V0_23_220_WD, I021_V0_23_220_WD_PARTS, { NULL } };
+static int hf_021_V0_23_220_TMP = -1;
+static int hf_021_V0_23_220_TMP_VALUE = -1;
+static const FieldPart I021_V0_23_220_TMP_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_021_V0_23_220_TMP_VALUE, NULL };
+static const FieldPart *I021_V0_23_220_TMP_PARTS[] = {
+ &I021_V0_23_220_TMP_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_23_220_TMP = { FIXED, 2, 0, 0, &hf_021_V0_23_220_TMP, I021_V0_23_220_TMP_PARTS, { NULL } };
+static int hf_021_V0_23_220_TRB = -1;
+static int hf_021_V0_23_220_TRB_VALUE = -1;
+static const FieldPart I021_V0_23_220_TRB_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_V0_23_220_TRB_VALUE, NULL };
+static const FieldPart *I021_V0_23_220_TRB_PARTS[] = {
+ &I021_V0_23_220_TRB_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_23_220_TRB = { FIXED, 1, 0, 0, &hf_021_V0_23_220_TRB, I021_V0_23_220_TRB_PARTS, { NULL } };
+static const AsterixField I021_V0_23_220 = { COMPOUND, 0, 0, 0, &hf_021_V0_23_220, NULL, { &I021_V0_23_220_WS, &I021_V0_23_220_WD, &I021_V0_23_220_TMP, &I021_V0_23_220_TRB, NULL } };
+static int hf_021_V0_23_230 = -1;
+static int hf_021_V0_23_230_VALUE = -1;
+static const FieldPart I021_V0_23_230_VALUE = { 16, 0.01, FIELD_PART_FLOAT, &hf_021_V0_23_230_VALUE, NULL };
+static const FieldPart *I021_V0_23_230_PARTS[] = {
+ &I021_V0_23_230_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_23_230 = { FIXED, 2, 0, 0, &hf_021_V0_23_230, I021_V0_23_230_PARTS, { NULL } };
+static int hf_021_V0_23_RE = -1;
+static const AsterixField I021_V0_23_RE = { EXP, 0, 0, 1, &hf_021_V0_23_RE, NULL, { NULL } };
+static int hf_021_V0_23_SP = -1;
+static const AsterixField I021_V0_23_SP = { EXP, 0, 0, 1, &hf_021_V0_23_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I021_V0_23_uap[] = {
+ &I021_V0_23_010,
+ &I021_V0_23_040,
+ &I021_V0_23_030,
+ &I021_V0_23_130,
+ &I021_V0_23_080,
+ &I021_V0_23_140,
+ &I021_V0_23_090,
+ &I021_V0_23_210,
+ &I021_V0_23_230,
+ &I021_V0_23_145,
+ &I021_V0_23_150,
+ &I021_V0_23_151,
+ &I021_V0_23_152,
+ &I021_V0_23_155,
+ &I021_V0_23_157,
+ &I021_V0_23_160,
+ &I021_V0_23_165,
+ &I021_V0_23_170,
+ &I021_V0_23_095,
+ &I021_V0_23_032,
+ &I021_V0_23_200,
+ &I021_V0_23_020,
+ &I021_V0_23_220,
+ &I021_V0_23_146,
+ &I021_V0_23_148,
+ &I021_V0_23_110,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I021_V0_23_RE,
+ &I021_V0_23_SP,
+ NULL
+};
+static const AsterixField **I021_V0_23[] = {
+ I021_V0_23_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 021, edition 0.24 */
+static int hf_021_V0_24_010 = -1;
+static int hf_021_V0_24_010_SAC = -1;
+static const FieldPart I021_V0_24_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_021_V0_24_010_SAC, NULL };
+static int hf_021_V0_24_010_SIC = -1;
+static const FieldPart I021_V0_24_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_021_V0_24_010_SIC, NULL };
+static const FieldPart *I021_V0_24_010_PARTS[] = {
+ &I021_V0_24_010_SAC,
+ &I021_V0_24_010_SIC,
+ NULL
+};
+static const AsterixField I021_V0_24_010 = { FIXED, 2, 0, 0, &hf_021_V0_24_010, I021_V0_24_010_PARTS, { NULL } };
+static int hf_021_V0_24_020 = -1;
+static int hf_021_V0_24_020_VALUE = -1;
+static const value_string valstr_021_V0_24_020_VALUE[] = {
+ { 1, "Light aircraft <= 7000 kg" },
+ { 2, "Reserved" },
+ { 3, "7000 kg < Medium aircraft < 136000 kg" },
+ { 4, "Reserved" },
+ { 5, "136000 kg <= Heavy aircraft" },
+ { 6, "Highly manoeuvrable (5g acceleration capability) and high speed (>400 knots cruise)" },
+ { 7, "Reserved" },
+ { 8, "Reserved" },
+ { 9, "Reserved" },
+ { 10, "Rotocraft" },
+ { 11, "Glider / sailplane" },
+ { 12, "Lighter-than-air" },
+ { 13, "Unmanned aerial vehicle" },
+ { 14, "Space / transatmospheric vehicle" },
+ { 15, "Ultralight / handglider / paraglider" },
+ { 16, "Parachutist / skydiver" },
+ { 17, "Reserved" },
+ { 18, "Reserved" },
+ { 19, "Reserved" },
+ { 20, "Surface emergency vehicle" },
+ { 21, "Surface service vehicle" },
+ { 22, "Fixed ground or tethered obstruction" },
+ { 23, "Reserved" },
+ { 24, "Reserved" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_020_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_V0_24_020_VALUE, NULL };
+static const FieldPart *I021_V0_24_020_PARTS[] = {
+ &I021_V0_24_020_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_24_020 = { FIXED, 1, 0, 0, &hf_021_V0_24_020, I021_V0_24_020_PARTS, { NULL } };
+static int hf_021_V0_24_030 = -1;
+static int hf_021_V0_24_030_VALUE = -1;
+static const FieldPart I021_V0_24_030_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V0_24_030_VALUE, NULL };
+static const FieldPart *I021_V0_24_030_PARTS[] = {
+ &I021_V0_24_030_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_24_030 = { FIXED, 3, 0, 0, &hf_021_V0_24_030, I021_V0_24_030_PARTS, { NULL } };
+static int hf_021_V0_24_032 = -1;
+static int hf_021_V0_24_032_VALUE = -1;
+static const FieldPart I021_V0_24_032_VALUE = { 8, 0.00390625, FIELD_PART_UFLOAT, &hf_021_V0_24_032_VALUE, NULL };
+static const FieldPart *I021_V0_24_032_PARTS[] = {
+ &I021_V0_24_032_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_24_032 = { FIXED, 1, 0, 0, &hf_021_V0_24_032, I021_V0_24_032_PARTS, { NULL } };
+static int hf_021_V0_24_040 = -1;
+static int hf_021_V0_24_040_DCR = -1;
+static const value_string valstr_021_V0_24_040_DCR[] = {
+ { 0, "No differential correction (ADS-B)" },
+ { 1, "Differential correction (ADS-B)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_040_DCR = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_24_040_DCR, NULL };
+static int hf_021_V0_24_040_GBS = -1;
+static const value_string valstr_021_V0_24_040_GBS[] = {
+ { 0, "Ground Bit not set" },
+ { 1, "Ground Bit set" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_040_GBS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_24_040_GBS, NULL };
+static int hf_021_V0_24_040_SIM = -1;
+static const value_string valstr_021_V0_24_040_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_040_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_24_040_SIM, NULL };
+static int hf_021_V0_24_040_TST = -1;
+static const value_string valstr_021_V0_24_040_TST[] = {
+ { 0, "Default" },
+ { 1, "Test Target" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_040_TST = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_24_040_TST, NULL };
+static int hf_021_V0_24_040_RAB = -1;
+static const value_string valstr_021_V0_24_040_RAB[] = {
+ { 0, "Report from target transponder" },
+ { 1, "Report from field monitor (fixed transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_040_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_24_040_RAB, NULL };
+static int hf_021_V0_24_040_SAA = -1;
+static const value_string valstr_021_V0_24_040_SAA[] = {
+ { 0, "Equipment capable to provide Selected Altitude" },
+ { 1, "Equipment not capable to provide Selected Altitude" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_040_SAA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_24_040_SAA, NULL };
+static int hf_021_V0_24_040_SPI = -1;
+static const value_string valstr_021_V0_24_040_SPI[] = {
+ { 0, "Absence of SPI" },
+ { 1, "Special Position Identification" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_040_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_24_040_SPI, NULL };
+static int hf_021_V0_24_040_ATP = -1;
+static const value_string valstr_021_V0_24_040_ATP[] = {
+ { 0, "Non unique address" },
+ { 1, "24-Bit ICAO address" },
+ { 2, "Surface vehicle address" },
+ { 3, "Anonymous address" },
+ { 4, "Reserved for future use" },
+ { 5, "Reserved for future use" },
+ { 6, "Reserved for future use" },
+ { 7, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_040_ATP = { 3, 1.0, FIELD_PART_UINT, &hf_021_V0_24_040_ATP, NULL };
+static int hf_021_V0_24_040_ARC = -1;
+static const value_string valstr_021_V0_24_040_ARC[] = {
+ { 0, "Unknown" },
+ { 1, "25 ft" },
+ { 2, "100 ft" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_040_ARC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_24_040_ARC, NULL };
+static const FieldPart *I021_V0_24_040_PARTS[] = {
+ &I021_V0_24_040_DCR,
+ &I021_V0_24_040_GBS,
+ &I021_V0_24_040_SIM,
+ &I021_V0_24_040_TST,
+ &I021_V0_24_040_RAB,
+ &I021_V0_24_040_SAA,
+ &I021_V0_24_040_SPI,
+ &IXXX_1bit_spare,
+ &I021_V0_24_040_ATP,
+ &I021_V0_24_040_ARC,
+ &IXXX_3bit_spare,
+ NULL
+};
+static const AsterixField I021_V0_24_040 = { FIXED, 2, 0, 0, &hf_021_V0_24_040, I021_V0_24_040_PARTS, { NULL } };
+static int hf_021_V0_24_080 = -1;
+static int hf_021_V0_24_080_VALUE = -1;
+static const FieldPart I021_V0_24_080_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_021_V0_24_080_VALUE, NULL };
+static const FieldPart *I021_V0_24_080_PARTS[] = {
+ &I021_V0_24_080_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_24_080 = { FIXED, 3, 0, 0, &hf_021_V0_24_080, I021_V0_24_080_PARTS, { NULL } };
+static int hf_021_V0_24_090 = -1;
+static int hf_021_V0_24_090_AC = -1;
+static const value_string valstr_021_V0_24_090_AC[] = {
+ { 0, "Unknown" },
+ { 1, "ACAS not operational" },
+ { 2, "ACAS operartional" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_090_AC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_24_090_AC, NULL };
+static int hf_021_V0_24_090_MN = -1;
+static const value_string valstr_021_V0_24_090_MN[] = {
+ { 0, "Unknown" },
+ { 1, "Multiple Navigation not operational" },
+ { 2, "Multiple Navigation operartional" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_090_MN = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_24_090_MN, NULL };
+static int hf_021_V0_24_090_DC = -1;
+static const value_string valstr_021_V0_24_090_DC[] = {
+ { 0, "Unknown" },
+ { 1, "Differencial Correction" },
+ { 2, "NO Differencial Correction" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_090_DC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_24_090_DC, NULL };
+static int hf_021_V0_24_090_PA = -1;
+static const FieldPart I021_V0_24_090_PA = { 4, 1.0, FIELD_PART_FLOAT, &hf_021_V0_24_090_PA, NULL };
+static const FieldPart *I021_V0_24_090_PARTS[] = {
+ &I021_V0_24_090_AC,
+ &I021_V0_24_090_MN,
+ &I021_V0_24_090_DC,
+ &IXXX_6bit_spare,
+ &I021_V0_24_090_PA,
+ NULL
+};
+static const AsterixField I021_V0_24_090 = { FIXED, 2, 0, 0, &hf_021_V0_24_090, I021_V0_24_090_PARTS, { NULL } };
+static int hf_021_V0_24_095 = -1;
+static int hf_021_V0_24_095_VALUE = -1;
+static const FieldPart I021_V0_24_095_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_021_V0_24_095_VALUE, NULL };
+static const FieldPart *I021_V0_24_095_PARTS[] = {
+ &I021_V0_24_095_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_24_095 = { FIXED, 1, 0, 0, &hf_021_V0_24_095, I021_V0_24_095_PARTS, { NULL } };
+static int hf_021_V0_24_110 = -1;
+static int hf_021_V0_24_110_TIS = -1;
+static int hf_021_V0_24_110_TIS_NAV = -1;
+static const value_string valstr_021_V0_24_110_TIS_NAV[] = {
+ { 0, "Trajectory Intent Data is available for this aircraft" },
+ { 1, "Trajectory Intent Data is not available for this aircraft" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_110_TIS_NAV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_24_110_TIS_NAV, NULL };
+static int hf_021_V0_24_110_TIS_NVB = -1;
+static const value_string valstr_021_V0_24_110_TIS_NVB[] = {
+ { 0, "Trajectory Intent Data is valid" },
+ { 1, "Trajectory Intent Data is not valid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_110_TIS_NVB = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_24_110_TIS_NVB, NULL };
+static const FieldPart *I021_V0_24_110_TIS_PARTS[] = {
+ &I021_V0_24_110_TIS_NAV,
+ &I021_V0_24_110_TIS_NVB,
+ &IXXX_5bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V0_24_110_TIS = { FX, 1, 0, 0, &hf_021_V0_24_110_TIS, I021_V0_24_110_TIS_PARTS, { NULL } };
+static int hf_021_V0_24_110_TID = -1;
+static int hf_021_V0_24_110_TID_TCA = -1;
+static const value_string valstr_021_V0_24_110_TID_TCA[] = {
+ { 0, "TCP number available" },
+ { 1, "TCP number not available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_110_TID_TCA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_24_110_TID_TCA, NULL };
+static int hf_021_V0_24_110_TID_NC = -1;
+static const value_string valstr_021_V0_24_110_TID_NC[] = {
+ { 0, "TCP compliance" },
+ { 1, "TCP non-compliance" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_110_TID_NC = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_24_110_TID_NC, NULL };
+static int hf_021_V0_24_110_TID_TCPN = -1;
+static const FieldPart I021_V0_24_110_TID_TCPN = { 6, 1.0, FIELD_PART_HEX, &hf_021_V0_24_110_TID_TCPN, NULL };
+static int hf_021_V0_24_110_TID_ALT = -1;
+static const FieldPart I021_V0_24_110_TID_ALT = { 16, 10.0, FIELD_PART_FLOAT, &hf_021_V0_24_110_TID_ALT, NULL };
+static int hf_021_V0_24_110_TID_LAT = -1;
+static const FieldPart I021_V0_24_110_TID_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V0_24_110_TID_LAT, NULL };
+static int hf_021_V0_24_110_TID_LON = -1;
+static const FieldPart I021_V0_24_110_TID_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V0_24_110_TID_LON, NULL };
+static int hf_021_V0_24_110_TID_PT = -1;
+static const value_string valstr_021_V0_24_110_TID_PT[] = {
+ { 0, "Unknown" },
+ { 1, "Fly by waypoint (LT)" },
+ { 2, "Fly over waypoint (LT)" },
+ { 3, "Hold pattern (LT)" },
+ { 4, "Procedure hold (LT)" },
+ { 5, "Procedure turn (LT)" },
+ { 6, "RF leg (LT)" },
+ { 7, "Top of climb (VT)" },
+ { 8, "Top of descent (VT)" },
+ { 9, "Start of level (VT)" },
+ { 10, "Cross-over altitude (VT)" },
+ { 11, "Transition altitude (VT)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_110_TID_PT = { 4, 1.0, FIELD_PART_UINT, &hf_021_V0_24_110_TID_PT, NULL };
+static int hf_021_V0_24_110_TID_TD = -1;
+static const value_string valstr_021_V0_24_110_TID_TD[] = {
+ { 0, "N/A" },
+ { 1, "Turn right" },
+ { 2, "Turn left" },
+ { 3, "No turn" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_110_TID_TD = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_24_110_TID_TD, NULL };
+static int hf_021_V0_24_110_TID_TRA = -1;
+static const value_string valstr_021_V0_24_110_TID_TRA[] = {
+ { 0, "TTR not available" },
+ { 1, "TTR available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_110_TID_TRA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_24_110_TID_TRA, NULL };
+static int hf_021_V0_24_110_TID_TOA = -1;
+static const value_string valstr_021_V0_24_110_TID_TOA[] = {
+ { 0, "TOV available" },
+ { 1, "TOV not available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_110_TID_TOA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_24_110_TID_TOA, NULL };
+static int hf_021_V0_24_110_TID_TOV = -1;
+static const FieldPart I021_V0_24_110_TID_TOV = { 24, 1.0, FIELD_PART_UFLOAT, &hf_021_V0_24_110_TID_TOV, NULL };
+static int hf_021_V0_24_110_TID_TTR = -1;
+static const FieldPart I021_V0_24_110_TID_TTR = { 16, 0.01, FIELD_PART_UFLOAT, &hf_021_V0_24_110_TID_TTR, NULL };
+static const FieldPart *I021_V0_24_110_TID_PARTS[] = {
+ &I021_V0_24_110_TID_TCA,
+ &I021_V0_24_110_TID_NC,
+ &I021_V0_24_110_TID_TCPN,
+ &I021_V0_24_110_TID_ALT,
+ &I021_V0_24_110_TID_LAT,
+ &I021_V0_24_110_TID_LON,
+ &I021_V0_24_110_TID_PT,
+ &I021_V0_24_110_TID_TD,
+ &I021_V0_24_110_TID_TRA,
+ &I021_V0_24_110_TID_TOA,
+ &I021_V0_24_110_TID_TOV,
+ &I021_V0_24_110_TID_TTR,
+ NULL
+};
+static const AsterixField I021_V0_24_110_TID = { REPETITIVE, 15, 1, 0, &hf_021_V0_24_110_TID, I021_V0_24_110_TID_PARTS, { NULL } };
+static const AsterixField I021_V0_24_110 = { COMPOUND, 0, 0, 0, &hf_021_V0_24_110, NULL, { &I021_V0_24_110_TIS, &I021_V0_24_110_TID, NULL } };
+static int hf_021_V0_24_130 = -1;
+static int hf_021_V0_24_130_LAT = -1;
+static const FieldPart I021_V0_24_130_LAT = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_021_V0_24_130_LAT, NULL };
+static int hf_021_V0_24_130_LON = -1;
+static const FieldPart I021_V0_24_130_LON = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_021_V0_24_130_LON, NULL };
+static const FieldPart *I021_V0_24_130_PARTS[] = {
+ &I021_V0_24_130_LAT,
+ &I021_V0_24_130_LON,
+ NULL
+};
+static const AsterixField I021_V0_24_130 = { FIXED, 8, 0, 0, &hf_021_V0_24_130, I021_V0_24_130_PARTS, { NULL } };
+static int hf_021_V0_24_140 = -1;
+static int hf_021_V0_24_140_VALUE = -1;
+static const FieldPart I021_V0_24_140_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_021_V0_24_140_VALUE, NULL };
+static const FieldPart *I021_V0_24_140_PARTS[] = {
+ &I021_V0_24_140_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_24_140 = { FIXED, 2, 0, 0, &hf_021_V0_24_140, I021_V0_24_140_PARTS, { NULL } };
+static int hf_021_V0_24_145 = -1;
+static int hf_021_V0_24_145_VALUE = -1;
+static const FieldPart I021_V0_24_145_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_021_V0_24_145_VALUE, NULL };
+static const FieldPart *I021_V0_24_145_PARTS[] = {
+ &I021_V0_24_145_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_24_145 = { FIXED, 2, 0, 0, &hf_021_V0_24_145, I021_V0_24_145_PARTS, { NULL } };
+static int hf_021_V0_24_146 = -1;
+static int hf_021_V0_24_146_SAS = -1;
+static const value_string valstr_021_V0_24_146_SAS[] = {
+ { 0, "No source information provided" },
+ { 1, "Source Information provided" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_146_SAS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_24_146_SAS, NULL };
+static int hf_021_V0_24_146_SRC = -1;
+static const value_string valstr_021_V0_24_146_SRC[] = {
+ { 0, "Unknown" },
+ { 1, "Aircraft Altitude (Holding Altitude)" },
+ { 2, "MCP/FCU Selected Altitude" },
+ { 3, "FMS Selected Altitude" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_146_SRC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_24_146_SRC, NULL };
+static int hf_021_V0_24_146_ALT = -1;
+static const FieldPart I021_V0_24_146_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_021_V0_24_146_ALT, NULL };
+static const FieldPart *I021_V0_24_146_PARTS[] = {
+ &I021_V0_24_146_SAS,
+ &I021_V0_24_146_SRC,
+ &I021_V0_24_146_ALT,
+ NULL
+};
+static const AsterixField I021_V0_24_146 = { FIXED, 2, 0, 0, &hf_021_V0_24_146, I021_V0_24_146_PARTS, { NULL } };
+static int hf_021_V0_24_148 = -1;
+static int hf_021_V0_24_148_MV = -1;
+static const value_string valstr_021_V0_24_148_MV[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_148_MV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_24_148_MV, NULL };
+static int hf_021_V0_24_148_AH = -1;
+static const value_string valstr_021_V0_24_148_AH[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_148_AH = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_24_148_AH, NULL };
+static int hf_021_V0_24_148_AM = -1;
+static const value_string valstr_021_V0_24_148_AM[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_148_AM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_24_148_AM, NULL };
+static int hf_021_V0_24_148_ALT = -1;
+static const FieldPart I021_V0_24_148_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_021_V0_24_148_ALT, NULL };
+static const FieldPart *I021_V0_24_148_PARTS[] = {
+ &I021_V0_24_148_MV,
+ &I021_V0_24_148_AH,
+ &I021_V0_24_148_AM,
+ &I021_V0_24_148_ALT,
+ NULL
+};
+static const AsterixField I021_V0_24_148 = { FIXED, 2, 0, 0, &hf_021_V0_24_148, I021_V0_24_148_PARTS, { NULL } };
+static int hf_021_V0_24_150 = -1;
+static int hf_021_V0_24_150_IM = -1;
+static const value_string valstr_021_V0_24_150_IM[] = {
+ { 0, "Air Speed = IAS, LSB (Bit-1) = 2 -14 NM/s" },
+ { 1, "Air Speed = Mach, LSB (Bit-1) = 0.001" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_150_IM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_24_150_IM, NULL };
+static int hf_021_V0_24_150_AS = -1;
+static const FieldPart I021_V0_24_150_AS = { 15, 1.0, FIELD_PART_HEX, &hf_021_V0_24_150_AS, NULL };
+static const FieldPart *I021_V0_24_150_PARTS[] = {
+ &I021_V0_24_150_IM,
+ &I021_V0_24_150_AS,
+ NULL
+};
+static const AsterixField I021_V0_24_150 = { FIXED, 2, 0, 0, &hf_021_V0_24_150, I021_V0_24_150_PARTS, { NULL } };
+static int hf_021_V0_24_151 = -1;
+static int hf_021_V0_24_151_VALUE = -1;
+static const FieldPart I021_V0_24_151_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_V0_24_151_VALUE, NULL };
+static const FieldPart *I021_V0_24_151_PARTS[] = {
+ &I021_V0_24_151_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_24_151 = { FIXED, 2, 0, 0, &hf_021_V0_24_151, I021_V0_24_151_PARTS, { NULL } };
+static int hf_021_V0_24_152 = -1;
+static int hf_021_V0_24_152_VALUE = -1;
+static const FieldPart I021_V0_24_152_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_021_V0_24_152_VALUE, NULL };
+static const FieldPart *I021_V0_24_152_PARTS[] = {
+ &I021_V0_24_152_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_24_152 = { FIXED, 2, 0, 0, &hf_021_V0_24_152, I021_V0_24_152_PARTS, { NULL } };
+static int hf_021_V0_24_155 = -1;
+static int hf_021_V0_24_155_VALUE = -1;
+static const FieldPart I021_V0_24_155_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_021_V0_24_155_VALUE, NULL };
+static const FieldPart *I021_V0_24_155_PARTS[] = {
+ &I021_V0_24_155_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_24_155 = { FIXED, 2, 0, 0, &hf_021_V0_24_155, I021_V0_24_155_PARTS, { NULL } };
+static int hf_021_V0_24_157 = -1;
+static int hf_021_V0_24_157_VALUE = -1;
+static const FieldPart I021_V0_24_157_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_021_V0_24_157_VALUE, NULL };
+static const FieldPart *I021_V0_24_157_PARTS[] = {
+ &I021_V0_24_157_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_24_157 = { FIXED, 2, 0, 0, &hf_021_V0_24_157, I021_V0_24_157_PARTS, { NULL } };
+static int hf_021_V0_24_160 = -1;
+static int hf_021_V0_24_160_GS = -1;
+static const FieldPart I021_V0_24_160_GS = { 16, 0.00006103515625, FIELD_PART_FLOAT, &hf_021_V0_24_160_GS, NULL };
+static int hf_021_V0_24_160_TA = -1;
+static const FieldPart I021_V0_24_160_TA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_021_V0_24_160_TA, NULL };
+static const FieldPart *I021_V0_24_160_PARTS[] = {
+ &I021_V0_24_160_GS,
+ &I021_V0_24_160_TA,
+ NULL
+};
+static const AsterixField I021_V0_24_160 = { FIXED, 4, 0, 0, &hf_021_V0_24_160, I021_V0_24_160_PARTS, { NULL } };
+static int hf_021_V0_24_165 = -1;
+static int hf_021_V0_24_165_TI = -1;
+static const value_string valstr_021_V0_24_165_TI[] = {
+ { 0, "Not available" },
+ { 1, "Left" },
+ { 2, "Right" },
+ { 3, "Straight" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_165_TI = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_24_165_TI, NULL };
+static int hf_021_V0_24_165_ROT = -1;
+static const FieldPart I021_V0_24_165_ROT = { 7, 0.25, FIELD_PART_FLOAT, &hf_021_V0_24_165_ROT, NULL };
+static const FieldPart *I021_V0_24_165_PARTS[] = {
+ &I021_V0_24_165_TI,
+ &IXXX_5bit_spare,
+ &IXXX_FX,
+ &I021_V0_24_165_ROT,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V0_24_165 = { FX, 1, 0, 0, &hf_021_V0_24_165, I021_V0_24_165_PARTS, { NULL } };
+static int hf_021_V0_24_170 = -1;
+static int hf_021_V0_24_170_VALUE = -1;
+static const FieldPart I021_V0_24_170_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_021_V0_24_170_VALUE, NULL };
+static const FieldPart *I021_V0_24_170_PARTS[] = {
+ &I021_V0_24_170_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_24_170 = { FIXED, 6, 0, 0, &hf_021_V0_24_170, I021_V0_24_170_PARTS, { NULL } };
+static int hf_021_V0_24_200 = -1;
+static int hf_021_V0_24_200_VALUE = -1;
+static const value_string valstr_021_V0_24_200_VALUE[] = {
+ { 0, "No emergency / not reported" },
+ { 1, "General emergency" },
+ { 2, "Lifeguard / medical" },
+ { 3, "Minimum fuel" },
+ { 4, "No communications" },
+ { 5, "Unlawful interference" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_200_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_V0_24_200_VALUE, NULL };
+static const FieldPart *I021_V0_24_200_PARTS[] = {
+ &I021_V0_24_200_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_24_200 = { FIXED, 1, 0, 0, &hf_021_V0_24_200, I021_V0_24_200_PARTS, { NULL } };
+static int hf_021_V0_24_210 = -1;
+static int hf_021_V0_24_210_DTI = -1;
+static const value_string valstr_021_V0_24_210_DTI[] = {
+ { 0, "Unknown" },
+ { 1, "Aircraft equiped with CDTI" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_210_DTI = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_24_210_DTI, NULL };
+static int hf_021_V0_24_210_MDS = -1;
+static const value_string valstr_021_V0_24_210_MDS[] = {
+ { 0, "Not used" },
+ { 1, "Used" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_210_MDS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_24_210_MDS, NULL };
+static int hf_021_V0_24_210_UAT = -1;
+static const value_string valstr_021_V0_24_210_UAT[] = {
+ { 0, "Not used" },
+ { 1, "Used" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_210_UAT = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_24_210_UAT, NULL };
+static int hf_021_V0_24_210_VDL = -1;
+static const value_string valstr_021_V0_24_210_VDL[] = {
+ { 0, "Not used" },
+ { 1, "Used" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_210_VDL = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_24_210_VDL, NULL };
+static int hf_021_V0_24_210_OTR = -1;
+static const value_string valstr_021_V0_24_210_OTR[] = {
+ { 0, "Not used" },
+ { 1, "Used" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_24_210_OTR = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_24_210_OTR, NULL };
+static const FieldPart *I021_V0_24_210_PARTS[] = {
+ &IXXX_3bit_spare,
+ &I021_V0_24_210_DTI,
+ &I021_V0_24_210_MDS,
+ &I021_V0_24_210_UAT,
+ &I021_V0_24_210_VDL,
+ &I021_V0_24_210_OTR,
+ NULL
+};
+static const AsterixField I021_V0_24_210 = { FIXED, 1, 0, 0, &hf_021_V0_24_210, I021_V0_24_210_PARTS, { NULL } };
+static int hf_021_V0_24_220 = -1;
+static int hf_021_V0_24_220_WS = -1;
+static int hf_021_V0_24_220_WS_VALUE = -1;
+static const FieldPart I021_V0_24_220_WS_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_V0_24_220_WS_VALUE, NULL };
+static const FieldPart *I021_V0_24_220_WS_PARTS[] = {
+ &I021_V0_24_220_WS_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_24_220_WS = { FIXED, 2, 0, 0, &hf_021_V0_24_220_WS, I021_V0_24_220_WS_PARTS, { NULL } };
+static int hf_021_V0_24_220_WD = -1;
+static int hf_021_V0_24_220_WD_VALUE = -1;
+static const FieldPart I021_V0_24_220_WD_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_V0_24_220_WD_VALUE, NULL };
+static const FieldPart *I021_V0_24_220_WD_PARTS[] = {
+ &I021_V0_24_220_WD_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_24_220_WD = { FIXED, 2, 0, 0, &hf_021_V0_24_220_WD, I021_V0_24_220_WD_PARTS, { NULL } };
+static int hf_021_V0_24_220_TMP = -1;
+static int hf_021_V0_24_220_TMP_VALUE = -1;
+static const FieldPart I021_V0_24_220_TMP_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_021_V0_24_220_TMP_VALUE, NULL };
+static const FieldPart *I021_V0_24_220_TMP_PARTS[] = {
+ &I021_V0_24_220_TMP_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_24_220_TMP = { FIXED, 2, 0, 0, &hf_021_V0_24_220_TMP, I021_V0_24_220_TMP_PARTS, { NULL } };
+static int hf_021_V0_24_220_TRB = -1;
+static int hf_021_V0_24_220_TRB_VALUE = -1;
+static const FieldPart I021_V0_24_220_TRB_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_V0_24_220_TRB_VALUE, NULL };
+static const FieldPart *I021_V0_24_220_TRB_PARTS[] = {
+ &I021_V0_24_220_TRB_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_24_220_TRB = { FIXED, 1, 0, 0, &hf_021_V0_24_220_TRB, I021_V0_24_220_TRB_PARTS, { NULL } };
+static const AsterixField I021_V0_24_220 = { COMPOUND, 0, 0, 0, &hf_021_V0_24_220, NULL, { &I021_V0_24_220_WS, &I021_V0_24_220_WD, &I021_V0_24_220_TMP, &I021_V0_24_220_TRB, NULL } };
+static int hf_021_V0_24_230 = -1;
+static int hf_021_V0_24_230_VALUE = -1;
+static const FieldPart I021_V0_24_230_VALUE = { 16, 0.01, FIELD_PART_FLOAT, &hf_021_V0_24_230_VALUE, NULL };
+static const FieldPart *I021_V0_24_230_PARTS[] = {
+ &I021_V0_24_230_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_24_230 = { FIXED, 2, 0, 0, &hf_021_V0_24_230, I021_V0_24_230_PARTS, { NULL } };
+static int hf_021_V0_24_RE = -1;
+static const AsterixField I021_V0_24_RE = { EXP, 0, 0, 1, &hf_021_V0_24_RE, NULL, { NULL } };
+static int hf_021_V0_24_SP = -1;
+static const AsterixField I021_V0_24_SP = { EXP, 0, 0, 1, &hf_021_V0_24_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I021_V0_24_uap[] = {
+ &I021_V0_24_010,
+ &I021_V0_24_040,
+ &I021_V0_24_030,
+ &I021_V0_24_130,
+ &I021_V0_24_080,
+ &I021_V0_24_140,
+ &I021_V0_24_090,
+ &I021_V0_24_210,
+ &I021_V0_24_230,
+ &I021_V0_24_145,
+ &I021_V0_24_150,
+ &I021_V0_24_151,
+ &I021_V0_24_152,
+ &I021_V0_24_155,
+ &I021_V0_24_157,
+ &I021_V0_24_160,
+ &I021_V0_24_165,
+ &I021_V0_24_170,
+ &I021_V0_24_095,
+ &I021_V0_24_032,
+ &I021_V0_24_200,
+ &I021_V0_24_020,
+ &I021_V0_24_220,
+ &I021_V0_24_146,
+ &I021_V0_24_148,
+ &I021_V0_24_110,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I021_V0_24_RE,
+ &I021_V0_24_SP,
+ NULL
+};
+static const AsterixField **I021_V0_24[] = {
+ I021_V0_24_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 021, edition 0.25 */
+static int hf_021_V0_25_010 = -1;
+static int hf_021_V0_25_010_SAC = -1;
+static const FieldPart I021_V0_25_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_021_V0_25_010_SAC, NULL };
+static int hf_021_V0_25_010_SIC = -1;
+static const FieldPart I021_V0_25_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_021_V0_25_010_SIC, NULL };
+static const FieldPart *I021_V0_25_010_PARTS[] = {
+ &I021_V0_25_010_SAC,
+ &I021_V0_25_010_SIC,
+ NULL
+};
+static const AsterixField I021_V0_25_010 = { FIXED, 2, 0, 0, &hf_021_V0_25_010, I021_V0_25_010_PARTS, { NULL } };
+static int hf_021_V0_25_020 = -1;
+static int hf_021_V0_25_020_VALUE = -1;
+static const value_string valstr_021_V0_25_020_VALUE[] = {
+ { 1, "Light aircraft <= 7000 kg" },
+ { 2, "Reserved" },
+ { 3, "7000 kg < Medium aircraft < 136000 kg" },
+ { 4, "Reserved" },
+ { 5, "136000 kg <= Heavy aircraft" },
+ { 6, "Highly manoeuvrable (5g acceleration capability) and high speed (>400 knots cruise)" },
+ { 7, "Reserved" },
+ { 8, "Reserved" },
+ { 9, "Reserved" },
+ { 10, "Rotocraft" },
+ { 11, "Glider / sailplane" },
+ { 12, "Lighter-than-air" },
+ { 13, "Unmanned aerial vehicle" },
+ { 14, "Space / transatmospheric vehicle" },
+ { 15, "Ultralight / handglider / paraglider" },
+ { 16, "Parachutist / skydiver" },
+ { 17, "Reserved" },
+ { 18, "Reserved" },
+ { 19, "Reserved" },
+ { 20, "Surface emergency vehicle" },
+ { 21, "Surface service vehicle" },
+ { 22, "Fixed ground or tethered obstruction" },
+ { 23, "Reserved" },
+ { 24, "Reserved" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_020_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_V0_25_020_VALUE, NULL };
+static const FieldPart *I021_V0_25_020_PARTS[] = {
+ &I021_V0_25_020_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_25_020 = { FIXED, 1, 0, 0, &hf_021_V0_25_020, I021_V0_25_020_PARTS, { NULL } };
+static int hf_021_V0_25_030 = -1;
+static int hf_021_V0_25_030_VALUE = -1;
+static const FieldPart I021_V0_25_030_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V0_25_030_VALUE, NULL };
+static const FieldPart *I021_V0_25_030_PARTS[] = {
+ &I021_V0_25_030_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_25_030 = { FIXED, 3, 0, 0, &hf_021_V0_25_030, I021_V0_25_030_PARTS, { NULL } };
+static int hf_021_V0_25_032 = -1;
+static int hf_021_V0_25_032_VALUE = -1;
+static const FieldPart I021_V0_25_032_VALUE = { 8, 0.00390625, FIELD_PART_UFLOAT, &hf_021_V0_25_032_VALUE, NULL };
+static const FieldPart *I021_V0_25_032_PARTS[] = {
+ &I021_V0_25_032_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_25_032 = { FIXED, 1, 0, 0, &hf_021_V0_25_032, I021_V0_25_032_PARTS, { NULL } };
+static int hf_021_V0_25_040 = -1;
+static int hf_021_V0_25_040_DCR = -1;
+static const value_string valstr_021_V0_25_040_DCR[] = {
+ { 0, "No differential correction (ADS-B)" },
+ { 1, "Differential correction (ADS-B)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_040_DCR = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_25_040_DCR, NULL };
+static int hf_021_V0_25_040_GBS = -1;
+static const value_string valstr_021_V0_25_040_GBS[] = {
+ { 0, "Ground Bit not set" },
+ { 1, "Ground Bit set" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_040_GBS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_25_040_GBS, NULL };
+static int hf_021_V0_25_040_SIM = -1;
+static const value_string valstr_021_V0_25_040_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_040_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_25_040_SIM, NULL };
+static int hf_021_V0_25_040_TST = -1;
+static const value_string valstr_021_V0_25_040_TST[] = {
+ { 0, "Default" },
+ { 1, "Test Target" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_040_TST = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_25_040_TST, NULL };
+static int hf_021_V0_25_040_RAB = -1;
+static const value_string valstr_021_V0_25_040_RAB[] = {
+ { 0, "Report from target transponder" },
+ { 1, "Report from field monitor (fixed transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_040_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_25_040_RAB, NULL };
+static int hf_021_V0_25_040_SAA = -1;
+static const value_string valstr_021_V0_25_040_SAA[] = {
+ { 0, "Equipment capable to provide Selected Altitude" },
+ { 1, "Equipment not capable to provide Selected Altitude" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_040_SAA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_25_040_SAA, NULL };
+static int hf_021_V0_25_040_SPI = -1;
+static const value_string valstr_021_V0_25_040_SPI[] = {
+ { 0, "Absence of SPI" },
+ { 1, "Special Position Identification" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_040_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_25_040_SPI, NULL };
+static int hf_021_V0_25_040_ATP = -1;
+static const value_string valstr_021_V0_25_040_ATP[] = {
+ { 0, "Non unique address" },
+ { 1, "24-Bit ICAO address" },
+ { 2, "Surface vehicle address" },
+ { 3, "Anonymous address" },
+ { 4, "Reserved for future use" },
+ { 5, "Reserved for future use" },
+ { 6, "Reserved for future use" },
+ { 7, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_040_ATP = { 3, 1.0, FIELD_PART_UINT, &hf_021_V0_25_040_ATP, NULL };
+static int hf_021_V0_25_040_ARC = -1;
+static const value_string valstr_021_V0_25_040_ARC[] = {
+ { 0, "Unknown" },
+ { 1, "25 ft" },
+ { 2, "100 ft" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_040_ARC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_25_040_ARC, NULL };
+static const FieldPart *I021_V0_25_040_PARTS[] = {
+ &I021_V0_25_040_DCR,
+ &I021_V0_25_040_GBS,
+ &I021_V0_25_040_SIM,
+ &I021_V0_25_040_TST,
+ &I021_V0_25_040_RAB,
+ &I021_V0_25_040_SAA,
+ &I021_V0_25_040_SPI,
+ &IXXX_1bit_spare,
+ &I021_V0_25_040_ATP,
+ &I021_V0_25_040_ARC,
+ &IXXX_3bit_spare,
+ NULL
+};
+static const AsterixField I021_V0_25_040 = { FIXED, 2, 0, 0, &hf_021_V0_25_040, I021_V0_25_040_PARTS, { NULL } };
+static int hf_021_V0_25_080 = -1;
+static int hf_021_V0_25_080_VALUE = -1;
+static const FieldPart I021_V0_25_080_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_021_V0_25_080_VALUE, NULL };
+static const FieldPart *I021_V0_25_080_PARTS[] = {
+ &I021_V0_25_080_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_25_080 = { FIXED, 3, 0, 0, &hf_021_V0_25_080, I021_V0_25_080_PARTS, { NULL } };
+static int hf_021_V0_25_090 = -1;
+static int hf_021_V0_25_090_AC = -1;
+static const value_string valstr_021_V0_25_090_AC[] = {
+ { 0, "Unknown" },
+ { 1, "ACAS not operational" },
+ { 2, "ACAS operartional" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_090_AC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_25_090_AC, NULL };
+static int hf_021_V0_25_090_MN = -1;
+static const value_string valstr_021_V0_25_090_MN[] = {
+ { 0, "Unknown" },
+ { 1, "Multiple Navigation not operational" },
+ { 2, "Multiple Navigation operartional" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_090_MN = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_25_090_MN, NULL };
+static int hf_021_V0_25_090_DC = -1;
+static const value_string valstr_021_V0_25_090_DC[] = {
+ { 0, "Unknown" },
+ { 1, "Differencial Correction" },
+ { 2, "NO Differencial Correction" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_090_DC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_25_090_DC, NULL };
+static int hf_021_V0_25_090_PA = -1;
+static const FieldPart I021_V0_25_090_PA = { 4, 1.0, FIELD_PART_FLOAT, &hf_021_V0_25_090_PA, NULL };
+static const FieldPart *I021_V0_25_090_PARTS[] = {
+ &I021_V0_25_090_AC,
+ &I021_V0_25_090_MN,
+ &I021_V0_25_090_DC,
+ &IXXX_6bit_spare,
+ &I021_V0_25_090_PA,
+ NULL
+};
+static const AsterixField I021_V0_25_090 = { FIXED, 2, 0, 0, &hf_021_V0_25_090, I021_V0_25_090_PARTS, { NULL } };
+static int hf_021_V0_25_095 = -1;
+static int hf_021_V0_25_095_VALUE = -1;
+static const FieldPart I021_V0_25_095_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_021_V0_25_095_VALUE, NULL };
+static const FieldPart *I021_V0_25_095_PARTS[] = {
+ &I021_V0_25_095_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_25_095 = { FIXED, 1, 0, 0, &hf_021_V0_25_095, I021_V0_25_095_PARTS, { NULL } };
+static int hf_021_V0_25_110 = -1;
+static int hf_021_V0_25_110_TIS = -1;
+static int hf_021_V0_25_110_TIS_NAV = -1;
+static const value_string valstr_021_V0_25_110_TIS_NAV[] = {
+ { 0, "Trajectory Intent Data is available for this aircraft" },
+ { 1, "Trajectory Intent Data is not available for this aircraft" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_110_TIS_NAV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_25_110_TIS_NAV, NULL };
+static int hf_021_V0_25_110_TIS_NVB = -1;
+static const value_string valstr_021_V0_25_110_TIS_NVB[] = {
+ { 0, "Trajectory Intent Data is valid" },
+ { 1, "Trajectory Intent Data is not valid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_110_TIS_NVB = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_25_110_TIS_NVB, NULL };
+static const FieldPart *I021_V0_25_110_TIS_PARTS[] = {
+ &I021_V0_25_110_TIS_NAV,
+ &I021_V0_25_110_TIS_NVB,
+ &IXXX_5bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V0_25_110_TIS = { FX, 1, 0, 0, &hf_021_V0_25_110_TIS, I021_V0_25_110_TIS_PARTS, { NULL } };
+static int hf_021_V0_25_110_TID = -1;
+static int hf_021_V0_25_110_TID_TCA = -1;
+static const value_string valstr_021_V0_25_110_TID_TCA[] = {
+ { 0, "TCP number available" },
+ { 1, "TCP number not available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_110_TID_TCA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_25_110_TID_TCA, NULL };
+static int hf_021_V0_25_110_TID_NC = -1;
+static const value_string valstr_021_V0_25_110_TID_NC[] = {
+ { 0, "TCP compliance" },
+ { 1, "TCP non-compliance" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_110_TID_NC = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_25_110_TID_NC, NULL };
+static int hf_021_V0_25_110_TID_TCPN = -1;
+static const FieldPart I021_V0_25_110_TID_TCPN = { 6, 1.0, FIELD_PART_HEX, &hf_021_V0_25_110_TID_TCPN, NULL };
+static int hf_021_V0_25_110_TID_ALT = -1;
+static const FieldPart I021_V0_25_110_TID_ALT = { 16, 10.0, FIELD_PART_FLOAT, &hf_021_V0_25_110_TID_ALT, NULL };
+static int hf_021_V0_25_110_TID_LAT = -1;
+static const FieldPart I021_V0_25_110_TID_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V0_25_110_TID_LAT, NULL };
+static int hf_021_V0_25_110_TID_LON = -1;
+static const FieldPart I021_V0_25_110_TID_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V0_25_110_TID_LON, NULL };
+static int hf_021_V0_25_110_TID_PT = -1;
+static const value_string valstr_021_V0_25_110_TID_PT[] = {
+ { 0, "Unknown" },
+ { 1, "Fly by waypoint (LT)" },
+ { 2, "Fly over waypoint (LT)" },
+ { 3, "Hold pattern (LT)" },
+ { 4, "Procedure hold (LT)" },
+ { 5, "Procedure turn (LT)" },
+ { 6, "RF leg (LT)" },
+ { 7, "Top of climb (VT)" },
+ { 8, "Top of descent (VT)" },
+ { 9, "Start of level (VT)" },
+ { 10, "Cross-over altitude (VT)" },
+ { 11, "Transition altitude (VT)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_110_TID_PT = { 4, 1.0, FIELD_PART_UINT, &hf_021_V0_25_110_TID_PT, NULL };
+static int hf_021_V0_25_110_TID_TD = -1;
+static const value_string valstr_021_V0_25_110_TID_TD[] = {
+ { 0, "N/A" },
+ { 1, "Turn right" },
+ { 2, "Turn left" },
+ { 3, "No turn" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_110_TID_TD = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_25_110_TID_TD, NULL };
+static int hf_021_V0_25_110_TID_TRA = -1;
+static const value_string valstr_021_V0_25_110_TID_TRA[] = {
+ { 0, "TTR not available" },
+ { 1, "TTR available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_110_TID_TRA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_25_110_TID_TRA, NULL };
+static int hf_021_V0_25_110_TID_TOA = -1;
+static const value_string valstr_021_V0_25_110_TID_TOA[] = {
+ { 0, "TOV available" },
+ { 1, "TOV not available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_110_TID_TOA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_25_110_TID_TOA, NULL };
+static int hf_021_V0_25_110_TID_TOV = -1;
+static const FieldPart I021_V0_25_110_TID_TOV = { 24, 1.0, FIELD_PART_UFLOAT, &hf_021_V0_25_110_TID_TOV, NULL };
+static int hf_021_V0_25_110_TID_TTR = -1;
+static const FieldPart I021_V0_25_110_TID_TTR = { 16, 0.01, FIELD_PART_UFLOAT, &hf_021_V0_25_110_TID_TTR, NULL };
+static const FieldPart *I021_V0_25_110_TID_PARTS[] = {
+ &I021_V0_25_110_TID_TCA,
+ &I021_V0_25_110_TID_NC,
+ &I021_V0_25_110_TID_TCPN,
+ &I021_V0_25_110_TID_ALT,
+ &I021_V0_25_110_TID_LAT,
+ &I021_V0_25_110_TID_LON,
+ &I021_V0_25_110_TID_PT,
+ &I021_V0_25_110_TID_TD,
+ &I021_V0_25_110_TID_TRA,
+ &I021_V0_25_110_TID_TOA,
+ &I021_V0_25_110_TID_TOV,
+ &I021_V0_25_110_TID_TTR,
+ NULL
+};
+static const AsterixField I021_V0_25_110_TID = { REPETITIVE, 15, 1, 0, &hf_021_V0_25_110_TID, I021_V0_25_110_TID_PARTS, { NULL } };
+static const AsterixField I021_V0_25_110 = { COMPOUND, 0, 0, 0, &hf_021_V0_25_110, NULL, { &I021_V0_25_110_TIS, &I021_V0_25_110_TID, NULL } };
+static int hf_021_V0_25_130 = -1;
+static int hf_021_V0_25_130_LAT = -1;
+static const FieldPart I021_V0_25_130_LAT = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_021_V0_25_130_LAT, NULL };
+static int hf_021_V0_25_130_LON = -1;
+static const FieldPart I021_V0_25_130_LON = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_021_V0_25_130_LON, NULL };
+static const FieldPart *I021_V0_25_130_PARTS[] = {
+ &I021_V0_25_130_LAT,
+ &I021_V0_25_130_LON,
+ NULL
+};
+static const AsterixField I021_V0_25_130 = { FIXED, 8, 0, 0, &hf_021_V0_25_130, I021_V0_25_130_PARTS, { NULL } };
+static int hf_021_V0_25_140 = -1;
+static int hf_021_V0_25_140_VALUE = -1;
+static const FieldPart I021_V0_25_140_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_021_V0_25_140_VALUE, NULL };
+static const FieldPart *I021_V0_25_140_PARTS[] = {
+ &I021_V0_25_140_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_25_140 = { FIXED, 2, 0, 0, &hf_021_V0_25_140, I021_V0_25_140_PARTS, { NULL } };
+static int hf_021_V0_25_145 = -1;
+static int hf_021_V0_25_145_VALUE = -1;
+static const FieldPart I021_V0_25_145_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_021_V0_25_145_VALUE, NULL };
+static const FieldPart *I021_V0_25_145_PARTS[] = {
+ &I021_V0_25_145_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_25_145 = { FIXED, 2, 0, 0, &hf_021_V0_25_145, I021_V0_25_145_PARTS, { NULL } };
+static int hf_021_V0_25_146 = -1;
+static int hf_021_V0_25_146_SAS = -1;
+static const value_string valstr_021_V0_25_146_SAS[] = {
+ { 0, "No source information provided" },
+ { 1, "Source Information provided" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_146_SAS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_25_146_SAS, NULL };
+static int hf_021_V0_25_146_SRC = -1;
+static const value_string valstr_021_V0_25_146_SRC[] = {
+ { 0, "Unknown" },
+ { 1, "Aircraft Altitude (Holding Altitude)" },
+ { 2, "MCP/FCU Selected Altitude" },
+ { 3, "FMS Selected Altitude" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_146_SRC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_25_146_SRC, NULL };
+static int hf_021_V0_25_146_ALT = -1;
+static const FieldPart I021_V0_25_146_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_021_V0_25_146_ALT, NULL };
+static const FieldPart *I021_V0_25_146_PARTS[] = {
+ &I021_V0_25_146_SAS,
+ &I021_V0_25_146_SRC,
+ &I021_V0_25_146_ALT,
+ NULL
+};
+static const AsterixField I021_V0_25_146 = { FIXED, 2, 0, 0, &hf_021_V0_25_146, I021_V0_25_146_PARTS, { NULL } };
+static int hf_021_V0_25_148 = -1;
+static int hf_021_V0_25_148_MV = -1;
+static const value_string valstr_021_V0_25_148_MV[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_148_MV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_25_148_MV, NULL };
+static int hf_021_V0_25_148_AH = -1;
+static const value_string valstr_021_V0_25_148_AH[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_148_AH = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_25_148_AH, NULL };
+static int hf_021_V0_25_148_AM = -1;
+static const value_string valstr_021_V0_25_148_AM[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_148_AM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_25_148_AM, NULL };
+static int hf_021_V0_25_148_ALT = -1;
+static const FieldPart I021_V0_25_148_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_021_V0_25_148_ALT, NULL };
+static const FieldPart *I021_V0_25_148_PARTS[] = {
+ &I021_V0_25_148_MV,
+ &I021_V0_25_148_AH,
+ &I021_V0_25_148_AM,
+ &I021_V0_25_148_ALT,
+ NULL
+};
+static const AsterixField I021_V0_25_148 = { FIXED, 2, 0, 0, &hf_021_V0_25_148, I021_V0_25_148_PARTS, { NULL } };
+static int hf_021_V0_25_150 = -1;
+static int hf_021_V0_25_150_IM = -1;
+static const value_string valstr_021_V0_25_150_IM[] = {
+ { 0, "Air Speed = IAS, LSB (Bit-1) = 2 -14 NM/s" },
+ { 1, "Air Speed = Mach, LSB (Bit-1) = 0.001" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_150_IM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_25_150_IM, NULL };
+static int hf_021_V0_25_150_AS = -1;
+static const FieldPart I021_V0_25_150_AS = { 15, 1.0, FIELD_PART_HEX, &hf_021_V0_25_150_AS, NULL };
+static const FieldPart *I021_V0_25_150_PARTS[] = {
+ &I021_V0_25_150_IM,
+ &I021_V0_25_150_AS,
+ NULL
+};
+static const AsterixField I021_V0_25_150 = { FIXED, 2, 0, 0, &hf_021_V0_25_150, I021_V0_25_150_PARTS, { NULL } };
+static int hf_021_V0_25_151 = -1;
+static int hf_021_V0_25_151_VALUE = -1;
+static const FieldPart I021_V0_25_151_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_V0_25_151_VALUE, NULL };
+static const FieldPart *I021_V0_25_151_PARTS[] = {
+ &I021_V0_25_151_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_25_151 = { FIXED, 2, 0, 0, &hf_021_V0_25_151, I021_V0_25_151_PARTS, { NULL } };
+static int hf_021_V0_25_152 = -1;
+static int hf_021_V0_25_152_VALUE = -1;
+static const FieldPart I021_V0_25_152_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_021_V0_25_152_VALUE, NULL };
+static const FieldPart *I021_V0_25_152_PARTS[] = {
+ &I021_V0_25_152_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_25_152 = { FIXED, 2, 0, 0, &hf_021_V0_25_152, I021_V0_25_152_PARTS, { NULL } };
+static int hf_021_V0_25_155 = -1;
+static int hf_021_V0_25_155_VALUE = -1;
+static const FieldPart I021_V0_25_155_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_021_V0_25_155_VALUE, NULL };
+static const FieldPart *I021_V0_25_155_PARTS[] = {
+ &I021_V0_25_155_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_25_155 = { FIXED, 2, 0, 0, &hf_021_V0_25_155, I021_V0_25_155_PARTS, { NULL } };
+static int hf_021_V0_25_157 = -1;
+static int hf_021_V0_25_157_VALUE = -1;
+static const FieldPart I021_V0_25_157_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_021_V0_25_157_VALUE, NULL };
+static const FieldPart *I021_V0_25_157_PARTS[] = {
+ &I021_V0_25_157_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_25_157 = { FIXED, 2, 0, 0, &hf_021_V0_25_157, I021_V0_25_157_PARTS, { NULL } };
+static int hf_021_V0_25_160 = -1;
+static int hf_021_V0_25_160_GS = -1;
+static const FieldPart I021_V0_25_160_GS = { 16, 0.00006103515625, FIELD_PART_FLOAT, &hf_021_V0_25_160_GS, NULL };
+static int hf_021_V0_25_160_TA = -1;
+static const FieldPart I021_V0_25_160_TA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_021_V0_25_160_TA, NULL };
+static const FieldPart *I021_V0_25_160_PARTS[] = {
+ &I021_V0_25_160_GS,
+ &I021_V0_25_160_TA,
+ NULL
+};
+static const AsterixField I021_V0_25_160 = { FIXED, 4, 0, 0, &hf_021_V0_25_160, I021_V0_25_160_PARTS, { NULL } };
+static int hf_021_V0_25_165 = -1;
+static int hf_021_V0_25_165_TI = -1;
+static const value_string valstr_021_V0_25_165_TI[] = {
+ { 0, "Not available" },
+ { 1, "Left" },
+ { 2, "Right" },
+ { 3, "Straight" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_165_TI = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_25_165_TI, NULL };
+static int hf_021_V0_25_165_ROT = -1;
+static const FieldPart I021_V0_25_165_ROT = { 7, 0.25, FIELD_PART_FLOAT, &hf_021_V0_25_165_ROT, NULL };
+static const FieldPart *I021_V0_25_165_PARTS[] = {
+ &I021_V0_25_165_TI,
+ &IXXX_5bit_spare,
+ &IXXX_FX,
+ &I021_V0_25_165_ROT,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V0_25_165 = { FX, 1, 0, 0, &hf_021_V0_25_165, I021_V0_25_165_PARTS, { NULL } };
+static int hf_021_V0_25_170 = -1;
+static int hf_021_V0_25_170_VALUE = -1;
+static const FieldPart I021_V0_25_170_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_021_V0_25_170_VALUE, NULL };
+static const FieldPart *I021_V0_25_170_PARTS[] = {
+ &I021_V0_25_170_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_25_170 = { FIXED, 6, 0, 0, &hf_021_V0_25_170, I021_V0_25_170_PARTS, { NULL } };
+static int hf_021_V0_25_200 = -1;
+static int hf_021_V0_25_200_VALUE = -1;
+static const value_string valstr_021_V0_25_200_VALUE[] = {
+ { 0, "No emergency / not reported" },
+ { 1, "General emergency" },
+ { 2, "Lifeguard / medical" },
+ { 3, "Minimum fuel" },
+ { 4, "No communications" },
+ { 5, "Unlawful interference" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_200_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_V0_25_200_VALUE, NULL };
+static const FieldPart *I021_V0_25_200_PARTS[] = {
+ &I021_V0_25_200_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_25_200 = { FIXED, 1, 0, 0, &hf_021_V0_25_200, I021_V0_25_200_PARTS, { NULL } };
+static int hf_021_V0_25_210 = -1;
+static int hf_021_V0_25_210_DTI = -1;
+static const value_string valstr_021_V0_25_210_DTI[] = {
+ { 0, "Unknown" },
+ { 1, "Aircraft equiped with CDTI" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_210_DTI = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_25_210_DTI, NULL };
+static int hf_021_V0_25_210_MDS = -1;
+static const value_string valstr_021_V0_25_210_MDS[] = {
+ { 0, "Not used" },
+ { 1, "Used" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_210_MDS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_25_210_MDS, NULL };
+static int hf_021_V0_25_210_UAT = -1;
+static const value_string valstr_021_V0_25_210_UAT[] = {
+ { 0, "Not used" },
+ { 1, "Used" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_210_UAT = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_25_210_UAT, NULL };
+static int hf_021_V0_25_210_VDL = -1;
+static const value_string valstr_021_V0_25_210_VDL[] = {
+ { 0, "Not used" },
+ { 1, "Used" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_210_VDL = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_25_210_VDL, NULL };
+static int hf_021_V0_25_210_OTR = -1;
+static const value_string valstr_021_V0_25_210_OTR[] = {
+ { 0, "Not used" },
+ { 1, "Used" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_25_210_OTR = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_25_210_OTR, NULL };
+static const FieldPart *I021_V0_25_210_PARTS[] = {
+ &IXXX_3bit_spare,
+ &I021_V0_25_210_DTI,
+ &I021_V0_25_210_MDS,
+ &I021_V0_25_210_UAT,
+ &I021_V0_25_210_VDL,
+ &I021_V0_25_210_OTR,
+ NULL
+};
+static const AsterixField I021_V0_25_210 = { FIXED, 1, 0, 0, &hf_021_V0_25_210, I021_V0_25_210_PARTS, { NULL } };
+static int hf_021_V0_25_220 = -1;
+static int hf_021_V0_25_220_WS = -1;
+static int hf_021_V0_25_220_WS_VALUE = -1;
+static const FieldPart I021_V0_25_220_WS_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_V0_25_220_WS_VALUE, NULL };
+static const FieldPart *I021_V0_25_220_WS_PARTS[] = {
+ &I021_V0_25_220_WS_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_25_220_WS = { FIXED, 2, 0, 0, &hf_021_V0_25_220_WS, I021_V0_25_220_WS_PARTS, { NULL } };
+static int hf_021_V0_25_220_WD = -1;
+static int hf_021_V0_25_220_WD_VALUE = -1;
+static const FieldPart I021_V0_25_220_WD_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_V0_25_220_WD_VALUE, NULL };
+static const FieldPart *I021_V0_25_220_WD_PARTS[] = {
+ &I021_V0_25_220_WD_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_25_220_WD = { FIXED, 2, 0, 0, &hf_021_V0_25_220_WD, I021_V0_25_220_WD_PARTS, { NULL } };
+static int hf_021_V0_25_220_TMP = -1;
+static int hf_021_V0_25_220_TMP_VALUE = -1;
+static const FieldPart I021_V0_25_220_TMP_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_021_V0_25_220_TMP_VALUE, NULL };
+static const FieldPart *I021_V0_25_220_TMP_PARTS[] = {
+ &I021_V0_25_220_TMP_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_25_220_TMP = { FIXED, 2, 0, 0, &hf_021_V0_25_220_TMP, I021_V0_25_220_TMP_PARTS, { NULL } };
+static int hf_021_V0_25_220_TRB = -1;
+static int hf_021_V0_25_220_TRB_VALUE = -1;
+static const FieldPart I021_V0_25_220_TRB_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_V0_25_220_TRB_VALUE, NULL };
+static const FieldPart *I021_V0_25_220_TRB_PARTS[] = {
+ &I021_V0_25_220_TRB_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_25_220_TRB = { FIXED, 1, 0, 0, &hf_021_V0_25_220_TRB, I021_V0_25_220_TRB_PARTS, { NULL } };
+static const AsterixField I021_V0_25_220 = { COMPOUND, 0, 0, 0, &hf_021_V0_25_220, NULL, { &I021_V0_25_220_WS, &I021_V0_25_220_WD, &I021_V0_25_220_TMP, &I021_V0_25_220_TRB, NULL } };
+static int hf_021_V0_25_230 = -1;
+static int hf_021_V0_25_230_VALUE = -1;
+static const FieldPart I021_V0_25_230_VALUE = { 16, 0.01, FIELD_PART_FLOAT, &hf_021_V0_25_230_VALUE, NULL };
+static const FieldPart *I021_V0_25_230_PARTS[] = {
+ &I021_V0_25_230_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_25_230 = { FIXED, 2, 0, 0, &hf_021_V0_25_230, I021_V0_25_230_PARTS, { NULL } };
+static int hf_021_V0_25_RE = -1;
+static const AsterixField I021_V0_25_RE = { EXP, 0, 0, 1, &hf_021_V0_25_RE, NULL, { NULL } };
+static int hf_021_V0_25_SP = -1;
+static const AsterixField I021_V0_25_SP = { EXP, 0, 0, 1, &hf_021_V0_25_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I021_V0_25_uap[] = {
+ &I021_V0_25_010,
+ &I021_V0_25_040,
+ &I021_V0_25_030,
+ &I021_V0_25_130,
+ &I021_V0_25_080,
+ &I021_V0_25_140,
+ &I021_V0_25_090,
+ &I021_V0_25_210,
+ &I021_V0_25_230,
+ &I021_V0_25_145,
+ &I021_V0_25_150,
+ &I021_V0_25_151,
+ &I021_V0_25_152,
+ &I021_V0_25_155,
+ &I021_V0_25_157,
+ &I021_V0_25_160,
+ &I021_V0_25_165,
+ &I021_V0_25_170,
+ &I021_V0_25_095,
+ &I021_V0_25_032,
+ &I021_V0_25_200,
+ &I021_V0_25_020,
+ &I021_V0_25_220,
+ &I021_V0_25_146,
+ &I021_V0_25_148,
+ &I021_V0_25_110,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I021_V0_25_RE,
+ &I021_V0_25_SP,
+ NULL
+};
+static const AsterixField **I021_V0_25[] = {
+ I021_V0_25_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 021, edition 0.26 */
+static int hf_021_V0_26_010 = -1;
+static int hf_021_V0_26_010_SAC = -1;
+static const FieldPart I021_V0_26_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_021_V0_26_010_SAC, NULL };
+static int hf_021_V0_26_010_SIC = -1;
+static const FieldPart I021_V0_26_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_021_V0_26_010_SIC, NULL };
+static const FieldPart *I021_V0_26_010_PARTS[] = {
+ &I021_V0_26_010_SAC,
+ &I021_V0_26_010_SIC,
+ NULL
+};
+static const AsterixField I021_V0_26_010 = { FIXED, 2, 0, 0, &hf_021_V0_26_010, I021_V0_26_010_PARTS, { NULL } };
+static int hf_021_V0_26_020 = -1;
+static int hf_021_V0_26_020_VALUE = -1;
+static const value_string valstr_021_V0_26_020_VALUE[] = {
+ { 1, "Light aircraft <= 7000 kg" },
+ { 2, "Reserved" },
+ { 3, "7000 kg < Medium aircraft < 136000 kg" },
+ { 4, "Reserved" },
+ { 5, "136000 kg <= Heavy aircraft" },
+ { 6, "Highly manoeuvrable (5g acceleration capability) and high speed (>400 knots cruise)" },
+ { 7, "Reserved" },
+ { 8, "Reserved" },
+ { 9, "Reserved" },
+ { 10, "Rotocraft" },
+ { 11, "Glider / sailplane" },
+ { 12, "Lighter-than-air" },
+ { 13, "Unmanned aerial vehicle" },
+ { 14, "Space / transatmospheric vehicle" },
+ { 15, "Ultralight / handglider / paraglider" },
+ { 16, "Parachutist / skydiver" },
+ { 17, "Reserved" },
+ { 18, "Reserved" },
+ { 19, "Reserved" },
+ { 20, "Surface emergency vehicle" },
+ { 21, "Surface service vehicle" },
+ { 22, "Fixed ground or tethered obstruction" },
+ { 23, "Reserved" },
+ { 24, "Reserved" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_020_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_V0_26_020_VALUE, NULL };
+static const FieldPart *I021_V0_26_020_PARTS[] = {
+ &I021_V0_26_020_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_26_020 = { FIXED, 1, 0, 0, &hf_021_V0_26_020, I021_V0_26_020_PARTS, { NULL } };
+static int hf_021_V0_26_030 = -1;
+static int hf_021_V0_26_030_VALUE = -1;
+static const FieldPart I021_V0_26_030_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V0_26_030_VALUE, NULL };
+static const FieldPart *I021_V0_26_030_PARTS[] = {
+ &I021_V0_26_030_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_26_030 = { FIXED, 3, 0, 0, &hf_021_V0_26_030, I021_V0_26_030_PARTS, { NULL } };
+static int hf_021_V0_26_032 = -1;
+static int hf_021_V0_26_032_VALUE = -1;
+static const FieldPart I021_V0_26_032_VALUE = { 8, 0.00390625, FIELD_PART_UFLOAT, &hf_021_V0_26_032_VALUE, NULL };
+static const FieldPart *I021_V0_26_032_PARTS[] = {
+ &I021_V0_26_032_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_26_032 = { FIXED, 1, 0, 0, &hf_021_V0_26_032, I021_V0_26_032_PARTS, { NULL } };
+static int hf_021_V0_26_040 = -1;
+static int hf_021_V0_26_040_DCR = -1;
+static const value_string valstr_021_V0_26_040_DCR[] = {
+ { 0, "No differential correction (ADS-B)" },
+ { 1, "Differential correction (ADS-B)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_040_DCR = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_040_DCR, NULL };
+static int hf_021_V0_26_040_GBS = -1;
+static const value_string valstr_021_V0_26_040_GBS[] = {
+ { 0, "Ground Bit not set" },
+ { 1, "Ground Bit set" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_040_GBS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_040_GBS, NULL };
+static int hf_021_V0_26_040_SIM = -1;
+static const value_string valstr_021_V0_26_040_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_040_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_040_SIM, NULL };
+static int hf_021_V0_26_040_TST = -1;
+static const value_string valstr_021_V0_26_040_TST[] = {
+ { 0, "Default" },
+ { 1, "Test Target" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_040_TST = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_040_TST, NULL };
+static int hf_021_V0_26_040_RAB = -1;
+static const value_string valstr_021_V0_26_040_RAB[] = {
+ { 0, "Report from target transponder" },
+ { 1, "Report from field monitor (fixed transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_040_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_040_RAB, NULL };
+static int hf_021_V0_26_040_SAA = -1;
+static const value_string valstr_021_V0_26_040_SAA[] = {
+ { 0, "Equipment capable to provide Selected Altitude" },
+ { 1, "Equipment not capable to provide Selected Altitude" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_040_SAA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_040_SAA, NULL };
+static int hf_021_V0_26_040_SPI = -1;
+static const value_string valstr_021_V0_26_040_SPI[] = {
+ { 0, "Absence of SPI" },
+ { 1, "Special Position Identification" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_040_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_040_SPI, NULL };
+static int hf_021_V0_26_040_ATP = -1;
+static const value_string valstr_021_V0_26_040_ATP[] = {
+ { 0, "Non unique address" },
+ { 1, "24-Bit ICAO address" },
+ { 2, "Surface vehicle address" },
+ { 3, "Anonymous address" },
+ { 4, "Reserved for future use" },
+ { 5, "Reserved for future use" },
+ { 6, "Reserved for future use" },
+ { 7, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_040_ATP = { 3, 1.0, FIELD_PART_UINT, &hf_021_V0_26_040_ATP, NULL };
+static int hf_021_V0_26_040_ARC = -1;
+static const value_string valstr_021_V0_26_040_ARC[] = {
+ { 0, "Unknown" },
+ { 1, "25 ft" },
+ { 2, "100 ft" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_040_ARC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_26_040_ARC, NULL };
+static const FieldPart *I021_V0_26_040_PARTS[] = {
+ &I021_V0_26_040_DCR,
+ &I021_V0_26_040_GBS,
+ &I021_V0_26_040_SIM,
+ &I021_V0_26_040_TST,
+ &I021_V0_26_040_RAB,
+ &I021_V0_26_040_SAA,
+ &I021_V0_26_040_SPI,
+ &IXXX_1bit_spare,
+ &I021_V0_26_040_ATP,
+ &I021_V0_26_040_ARC,
+ &IXXX_3bit_spare,
+ NULL
+};
+static const AsterixField I021_V0_26_040 = { FIXED, 2, 0, 0, &hf_021_V0_26_040, I021_V0_26_040_PARTS, { NULL } };
+static int hf_021_V0_26_070 = -1;
+static int hf_021_V0_26_070_V = -1;
+static const value_string valstr_021_V0_26_070_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_070_V = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_070_V, NULL };
+static int hf_021_V0_26_070_G = -1;
+static const value_string valstr_021_V0_26_070_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_070_G = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_070_G, NULL };
+static int hf_021_V0_26_070_L = -1;
+static const value_string valstr_021_V0_26_070_L[] = {
+ { 0, "Mode-3/A code derived during last update" },
+ { 1, "Mode-3/A code not extracted during the last update" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_070_L = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_070_L, NULL };
+static int hf_021_V0_26_070_MODE3A = -1;
+static const FieldPart I021_V0_26_070_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_021_V0_26_070_MODE3A, NULL };
+static const FieldPart *I021_V0_26_070_PARTS[] = {
+ &I021_V0_26_070_V,
+ &I021_V0_26_070_G,
+ &I021_V0_26_070_L,
+ &IXXX_1bit_spare,
+ &I021_V0_26_070_MODE3A,
+ NULL
+};
+static const AsterixField I021_V0_26_070 = { FIXED, 2, 0, 0, &hf_021_V0_26_070, I021_V0_26_070_PARTS, { NULL } };
+static int hf_021_V0_26_080 = -1;
+static int hf_021_V0_26_080_VALUE = -1;
+static const FieldPart I021_V0_26_080_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_021_V0_26_080_VALUE, NULL };
+static const FieldPart *I021_V0_26_080_PARTS[] = {
+ &I021_V0_26_080_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_26_080 = { FIXED, 3, 0, 0, &hf_021_V0_26_080, I021_V0_26_080_PARTS, { NULL } };
+static int hf_021_V0_26_090 = -1;
+static int hf_021_V0_26_090_AC = -1;
+static const value_string valstr_021_V0_26_090_AC[] = {
+ { 0, "Unknown" },
+ { 1, "ACAS not operational" },
+ { 2, "ACAS operartional" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_090_AC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_26_090_AC, NULL };
+static int hf_021_V0_26_090_MN = -1;
+static const value_string valstr_021_V0_26_090_MN[] = {
+ { 0, "Unknown" },
+ { 1, "Multiple Navigation not operational" },
+ { 2, "Multiple Navigation operartional" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_090_MN = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_26_090_MN, NULL };
+static int hf_021_V0_26_090_DC = -1;
+static const value_string valstr_021_V0_26_090_DC[] = {
+ { 0, "Unknown" },
+ { 1, "Differencial Correction" },
+ { 2, "NO Differencial Correction" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_090_DC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_26_090_DC, NULL };
+static int hf_021_V0_26_090_PA = -1;
+static const FieldPart I021_V0_26_090_PA = { 4, 1.0, FIELD_PART_FLOAT, &hf_021_V0_26_090_PA, NULL };
+static const FieldPart *I021_V0_26_090_PARTS[] = {
+ &I021_V0_26_090_AC,
+ &I021_V0_26_090_MN,
+ &I021_V0_26_090_DC,
+ &IXXX_6bit_spare,
+ &I021_V0_26_090_PA,
+ NULL
+};
+static const AsterixField I021_V0_26_090 = { FIXED, 2, 0, 0, &hf_021_V0_26_090, I021_V0_26_090_PARTS, { NULL } };
+static int hf_021_V0_26_095 = -1;
+static int hf_021_V0_26_095_VALUE = -1;
+static const FieldPart I021_V0_26_095_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_021_V0_26_095_VALUE, NULL };
+static const FieldPart *I021_V0_26_095_PARTS[] = {
+ &I021_V0_26_095_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_26_095 = { FIXED, 1, 0, 0, &hf_021_V0_26_095, I021_V0_26_095_PARTS, { NULL } };
+static int hf_021_V0_26_110 = -1;
+static int hf_021_V0_26_110_TIS = -1;
+static int hf_021_V0_26_110_TIS_NAV = -1;
+static const value_string valstr_021_V0_26_110_TIS_NAV[] = {
+ { 0, "Trajectory Intent Data is available for this aircraft" },
+ { 1, "Trajectory Intent Data is not available for this aircraft" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_110_TIS_NAV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_110_TIS_NAV, NULL };
+static int hf_021_V0_26_110_TIS_NVB = -1;
+static const value_string valstr_021_V0_26_110_TIS_NVB[] = {
+ { 0, "Trajectory Intent Data is valid" },
+ { 1, "Trajectory Intent Data is not valid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_110_TIS_NVB = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_110_TIS_NVB, NULL };
+static const FieldPart *I021_V0_26_110_TIS_PARTS[] = {
+ &I021_V0_26_110_TIS_NAV,
+ &I021_V0_26_110_TIS_NVB,
+ &IXXX_5bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V0_26_110_TIS = { FX, 1, 0, 0, &hf_021_V0_26_110_TIS, I021_V0_26_110_TIS_PARTS, { NULL } };
+static int hf_021_V0_26_110_TID = -1;
+static int hf_021_V0_26_110_TID_TCA = -1;
+static const value_string valstr_021_V0_26_110_TID_TCA[] = {
+ { 0, "TCP number available" },
+ { 1, "TCP number not available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_110_TID_TCA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_110_TID_TCA, NULL };
+static int hf_021_V0_26_110_TID_NC = -1;
+static const value_string valstr_021_V0_26_110_TID_NC[] = {
+ { 0, "TCP compliance" },
+ { 1, "TCP non-compliance" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_110_TID_NC = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_110_TID_NC, NULL };
+static int hf_021_V0_26_110_TID_TCPN = -1;
+static const FieldPart I021_V0_26_110_TID_TCPN = { 6, 1.0, FIELD_PART_HEX, &hf_021_V0_26_110_TID_TCPN, NULL };
+static int hf_021_V0_26_110_TID_ALT = -1;
+static const FieldPart I021_V0_26_110_TID_ALT = { 16, 10.0, FIELD_PART_FLOAT, &hf_021_V0_26_110_TID_ALT, NULL };
+static int hf_021_V0_26_110_TID_LAT = -1;
+static const FieldPart I021_V0_26_110_TID_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V0_26_110_TID_LAT, NULL };
+static int hf_021_V0_26_110_TID_LON = -1;
+static const FieldPart I021_V0_26_110_TID_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V0_26_110_TID_LON, NULL };
+static int hf_021_V0_26_110_TID_PT = -1;
+static const value_string valstr_021_V0_26_110_TID_PT[] = {
+ { 0, "Unknown" },
+ { 1, "Fly by waypoint (LT)" },
+ { 2, "Fly over waypoint (LT)" },
+ { 3, "Hold pattern (LT)" },
+ { 4, "Procedure hold (LT)" },
+ { 5, "Procedure turn (LT)" },
+ { 6, "RF leg (LT)" },
+ { 7, "Top of climb (VT)" },
+ { 8, "Top of descent (VT)" },
+ { 9, "Start of level (VT)" },
+ { 10, "Cross-over altitude (VT)" },
+ { 11, "Transition altitude (VT)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_110_TID_PT = { 4, 1.0, FIELD_PART_UINT, &hf_021_V0_26_110_TID_PT, NULL };
+static int hf_021_V0_26_110_TID_TD = -1;
+static const value_string valstr_021_V0_26_110_TID_TD[] = {
+ { 0, "N/A" },
+ { 1, "Turn right" },
+ { 2, "Turn left" },
+ { 3, "No turn" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_110_TID_TD = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_26_110_TID_TD, NULL };
+static int hf_021_V0_26_110_TID_TRA = -1;
+static const value_string valstr_021_V0_26_110_TID_TRA[] = {
+ { 0, "TTR not available" },
+ { 1, "TTR available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_110_TID_TRA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_110_TID_TRA, NULL };
+static int hf_021_V0_26_110_TID_TOA = -1;
+static const value_string valstr_021_V0_26_110_TID_TOA[] = {
+ { 0, "TOV available" },
+ { 1, "TOV not available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_110_TID_TOA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_110_TID_TOA, NULL };
+static int hf_021_V0_26_110_TID_TOV = -1;
+static const FieldPart I021_V0_26_110_TID_TOV = { 24, 1.0, FIELD_PART_UFLOAT, &hf_021_V0_26_110_TID_TOV, NULL };
+static int hf_021_V0_26_110_TID_TTR = -1;
+static const FieldPart I021_V0_26_110_TID_TTR = { 16, 0.01, FIELD_PART_UFLOAT, &hf_021_V0_26_110_TID_TTR, NULL };
+static const FieldPart *I021_V0_26_110_TID_PARTS[] = {
+ &I021_V0_26_110_TID_TCA,
+ &I021_V0_26_110_TID_NC,
+ &I021_V0_26_110_TID_TCPN,
+ &I021_V0_26_110_TID_ALT,
+ &I021_V0_26_110_TID_LAT,
+ &I021_V0_26_110_TID_LON,
+ &I021_V0_26_110_TID_PT,
+ &I021_V0_26_110_TID_TD,
+ &I021_V0_26_110_TID_TRA,
+ &I021_V0_26_110_TID_TOA,
+ &I021_V0_26_110_TID_TOV,
+ &I021_V0_26_110_TID_TTR,
+ NULL
+};
+static const AsterixField I021_V0_26_110_TID = { REPETITIVE, 15, 1, 0, &hf_021_V0_26_110_TID, I021_V0_26_110_TID_PARTS, { NULL } };
+static const AsterixField I021_V0_26_110 = { COMPOUND, 0, 0, 0, &hf_021_V0_26_110, NULL, { &I021_V0_26_110_TIS, &I021_V0_26_110_TID, NULL } };
+static int hf_021_V0_26_130 = -1;
+static int hf_021_V0_26_130_LAT = -1;
+static const FieldPart I021_V0_26_130_LAT = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_021_V0_26_130_LAT, NULL };
+static int hf_021_V0_26_130_LON = -1;
+static const FieldPart I021_V0_26_130_LON = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_021_V0_26_130_LON, NULL };
+static const FieldPart *I021_V0_26_130_PARTS[] = {
+ &I021_V0_26_130_LAT,
+ &I021_V0_26_130_LON,
+ NULL
+};
+static const AsterixField I021_V0_26_130 = { FIXED, 8, 0, 0, &hf_021_V0_26_130, I021_V0_26_130_PARTS, { NULL } };
+static int hf_021_V0_26_131 = -1;
+static int hf_021_V0_26_131_VALUE = -1;
+static const FieldPart I021_V0_26_131_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_021_V0_26_131_VALUE, NULL };
+static const FieldPart *I021_V0_26_131_PARTS[] = {
+ &I021_V0_26_131_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_26_131 = { FIXED, 1, 0, 0, &hf_021_V0_26_131, I021_V0_26_131_PARTS, { NULL } };
+static int hf_021_V0_26_140 = -1;
+static int hf_021_V0_26_140_VALUE = -1;
+static const FieldPart I021_V0_26_140_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_021_V0_26_140_VALUE, NULL };
+static const FieldPart *I021_V0_26_140_PARTS[] = {
+ &I021_V0_26_140_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_26_140 = { FIXED, 2, 0, 0, &hf_021_V0_26_140, I021_V0_26_140_PARTS, { NULL } };
+static int hf_021_V0_26_145 = -1;
+static int hf_021_V0_26_145_VALUE = -1;
+static const FieldPart I021_V0_26_145_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_021_V0_26_145_VALUE, NULL };
+static const FieldPart *I021_V0_26_145_PARTS[] = {
+ &I021_V0_26_145_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_26_145 = { FIXED, 2, 0, 0, &hf_021_V0_26_145, I021_V0_26_145_PARTS, { NULL } };
+static int hf_021_V0_26_146 = -1;
+static int hf_021_V0_26_146_SAS = -1;
+static const value_string valstr_021_V0_26_146_SAS[] = {
+ { 0, "No source information provided" },
+ { 1, "Source Information provided" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_146_SAS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_146_SAS, NULL };
+static int hf_021_V0_26_146_SRC = -1;
+static const value_string valstr_021_V0_26_146_SRC[] = {
+ { 0, "Unknown" },
+ { 1, "Aircraft Altitude (Holding Altitude)" },
+ { 2, "MCP/FCU Selected Altitude" },
+ { 3, "FMS Selected Altitude" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_146_SRC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_26_146_SRC, NULL };
+static int hf_021_V0_26_146_ALT = -1;
+static const FieldPart I021_V0_26_146_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_021_V0_26_146_ALT, NULL };
+static const FieldPart *I021_V0_26_146_PARTS[] = {
+ &I021_V0_26_146_SAS,
+ &I021_V0_26_146_SRC,
+ &I021_V0_26_146_ALT,
+ NULL
+};
+static const AsterixField I021_V0_26_146 = { FIXED, 2, 0, 0, &hf_021_V0_26_146, I021_V0_26_146_PARTS, { NULL } };
+static int hf_021_V0_26_148 = -1;
+static int hf_021_V0_26_148_MV = -1;
+static const value_string valstr_021_V0_26_148_MV[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_148_MV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_148_MV, NULL };
+static int hf_021_V0_26_148_AH = -1;
+static const value_string valstr_021_V0_26_148_AH[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_148_AH = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_148_AH, NULL };
+static int hf_021_V0_26_148_AM = -1;
+static const value_string valstr_021_V0_26_148_AM[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_148_AM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_148_AM, NULL };
+static int hf_021_V0_26_148_ALT = -1;
+static const FieldPart I021_V0_26_148_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_021_V0_26_148_ALT, NULL };
+static const FieldPart *I021_V0_26_148_PARTS[] = {
+ &I021_V0_26_148_MV,
+ &I021_V0_26_148_AH,
+ &I021_V0_26_148_AM,
+ &I021_V0_26_148_ALT,
+ NULL
+};
+static const AsterixField I021_V0_26_148 = { FIXED, 2, 0, 0, &hf_021_V0_26_148, I021_V0_26_148_PARTS, { NULL } };
+static int hf_021_V0_26_150 = -1;
+static int hf_021_V0_26_150_IM = -1;
+static const value_string valstr_021_V0_26_150_IM[] = {
+ { 0, "Air Speed = IAS, LSB (Bit-1) = 2 -14 NM/s" },
+ { 1, "Air Speed = Mach, LSB (Bit-1) = 0.001" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_150_IM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_150_IM, NULL };
+static int hf_021_V0_26_150_AS = -1;
+static const FieldPart I021_V0_26_150_AS = { 15, 1.0, FIELD_PART_HEX, &hf_021_V0_26_150_AS, NULL };
+static const FieldPart *I021_V0_26_150_PARTS[] = {
+ &I021_V0_26_150_IM,
+ &I021_V0_26_150_AS,
+ NULL
+};
+static const AsterixField I021_V0_26_150 = { FIXED, 2, 0, 0, &hf_021_V0_26_150, I021_V0_26_150_PARTS, { NULL } };
+static int hf_021_V0_26_151 = -1;
+static int hf_021_V0_26_151_VALUE = -1;
+static const FieldPart I021_V0_26_151_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_V0_26_151_VALUE, NULL };
+static const FieldPart *I021_V0_26_151_PARTS[] = {
+ &I021_V0_26_151_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_26_151 = { FIXED, 2, 0, 0, &hf_021_V0_26_151, I021_V0_26_151_PARTS, { NULL } };
+static int hf_021_V0_26_152 = -1;
+static int hf_021_V0_26_152_VALUE = -1;
+static const FieldPart I021_V0_26_152_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_021_V0_26_152_VALUE, NULL };
+static const FieldPart *I021_V0_26_152_PARTS[] = {
+ &I021_V0_26_152_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_26_152 = { FIXED, 2, 0, 0, &hf_021_V0_26_152, I021_V0_26_152_PARTS, { NULL } };
+static int hf_021_V0_26_155 = -1;
+static int hf_021_V0_26_155_VALUE = -1;
+static const FieldPart I021_V0_26_155_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_021_V0_26_155_VALUE, NULL };
+static const FieldPart *I021_V0_26_155_PARTS[] = {
+ &I021_V0_26_155_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_26_155 = { FIXED, 2, 0, 0, &hf_021_V0_26_155, I021_V0_26_155_PARTS, { NULL } };
+static int hf_021_V0_26_157 = -1;
+static int hf_021_V0_26_157_VALUE = -1;
+static const FieldPart I021_V0_26_157_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_021_V0_26_157_VALUE, NULL };
+static const FieldPart *I021_V0_26_157_PARTS[] = {
+ &I021_V0_26_157_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_26_157 = { FIXED, 2, 0, 0, &hf_021_V0_26_157, I021_V0_26_157_PARTS, { NULL } };
+static int hf_021_V0_26_160 = -1;
+static int hf_021_V0_26_160_GS = -1;
+static const FieldPart I021_V0_26_160_GS = { 16, 0.00006103515625, FIELD_PART_FLOAT, &hf_021_V0_26_160_GS, NULL };
+static int hf_021_V0_26_160_TA = -1;
+static const FieldPart I021_V0_26_160_TA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_021_V0_26_160_TA, NULL };
+static const FieldPart *I021_V0_26_160_PARTS[] = {
+ &I021_V0_26_160_GS,
+ &I021_V0_26_160_TA,
+ NULL
+};
+static const AsterixField I021_V0_26_160 = { FIXED, 4, 0, 0, &hf_021_V0_26_160, I021_V0_26_160_PARTS, { NULL } };
+static int hf_021_V0_26_165 = -1;
+static int hf_021_V0_26_165_TI = -1;
+static const value_string valstr_021_V0_26_165_TI[] = {
+ { 0, "Not available" },
+ { 1, "Left" },
+ { 2, "Right" },
+ { 3, "Straight" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_165_TI = { 2, 1.0, FIELD_PART_UINT, &hf_021_V0_26_165_TI, NULL };
+static int hf_021_V0_26_165_ROT = -1;
+static const FieldPart I021_V0_26_165_ROT = { 7, 0.25, FIELD_PART_FLOAT, &hf_021_V0_26_165_ROT, NULL };
+static const FieldPart *I021_V0_26_165_PARTS[] = {
+ &I021_V0_26_165_TI,
+ &IXXX_5bit_spare,
+ &IXXX_FX,
+ &I021_V0_26_165_ROT,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V0_26_165 = { FX, 1, 0, 0, &hf_021_V0_26_165, I021_V0_26_165_PARTS, { NULL } };
+static int hf_021_V0_26_170 = -1;
+static int hf_021_V0_26_170_VALUE = -1;
+static const FieldPart I021_V0_26_170_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_021_V0_26_170_VALUE, NULL };
+static const FieldPart *I021_V0_26_170_PARTS[] = {
+ &I021_V0_26_170_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_26_170 = { FIXED, 6, 0, 0, &hf_021_V0_26_170, I021_V0_26_170_PARTS, { NULL } };
+static int hf_021_V0_26_200 = -1;
+static int hf_021_V0_26_200_VALUE = -1;
+static const value_string valstr_021_V0_26_200_VALUE[] = {
+ { 0, "No emergency / not reported" },
+ { 1, "General emergency" },
+ { 2, "Lifeguard / medical" },
+ { 3, "Minimum fuel" },
+ { 4, "No communications" },
+ { 5, "Unlawful interference" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_200_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_V0_26_200_VALUE, NULL };
+static const FieldPart *I021_V0_26_200_PARTS[] = {
+ &I021_V0_26_200_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_26_200 = { FIXED, 1, 0, 0, &hf_021_V0_26_200, I021_V0_26_200_PARTS, { NULL } };
+static int hf_021_V0_26_210 = -1;
+static int hf_021_V0_26_210_DTI = -1;
+static const value_string valstr_021_V0_26_210_DTI[] = {
+ { 0, "Unknown" },
+ { 1, "Aircraft equiped with CDTI" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_210_DTI = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_210_DTI, NULL };
+static int hf_021_V0_26_210_MDS = -1;
+static const value_string valstr_021_V0_26_210_MDS[] = {
+ { 0, "Not used" },
+ { 1, "Used" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_210_MDS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_210_MDS, NULL };
+static int hf_021_V0_26_210_UAT = -1;
+static const value_string valstr_021_V0_26_210_UAT[] = {
+ { 0, "Not used" },
+ { 1, "Used" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_210_UAT = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_210_UAT, NULL };
+static int hf_021_V0_26_210_VDL = -1;
+static const value_string valstr_021_V0_26_210_VDL[] = {
+ { 0, "Not used" },
+ { 1, "Used" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_210_VDL = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_210_VDL, NULL };
+static int hf_021_V0_26_210_OTR = -1;
+static const value_string valstr_021_V0_26_210_OTR[] = {
+ { 0, "Not used" },
+ { 1, "Used" },
+ { 0, NULL }
+};
+static const FieldPart I021_V0_26_210_OTR = { 1, 1.0, FIELD_PART_UINT, &hf_021_V0_26_210_OTR, NULL };
+static const FieldPart *I021_V0_26_210_PARTS[] = {
+ &IXXX_3bit_spare,
+ &I021_V0_26_210_DTI,
+ &I021_V0_26_210_MDS,
+ &I021_V0_26_210_UAT,
+ &I021_V0_26_210_VDL,
+ &I021_V0_26_210_OTR,
+ NULL
+};
+static const AsterixField I021_V0_26_210 = { FIXED, 1, 0, 0, &hf_021_V0_26_210, I021_V0_26_210_PARTS, { NULL } };
+static int hf_021_V0_26_220 = -1;
+static int hf_021_V0_26_220_WS = -1;
+static int hf_021_V0_26_220_WS_VALUE = -1;
+static const FieldPart I021_V0_26_220_WS_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_V0_26_220_WS_VALUE, NULL };
+static const FieldPart *I021_V0_26_220_WS_PARTS[] = {
+ &I021_V0_26_220_WS_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_26_220_WS = { FIXED, 2, 0, 0, &hf_021_V0_26_220_WS, I021_V0_26_220_WS_PARTS, { NULL } };
+static int hf_021_V0_26_220_WD = -1;
+static int hf_021_V0_26_220_WD_VALUE = -1;
+static const FieldPart I021_V0_26_220_WD_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_V0_26_220_WD_VALUE, NULL };
+static const FieldPart *I021_V0_26_220_WD_PARTS[] = {
+ &I021_V0_26_220_WD_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_26_220_WD = { FIXED, 2, 0, 0, &hf_021_V0_26_220_WD, I021_V0_26_220_WD_PARTS, { NULL } };
+static int hf_021_V0_26_220_TMP = -1;
+static int hf_021_V0_26_220_TMP_VALUE = -1;
+static const FieldPart I021_V0_26_220_TMP_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_021_V0_26_220_TMP_VALUE, NULL };
+static const FieldPart *I021_V0_26_220_TMP_PARTS[] = {
+ &I021_V0_26_220_TMP_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_26_220_TMP = { FIXED, 2, 0, 0, &hf_021_V0_26_220_TMP, I021_V0_26_220_TMP_PARTS, { NULL } };
+static int hf_021_V0_26_220_TRB = -1;
+static int hf_021_V0_26_220_TRB_VALUE = -1;
+static const FieldPart I021_V0_26_220_TRB_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_V0_26_220_TRB_VALUE, NULL };
+static const FieldPart *I021_V0_26_220_TRB_PARTS[] = {
+ &I021_V0_26_220_TRB_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_26_220_TRB = { FIXED, 1, 0, 0, &hf_021_V0_26_220_TRB, I021_V0_26_220_TRB_PARTS, { NULL } };
+static const AsterixField I021_V0_26_220 = { COMPOUND, 0, 0, 0, &hf_021_V0_26_220, NULL, { &I021_V0_26_220_WS, &I021_V0_26_220_WD, &I021_V0_26_220_TMP, &I021_V0_26_220_TRB, NULL } };
+static int hf_021_V0_26_230 = -1;
+static int hf_021_V0_26_230_VALUE = -1;
+static const FieldPart I021_V0_26_230_VALUE = { 16, 0.01, FIELD_PART_FLOAT, &hf_021_V0_26_230_VALUE, NULL };
+static const FieldPart *I021_V0_26_230_PARTS[] = {
+ &I021_V0_26_230_VALUE,
+ NULL
+};
+static const AsterixField I021_V0_26_230 = { FIXED, 2, 0, 0, &hf_021_V0_26_230, I021_V0_26_230_PARTS, { NULL } };
+static int hf_021_V0_26_RE = -1;
+static const AsterixField I021_V0_26_RE = { EXP, 0, 0, 1, &hf_021_V0_26_RE, NULL, { NULL } };
+static int hf_021_V0_26_SP = -1;
+static const AsterixField I021_V0_26_SP = { EXP, 0, 0, 1, &hf_021_V0_26_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I021_V0_26_uap[] = {
+ &I021_V0_26_010,
+ &I021_V0_26_040,
+ &I021_V0_26_030,
+ &I021_V0_26_130,
+ &I021_V0_26_080,
+ &I021_V0_26_140,
+ &I021_V0_26_090,
+ &I021_V0_26_210,
+ &I021_V0_26_230,
+ &I021_V0_26_145,
+ &I021_V0_26_150,
+ &I021_V0_26_151,
+ &I021_V0_26_152,
+ &I021_V0_26_155,
+ &I021_V0_26_157,
+ &I021_V0_26_160,
+ &I021_V0_26_165,
+ &I021_V0_26_170,
+ &I021_V0_26_095,
+ &I021_V0_26_032,
+ &I021_V0_26_200,
+ &I021_V0_26_020,
+ &I021_V0_26_220,
+ &I021_V0_26_146,
+ &I021_V0_26_148,
+ &I021_V0_26_110,
+ &I021_V0_26_070,
+ &I021_V0_26_131,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I021_V0_26_RE,
+ &I021_V0_26_SP,
+ NULL
+};
+static const AsterixField **I021_V0_26[] = {
+ I021_V0_26_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 021, edition 2.2 */
+static int hf_021_V2_2_008 = -1;
+static int hf_021_V2_2_008_RA = -1;
+static const value_string valstr_021_V2_2_008_RA[] = {
+ { 0, "TCAS II or ACAS RA not active" },
+ { 1, "TCAS RA active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_008_RA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_008_RA, NULL };
+static int hf_021_V2_2_008_TC = -1;
+static const value_string valstr_021_V2_2_008_TC[] = {
+ { 0, "No capability for Trajectory Change Reports" },
+ { 1, "Support for TC+0 reports only" },
+ { 2, "Support for multiple TC reports" },
+ { 3, "Reserved" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_008_TC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_2_008_TC, NULL };
+static int hf_021_V2_2_008_TS = -1;
+static const value_string valstr_021_V2_2_008_TS[] = {
+ { 0, "No capability to support Target State Reports" },
+ { 1, "Capable of supporting target State Reports" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_008_TS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_008_TS, NULL };
+static int hf_021_V2_2_008_ARV = -1;
+static const value_string valstr_021_V2_2_008_ARV[] = {
+ { 0, "No capability to generate ARV-reports" },
+ { 1, "Capable of generate ARV-reports" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_008_ARV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_008_ARV, NULL };
+static int hf_021_V2_2_008_CDTIA = -1;
+static const value_string valstr_021_V2_2_008_CDTIA[] = {
+ { 0, "CDTI not operational" },
+ { 1, "CDTI operational" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_008_CDTIA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_008_CDTIA, NULL };
+static int hf_021_V2_2_008_NOTTCAS = -1;
+static const value_string valstr_021_V2_2_008_NOTTCAS[] = {
+ { 0, "TCAS operational" },
+ { 1, "TCAS not operational" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_008_NOTTCAS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_008_NOTTCAS, NULL };
+static int hf_021_V2_2_008_SA = -1;
+static const value_string valstr_021_V2_2_008_SA[] = {
+ { 0, "Antenna Diversity" },
+ { 1, "Single Antenna only" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_008_SA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_008_SA, NULL };
+static const FieldPart *I021_V2_2_008_PARTS[] = {
+ &I021_V2_2_008_RA,
+ &I021_V2_2_008_TC,
+ &I021_V2_2_008_TS,
+ &I021_V2_2_008_ARV,
+ &I021_V2_2_008_CDTIA,
+ &I021_V2_2_008_NOTTCAS,
+ &I021_V2_2_008_SA,
+ NULL
+};
+static const AsterixField I021_V2_2_008 = { FIXED, 1, 0, 0, &hf_021_V2_2_008, I021_V2_2_008_PARTS, { NULL } };
+static int hf_021_V2_2_010 = -1;
+static int hf_021_V2_2_010_SAC = -1;
+static const FieldPart I021_V2_2_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_021_V2_2_010_SAC, NULL };
+static int hf_021_V2_2_010_SIC = -1;
+static const FieldPart I021_V2_2_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_021_V2_2_010_SIC, NULL };
+static const FieldPart *I021_V2_2_010_PARTS[] = {
+ &I021_V2_2_010_SAC,
+ &I021_V2_2_010_SIC,
+ NULL
+};
+static const AsterixField I021_V2_2_010 = { FIXED, 2, 0, 0, &hf_021_V2_2_010, I021_V2_2_010_PARTS, { NULL } };
+static int hf_021_V2_2_015 = -1;
+static int hf_021_V2_2_015_VALUE = -1;
+static const FieldPart I021_V2_2_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_021_V2_2_015_VALUE, NULL };
+static const FieldPart *I021_V2_2_015_PARTS[] = {
+ &I021_V2_2_015_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_015 = { FIXED, 1, 0, 0, &hf_021_V2_2_015, I021_V2_2_015_PARTS, { NULL } };
+static int hf_021_V2_2_016 = -1;
+static int hf_021_V2_2_016_VALUE = -1;
+static const FieldPart I021_V2_2_016_VALUE = { 8, 0.5, FIELD_PART_UFLOAT, &hf_021_V2_2_016_VALUE, NULL };
+static const FieldPart *I021_V2_2_016_PARTS[] = {
+ &I021_V2_2_016_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_016 = { FIXED, 1, 0, 0, &hf_021_V2_2_016, I021_V2_2_016_PARTS, { NULL } };
+static int hf_021_V2_2_020 = -1;
+static int hf_021_V2_2_020_VALUE = -1;
+static const value_string valstr_021_V2_2_020_VALUE[] = {
+ { 0, "No ADS-B Emitter Category Information" },
+ { 1, "Light aircraft <= 15500 lbs" },
+ { 2, "15500 lbs < small aircraft <75000 lbs" },
+ { 3, "75000 lbs < medium a/c < 300000 lbs" },
+ { 4, "High Vortex Large" },
+ { 5, "300000 lbs <= heavy aircraft" },
+ { 6, "Highly manoeuvrable (5g acceleration capability) and high speed (>400 knots cruise)" },
+ { 7, "Reserved" },
+ { 8, "Reserved" },
+ { 9, "Reserved" },
+ { 10, "Rotocraft" },
+ { 11, "Glider / sailplane" },
+ { 12, "Lighter-than-air" },
+ { 13, "Unmanned aerial vehicle" },
+ { 14, "Space / transatmospheric vehicle" },
+ { 15, "Ultralight / handglider / paraglider" },
+ { 16, "Parachutist / skydiver" },
+ { 17, "Reserved" },
+ { 18, "Reserved" },
+ { 19, "Reserved" },
+ { 20, "Surface emergency vehicle" },
+ { 21, "Surface service vehicle" },
+ { 22, "Fixed ground or tethered obstruction" },
+ { 23, "Cluster obstacle" },
+ { 24, "Line obstacle" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_020_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_V2_2_020_VALUE, NULL };
+static const FieldPart *I021_V2_2_020_PARTS[] = {
+ &I021_V2_2_020_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_020 = { FIXED, 1, 0, 0, &hf_021_V2_2_020, I021_V2_2_020_PARTS, { NULL } };
+static int hf_021_V2_2_040 = -1;
+static int hf_021_V2_2_040_ATP = -1;
+static const value_string valstr_021_V2_2_040_ATP[] = {
+ { 0, "24-Bit ICAO address" },
+ { 1, "Duplicate address" },
+ { 2, "Surface vehicle address" },
+ { 3, "Anonymous address" },
+ { 4, "Reserved for future use" },
+ { 5, "Reserved for future use" },
+ { 6, "Reserved for future use" },
+ { 7, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_040_ATP = { 3, 1.0, FIELD_PART_UINT, &hf_021_V2_2_040_ATP, NULL };
+static int hf_021_V2_2_040_ARC = -1;
+static const value_string valstr_021_V2_2_040_ARC[] = {
+ { 0, "25 ft" },
+ { 1, "100 ft" },
+ { 2, "Unknown" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_040_ARC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_2_040_ARC, NULL };
+static int hf_021_V2_2_040_RC = -1;
+static const value_string valstr_021_V2_2_040_RC[] = {
+ { 0, "Default" },
+ { 1, "Range Check passed, CPR Validation pending" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_040_RC = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_040_RC, NULL };
+static int hf_021_V2_2_040_RAB = -1;
+static const value_string valstr_021_V2_2_040_RAB[] = {
+ { 0, "Report from target transponder" },
+ { 1, "Report from field monitor (fixed transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_040_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_040_RAB, NULL };
+static int hf_021_V2_2_040_DCR = -1;
+static const value_string valstr_021_V2_2_040_DCR[] = {
+ { 0, "No differential correction (ADS-B)" },
+ { 1, "Differential correction (ADS-B)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_040_DCR = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_040_DCR, NULL };
+static int hf_021_V2_2_040_GBS = -1;
+static const value_string valstr_021_V2_2_040_GBS[] = {
+ { 0, "Ground Bit not set" },
+ { 1, "Ground Bit set" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_040_GBS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_040_GBS, NULL };
+static int hf_021_V2_2_040_SIM = -1;
+static const value_string valstr_021_V2_2_040_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_040_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_040_SIM, NULL };
+static int hf_021_V2_2_040_TST = -1;
+static const value_string valstr_021_V2_2_040_TST[] = {
+ { 0, "Default" },
+ { 1, "Test Target" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_040_TST = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_040_TST, NULL };
+static int hf_021_V2_2_040_SAA = -1;
+static const value_string valstr_021_V2_2_040_SAA[] = {
+ { 0, "Equipment capable to provide Selected Altitude" },
+ { 1, "Equipment not capable to provide Selected Altitude" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_040_SAA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_040_SAA, NULL };
+static int hf_021_V2_2_040_CL = -1;
+static const value_string valstr_021_V2_2_040_CL[] = {
+ { 0, "Report valid" },
+ { 1, "Report suspect" },
+ { 2, "No information" },
+ { 3, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_040_CL = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_2_040_CL, NULL };
+static int hf_021_V2_2_040_IPC = -1;
+static const value_string valstr_021_V2_2_040_IPC[] = {
+ { 0, "Default (see note)" },
+ { 1, "Independent Position Check failed" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_040_IPC = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_040_IPC, NULL };
+static int hf_021_V2_2_040_NOGO = -1;
+static const value_string valstr_021_V2_2_040_NOGO[] = {
+ { 0, "NOGO-bit not set" },
+ { 1, "NOGO-bit set" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_040_NOGO = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_040_NOGO, NULL };
+static int hf_021_V2_2_040_CPR = -1;
+static const value_string valstr_021_V2_2_040_CPR[] = {
+ { 0, "CPR Validation correct" },
+ { 1, "CPR Validation failed" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_040_CPR = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_040_CPR, NULL };
+static int hf_021_V2_2_040_LDPJ = -1;
+static const value_string valstr_021_V2_2_040_LDPJ[] = {
+ { 0, "LDPJ not detected" },
+ { 1, "LDPJ detected" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_040_LDPJ = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_040_LDPJ, NULL };
+static int hf_021_V2_2_040_RCF = -1;
+static const value_string valstr_021_V2_2_040_RCF[] = {
+ { 0, "Default" },
+ { 1, "Range Check failed" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_040_RCF = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_040_RCF, NULL };
+static const FieldPart *I021_V2_2_040_PARTS[] = {
+ &I021_V2_2_040_ATP,
+ &I021_V2_2_040_ARC,
+ &I021_V2_2_040_RC,
+ &I021_V2_2_040_RAB,
+ &IXXX_FX,
+ &I021_V2_2_040_DCR,
+ &I021_V2_2_040_GBS,
+ &I021_V2_2_040_SIM,
+ &I021_V2_2_040_TST,
+ &I021_V2_2_040_SAA,
+ &I021_V2_2_040_CL,
+ &IXXX_FX,
+ &IXXX_2bit_spare,
+ &I021_V2_2_040_IPC,
+ &I021_V2_2_040_NOGO,
+ &I021_V2_2_040_CPR,
+ &I021_V2_2_040_LDPJ,
+ &I021_V2_2_040_RCF,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V2_2_040 = { FX, 1, 0, 0, &hf_021_V2_2_040, I021_V2_2_040_PARTS, { NULL } };
+static int hf_021_V2_2_070 = -1;
+static int hf_021_V2_2_070_MODE3A = -1;
+static const FieldPart I021_V2_2_070_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_021_V2_2_070_MODE3A, NULL };
+static const FieldPart *I021_V2_2_070_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I021_V2_2_070_MODE3A,
+ NULL
+};
+static const AsterixField I021_V2_2_070 = { FIXED, 2, 0, 0, &hf_021_V2_2_070, I021_V2_2_070_PARTS, { NULL } };
+static int hf_021_V2_2_071 = -1;
+static int hf_021_V2_2_071_VALUE = -1;
+static const FieldPart I021_V2_2_071_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_2_071_VALUE, NULL };
+static const FieldPart *I021_V2_2_071_PARTS[] = {
+ &I021_V2_2_071_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_071 = { FIXED, 3, 0, 0, &hf_021_V2_2_071, I021_V2_2_071_PARTS, { NULL } };
+static int hf_021_V2_2_072 = -1;
+static int hf_021_V2_2_072_VALUE = -1;
+static const FieldPart I021_V2_2_072_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_2_072_VALUE, NULL };
+static const FieldPart *I021_V2_2_072_PARTS[] = {
+ &I021_V2_2_072_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_072 = { FIXED, 3, 0, 0, &hf_021_V2_2_072, I021_V2_2_072_PARTS, { NULL } };
+static int hf_021_V2_2_073 = -1;
+static int hf_021_V2_2_073_VALUE = -1;
+static const FieldPart I021_V2_2_073_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_2_073_VALUE, NULL };
+static const FieldPart *I021_V2_2_073_PARTS[] = {
+ &I021_V2_2_073_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_073 = { FIXED, 3, 0, 0, &hf_021_V2_2_073, I021_V2_2_073_PARTS, { NULL } };
+static int hf_021_V2_2_074 = -1;
+static int hf_021_V2_2_074_FSI = -1;
+static const value_string valstr_021_V2_2_074_FSI[] = {
+ { 3, "Reserved" },
+ { 2, "TOMRp whole seconds = (I021/073) Whole seconds - 1" },
+ { 1, "TOMRp whole seconds = (I021/073) Whole seconds + 1" },
+ { 0, "TOMRp whole seconds = (I021/073) Whole seconds" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_074_FSI = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_2_074_FSI, NULL };
+static int hf_021_V2_2_074_TOMRP = -1;
+static const FieldPart I021_V2_2_074_TOMRP = { 30, 0.00000000093132257461547851562, FIELD_PART_UFLOAT, &hf_021_V2_2_074_TOMRP, NULL };
+static const FieldPart *I021_V2_2_074_PARTS[] = {
+ &I021_V2_2_074_FSI,
+ &I021_V2_2_074_TOMRP,
+ NULL
+};
+static const AsterixField I021_V2_2_074 = { FIXED, 4, 0, 0, &hf_021_V2_2_074, I021_V2_2_074_PARTS, { NULL } };
+static int hf_021_V2_2_075 = -1;
+static int hf_021_V2_2_075_VALUE = -1;
+static const FieldPart I021_V2_2_075_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_2_075_VALUE, NULL };
+static const FieldPart *I021_V2_2_075_PARTS[] = {
+ &I021_V2_2_075_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_075 = { FIXED, 3, 0, 0, &hf_021_V2_2_075, I021_V2_2_075_PARTS, { NULL } };
+static int hf_021_V2_2_076 = -1;
+static int hf_021_V2_2_076_FSI = -1;
+static const value_string valstr_021_V2_2_076_FSI[] = {
+ { 3, "Reserved" },
+ { 2, "TOMRp whole seconds = (I021/075) Whole seconds - 1" },
+ { 1, "TOMRp whole seconds = (I021/075) Whole seconds + 1" },
+ { 0, "TOMRp whole seconds = (I021/075) Whole seconds" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_076_FSI = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_2_076_FSI, NULL };
+static int hf_021_V2_2_076_TOMRP = -1;
+static const FieldPart I021_V2_2_076_TOMRP = { 30, 0.00000000093132257461547851562, FIELD_PART_UFLOAT, &hf_021_V2_2_076_TOMRP, NULL };
+static const FieldPart *I021_V2_2_076_PARTS[] = {
+ &I021_V2_2_076_FSI,
+ &I021_V2_2_076_TOMRP,
+ NULL
+};
+static const AsterixField I021_V2_2_076 = { FIXED, 4, 0, 0, &hf_021_V2_2_076, I021_V2_2_076_PARTS, { NULL } };
+static int hf_021_V2_2_077 = -1;
+static int hf_021_V2_2_077_VALUE = -1;
+static const FieldPart I021_V2_2_077_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_2_077_VALUE, NULL };
+static const FieldPart *I021_V2_2_077_PARTS[] = {
+ &I021_V2_2_077_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_077 = { FIXED, 3, 0, 0, &hf_021_V2_2_077, I021_V2_2_077_PARTS, { NULL } };
+static int hf_021_V2_2_080 = -1;
+static int hf_021_V2_2_080_VALUE = -1;
+static const FieldPart I021_V2_2_080_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_021_V2_2_080_VALUE, NULL };
+static const FieldPart *I021_V2_2_080_PARTS[] = {
+ &I021_V2_2_080_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_080 = { FIXED, 3, 0, 0, &hf_021_V2_2_080, I021_V2_2_080_PARTS, { NULL } };
+static int hf_021_V2_2_090 = -1;
+static int hf_021_V2_2_090_NUCRNACV = -1;
+static const FieldPart I021_V2_2_090_NUCRNACV = { 3, 1.0, FIELD_PART_HEX, &hf_021_V2_2_090_NUCRNACV, NULL };
+static int hf_021_V2_2_090_NUCPNIC = -1;
+static const FieldPart I021_V2_2_090_NUCPNIC = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_2_090_NUCPNIC, NULL };
+static int hf_021_V2_2_090_NICBARO = -1;
+static const FieldPart I021_V2_2_090_NICBARO = { 1, 1.0, FIELD_PART_HEX, &hf_021_V2_2_090_NICBARO, NULL };
+static int hf_021_V2_2_090_SIL = -1;
+static const FieldPart I021_V2_2_090_SIL = { 2, 1.0, FIELD_PART_HEX, &hf_021_V2_2_090_SIL, NULL };
+static int hf_021_V2_2_090_NACP = -1;
+static const FieldPart I021_V2_2_090_NACP = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_2_090_NACP, NULL };
+static int hf_021_V2_2_090_SILS = -1;
+static const value_string valstr_021_V2_2_090_SILS[] = {
+ { 0, "Measured per flight-hour" },
+ { 1, "Measured per sample" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_090_SILS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_090_SILS, NULL };
+static int hf_021_V2_2_090_SDA = -1;
+static const FieldPart I021_V2_2_090_SDA = { 2, 1.0, FIELD_PART_HEX, &hf_021_V2_2_090_SDA, NULL };
+static int hf_021_V2_2_090_GVA = -1;
+static const FieldPart I021_V2_2_090_GVA = { 2, 1.0, FIELD_PART_HEX, &hf_021_V2_2_090_GVA, NULL };
+static int hf_021_V2_2_090_PIC = -1;
+static const FieldPart I021_V2_2_090_PIC = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_2_090_PIC, NULL };
+static const FieldPart *I021_V2_2_090_PARTS[] = {
+ &I021_V2_2_090_NUCRNACV,
+ &I021_V2_2_090_NUCPNIC,
+ &IXXX_FX,
+ &I021_V2_2_090_NICBARO,
+ &I021_V2_2_090_SIL,
+ &I021_V2_2_090_NACP,
+ &IXXX_FX,
+ &IXXX_2bit_spare,
+ &I021_V2_2_090_SILS,
+ &I021_V2_2_090_SDA,
+ &I021_V2_2_090_GVA,
+ &IXXX_FX,
+ &I021_V2_2_090_PIC,
+ &IXXX_3bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V2_2_090 = { FX, 1, 0, 0, &hf_021_V2_2_090, I021_V2_2_090_PARTS, { NULL } };
+static int hf_021_V2_2_110 = -1;
+static int hf_021_V2_2_110_TIS = -1;
+static int hf_021_V2_2_110_TIS_NAV = -1;
+static const value_string valstr_021_V2_2_110_TIS_NAV[] = {
+ { 0, "Trajectory Intent Data is available for this aircraft" },
+ { 1, "Trajectory Intent Data is not available for this aircraft" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_110_TIS_NAV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_110_TIS_NAV, NULL };
+static int hf_021_V2_2_110_TIS_NVB = -1;
+static const value_string valstr_021_V2_2_110_TIS_NVB[] = {
+ { 0, "Trajectory Intent Data is valid" },
+ { 1, "Trajectory Intent Data is not valid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_110_TIS_NVB = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_110_TIS_NVB, NULL };
+static const FieldPart *I021_V2_2_110_TIS_PARTS[] = {
+ &I021_V2_2_110_TIS_NAV,
+ &I021_V2_2_110_TIS_NVB,
+ &IXXX_5bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V2_2_110_TIS = { FX, 1, 0, 0, &hf_021_V2_2_110_TIS, I021_V2_2_110_TIS_PARTS, { NULL } };
+static int hf_021_V2_2_110_TID = -1;
+static int hf_021_V2_2_110_TID_TCA = -1;
+static const value_string valstr_021_V2_2_110_TID_TCA[] = {
+ { 0, "TCP number available" },
+ { 1, "TCP number not available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_110_TID_TCA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_110_TID_TCA, NULL };
+static int hf_021_V2_2_110_TID_NC = -1;
+static const value_string valstr_021_V2_2_110_TID_NC[] = {
+ { 0, "TCP compliance" },
+ { 1, "TCP non-compliance" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_110_TID_NC = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_110_TID_NC, NULL };
+static int hf_021_V2_2_110_TID_TCPN = -1;
+static const FieldPart I021_V2_2_110_TID_TCPN = { 6, 1.0, FIELD_PART_HEX, &hf_021_V2_2_110_TID_TCPN, NULL };
+static int hf_021_V2_2_110_TID_ALT = -1;
+static const FieldPart I021_V2_2_110_TID_ALT = { 16, 10.0, FIELD_PART_FLOAT, &hf_021_V2_2_110_TID_ALT, NULL };
+static int hf_021_V2_2_110_TID_LAT = -1;
+static const FieldPart I021_V2_2_110_TID_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V2_2_110_TID_LAT, NULL };
+static int hf_021_V2_2_110_TID_LON = -1;
+static const FieldPart I021_V2_2_110_TID_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V2_2_110_TID_LON, NULL };
+static int hf_021_V2_2_110_TID_PT = -1;
+static const value_string valstr_021_V2_2_110_TID_PT[] = {
+ { 0, "Unknown" },
+ { 1, "Fly by waypoint (LT)" },
+ { 2, "Fly over waypoint (LT)" },
+ { 3, "Hold pattern (LT)" },
+ { 4, "Procedure hold (LT)" },
+ { 5, "Procedure turn (LT)" },
+ { 6, "RF leg (LT)" },
+ { 7, "Top of climb (VT)" },
+ { 8, "Top of descent (VT)" },
+ { 9, "Start of level (VT)" },
+ { 10, "Cross-over altitude (VT)" },
+ { 11, "Transition altitude (VT)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_110_TID_PT = { 4, 1.0, FIELD_PART_UINT, &hf_021_V2_2_110_TID_PT, NULL };
+static int hf_021_V2_2_110_TID_TD = -1;
+static const value_string valstr_021_V2_2_110_TID_TD[] = {
+ { 0, "N/A" },
+ { 1, "Turn right" },
+ { 2, "Turn left" },
+ { 3, "No turn" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_110_TID_TD = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_2_110_TID_TD, NULL };
+static int hf_021_V2_2_110_TID_TRA = -1;
+static const value_string valstr_021_V2_2_110_TID_TRA[] = {
+ { 0, "TTR not available" },
+ { 1, "TTR available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_110_TID_TRA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_110_TID_TRA, NULL };
+static int hf_021_V2_2_110_TID_TOA = -1;
+static const value_string valstr_021_V2_2_110_TID_TOA[] = {
+ { 0, "TOV available" },
+ { 1, "TOV not available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_110_TID_TOA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_110_TID_TOA, NULL };
+static int hf_021_V2_2_110_TID_TOV = -1;
+static const FieldPart I021_V2_2_110_TID_TOV = { 24, 1.0, FIELD_PART_UFLOAT, &hf_021_V2_2_110_TID_TOV, NULL };
+static int hf_021_V2_2_110_TID_TTR = -1;
+static const FieldPart I021_V2_2_110_TID_TTR = { 16, 0.01, FIELD_PART_UFLOAT, &hf_021_V2_2_110_TID_TTR, NULL };
+static const FieldPart *I021_V2_2_110_TID_PARTS[] = {
+ &I021_V2_2_110_TID_TCA,
+ &I021_V2_2_110_TID_NC,
+ &I021_V2_2_110_TID_TCPN,
+ &I021_V2_2_110_TID_ALT,
+ &I021_V2_2_110_TID_LAT,
+ &I021_V2_2_110_TID_LON,
+ &I021_V2_2_110_TID_PT,
+ &I021_V2_2_110_TID_TD,
+ &I021_V2_2_110_TID_TRA,
+ &I021_V2_2_110_TID_TOA,
+ &I021_V2_2_110_TID_TOV,
+ &I021_V2_2_110_TID_TTR,
+ NULL
+};
+static const AsterixField I021_V2_2_110_TID = { REPETITIVE, 15, 1, 0, &hf_021_V2_2_110_TID, I021_V2_2_110_TID_PARTS, { NULL } };
+static const AsterixField I021_V2_2_110 = { COMPOUND, 0, 0, 0, &hf_021_V2_2_110, NULL, { &I021_V2_2_110_TIS, &I021_V2_2_110_TID, NULL } };
+static int hf_021_V2_2_130 = -1;
+static int hf_021_V2_2_130_LAT = -1;
+static const FieldPart I021_V2_2_130_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V2_2_130_LAT, NULL };
+static int hf_021_V2_2_130_LON = -1;
+static const FieldPart I021_V2_2_130_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V2_2_130_LON, NULL };
+static const FieldPart *I021_V2_2_130_PARTS[] = {
+ &I021_V2_2_130_LAT,
+ &I021_V2_2_130_LON,
+ NULL
+};
+static const AsterixField I021_V2_2_130 = { FIXED, 6, 0, 0, &hf_021_V2_2_130, I021_V2_2_130_PARTS, { NULL } };
+static int hf_021_V2_2_131 = -1;
+static int hf_021_V2_2_131_LAT = -1;
+static const FieldPart I021_V2_2_131_LAT = { 32, 0.0000001676380634307861328125, FIELD_PART_FLOAT, &hf_021_V2_2_131_LAT, NULL };
+static int hf_021_V2_2_131_LON = -1;
+static const FieldPart I021_V2_2_131_LON = { 32, 0.0000001676380634307861328125, FIELD_PART_FLOAT, &hf_021_V2_2_131_LON, NULL };
+static const FieldPart *I021_V2_2_131_PARTS[] = {
+ &I021_V2_2_131_LAT,
+ &I021_V2_2_131_LON,
+ NULL
+};
+static const AsterixField I021_V2_2_131 = { FIXED, 8, 0, 0, &hf_021_V2_2_131, I021_V2_2_131_PARTS, { NULL } };
+static int hf_021_V2_2_132 = -1;
+static int hf_021_V2_2_132_VALUE = -1;
+static const FieldPart I021_V2_2_132_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_021_V2_2_132_VALUE, NULL };
+static const FieldPart *I021_V2_2_132_PARTS[] = {
+ &I021_V2_2_132_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_132 = { FIXED, 1, 0, 0, &hf_021_V2_2_132, I021_V2_2_132_PARTS, { NULL } };
+static int hf_021_V2_2_140 = -1;
+static int hf_021_V2_2_140_VALUE = -1;
+static const FieldPart I021_V2_2_140_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_021_V2_2_140_VALUE, NULL };
+static const FieldPart *I021_V2_2_140_PARTS[] = {
+ &I021_V2_2_140_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_140 = { FIXED, 2, 0, 0, &hf_021_V2_2_140, I021_V2_2_140_PARTS, { NULL } };
+static int hf_021_V2_2_145 = -1;
+static int hf_021_V2_2_145_VALUE = -1;
+static const FieldPart I021_V2_2_145_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_021_V2_2_145_VALUE, NULL };
+static const FieldPart *I021_V2_2_145_PARTS[] = {
+ &I021_V2_2_145_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_145 = { FIXED, 2, 0, 0, &hf_021_V2_2_145, I021_V2_2_145_PARTS, { NULL } };
+static int hf_021_V2_2_146 = -1;
+static int hf_021_V2_2_146_SAS = -1;
+static const value_string valstr_021_V2_2_146_SAS[] = {
+ { 0, "No source information provided" },
+ { 1, "Source Information provided" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_146_SAS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_146_SAS, NULL };
+static int hf_021_V2_2_146_S = -1;
+static const value_string valstr_021_V2_2_146_S[] = {
+ { 0, "Unknown" },
+ { 1, "Aircraft Altitude (Holding Altitude)" },
+ { 2, "MCP/FCU Selected Altitude" },
+ { 3, "FMS Selected Altitude" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_146_S = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_2_146_S, NULL };
+static int hf_021_V2_2_146_ALT = -1;
+static const FieldPart I021_V2_2_146_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_021_V2_2_146_ALT, NULL };
+static const FieldPart *I021_V2_2_146_PARTS[] = {
+ &I021_V2_2_146_SAS,
+ &I021_V2_2_146_S,
+ &I021_V2_2_146_ALT,
+ NULL
+};
+static const AsterixField I021_V2_2_146 = { FIXED, 2, 0, 0, &hf_021_V2_2_146, I021_V2_2_146_PARTS, { NULL } };
+static int hf_021_V2_2_148 = -1;
+static int hf_021_V2_2_148_MV = -1;
+static const value_string valstr_021_V2_2_148_MV[] = {
+ { 0, "Not active or unknown" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_148_MV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_148_MV, NULL };
+static int hf_021_V2_2_148_AH = -1;
+static const value_string valstr_021_V2_2_148_AH[] = {
+ { 0, "Not active or unknown" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_148_AH = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_148_AH, NULL };
+static int hf_021_V2_2_148_AM = -1;
+static const value_string valstr_021_V2_2_148_AM[] = {
+ { 0, "Not active or unknown" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_148_AM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_148_AM, NULL };
+static int hf_021_V2_2_148_ALT = -1;
+static const FieldPart I021_V2_2_148_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_021_V2_2_148_ALT, NULL };
+static const FieldPart *I021_V2_2_148_PARTS[] = {
+ &I021_V2_2_148_MV,
+ &I021_V2_2_148_AH,
+ &I021_V2_2_148_AM,
+ &I021_V2_2_148_ALT,
+ NULL
+};
+static const AsterixField I021_V2_2_148 = { FIXED, 2, 0, 0, &hf_021_V2_2_148, I021_V2_2_148_PARTS, { NULL } };
+static int hf_021_V2_2_150 = -1;
+static int hf_021_V2_2_150_IM = -1;
+static const value_string valstr_021_V2_2_150_IM[] = {
+ { 0, "Air Speed = IAS, LSB (Bit-1) = 2 -14 NM/s" },
+ { 1, "Air Speed = Mach, LSB (Bit-1) = 0.001" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_150_IM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_150_IM, NULL };
+static int hf_021_V2_2_150_AS = -1;
+static const FieldPart I021_V2_2_150_AS = { 15, 1.0, FIELD_PART_HEX, &hf_021_V2_2_150_AS, NULL };
+static const FieldPart *I021_V2_2_150_PARTS[] = {
+ &I021_V2_2_150_IM,
+ &I021_V2_2_150_AS,
+ NULL
+};
+static const AsterixField I021_V2_2_150 = { FIXED, 2, 0, 0, &hf_021_V2_2_150, I021_V2_2_150_PARTS, { NULL } };
+static int hf_021_V2_2_151 = -1;
+static int hf_021_V2_2_151_RE = -1;
+static const value_string valstr_021_V2_2_151_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_151_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_151_RE, NULL };
+static int hf_021_V2_2_151_TAS = -1;
+static const FieldPart I021_V2_2_151_TAS = { 15, 1.0, FIELD_PART_UFLOAT, &hf_021_V2_2_151_TAS, NULL };
+static const FieldPart *I021_V2_2_151_PARTS[] = {
+ &I021_V2_2_151_RE,
+ &I021_V2_2_151_TAS,
+ NULL
+};
+static const AsterixField I021_V2_2_151 = { FIXED, 2, 0, 0, &hf_021_V2_2_151, I021_V2_2_151_PARTS, { NULL } };
+static int hf_021_V2_2_152 = -1;
+static int hf_021_V2_2_152_VALUE = -1;
+static const FieldPart I021_V2_2_152_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_021_V2_2_152_VALUE, NULL };
+static const FieldPart *I021_V2_2_152_PARTS[] = {
+ &I021_V2_2_152_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_152 = { FIXED, 2, 0, 0, &hf_021_V2_2_152, I021_V2_2_152_PARTS, { NULL } };
+static int hf_021_V2_2_155 = -1;
+static int hf_021_V2_2_155_RE = -1;
+static const value_string valstr_021_V2_2_155_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_155_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_155_RE, NULL };
+static int hf_021_V2_2_155_BVR = -1;
+static const FieldPart I021_V2_2_155_BVR = { 15, 6.25, FIELD_PART_FLOAT, &hf_021_V2_2_155_BVR, NULL };
+static const FieldPart *I021_V2_2_155_PARTS[] = {
+ &I021_V2_2_155_RE,
+ &I021_V2_2_155_BVR,
+ NULL
+};
+static const AsterixField I021_V2_2_155 = { FIXED, 2, 0, 0, &hf_021_V2_2_155, I021_V2_2_155_PARTS, { NULL } };
+static int hf_021_V2_2_157 = -1;
+static int hf_021_V2_2_157_RE = -1;
+static const value_string valstr_021_V2_2_157_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_157_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_157_RE, NULL };
+static int hf_021_V2_2_157_GVR = -1;
+static const FieldPart I021_V2_2_157_GVR = { 15, 6.25, FIELD_PART_FLOAT, &hf_021_V2_2_157_GVR, NULL };
+static const FieldPart *I021_V2_2_157_PARTS[] = {
+ &I021_V2_2_157_RE,
+ &I021_V2_2_157_GVR,
+ NULL
+};
+static const AsterixField I021_V2_2_157 = { FIXED, 2, 0, 0, &hf_021_V2_2_157, I021_V2_2_157_PARTS, { NULL } };
+static int hf_021_V2_2_160 = -1;
+static int hf_021_V2_2_160_RE = -1;
+static const value_string valstr_021_V2_2_160_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_160_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_160_RE, NULL };
+static int hf_021_V2_2_160_GS = -1;
+static const FieldPart I021_V2_2_160_GS = { 15, 0.00006103515625, FIELD_PART_UFLOAT, &hf_021_V2_2_160_GS, NULL };
+static int hf_021_V2_2_160_TA = -1;
+static const FieldPart I021_V2_2_160_TA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_021_V2_2_160_TA, NULL };
+static const FieldPart *I021_V2_2_160_PARTS[] = {
+ &I021_V2_2_160_RE,
+ &I021_V2_2_160_GS,
+ &I021_V2_2_160_TA,
+ NULL
+};
+static const AsterixField I021_V2_2_160 = { FIXED, 4, 0, 0, &hf_021_V2_2_160, I021_V2_2_160_PARTS, { NULL } };
+static int hf_021_V2_2_161 = -1;
+static int hf_021_V2_2_161_TRNUM = -1;
+static const FieldPart I021_V2_2_161_TRNUM = { 12, 1.0, FIELD_PART_HEX, &hf_021_V2_2_161_TRNUM, NULL };
+static const FieldPart *I021_V2_2_161_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I021_V2_2_161_TRNUM,
+ NULL
+};
+static const AsterixField I021_V2_2_161 = { FIXED, 2, 0, 0, &hf_021_V2_2_161, I021_V2_2_161_PARTS, { NULL } };
+static int hf_021_V2_2_165 = -1;
+static int hf_021_V2_2_165_TAR = -1;
+static const FieldPart I021_V2_2_165_TAR = { 10, 0.03125, FIELD_PART_FLOAT, &hf_021_V2_2_165_TAR, NULL };
+static const FieldPart *I021_V2_2_165_PARTS[] = {
+ &IXXX_6bit_spare,
+ &I021_V2_2_165_TAR,
+ NULL
+};
+static const AsterixField I021_V2_2_165 = { FIXED, 2, 0, 0, &hf_021_V2_2_165, I021_V2_2_165_PARTS, { NULL } };
+static int hf_021_V2_2_170 = -1;
+static int hf_021_V2_2_170_VALUE = -1;
+static const FieldPart I021_V2_2_170_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_021_V2_2_170_VALUE, NULL };
+static const FieldPart *I021_V2_2_170_PARTS[] = {
+ &I021_V2_2_170_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_170 = { FIXED, 6, 0, 0, &hf_021_V2_2_170, I021_V2_2_170_PARTS, { NULL } };
+static int hf_021_V2_2_200 = -1;
+static int hf_021_V2_2_200_ICF = -1;
+static const value_string valstr_021_V2_2_200_ICF[] = {
+ { 0, "No intent change active" },
+ { 1, "Intent change flag raised" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_200_ICF = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_200_ICF, NULL };
+static int hf_021_V2_2_200_LNAV = -1;
+static const value_string valstr_021_V2_2_200_LNAV[] = {
+ { 0, "LNAV Mode engaged" },
+ { 1, "LNAV Mode not engaged" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_200_LNAV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_200_LNAV, NULL };
+static int hf_021_V2_2_200_ME = -1;
+static const value_string valstr_021_V2_2_200_ME[] = {
+ { 0, "No military emergency" },
+ { 1, "Military emergency" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_200_ME = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_200_ME, NULL };
+static int hf_021_V2_2_200_PS = -1;
+static const value_string valstr_021_V2_2_200_PS[] = {
+ { 0, "No emergency / not reported" },
+ { 1, "General emergency" },
+ { 2, "Lifeguard / medical emergency" },
+ { 3, "Minimum fuel" },
+ { 4, "No communications" },
+ { 5, "Unlawful interference" },
+ { 6, "DOWNED Aircraft" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_200_PS = { 3, 1.0, FIELD_PART_UINT, &hf_021_V2_2_200_PS, NULL };
+static int hf_021_V2_2_200_SS = -1;
+static const value_string valstr_021_V2_2_200_SS[] = {
+ { 0, "No condition reported" },
+ { 1, "Permanent Alert (Emergency condition)" },
+ { 2, "Temporary Alert (change in Mode 3/A Code other than emergency)" },
+ { 3, "SPI set" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_200_SS = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_2_200_SS, NULL };
+static const FieldPart *I021_V2_2_200_PARTS[] = {
+ &I021_V2_2_200_ICF,
+ &I021_V2_2_200_LNAV,
+ &I021_V2_2_200_ME,
+ &I021_V2_2_200_PS,
+ &I021_V2_2_200_SS,
+ NULL
+};
+static const AsterixField I021_V2_2_200 = { FIXED, 1, 0, 0, &hf_021_V2_2_200, I021_V2_2_200_PARTS, { NULL } };
+static int hf_021_V2_2_210 = -1;
+static int hf_021_V2_2_210_VNS = -1;
+static const value_string valstr_021_V2_2_210_VNS[] = {
+ { 0, "The MOPS Version is supported by the GS" },
+ { 1, "The MOPS Version is not supported by the GS" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_210_VNS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_210_VNS, NULL };
+static int hf_021_V2_2_210_VN = -1;
+static const value_string valstr_021_V2_2_210_VN[] = {
+ { 0, "ED102/DO-260 [Ref. 8]" },
+ { 1, "DO-260A [Ref. 9]" },
+ { 2, "ED102A/DO-260B [Ref. 11]" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_210_VN = { 3, 1.0, FIELD_PART_UINT, &hf_021_V2_2_210_VN, NULL };
+static int hf_021_V2_2_210_LTT = -1;
+static const value_string valstr_021_V2_2_210_LTT[] = {
+ { 0, "Other" },
+ { 1, "UAT" },
+ { 2, "1090 ES" },
+ { 3, "VDL 4" },
+ { 4, "Not assigned" },
+ { 5, "Not assigned" },
+ { 6, "Not assigned" },
+ { 7, "Not assigned" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_210_LTT = { 3, 1.0, FIELD_PART_UINT, &hf_021_V2_2_210_LTT, NULL };
+static const FieldPart *I021_V2_2_210_PARTS[] = {
+ &IXXX_1bit_spare,
+ &I021_V2_2_210_VNS,
+ &I021_V2_2_210_VN,
+ &I021_V2_2_210_LTT,
+ NULL
+};
+static const AsterixField I021_V2_2_210 = { FIXED, 1, 0, 0, &hf_021_V2_2_210, I021_V2_2_210_PARTS, { NULL } };
+static int hf_021_V2_2_220 = -1;
+static int hf_021_V2_2_220_WS = -1;
+static int hf_021_V2_2_220_WS_VALUE = -1;
+static const FieldPart I021_V2_2_220_WS_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_V2_2_220_WS_VALUE, NULL };
+static const FieldPart *I021_V2_2_220_WS_PARTS[] = {
+ &I021_V2_2_220_WS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_220_WS = { FIXED, 2, 0, 0, &hf_021_V2_2_220_WS, I021_V2_2_220_WS_PARTS, { NULL } };
+static int hf_021_V2_2_220_WD = -1;
+static int hf_021_V2_2_220_WD_VALUE = -1;
+static const FieldPart I021_V2_2_220_WD_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_V2_2_220_WD_VALUE, NULL };
+static const FieldPart *I021_V2_2_220_WD_PARTS[] = {
+ &I021_V2_2_220_WD_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_220_WD = { FIXED, 2, 0, 0, &hf_021_V2_2_220_WD, I021_V2_2_220_WD_PARTS, { NULL } };
+static int hf_021_V2_2_220_TMP = -1;
+static int hf_021_V2_2_220_TMP_VALUE = -1;
+static const FieldPart I021_V2_2_220_TMP_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_021_V2_2_220_TMP_VALUE, NULL };
+static const FieldPart *I021_V2_2_220_TMP_PARTS[] = {
+ &I021_V2_2_220_TMP_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_220_TMP = { FIXED, 2, 0, 0, &hf_021_V2_2_220_TMP, I021_V2_2_220_TMP_PARTS, { NULL } };
+static int hf_021_V2_2_220_TRB = -1;
+static int hf_021_V2_2_220_TRB_VALUE = -1;
+static const FieldPart I021_V2_2_220_TRB_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_V2_2_220_TRB_VALUE, NULL };
+static const FieldPart *I021_V2_2_220_TRB_PARTS[] = {
+ &I021_V2_2_220_TRB_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_220_TRB = { FIXED, 1, 0, 0, &hf_021_V2_2_220_TRB, I021_V2_2_220_TRB_PARTS, { NULL } };
+static const AsterixField I021_V2_2_220 = { COMPOUND, 0, 0, 0, &hf_021_V2_2_220, NULL, { &I021_V2_2_220_WS, &I021_V2_2_220_WD, &I021_V2_2_220_TMP, &I021_V2_2_220_TRB, NULL } };
+static int hf_021_V2_2_230 = -1;
+static int hf_021_V2_2_230_VALUE = -1;
+static const FieldPart I021_V2_2_230_VALUE = { 16, 0.01, FIELD_PART_FLOAT, &hf_021_V2_2_230_VALUE, NULL };
+static const FieldPart *I021_V2_2_230_PARTS[] = {
+ &I021_V2_2_230_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_230 = { FIXED, 2, 0, 0, &hf_021_V2_2_230, I021_V2_2_230_PARTS, { NULL } };
+static int hf_021_V2_2_250 = -1;
+static int hf_021_V2_2_250_VALUE = -1;
+static const FieldPart I021_V2_2_250_VALUE = { 64, 1.0, FIELD_PART_HEX, &hf_021_V2_2_250_VALUE, NULL };
+static const FieldPart *I021_V2_2_250_PARTS[] = {
+ &I021_V2_2_250_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_250 = { REPETITIVE, 8, 1, 0, &hf_021_V2_2_250, I021_V2_2_250_PARTS, { NULL } };
+static int hf_021_V2_2_260 = -1;
+static int hf_021_V2_2_260_TYP = -1;
+static const FieldPart I021_V2_2_260_TYP = { 5, 1.0, FIELD_PART_HEX, &hf_021_V2_2_260_TYP, NULL };
+static int hf_021_V2_2_260_STYP = -1;
+static const FieldPart I021_V2_2_260_STYP = { 3, 1.0, FIELD_PART_HEX, &hf_021_V2_2_260_STYP, NULL };
+static int hf_021_V2_2_260_ARA = -1;
+static const FieldPart I021_V2_2_260_ARA = { 14, 1.0, FIELD_PART_HEX, &hf_021_V2_2_260_ARA, NULL };
+static int hf_021_V2_2_260_RAC = -1;
+static const FieldPart I021_V2_2_260_RAC = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_2_260_RAC, NULL };
+static int hf_021_V2_2_260_RAT = -1;
+static const FieldPart I021_V2_2_260_RAT = { 1, 1.0, FIELD_PART_HEX, &hf_021_V2_2_260_RAT, NULL };
+static int hf_021_V2_2_260_MTE = -1;
+static const FieldPart I021_V2_2_260_MTE = { 1, 1.0, FIELD_PART_HEX, &hf_021_V2_2_260_MTE, NULL };
+static int hf_021_V2_2_260_TTI = -1;
+static const FieldPart I021_V2_2_260_TTI = { 2, 1.0, FIELD_PART_HEX, &hf_021_V2_2_260_TTI, NULL };
+static int hf_021_V2_2_260_TID = -1;
+static const FieldPart I021_V2_2_260_TID = { 26, 1.0, FIELD_PART_HEX, &hf_021_V2_2_260_TID, NULL };
+static const FieldPart *I021_V2_2_260_PARTS[] = {
+ &I021_V2_2_260_TYP,
+ &I021_V2_2_260_STYP,
+ &I021_V2_2_260_ARA,
+ &I021_V2_2_260_RAC,
+ &I021_V2_2_260_RAT,
+ &I021_V2_2_260_MTE,
+ &I021_V2_2_260_TTI,
+ &I021_V2_2_260_TID,
+ NULL
+};
+static const AsterixField I021_V2_2_260 = { FIXED, 7, 0, 0, &hf_021_V2_2_260, I021_V2_2_260_PARTS, { NULL } };
+static int hf_021_V2_2_271 = -1;
+static int hf_021_V2_2_271_POA = -1;
+static const value_string valstr_021_V2_2_271_POA[] = {
+ { 0, "Position transmitted is not ADS-B position reference point" },
+ { 1, "Position transmitted is the ADS-B position reference point" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_271_POA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_271_POA, NULL };
+static int hf_021_V2_2_271_CDTIS = -1;
+static const value_string valstr_021_V2_2_271_CDTIS[] = {
+ { 0, "CDTI not operational" },
+ { 1, "CDTI operational" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_271_CDTIS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_271_CDTIS, NULL };
+static int hf_021_V2_2_271_B2LOW = -1;
+static const value_string valstr_021_V2_2_271_B2LOW[] = {
+ { 0, ">= 70 Watts" },
+ { 1, "< 70 Watts" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_271_B2LOW = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_271_B2LOW, NULL };
+static int hf_021_V2_2_271_RAS = -1;
+static const value_string valstr_021_V2_2_271_RAS[] = {
+ { 0, "Aircraft not receiving ATC-services" },
+ { 1, "Aircraft receiving ATC services" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_271_RAS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_271_RAS, NULL };
+static int hf_021_V2_2_271_IDENT = -1;
+static const value_string valstr_021_V2_2_271_IDENT[] = {
+ { 0, "IDENT switch not active" },
+ { 1, "IDENT switch active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_2_271_IDENT = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_2_271_IDENT, NULL };
+static int hf_021_V2_2_271_LW = -1;
+static const FieldPart I021_V2_2_271_LW = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_2_271_LW, NULL };
+static const FieldPart *I021_V2_2_271_PARTS[] = {
+ &IXXX_2bit_spare,
+ &I021_V2_2_271_POA,
+ &I021_V2_2_271_CDTIS,
+ &I021_V2_2_271_B2LOW,
+ &I021_V2_2_271_RAS,
+ &I021_V2_2_271_IDENT,
+ &IXXX_FX,
+ &I021_V2_2_271_LW,
+ &IXXX_3bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V2_2_271 = { FX, 1, 0, 0, &hf_021_V2_2_271, I021_V2_2_271_PARTS, { NULL } };
+static int hf_021_V2_2_295 = -1;
+static int hf_021_V2_2_295_AOS = -1;
+static int hf_021_V2_2_295_AOS_VALUE = -1;
+static const FieldPart I021_V2_2_295_AOS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_2_295_AOS_VALUE, NULL };
+static const FieldPart *I021_V2_2_295_AOS_PARTS[] = {
+ &I021_V2_2_295_AOS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_295_AOS = { FIXED, 1, 0, 0, &hf_021_V2_2_295_AOS, I021_V2_2_295_AOS_PARTS, { NULL } };
+static int hf_021_V2_2_295_TRD = -1;
+static int hf_021_V2_2_295_TRD_VALUE = -1;
+static const FieldPart I021_V2_2_295_TRD_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_2_295_TRD_VALUE, NULL };
+static const FieldPart *I021_V2_2_295_TRD_PARTS[] = {
+ &I021_V2_2_295_TRD_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_295_TRD = { FIXED, 1, 0, 0, &hf_021_V2_2_295_TRD, I021_V2_2_295_TRD_PARTS, { NULL } };
+static int hf_021_V2_2_295_M3A = -1;
+static int hf_021_V2_2_295_M3A_VALUE = -1;
+static const FieldPart I021_V2_2_295_M3A_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_2_295_M3A_VALUE, NULL };
+static const FieldPart *I021_V2_2_295_M3A_PARTS[] = {
+ &I021_V2_2_295_M3A_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_295_M3A = { FIXED, 1, 0, 0, &hf_021_V2_2_295_M3A, I021_V2_2_295_M3A_PARTS, { NULL } };
+static int hf_021_V2_2_295_QI = -1;
+static int hf_021_V2_2_295_QI_VALUE = -1;
+static const FieldPart I021_V2_2_295_QI_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_2_295_QI_VALUE, NULL };
+static const FieldPart *I021_V2_2_295_QI_PARTS[] = {
+ &I021_V2_2_295_QI_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_295_QI = { FIXED, 1, 0, 0, &hf_021_V2_2_295_QI, I021_V2_2_295_QI_PARTS, { NULL } };
+static int hf_021_V2_2_295_TI1 = -1;
+static int hf_021_V2_2_295_TI1_VALUE = -1;
+static const FieldPart I021_V2_2_295_TI1_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_2_295_TI1_VALUE, NULL };
+static const FieldPart *I021_V2_2_295_TI1_PARTS[] = {
+ &I021_V2_2_295_TI1_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_295_TI1 = { FIXED, 1, 0, 0, &hf_021_V2_2_295_TI1, I021_V2_2_295_TI1_PARTS, { NULL } };
+static int hf_021_V2_2_295_MAM = -1;
+static int hf_021_V2_2_295_MAM_VALUE = -1;
+static const FieldPart I021_V2_2_295_MAM_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_2_295_MAM_VALUE, NULL };
+static const FieldPart *I021_V2_2_295_MAM_PARTS[] = {
+ &I021_V2_2_295_MAM_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_295_MAM = { FIXED, 1, 0, 0, &hf_021_V2_2_295_MAM, I021_V2_2_295_MAM_PARTS, { NULL } };
+static int hf_021_V2_2_295_GH = -1;
+static int hf_021_V2_2_295_GH_VALUE = -1;
+static const FieldPart I021_V2_2_295_GH_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_2_295_GH_VALUE, NULL };
+static const FieldPart *I021_V2_2_295_GH_PARTS[] = {
+ &I021_V2_2_295_GH_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_295_GH = { FIXED, 1, 0, 0, &hf_021_V2_2_295_GH, I021_V2_2_295_GH_PARTS, { NULL } };
+static int hf_021_V2_2_295_FL = -1;
+static int hf_021_V2_2_295_FL_VALUE = -1;
+static const FieldPart I021_V2_2_295_FL_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_2_295_FL_VALUE, NULL };
+static const FieldPart *I021_V2_2_295_FL_PARTS[] = {
+ &I021_V2_2_295_FL_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_295_FL = { FIXED, 1, 0, 0, &hf_021_V2_2_295_FL, I021_V2_2_295_FL_PARTS, { NULL } };
+static int hf_021_V2_2_295_ISA = -1;
+static int hf_021_V2_2_295_ISA_VALUE = -1;
+static const FieldPart I021_V2_2_295_ISA_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_2_295_ISA_VALUE, NULL };
+static const FieldPart *I021_V2_2_295_ISA_PARTS[] = {
+ &I021_V2_2_295_ISA_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_295_ISA = { FIXED, 1, 0, 0, &hf_021_V2_2_295_ISA, I021_V2_2_295_ISA_PARTS, { NULL } };
+static int hf_021_V2_2_295_FSA = -1;
+static int hf_021_V2_2_295_FSA_VALUE = -1;
+static const FieldPart I021_V2_2_295_FSA_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_2_295_FSA_VALUE, NULL };
+static const FieldPart *I021_V2_2_295_FSA_PARTS[] = {
+ &I021_V2_2_295_FSA_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_295_FSA = { FIXED, 1, 0, 0, &hf_021_V2_2_295_FSA, I021_V2_2_295_FSA_PARTS, { NULL } };
+static int hf_021_V2_2_295_AS = -1;
+static int hf_021_V2_2_295_AS_VALUE = -1;
+static const FieldPart I021_V2_2_295_AS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_2_295_AS_VALUE, NULL };
+static const FieldPart *I021_V2_2_295_AS_PARTS[] = {
+ &I021_V2_2_295_AS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_295_AS = { FIXED, 1, 0, 0, &hf_021_V2_2_295_AS, I021_V2_2_295_AS_PARTS, { NULL } };
+static int hf_021_V2_2_295_TAS = -1;
+static int hf_021_V2_2_295_TAS_VALUE = -1;
+static const FieldPart I021_V2_2_295_TAS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_2_295_TAS_VALUE, NULL };
+static const FieldPart *I021_V2_2_295_TAS_PARTS[] = {
+ &I021_V2_2_295_TAS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_295_TAS = { FIXED, 1, 0, 0, &hf_021_V2_2_295_TAS, I021_V2_2_295_TAS_PARTS, { NULL } };
+static int hf_021_V2_2_295_MH = -1;
+static int hf_021_V2_2_295_MH_VALUE = -1;
+static const FieldPart I021_V2_2_295_MH_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_2_295_MH_VALUE, NULL };
+static const FieldPart *I021_V2_2_295_MH_PARTS[] = {
+ &I021_V2_2_295_MH_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_295_MH = { FIXED, 1, 0, 0, &hf_021_V2_2_295_MH, I021_V2_2_295_MH_PARTS, { NULL } };
+static int hf_021_V2_2_295_BVR = -1;
+static int hf_021_V2_2_295_BVR_VALUE = -1;
+static const FieldPart I021_V2_2_295_BVR_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_2_295_BVR_VALUE, NULL };
+static const FieldPart *I021_V2_2_295_BVR_PARTS[] = {
+ &I021_V2_2_295_BVR_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_295_BVR = { FIXED, 1, 0, 0, &hf_021_V2_2_295_BVR, I021_V2_2_295_BVR_PARTS, { NULL } };
+static int hf_021_V2_2_295_GVR = -1;
+static int hf_021_V2_2_295_GVR_VALUE = -1;
+static const FieldPart I021_V2_2_295_GVR_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_2_295_GVR_VALUE, NULL };
+static const FieldPart *I021_V2_2_295_GVR_PARTS[] = {
+ &I021_V2_2_295_GVR_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_295_GVR = { FIXED, 1, 0, 0, &hf_021_V2_2_295_GVR, I021_V2_2_295_GVR_PARTS, { NULL } };
+static int hf_021_V2_2_295_GV = -1;
+static int hf_021_V2_2_295_GV_VALUE = -1;
+static const FieldPart I021_V2_2_295_GV_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_2_295_GV_VALUE, NULL };
+static const FieldPart *I021_V2_2_295_GV_PARTS[] = {
+ &I021_V2_2_295_GV_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_295_GV = { FIXED, 1, 0, 0, &hf_021_V2_2_295_GV, I021_V2_2_295_GV_PARTS, { NULL } };
+static int hf_021_V2_2_295_TAR = -1;
+static int hf_021_V2_2_295_TAR_VALUE = -1;
+static const FieldPart I021_V2_2_295_TAR_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_2_295_TAR_VALUE, NULL };
+static const FieldPart *I021_V2_2_295_TAR_PARTS[] = {
+ &I021_V2_2_295_TAR_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_295_TAR = { FIXED, 1, 0, 0, &hf_021_V2_2_295_TAR, I021_V2_2_295_TAR_PARTS, { NULL } };
+static int hf_021_V2_2_295_TI2 = -1;
+static int hf_021_V2_2_295_TI2_VALUE = -1;
+static const FieldPart I021_V2_2_295_TI2_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_2_295_TI2_VALUE, NULL };
+static const FieldPart *I021_V2_2_295_TI2_PARTS[] = {
+ &I021_V2_2_295_TI2_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_295_TI2 = { FIXED, 1, 0, 0, &hf_021_V2_2_295_TI2, I021_V2_2_295_TI2_PARTS, { NULL } };
+static int hf_021_V2_2_295_TS = -1;
+static int hf_021_V2_2_295_TS_VALUE = -1;
+static const FieldPart I021_V2_2_295_TS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_2_295_TS_VALUE, NULL };
+static const FieldPart *I021_V2_2_295_TS_PARTS[] = {
+ &I021_V2_2_295_TS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_295_TS = { FIXED, 1, 0, 0, &hf_021_V2_2_295_TS, I021_V2_2_295_TS_PARTS, { NULL } };
+static int hf_021_V2_2_295_MET = -1;
+static int hf_021_V2_2_295_MET_VALUE = -1;
+static const FieldPart I021_V2_2_295_MET_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_2_295_MET_VALUE, NULL };
+static const FieldPart *I021_V2_2_295_MET_PARTS[] = {
+ &I021_V2_2_295_MET_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_295_MET = { FIXED, 1, 0, 0, &hf_021_V2_2_295_MET, I021_V2_2_295_MET_PARTS, { NULL } };
+static int hf_021_V2_2_295_ROA = -1;
+static int hf_021_V2_2_295_ROA_VALUE = -1;
+static const FieldPart I021_V2_2_295_ROA_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_2_295_ROA_VALUE, NULL };
+static const FieldPart *I021_V2_2_295_ROA_PARTS[] = {
+ &I021_V2_2_295_ROA_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_295_ROA = { FIXED, 1, 0, 0, &hf_021_V2_2_295_ROA, I021_V2_2_295_ROA_PARTS, { NULL } };
+static int hf_021_V2_2_295_ARA = -1;
+static int hf_021_V2_2_295_ARA_VALUE = -1;
+static const FieldPart I021_V2_2_295_ARA_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_2_295_ARA_VALUE, NULL };
+static const FieldPart *I021_V2_2_295_ARA_PARTS[] = {
+ &I021_V2_2_295_ARA_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_295_ARA = { FIXED, 1, 0, 0, &hf_021_V2_2_295_ARA, I021_V2_2_295_ARA_PARTS, { NULL } };
+static int hf_021_V2_2_295_SCC = -1;
+static int hf_021_V2_2_295_SCC_VALUE = -1;
+static const FieldPart I021_V2_2_295_SCC_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_2_295_SCC_VALUE, NULL };
+static const FieldPart *I021_V2_2_295_SCC_PARTS[] = {
+ &I021_V2_2_295_SCC_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_295_SCC = { FIXED, 1, 0, 0, &hf_021_V2_2_295_SCC, I021_V2_2_295_SCC_PARTS, { NULL } };
+static const AsterixField I021_V2_2_295 = { COMPOUND, 0, 0, 0, &hf_021_V2_2_295, NULL, { &I021_V2_2_295_AOS, &I021_V2_2_295_TRD, &I021_V2_2_295_M3A, &I021_V2_2_295_QI, &I021_V2_2_295_TI1, &I021_V2_2_295_MAM, &I021_V2_2_295_GH, &I021_V2_2_295_FL, &I021_V2_2_295_ISA, &I021_V2_2_295_FSA, &I021_V2_2_295_AS, &I021_V2_2_295_TAS, &I021_V2_2_295_MH, &I021_V2_2_295_BVR, &I021_V2_2_295_GVR, &I021_V2_2_295_GV, &I021_V2_2_295_TAR, &I021_V2_2_295_TI2, &I021_V2_2_295_TS, &I021_V2_2_295_MET, &I021_V2_2_295_ROA, &I021_V2_2_295_ARA, &I021_V2_2_295_SCC, NULL } };
+static int hf_021_V2_2_400 = -1;
+static int hf_021_V2_2_400_VALUE = -1;
+static const FieldPart I021_V2_2_400_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_021_V2_2_400_VALUE, NULL };
+static const FieldPart *I021_V2_2_400_PARTS[] = {
+ &I021_V2_2_400_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_2_400 = { FIXED, 1, 0, 0, &hf_021_V2_2_400, I021_V2_2_400_PARTS, { NULL } };
+static int hf_021_V2_2_RE = -1;
+static const AsterixField I021_V2_2_RE = { EXP, 0, 0, 1, &hf_021_V2_2_RE, NULL, { NULL } };
+static int hf_021_V2_2_SP = -1;
+static const AsterixField I021_V2_2_SP = { EXP, 0, 0, 1, &hf_021_V2_2_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I021_V2_2_uap[] = {
+ &I021_V2_2_010,
+ &I021_V2_2_040,
+ &I021_V2_2_161,
+ &I021_V2_2_015,
+ &I021_V2_2_071,
+ &I021_V2_2_130,
+ &I021_V2_2_131,
+ &I021_V2_2_072,
+ &I021_V2_2_150,
+ &I021_V2_2_151,
+ &I021_V2_2_080,
+ &I021_V2_2_073,
+ &I021_V2_2_074,
+ &I021_V2_2_075,
+ &I021_V2_2_076,
+ &I021_V2_2_140,
+ &I021_V2_2_090,
+ &I021_V2_2_210,
+ &I021_V2_2_070,
+ &I021_V2_2_230,
+ &I021_V2_2_145,
+ &I021_V2_2_152,
+ &I021_V2_2_200,
+ &I021_V2_2_155,
+ &I021_V2_2_157,
+ &I021_V2_2_160,
+ &I021_V2_2_165,
+ &I021_V2_2_077,
+ &I021_V2_2_170,
+ &I021_V2_2_020,
+ &I021_V2_2_220,
+ &I021_V2_2_146,
+ &I021_V2_2_148,
+ &I021_V2_2_110,
+ &I021_V2_2_016,
+ &I021_V2_2_008,
+ &I021_V2_2_271,
+ &I021_V2_2_132,
+ &I021_V2_2_250,
+ &I021_V2_2_260,
+ &I021_V2_2_400,
+ &I021_V2_2_295,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I021_V2_2_RE,
+ &I021_V2_2_SP,
+ NULL
+};
+static const AsterixField **I021_V2_2[] = {
+ I021_V2_2_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 021, edition 2.3 */
+static int hf_021_V2_3_008 = -1;
+static int hf_021_V2_3_008_RA = -1;
+static const value_string valstr_021_V2_3_008_RA[] = {
+ { 0, "TCAS II or ACAS RA not active" },
+ { 1, "TCAS RA active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_008_RA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_008_RA, NULL };
+static int hf_021_V2_3_008_TC = -1;
+static const value_string valstr_021_V2_3_008_TC[] = {
+ { 0, "No capability for Trajectory Change Reports" },
+ { 1, "Support for TC+0 reports only" },
+ { 2, "Support for multiple TC reports" },
+ { 3, "Reserved" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_008_TC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_3_008_TC, NULL };
+static int hf_021_V2_3_008_TS = -1;
+static const value_string valstr_021_V2_3_008_TS[] = {
+ { 0, "No capability to support Target State Reports" },
+ { 1, "Capable of supporting target State Reports" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_008_TS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_008_TS, NULL };
+static int hf_021_V2_3_008_ARV = -1;
+static const value_string valstr_021_V2_3_008_ARV[] = {
+ { 0, "No capability to generate ARV-reports" },
+ { 1, "Capable of generate ARV-reports" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_008_ARV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_008_ARV, NULL };
+static int hf_021_V2_3_008_CDTIA = -1;
+static const value_string valstr_021_V2_3_008_CDTIA[] = {
+ { 0, "CDTI not operational" },
+ { 1, "CDTI operational" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_008_CDTIA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_008_CDTIA, NULL };
+static int hf_021_V2_3_008_NOTTCAS = -1;
+static const value_string valstr_021_V2_3_008_NOTTCAS[] = {
+ { 0, "TCAS operational" },
+ { 1, "TCAS not operational" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_008_NOTTCAS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_008_NOTTCAS, NULL };
+static int hf_021_V2_3_008_SA = -1;
+static const value_string valstr_021_V2_3_008_SA[] = {
+ { 0, "Antenna Diversity" },
+ { 1, "Single Antenna only" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_008_SA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_008_SA, NULL };
+static const FieldPart *I021_V2_3_008_PARTS[] = {
+ &I021_V2_3_008_RA,
+ &I021_V2_3_008_TC,
+ &I021_V2_3_008_TS,
+ &I021_V2_3_008_ARV,
+ &I021_V2_3_008_CDTIA,
+ &I021_V2_3_008_NOTTCAS,
+ &I021_V2_3_008_SA,
+ NULL
+};
+static const AsterixField I021_V2_3_008 = { FIXED, 1, 0, 0, &hf_021_V2_3_008, I021_V2_3_008_PARTS, { NULL } };
+static int hf_021_V2_3_010 = -1;
+static int hf_021_V2_3_010_SAC = -1;
+static const FieldPart I021_V2_3_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_021_V2_3_010_SAC, NULL };
+static int hf_021_V2_3_010_SIC = -1;
+static const FieldPart I021_V2_3_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_021_V2_3_010_SIC, NULL };
+static const FieldPart *I021_V2_3_010_PARTS[] = {
+ &I021_V2_3_010_SAC,
+ &I021_V2_3_010_SIC,
+ NULL
+};
+static const AsterixField I021_V2_3_010 = { FIXED, 2, 0, 0, &hf_021_V2_3_010, I021_V2_3_010_PARTS, { NULL } };
+static int hf_021_V2_3_015 = -1;
+static int hf_021_V2_3_015_VALUE = -1;
+static const FieldPart I021_V2_3_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_021_V2_3_015_VALUE, NULL };
+static const FieldPart *I021_V2_3_015_PARTS[] = {
+ &I021_V2_3_015_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_015 = { FIXED, 1, 0, 0, &hf_021_V2_3_015, I021_V2_3_015_PARTS, { NULL } };
+static int hf_021_V2_3_016 = -1;
+static int hf_021_V2_3_016_VALUE = -1;
+static const FieldPart I021_V2_3_016_VALUE = { 8, 0.5, FIELD_PART_UFLOAT, &hf_021_V2_3_016_VALUE, NULL };
+static const FieldPart *I021_V2_3_016_PARTS[] = {
+ &I021_V2_3_016_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_016 = { FIXED, 1, 0, 0, &hf_021_V2_3_016, I021_V2_3_016_PARTS, { NULL } };
+static int hf_021_V2_3_020 = -1;
+static int hf_021_V2_3_020_VALUE = -1;
+static const value_string valstr_021_V2_3_020_VALUE[] = {
+ { 0, "No ADS-B Emitter Category Information" },
+ { 1, "Light aircraft <= 15500 lbs" },
+ { 2, "15500 lbs < small aircraft <75000 lbs" },
+ { 3, "75000 lbs < medium a/c < 300000 lbs" },
+ { 4, "High Vortex Large" },
+ { 5, "300000 lbs <= heavy aircraft" },
+ { 6, "Highly manoeuvrable (5g acceleration capability) and high speed (>400 knots cruise)" },
+ { 7, "Reserved" },
+ { 8, "Reserved" },
+ { 9, "Reserved" },
+ { 10, "Rotocraft" },
+ { 11, "Glider / sailplane" },
+ { 12, "Lighter-than-air" },
+ { 13, "Unmanned aerial vehicle" },
+ { 14, "Space / transatmospheric vehicle" },
+ { 15, "Ultralight / handglider / paraglider" },
+ { 16, "Parachutist / skydiver" },
+ { 17, "Reserved" },
+ { 18, "Reserved" },
+ { 19, "Reserved" },
+ { 20, "Surface emergency vehicle" },
+ { 21, "Surface service vehicle" },
+ { 22, "Fixed ground or tethered obstruction" },
+ { 23, "Cluster obstacle" },
+ { 24, "Line obstacle" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_020_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_V2_3_020_VALUE, NULL };
+static const FieldPart *I021_V2_3_020_PARTS[] = {
+ &I021_V2_3_020_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_020 = { FIXED, 1, 0, 0, &hf_021_V2_3_020, I021_V2_3_020_PARTS, { NULL } };
+static int hf_021_V2_3_040 = -1;
+static int hf_021_V2_3_040_ATP = -1;
+static const value_string valstr_021_V2_3_040_ATP[] = {
+ { 0, "24-Bit ICAO address" },
+ { 1, "Duplicate address" },
+ { 2, "Surface vehicle address" },
+ { 3, "Anonymous address" },
+ { 4, "Reserved for future use" },
+ { 5, "Reserved for future use" },
+ { 6, "Reserved for future use" },
+ { 7, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_040_ATP = { 3, 1.0, FIELD_PART_UINT, &hf_021_V2_3_040_ATP, NULL };
+static int hf_021_V2_3_040_ARC = -1;
+static const value_string valstr_021_V2_3_040_ARC[] = {
+ { 0, "25 ft" },
+ { 1, "100 ft" },
+ { 2, "Unknown" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_040_ARC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_3_040_ARC, NULL };
+static int hf_021_V2_3_040_RC = -1;
+static const value_string valstr_021_V2_3_040_RC[] = {
+ { 0, "Default" },
+ { 1, "Range Check passed, CPR Validation pending" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_040_RC = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_040_RC, NULL };
+static int hf_021_V2_3_040_RAB = -1;
+static const value_string valstr_021_V2_3_040_RAB[] = {
+ { 0, "Report from target transponder" },
+ { 1, "Report from field monitor (fixed transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_040_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_040_RAB, NULL };
+static int hf_021_V2_3_040_DCR = -1;
+static const value_string valstr_021_V2_3_040_DCR[] = {
+ { 0, "No differential correction (ADS-B)" },
+ { 1, "Differential correction (ADS-B)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_040_DCR = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_040_DCR, NULL };
+static int hf_021_V2_3_040_GBS = -1;
+static const value_string valstr_021_V2_3_040_GBS[] = {
+ { 0, "Ground Bit not set" },
+ { 1, "Ground Bit set" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_040_GBS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_040_GBS, NULL };
+static int hf_021_V2_3_040_SIM = -1;
+static const value_string valstr_021_V2_3_040_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_040_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_040_SIM, NULL };
+static int hf_021_V2_3_040_TST = -1;
+static const value_string valstr_021_V2_3_040_TST[] = {
+ { 0, "Default" },
+ { 1, "Test Target" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_040_TST = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_040_TST, NULL };
+static int hf_021_V2_3_040_SAA = -1;
+static const value_string valstr_021_V2_3_040_SAA[] = {
+ { 0, "Equipment capable to provide Selected Altitude" },
+ { 1, "Equipment not capable to provide Selected Altitude" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_040_SAA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_040_SAA, NULL };
+static int hf_021_V2_3_040_CL = -1;
+static const value_string valstr_021_V2_3_040_CL[] = {
+ { 0, "Report valid" },
+ { 1, "Report suspect" },
+ { 2, "No information" },
+ { 3, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_040_CL = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_3_040_CL, NULL };
+static int hf_021_V2_3_040_LLC = -1;
+static const value_string valstr_021_V2_3_040_LLC[] = {
+ { 0, "Default" },
+ { 1, "List Lookup failed (see note)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_040_LLC = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_040_LLC, NULL };
+static int hf_021_V2_3_040_IPC = -1;
+static const value_string valstr_021_V2_3_040_IPC[] = {
+ { 0, "Default (see note)" },
+ { 1, "Independent Position Check failed" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_040_IPC = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_040_IPC, NULL };
+static int hf_021_V2_3_040_NOGO = -1;
+static const value_string valstr_021_V2_3_040_NOGO[] = {
+ { 0, "NOGO-bit not set" },
+ { 1, "NOGO-bit set" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_040_NOGO = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_040_NOGO, NULL };
+static int hf_021_V2_3_040_CPR = -1;
+static const value_string valstr_021_V2_3_040_CPR[] = {
+ { 0, "CPR Validation correct" },
+ { 1, "CPR Validation failed" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_040_CPR = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_040_CPR, NULL };
+static int hf_021_V2_3_040_LDPJ = -1;
+static const value_string valstr_021_V2_3_040_LDPJ[] = {
+ { 0, "LDPJ not detected" },
+ { 1, "LDPJ detected" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_040_LDPJ = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_040_LDPJ, NULL };
+static int hf_021_V2_3_040_RCF = -1;
+static const value_string valstr_021_V2_3_040_RCF[] = {
+ { 0, "Default" },
+ { 1, "Range Check failed" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_040_RCF = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_040_RCF, NULL };
+static const FieldPart *I021_V2_3_040_PARTS[] = {
+ &I021_V2_3_040_ATP,
+ &I021_V2_3_040_ARC,
+ &I021_V2_3_040_RC,
+ &I021_V2_3_040_RAB,
+ &IXXX_FX,
+ &I021_V2_3_040_DCR,
+ &I021_V2_3_040_GBS,
+ &I021_V2_3_040_SIM,
+ &I021_V2_3_040_TST,
+ &I021_V2_3_040_SAA,
+ &I021_V2_3_040_CL,
+ &IXXX_FX,
+ &IXXX_1bit_spare,
+ &I021_V2_3_040_LLC,
+ &I021_V2_3_040_IPC,
+ &I021_V2_3_040_NOGO,
+ &I021_V2_3_040_CPR,
+ &I021_V2_3_040_LDPJ,
+ &I021_V2_3_040_RCF,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V2_3_040 = { FX, 1, 0, 0, &hf_021_V2_3_040, I021_V2_3_040_PARTS, { NULL } };
+static int hf_021_V2_3_070 = -1;
+static int hf_021_V2_3_070_MODE3A = -1;
+static const FieldPart I021_V2_3_070_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_021_V2_3_070_MODE3A, NULL };
+static const FieldPart *I021_V2_3_070_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I021_V2_3_070_MODE3A,
+ NULL
+};
+static const AsterixField I021_V2_3_070 = { FIXED, 2, 0, 0, &hf_021_V2_3_070, I021_V2_3_070_PARTS, { NULL } };
+static int hf_021_V2_3_071 = -1;
+static int hf_021_V2_3_071_VALUE = -1;
+static const FieldPart I021_V2_3_071_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_3_071_VALUE, NULL };
+static const FieldPart *I021_V2_3_071_PARTS[] = {
+ &I021_V2_3_071_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_071 = { FIXED, 3, 0, 0, &hf_021_V2_3_071, I021_V2_3_071_PARTS, { NULL } };
+static int hf_021_V2_3_072 = -1;
+static int hf_021_V2_3_072_VALUE = -1;
+static const FieldPart I021_V2_3_072_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_3_072_VALUE, NULL };
+static const FieldPart *I021_V2_3_072_PARTS[] = {
+ &I021_V2_3_072_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_072 = { FIXED, 3, 0, 0, &hf_021_V2_3_072, I021_V2_3_072_PARTS, { NULL } };
+static int hf_021_V2_3_073 = -1;
+static int hf_021_V2_3_073_VALUE = -1;
+static const FieldPart I021_V2_3_073_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_3_073_VALUE, NULL };
+static const FieldPart *I021_V2_3_073_PARTS[] = {
+ &I021_V2_3_073_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_073 = { FIXED, 3, 0, 0, &hf_021_V2_3_073, I021_V2_3_073_PARTS, { NULL } };
+static int hf_021_V2_3_074 = -1;
+static int hf_021_V2_3_074_FSI = -1;
+static const value_string valstr_021_V2_3_074_FSI[] = {
+ { 3, "Reserved" },
+ { 2, "TOMRp whole seconds = (I021/073) Whole seconds - 1" },
+ { 1, "TOMRp whole seconds = (I021/073) Whole seconds + 1" },
+ { 0, "TOMRp whole seconds = (I021/073) Whole seconds" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_074_FSI = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_3_074_FSI, NULL };
+static int hf_021_V2_3_074_TOMRP = -1;
+static const FieldPart I021_V2_3_074_TOMRP = { 30, 0.00000000093132257461547851562, FIELD_PART_UFLOAT, &hf_021_V2_3_074_TOMRP, NULL };
+static const FieldPart *I021_V2_3_074_PARTS[] = {
+ &I021_V2_3_074_FSI,
+ &I021_V2_3_074_TOMRP,
+ NULL
+};
+static const AsterixField I021_V2_3_074 = { FIXED, 4, 0, 0, &hf_021_V2_3_074, I021_V2_3_074_PARTS, { NULL } };
+static int hf_021_V2_3_075 = -1;
+static int hf_021_V2_3_075_VALUE = -1;
+static const FieldPart I021_V2_3_075_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_3_075_VALUE, NULL };
+static const FieldPart *I021_V2_3_075_PARTS[] = {
+ &I021_V2_3_075_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_075 = { FIXED, 3, 0, 0, &hf_021_V2_3_075, I021_V2_3_075_PARTS, { NULL } };
+static int hf_021_V2_3_076 = -1;
+static int hf_021_V2_3_076_FSI = -1;
+static const value_string valstr_021_V2_3_076_FSI[] = {
+ { 3, "Reserved" },
+ { 2, "TOMRp whole seconds = (I021/075) Whole seconds - 1" },
+ { 1, "TOMRp whole seconds = (I021/075) Whole seconds + 1" },
+ { 0, "TOMRp whole seconds = (I021/075) Whole seconds" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_076_FSI = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_3_076_FSI, NULL };
+static int hf_021_V2_3_076_TOMRP = -1;
+static const FieldPart I021_V2_3_076_TOMRP = { 30, 0.00000000093132257461547851562, FIELD_PART_UFLOAT, &hf_021_V2_3_076_TOMRP, NULL };
+static const FieldPart *I021_V2_3_076_PARTS[] = {
+ &I021_V2_3_076_FSI,
+ &I021_V2_3_076_TOMRP,
+ NULL
+};
+static const AsterixField I021_V2_3_076 = { FIXED, 4, 0, 0, &hf_021_V2_3_076, I021_V2_3_076_PARTS, { NULL } };
+static int hf_021_V2_3_077 = -1;
+static int hf_021_V2_3_077_VALUE = -1;
+static const FieldPart I021_V2_3_077_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_3_077_VALUE, NULL };
+static const FieldPart *I021_V2_3_077_PARTS[] = {
+ &I021_V2_3_077_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_077 = { FIXED, 3, 0, 0, &hf_021_V2_3_077, I021_V2_3_077_PARTS, { NULL } };
+static int hf_021_V2_3_080 = -1;
+static int hf_021_V2_3_080_VALUE = -1;
+static const FieldPart I021_V2_3_080_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_021_V2_3_080_VALUE, NULL };
+static const FieldPart *I021_V2_3_080_PARTS[] = {
+ &I021_V2_3_080_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_080 = { FIXED, 3, 0, 0, &hf_021_V2_3_080, I021_V2_3_080_PARTS, { NULL } };
+static int hf_021_V2_3_090 = -1;
+static int hf_021_V2_3_090_NUCRNACV = -1;
+static const FieldPart I021_V2_3_090_NUCRNACV = { 3, 1.0, FIELD_PART_HEX, &hf_021_V2_3_090_NUCRNACV, NULL };
+static int hf_021_V2_3_090_NUCPNIC = -1;
+static const FieldPart I021_V2_3_090_NUCPNIC = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_3_090_NUCPNIC, NULL };
+static int hf_021_V2_3_090_NICBARO = -1;
+static const FieldPart I021_V2_3_090_NICBARO = { 1, 1.0, FIELD_PART_HEX, &hf_021_V2_3_090_NICBARO, NULL };
+static int hf_021_V2_3_090_SIL = -1;
+static const FieldPart I021_V2_3_090_SIL = { 2, 1.0, FIELD_PART_HEX, &hf_021_V2_3_090_SIL, NULL };
+static int hf_021_V2_3_090_NACP = -1;
+static const FieldPart I021_V2_3_090_NACP = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_3_090_NACP, NULL };
+static int hf_021_V2_3_090_SILS = -1;
+static const value_string valstr_021_V2_3_090_SILS[] = {
+ { 0, "Measured per flight-hour" },
+ { 1, "Measured per sample" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_090_SILS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_090_SILS, NULL };
+static int hf_021_V2_3_090_SDA = -1;
+static const FieldPart I021_V2_3_090_SDA = { 2, 1.0, FIELD_PART_HEX, &hf_021_V2_3_090_SDA, NULL };
+static int hf_021_V2_3_090_GVA = -1;
+static const FieldPart I021_V2_3_090_GVA = { 2, 1.0, FIELD_PART_HEX, &hf_021_V2_3_090_GVA, NULL };
+static int hf_021_V2_3_090_PIC = -1;
+static const FieldPart I021_V2_3_090_PIC = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_3_090_PIC, NULL };
+static const FieldPart *I021_V2_3_090_PARTS[] = {
+ &I021_V2_3_090_NUCRNACV,
+ &I021_V2_3_090_NUCPNIC,
+ &IXXX_FX,
+ &I021_V2_3_090_NICBARO,
+ &I021_V2_3_090_SIL,
+ &I021_V2_3_090_NACP,
+ &IXXX_FX,
+ &IXXX_2bit_spare,
+ &I021_V2_3_090_SILS,
+ &I021_V2_3_090_SDA,
+ &I021_V2_3_090_GVA,
+ &IXXX_FX,
+ &I021_V2_3_090_PIC,
+ &IXXX_3bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V2_3_090 = { FX, 1, 0, 0, &hf_021_V2_3_090, I021_V2_3_090_PARTS, { NULL } };
+static int hf_021_V2_3_110 = -1;
+static int hf_021_V2_3_110_TIS = -1;
+static int hf_021_V2_3_110_TIS_NAV = -1;
+static const value_string valstr_021_V2_3_110_TIS_NAV[] = {
+ { 0, "Trajectory Intent Data is available for this aircraft" },
+ { 1, "Trajectory Intent Data is not available for this aircraft" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_110_TIS_NAV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_110_TIS_NAV, NULL };
+static int hf_021_V2_3_110_TIS_NVB = -1;
+static const value_string valstr_021_V2_3_110_TIS_NVB[] = {
+ { 0, "Trajectory Intent Data is valid" },
+ { 1, "Trajectory Intent Data is not valid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_110_TIS_NVB = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_110_TIS_NVB, NULL };
+static const FieldPart *I021_V2_3_110_TIS_PARTS[] = {
+ &I021_V2_3_110_TIS_NAV,
+ &I021_V2_3_110_TIS_NVB,
+ &IXXX_5bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V2_3_110_TIS = { FX, 1, 0, 0, &hf_021_V2_3_110_TIS, I021_V2_3_110_TIS_PARTS, { NULL } };
+static int hf_021_V2_3_110_TID = -1;
+static int hf_021_V2_3_110_TID_TCA = -1;
+static const value_string valstr_021_V2_3_110_TID_TCA[] = {
+ { 0, "TCP number available" },
+ { 1, "TCP number not available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_110_TID_TCA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_110_TID_TCA, NULL };
+static int hf_021_V2_3_110_TID_NC = -1;
+static const value_string valstr_021_V2_3_110_TID_NC[] = {
+ { 0, "TCP compliance" },
+ { 1, "TCP non-compliance" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_110_TID_NC = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_110_TID_NC, NULL };
+static int hf_021_V2_3_110_TID_TCPN = -1;
+static const FieldPart I021_V2_3_110_TID_TCPN = { 6, 1.0, FIELD_PART_HEX, &hf_021_V2_3_110_TID_TCPN, NULL };
+static int hf_021_V2_3_110_TID_ALT = -1;
+static const FieldPart I021_V2_3_110_TID_ALT = { 16, 10.0, FIELD_PART_FLOAT, &hf_021_V2_3_110_TID_ALT, NULL };
+static int hf_021_V2_3_110_TID_LAT = -1;
+static const FieldPart I021_V2_3_110_TID_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V2_3_110_TID_LAT, NULL };
+static int hf_021_V2_3_110_TID_LON = -1;
+static const FieldPart I021_V2_3_110_TID_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V2_3_110_TID_LON, NULL };
+static int hf_021_V2_3_110_TID_PT = -1;
+static const value_string valstr_021_V2_3_110_TID_PT[] = {
+ { 0, "Unknown" },
+ { 1, "Fly by waypoint (LT)" },
+ { 2, "Fly over waypoint (LT)" },
+ { 3, "Hold pattern (LT)" },
+ { 4, "Procedure hold (LT)" },
+ { 5, "Procedure turn (LT)" },
+ { 6, "RF leg (LT)" },
+ { 7, "Top of climb (VT)" },
+ { 8, "Top of descent (VT)" },
+ { 9, "Start of level (VT)" },
+ { 10, "Cross-over altitude (VT)" },
+ { 11, "Transition altitude (VT)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_110_TID_PT = { 4, 1.0, FIELD_PART_UINT, &hf_021_V2_3_110_TID_PT, NULL };
+static int hf_021_V2_3_110_TID_TD = -1;
+static const value_string valstr_021_V2_3_110_TID_TD[] = {
+ { 0, "N/A" },
+ { 1, "Turn right" },
+ { 2, "Turn left" },
+ { 3, "No turn" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_110_TID_TD = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_3_110_TID_TD, NULL };
+static int hf_021_V2_3_110_TID_TRA = -1;
+static const value_string valstr_021_V2_3_110_TID_TRA[] = {
+ { 0, "TTR not available" },
+ { 1, "TTR available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_110_TID_TRA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_110_TID_TRA, NULL };
+static int hf_021_V2_3_110_TID_TOA = -1;
+static const value_string valstr_021_V2_3_110_TID_TOA[] = {
+ { 0, "TOV available" },
+ { 1, "TOV not available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_110_TID_TOA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_110_TID_TOA, NULL };
+static int hf_021_V2_3_110_TID_TOV = -1;
+static const FieldPart I021_V2_3_110_TID_TOV = { 24, 1.0, FIELD_PART_UFLOAT, &hf_021_V2_3_110_TID_TOV, NULL };
+static int hf_021_V2_3_110_TID_TTR = -1;
+static const FieldPart I021_V2_3_110_TID_TTR = { 16, 0.01, FIELD_PART_UFLOAT, &hf_021_V2_3_110_TID_TTR, NULL };
+static const FieldPart *I021_V2_3_110_TID_PARTS[] = {
+ &I021_V2_3_110_TID_TCA,
+ &I021_V2_3_110_TID_NC,
+ &I021_V2_3_110_TID_TCPN,
+ &I021_V2_3_110_TID_ALT,
+ &I021_V2_3_110_TID_LAT,
+ &I021_V2_3_110_TID_LON,
+ &I021_V2_3_110_TID_PT,
+ &I021_V2_3_110_TID_TD,
+ &I021_V2_3_110_TID_TRA,
+ &I021_V2_3_110_TID_TOA,
+ &I021_V2_3_110_TID_TOV,
+ &I021_V2_3_110_TID_TTR,
+ NULL
+};
+static const AsterixField I021_V2_3_110_TID = { REPETITIVE, 15, 1, 0, &hf_021_V2_3_110_TID, I021_V2_3_110_TID_PARTS, { NULL } };
+static const AsterixField I021_V2_3_110 = { COMPOUND, 0, 0, 0, &hf_021_V2_3_110, NULL, { &I021_V2_3_110_TIS, &I021_V2_3_110_TID, NULL } };
+static int hf_021_V2_3_130 = -1;
+static int hf_021_V2_3_130_LAT = -1;
+static const FieldPart I021_V2_3_130_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V2_3_130_LAT, NULL };
+static int hf_021_V2_3_130_LON = -1;
+static const FieldPart I021_V2_3_130_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V2_3_130_LON, NULL };
+static const FieldPart *I021_V2_3_130_PARTS[] = {
+ &I021_V2_3_130_LAT,
+ &I021_V2_3_130_LON,
+ NULL
+};
+static const AsterixField I021_V2_3_130 = { FIXED, 6, 0, 0, &hf_021_V2_3_130, I021_V2_3_130_PARTS, { NULL } };
+static int hf_021_V2_3_131 = -1;
+static int hf_021_V2_3_131_LAT = -1;
+static const FieldPart I021_V2_3_131_LAT = { 32, 0.0000001676380634307861328125, FIELD_PART_FLOAT, &hf_021_V2_3_131_LAT, NULL };
+static int hf_021_V2_3_131_LON = -1;
+static const FieldPart I021_V2_3_131_LON = { 32, 0.0000001676380634307861328125, FIELD_PART_FLOAT, &hf_021_V2_3_131_LON, NULL };
+static const FieldPart *I021_V2_3_131_PARTS[] = {
+ &I021_V2_3_131_LAT,
+ &I021_V2_3_131_LON,
+ NULL
+};
+static const AsterixField I021_V2_3_131 = { FIXED, 8, 0, 0, &hf_021_V2_3_131, I021_V2_3_131_PARTS, { NULL } };
+static int hf_021_V2_3_132 = -1;
+static int hf_021_V2_3_132_VALUE = -1;
+static const FieldPart I021_V2_3_132_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_021_V2_3_132_VALUE, NULL };
+static const FieldPart *I021_V2_3_132_PARTS[] = {
+ &I021_V2_3_132_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_132 = { FIXED, 1, 0, 0, &hf_021_V2_3_132, I021_V2_3_132_PARTS, { NULL } };
+static int hf_021_V2_3_140 = -1;
+static int hf_021_V2_3_140_VALUE = -1;
+static const FieldPart I021_V2_3_140_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_021_V2_3_140_VALUE, NULL };
+static const FieldPart *I021_V2_3_140_PARTS[] = {
+ &I021_V2_3_140_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_140 = { FIXED, 2, 0, 0, &hf_021_V2_3_140, I021_V2_3_140_PARTS, { NULL } };
+static int hf_021_V2_3_145 = -1;
+static int hf_021_V2_3_145_VALUE = -1;
+static const FieldPart I021_V2_3_145_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_021_V2_3_145_VALUE, NULL };
+static const FieldPart *I021_V2_3_145_PARTS[] = {
+ &I021_V2_3_145_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_145 = { FIXED, 2, 0, 0, &hf_021_V2_3_145, I021_V2_3_145_PARTS, { NULL } };
+static int hf_021_V2_3_146 = -1;
+static int hf_021_V2_3_146_SAS = -1;
+static const value_string valstr_021_V2_3_146_SAS[] = {
+ { 0, "No source information provided" },
+ { 1, "Source Information provided" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_146_SAS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_146_SAS, NULL };
+static int hf_021_V2_3_146_S = -1;
+static const value_string valstr_021_V2_3_146_S[] = {
+ { 0, "Unknown" },
+ { 1, "Aircraft Altitude (Holding Altitude)" },
+ { 2, "MCP/FCU Selected Altitude" },
+ { 3, "FMS Selected Altitude" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_146_S = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_3_146_S, NULL };
+static int hf_021_V2_3_146_ALT = -1;
+static const FieldPart I021_V2_3_146_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_021_V2_3_146_ALT, NULL };
+static const FieldPart *I021_V2_3_146_PARTS[] = {
+ &I021_V2_3_146_SAS,
+ &I021_V2_3_146_S,
+ &I021_V2_3_146_ALT,
+ NULL
+};
+static const AsterixField I021_V2_3_146 = { FIXED, 2, 0, 0, &hf_021_V2_3_146, I021_V2_3_146_PARTS, { NULL } };
+static int hf_021_V2_3_148 = -1;
+static int hf_021_V2_3_148_MV = -1;
+static const value_string valstr_021_V2_3_148_MV[] = {
+ { 0, "Not active or unknown" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_148_MV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_148_MV, NULL };
+static int hf_021_V2_3_148_AH = -1;
+static const value_string valstr_021_V2_3_148_AH[] = {
+ { 0, "Not active or unknown" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_148_AH = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_148_AH, NULL };
+static int hf_021_V2_3_148_AM = -1;
+static const value_string valstr_021_V2_3_148_AM[] = {
+ { 0, "Not active or unknown" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_148_AM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_148_AM, NULL };
+static int hf_021_V2_3_148_ALT = -1;
+static const FieldPart I021_V2_3_148_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_021_V2_3_148_ALT, NULL };
+static const FieldPart *I021_V2_3_148_PARTS[] = {
+ &I021_V2_3_148_MV,
+ &I021_V2_3_148_AH,
+ &I021_V2_3_148_AM,
+ &I021_V2_3_148_ALT,
+ NULL
+};
+static const AsterixField I021_V2_3_148 = { FIXED, 2, 0, 0, &hf_021_V2_3_148, I021_V2_3_148_PARTS, { NULL } };
+static int hf_021_V2_3_150 = -1;
+static int hf_021_V2_3_150_IM = -1;
+static const value_string valstr_021_V2_3_150_IM[] = {
+ { 0, "Air Speed = IAS, LSB (Bit-1) = 2 -14 NM/s" },
+ { 1, "Air Speed = Mach, LSB (Bit-1) = 0.001" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_150_IM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_150_IM, NULL };
+static int hf_021_V2_3_150_AS = -1;
+static const FieldPart I021_V2_3_150_AS = { 15, 1.0, FIELD_PART_HEX, &hf_021_V2_3_150_AS, NULL };
+static const FieldPart *I021_V2_3_150_PARTS[] = {
+ &I021_V2_3_150_IM,
+ &I021_V2_3_150_AS,
+ NULL
+};
+static const AsterixField I021_V2_3_150 = { FIXED, 2, 0, 0, &hf_021_V2_3_150, I021_V2_3_150_PARTS, { NULL } };
+static int hf_021_V2_3_151 = -1;
+static int hf_021_V2_3_151_RE = -1;
+static const value_string valstr_021_V2_3_151_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_151_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_151_RE, NULL };
+static int hf_021_V2_3_151_TAS = -1;
+static const FieldPart I021_V2_3_151_TAS = { 15, 1.0, FIELD_PART_UFLOAT, &hf_021_V2_3_151_TAS, NULL };
+static const FieldPart *I021_V2_3_151_PARTS[] = {
+ &I021_V2_3_151_RE,
+ &I021_V2_3_151_TAS,
+ NULL
+};
+static const AsterixField I021_V2_3_151 = { FIXED, 2, 0, 0, &hf_021_V2_3_151, I021_V2_3_151_PARTS, { NULL } };
+static int hf_021_V2_3_152 = -1;
+static int hf_021_V2_3_152_VALUE = -1;
+static const FieldPart I021_V2_3_152_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_021_V2_3_152_VALUE, NULL };
+static const FieldPart *I021_V2_3_152_PARTS[] = {
+ &I021_V2_3_152_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_152 = { FIXED, 2, 0, 0, &hf_021_V2_3_152, I021_V2_3_152_PARTS, { NULL } };
+static int hf_021_V2_3_155 = -1;
+static int hf_021_V2_3_155_RE = -1;
+static const value_string valstr_021_V2_3_155_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_155_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_155_RE, NULL };
+static int hf_021_V2_3_155_BVR = -1;
+static const FieldPart I021_V2_3_155_BVR = { 15, 6.25, FIELD_PART_FLOAT, &hf_021_V2_3_155_BVR, NULL };
+static const FieldPart *I021_V2_3_155_PARTS[] = {
+ &I021_V2_3_155_RE,
+ &I021_V2_3_155_BVR,
+ NULL
+};
+static const AsterixField I021_V2_3_155 = { FIXED, 2, 0, 0, &hf_021_V2_3_155, I021_V2_3_155_PARTS, { NULL } };
+static int hf_021_V2_3_157 = -1;
+static int hf_021_V2_3_157_RE = -1;
+static const value_string valstr_021_V2_3_157_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_157_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_157_RE, NULL };
+static int hf_021_V2_3_157_GVR = -1;
+static const FieldPart I021_V2_3_157_GVR = { 15, 6.25, FIELD_PART_FLOAT, &hf_021_V2_3_157_GVR, NULL };
+static const FieldPart *I021_V2_3_157_PARTS[] = {
+ &I021_V2_3_157_RE,
+ &I021_V2_3_157_GVR,
+ NULL
+};
+static const AsterixField I021_V2_3_157 = { FIXED, 2, 0, 0, &hf_021_V2_3_157, I021_V2_3_157_PARTS, { NULL } };
+static int hf_021_V2_3_160 = -1;
+static int hf_021_V2_3_160_RE = -1;
+static const value_string valstr_021_V2_3_160_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_160_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_160_RE, NULL };
+static int hf_021_V2_3_160_GS = -1;
+static const FieldPart I021_V2_3_160_GS = { 15, 0.00006103515625, FIELD_PART_UFLOAT, &hf_021_V2_3_160_GS, NULL };
+static int hf_021_V2_3_160_TA = -1;
+static const FieldPart I021_V2_3_160_TA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_021_V2_3_160_TA, NULL };
+static const FieldPart *I021_V2_3_160_PARTS[] = {
+ &I021_V2_3_160_RE,
+ &I021_V2_3_160_GS,
+ &I021_V2_3_160_TA,
+ NULL
+};
+static const AsterixField I021_V2_3_160 = { FIXED, 4, 0, 0, &hf_021_V2_3_160, I021_V2_3_160_PARTS, { NULL } };
+static int hf_021_V2_3_161 = -1;
+static int hf_021_V2_3_161_TRNUM = -1;
+static const FieldPart I021_V2_3_161_TRNUM = { 12, 1.0, FIELD_PART_HEX, &hf_021_V2_3_161_TRNUM, NULL };
+static const FieldPart *I021_V2_3_161_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I021_V2_3_161_TRNUM,
+ NULL
+};
+static const AsterixField I021_V2_3_161 = { FIXED, 2, 0, 0, &hf_021_V2_3_161, I021_V2_3_161_PARTS, { NULL } };
+static int hf_021_V2_3_165 = -1;
+static int hf_021_V2_3_165_TAR = -1;
+static const FieldPart I021_V2_3_165_TAR = { 10, 0.03125, FIELD_PART_FLOAT, &hf_021_V2_3_165_TAR, NULL };
+static const FieldPart *I021_V2_3_165_PARTS[] = {
+ &IXXX_6bit_spare,
+ &I021_V2_3_165_TAR,
+ NULL
+};
+static const AsterixField I021_V2_3_165 = { FIXED, 2, 0, 0, &hf_021_V2_3_165, I021_V2_3_165_PARTS, { NULL } };
+static int hf_021_V2_3_170 = -1;
+static int hf_021_V2_3_170_VALUE = -1;
+static const FieldPart I021_V2_3_170_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_021_V2_3_170_VALUE, NULL };
+static const FieldPart *I021_V2_3_170_PARTS[] = {
+ &I021_V2_3_170_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_170 = { FIXED, 6, 0, 0, &hf_021_V2_3_170, I021_V2_3_170_PARTS, { NULL } };
+static int hf_021_V2_3_200 = -1;
+static int hf_021_V2_3_200_ICF = -1;
+static const value_string valstr_021_V2_3_200_ICF[] = {
+ { 0, "No intent change active" },
+ { 1, "Intent change flag raised" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_200_ICF = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_200_ICF, NULL };
+static int hf_021_V2_3_200_LNAV = -1;
+static const value_string valstr_021_V2_3_200_LNAV[] = {
+ { 0, "LNAV Mode engaged" },
+ { 1, "LNAV Mode not engaged" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_200_LNAV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_200_LNAV, NULL };
+static int hf_021_V2_3_200_ME = -1;
+static const value_string valstr_021_V2_3_200_ME[] = {
+ { 0, "No military emergency" },
+ { 1, "Military emergency" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_200_ME = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_200_ME, NULL };
+static int hf_021_V2_3_200_PS = -1;
+static const value_string valstr_021_V2_3_200_PS[] = {
+ { 0, "No emergency / not reported" },
+ { 1, "General emergency" },
+ { 2, "Lifeguard / medical emergency" },
+ { 3, "Minimum fuel" },
+ { 4, "No communications" },
+ { 5, "Unlawful interference" },
+ { 6, "DOWNED Aircraft" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_200_PS = { 3, 1.0, FIELD_PART_UINT, &hf_021_V2_3_200_PS, NULL };
+static int hf_021_V2_3_200_SS = -1;
+static const value_string valstr_021_V2_3_200_SS[] = {
+ { 0, "No condition reported" },
+ { 1, "Permanent Alert (Emergency condition)" },
+ { 2, "Temporary Alert (change in Mode 3/A Code other than emergency)" },
+ { 3, "SPI set" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_200_SS = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_3_200_SS, NULL };
+static const FieldPart *I021_V2_3_200_PARTS[] = {
+ &I021_V2_3_200_ICF,
+ &I021_V2_3_200_LNAV,
+ &I021_V2_3_200_ME,
+ &I021_V2_3_200_PS,
+ &I021_V2_3_200_SS,
+ NULL
+};
+static const AsterixField I021_V2_3_200 = { FIXED, 1, 0, 0, &hf_021_V2_3_200, I021_V2_3_200_PARTS, { NULL } };
+static int hf_021_V2_3_210 = -1;
+static int hf_021_V2_3_210_VNS = -1;
+static const value_string valstr_021_V2_3_210_VNS[] = {
+ { 0, "The MOPS Version is supported by the GS" },
+ { 1, "The MOPS Version is not supported by the GS" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_210_VNS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_210_VNS, NULL };
+static int hf_021_V2_3_210_VN = -1;
+static const value_string valstr_021_V2_3_210_VN[] = {
+ { 0, "ED102/DO-260 [Ref. 8]" },
+ { 1, "DO-260A [Ref. 9]" },
+ { 2, "ED102A/DO-260B [Ref. 11]" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_210_VN = { 3, 1.0, FIELD_PART_UINT, &hf_021_V2_3_210_VN, NULL };
+static int hf_021_V2_3_210_LTT = -1;
+static const value_string valstr_021_V2_3_210_LTT[] = {
+ { 0, "Other" },
+ { 1, "UAT" },
+ { 2, "1090 ES" },
+ { 3, "VDL 4" },
+ { 4, "Not assigned" },
+ { 5, "Not assigned" },
+ { 6, "Not assigned" },
+ { 7, "Not assigned" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_210_LTT = { 3, 1.0, FIELD_PART_UINT, &hf_021_V2_3_210_LTT, NULL };
+static const FieldPart *I021_V2_3_210_PARTS[] = {
+ &IXXX_1bit_spare,
+ &I021_V2_3_210_VNS,
+ &I021_V2_3_210_VN,
+ &I021_V2_3_210_LTT,
+ NULL
+};
+static const AsterixField I021_V2_3_210 = { FIXED, 1, 0, 0, &hf_021_V2_3_210, I021_V2_3_210_PARTS, { NULL } };
+static int hf_021_V2_3_220 = -1;
+static int hf_021_V2_3_220_WS = -1;
+static int hf_021_V2_3_220_WS_VALUE = -1;
+static const FieldPart I021_V2_3_220_WS_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_V2_3_220_WS_VALUE, NULL };
+static const FieldPart *I021_V2_3_220_WS_PARTS[] = {
+ &I021_V2_3_220_WS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_220_WS = { FIXED, 2, 0, 0, &hf_021_V2_3_220_WS, I021_V2_3_220_WS_PARTS, { NULL } };
+static int hf_021_V2_3_220_WD = -1;
+static int hf_021_V2_3_220_WD_VALUE = -1;
+static const FieldPart I021_V2_3_220_WD_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_V2_3_220_WD_VALUE, NULL };
+static const FieldPart *I021_V2_3_220_WD_PARTS[] = {
+ &I021_V2_3_220_WD_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_220_WD = { FIXED, 2, 0, 0, &hf_021_V2_3_220_WD, I021_V2_3_220_WD_PARTS, { NULL } };
+static int hf_021_V2_3_220_TMP = -1;
+static int hf_021_V2_3_220_TMP_VALUE = -1;
+static const FieldPart I021_V2_3_220_TMP_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_021_V2_3_220_TMP_VALUE, NULL };
+static const FieldPart *I021_V2_3_220_TMP_PARTS[] = {
+ &I021_V2_3_220_TMP_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_220_TMP = { FIXED, 2, 0, 0, &hf_021_V2_3_220_TMP, I021_V2_3_220_TMP_PARTS, { NULL } };
+static int hf_021_V2_3_220_TRB = -1;
+static int hf_021_V2_3_220_TRB_VALUE = -1;
+static const FieldPart I021_V2_3_220_TRB_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_V2_3_220_TRB_VALUE, NULL };
+static const FieldPart *I021_V2_3_220_TRB_PARTS[] = {
+ &I021_V2_3_220_TRB_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_220_TRB = { FIXED, 1, 0, 0, &hf_021_V2_3_220_TRB, I021_V2_3_220_TRB_PARTS, { NULL } };
+static const AsterixField I021_V2_3_220 = { COMPOUND, 0, 0, 0, &hf_021_V2_3_220, NULL, { &I021_V2_3_220_WS, &I021_V2_3_220_WD, &I021_V2_3_220_TMP, &I021_V2_3_220_TRB, NULL } };
+static int hf_021_V2_3_230 = -1;
+static int hf_021_V2_3_230_VALUE = -1;
+static const FieldPart I021_V2_3_230_VALUE = { 16, 0.01, FIELD_PART_FLOAT, &hf_021_V2_3_230_VALUE, NULL };
+static const FieldPart *I021_V2_3_230_PARTS[] = {
+ &I021_V2_3_230_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_230 = { FIXED, 2, 0, 0, &hf_021_V2_3_230, I021_V2_3_230_PARTS, { NULL } };
+static int hf_021_V2_3_250 = -1;
+static int hf_021_V2_3_250_VALUE = -1;
+static const FieldPart I021_V2_3_250_VALUE = { 64, 1.0, FIELD_PART_HEX, &hf_021_V2_3_250_VALUE, NULL };
+static const FieldPart *I021_V2_3_250_PARTS[] = {
+ &I021_V2_3_250_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_250 = { REPETITIVE, 8, 1, 0, &hf_021_V2_3_250, I021_V2_3_250_PARTS, { NULL } };
+static int hf_021_V2_3_260 = -1;
+static int hf_021_V2_3_260_TYP = -1;
+static const FieldPart I021_V2_3_260_TYP = { 5, 1.0, FIELD_PART_HEX, &hf_021_V2_3_260_TYP, NULL };
+static int hf_021_V2_3_260_STYP = -1;
+static const FieldPart I021_V2_3_260_STYP = { 3, 1.0, FIELD_PART_HEX, &hf_021_V2_3_260_STYP, NULL };
+static int hf_021_V2_3_260_ARA = -1;
+static const FieldPart I021_V2_3_260_ARA = { 14, 1.0, FIELD_PART_HEX, &hf_021_V2_3_260_ARA, NULL };
+static int hf_021_V2_3_260_RAC = -1;
+static const FieldPart I021_V2_3_260_RAC = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_3_260_RAC, NULL };
+static int hf_021_V2_3_260_RAT = -1;
+static const FieldPart I021_V2_3_260_RAT = { 1, 1.0, FIELD_PART_HEX, &hf_021_V2_3_260_RAT, NULL };
+static int hf_021_V2_3_260_MTE = -1;
+static const FieldPart I021_V2_3_260_MTE = { 1, 1.0, FIELD_PART_HEX, &hf_021_V2_3_260_MTE, NULL };
+static int hf_021_V2_3_260_TTI = -1;
+static const FieldPart I021_V2_3_260_TTI = { 2, 1.0, FIELD_PART_HEX, &hf_021_V2_3_260_TTI, NULL };
+static int hf_021_V2_3_260_TID = -1;
+static const FieldPart I021_V2_3_260_TID = { 26, 1.0, FIELD_PART_HEX, &hf_021_V2_3_260_TID, NULL };
+static const FieldPart *I021_V2_3_260_PARTS[] = {
+ &I021_V2_3_260_TYP,
+ &I021_V2_3_260_STYP,
+ &I021_V2_3_260_ARA,
+ &I021_V2_3_260_RAC,
+ &I021_V2_3_260_RAT,
+ &I021_V2_3_260_MTE,
+ &I021_V2_3_260_TTI,
+ &I021_V2_3_260_TID,
+ NULL
+};
+static const AsterixField I021_V2_3_260 = { FIXED, 7, 0, 0, &hf_021_V2_3_260, I021_V2_3_260_PARTS, { NULL } };
+static int hf_021_V2_3_271 = -1;
+static int hf_021_V2_3_271_POA = -1;
+static const value_string valstr_021_V2_3_271_POA[] = {
+ { 0, "Position transmitted is not ADS-B position reference point" },
+ { 1, "Position transmitted is the ADS-B position reference point" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_271_POA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_271_POA, NULL };
+static int hf_021_V2_3_271_CDTIS = -1;
+static const value_string valstr_021_V2_3_271_CDTIS[] = {
+ { 0, "CDTI not operational" },
+ { 1, "CDTI operational" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_271_CDTIS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_271_CDTIS, NULL };
+static int hf_021_V2_3_271_B2LOW = -1;
+static const value_string valstr_021_V2_3_271_B2LOW[] = {
+ { 0, ">= 70 Watts" },
+ { 1, "< 70 Watts" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_271_B2LOW = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_271_B2LOW, NULL };
+static int hf_021_V2_3_271_RAS = -1;
+static const value_string valstr_021_V2_3_271_RAS[] = {
+ { 0, "Aircraft not receiving ATC-services" },
+ { 1, "Aircraft receiving ATC services" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_271_RAS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_271_RAS, NULL };
+static int hf_021_V2_3_271_IDENT = -1;
+static const value_string valstr_021_V2_3_271_IDENT[] = {
+ { 0, "IDENT switch not active" },
+ { 1, "IDENT switch active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_3_271_IDENT = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_3_271_IDENT, NULL };
+static int hf_021_V2_3_271_LW = -1;
+static const FieldPart I021_V2_3_271_LW = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_3_271_LW, NULL };
+static const FieldPart *I021_V2_3_271_PARTS[] = {
+ &IXXX_2bit_spare,
+ &I021_V2_3_271_POA,
+ &I021_V2_3_271_CDTIS,
+ &I021_V2_3_271_B2LOW,
+ &I021_V2_3_271_RAS,
+ &I021_V2_3_271_IDENT,
+ &IXXX_FX,
+ &I021_V2_3_271_LW,
+ &IXXX_3bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V2_3_271 = { FX, 1, 0, 0, &hf_021_V2_3_271, I021_V2_3_271_PARTS, { NULL } };
+static int hf_021_V2_3_295 = -1;
+static int hf_021_V2_3_295_AOS = -1;
+static int hf_021_V2_3_295_AOS_VALUE = -1;
+static const FieldPart I021_V2_3_295_AOS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_3_295_AOS_VALUE, NULL };
+static const FieldPart *I021_V2_3_295_AOS_PARTS[] = {
+ &I021_V2_3_295_AOS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_295_AOS = { FIXED, 1, 0, 0, &hf_021_V2_3_295_AOS, I021_V2_3_295_AOS_PARTS, { NULL } };
+static int hf_021_V2_3_295_TRD = -1;
+static int hf_021_V2_3_295_TRD_VALUE = -1;
+static const FieldPart I021_V2_3_295_TRD_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_3_295_TRD_VALUE, NULL };
+static const FieldPart *I021_V2_3_295_TRD_PARTS[] = {
+ &I021_V2_3_295_TRD_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_295_TRD = { FIXED, 1, 0, 0, &hf_021_V2_3_295_TRD, I021_V2_3_295_TRD_PARTS, { NULL } };
+static int hf_021_V2_3_295_M3A = -1;
+static int hf_021_V2_3_295_M3A_VALUE = -1;
+static const FieldPart I021_V2_3_295_M3A_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_3_295_M3A_VALUE, NULL };
+static const FieldPart *I021_V2_3_295_M3A_PARTS[] = {
+ &I021_V2_3_295_M3A_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_295_M3A = { FIXED, 1, 0, 0, &hf_021_V2_3_295_M3A, I021_V2_3_295_M3A_PARTS, { NULL } };
+static int hf_021_V2_3_295_QI = -1;
+static int hf_021_V2_3_295_QI_VALUE = -1;
+static const FieldPart I021_V2_3_295_QI_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_3_295_QI_VALUE, NULL };
+static const FieldPart *I021_V2_3_295_QI_PARTS[] = {
+ &I021_V2_3_295_QI_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_295_QI = { FIXED, 1, 0, 0, &hf_021_V2_3_295_QI, I021_V2_3_295_QI_PARTS, { NULL } };
+static int hf_021_V2_3_295_TI1 = -1;
+static int hf_021_V2_3_295_TI1_VALUE = -1;
+static const FieldPart I021_V2_3_295_TI1_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_3_295_TI1_VALUE, NULL };
+static const FieldPart *I021_V2_3_295_TI1_PARTS[] = {
+ &I021_V2_3_295_TI1_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_295_TI1 = { FIXED, 1, 0, 0, &hf_021_V2_3_295_TI1, I021_V2_3_295_TI1_PARTS, { NULL } };
+static int hf_021_V2_3_295_MAM = -1;
+static int hf_021_V2_3_295_MAM_VALUE = -1;
+static const FieldPart I021_V2_3_295_MAM_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_3_295_MAM_VALUE, NULL };
+static const FieldPart *I021_V2_3_295_MAM_PARTS[] = {
+ &I021_V2_3_295_MAM_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_295_MAM = { FIXED, 1, 0, 0, &hf_021_V2_3_295_MAM, I021_V2_3_295_MAM_PARTS, { NULL } };
+static int hf_021_V2_3_295_GH = -1;
+static int hf_021_V2_3_295_GH_VALUE = -1;
+static const FieldPart I021_V2_3_295_GH_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_3_295_GH_VALUE, NULL };
+static const FieldPart *I021_V2_3_295_GH_PARTS[] = {
+ &I021_V2_3_295_GH_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_295_GH = { FIXED, 1, 0, 0, &hf_021_V2_3_295_GH, I021_V2_3_295_GH_PARTS, { NULL } };
+static int hf_021_V2_3_295_FL = -1;
+static int hf_021_V2_3_295_FL_VALUE = -1;
+static const FieldPart I021_V2_3_295_FL_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_3_295_FL_VALUE, NULL };
+static const FieldPart *I021_V2_3_295_FL_PARTS[] = {
+ &I021_V2_3_295_FL_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_295_FL = { FIXED, 1, 0, 0, &hf_021_V2_3_295_FL, I021_V2_3_295_FL_PARTS, { NULL } };
+static int hf_021_V2_3_295_ISA = -1;
+static int hf_021_V2_3_295_ISA_VALUE = -1;
+static const FieldPart I021_V2_3_295_ISA_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_3_295_ISA_VALUE, NULL };
+static const FieldPart *I021_V2_3_295_ISA_PARTS[] = {
+ &I021_V2_3_295_ISA_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_295_ISA = { FIXED, 1, 0, 0, &hf_021_V2_3_295_ISA, I021_V2_3_295_ISA_PARTS, { NULL } };
+static int hf_021_V2_3_295_FSA = -1;
+static int hf_021_V2_3_295_FSA_VALUE = -1;
+static const FieldPart I021_V2_3_295_FSA_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_3_295_FSA_VALUE, NULL };
+static const FieldPart *I021_V2_3_295_FSA_PARTS[] = {
+ &I021_V2_3_295_FSA_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_295_FSA = { FIXED, 1, 0, 0, &hf_021_V2_3_295_FSA, I021_V2_3_295_FSA_PARTS, { NULL } };
+static int hf_021_V2_3_295_AS = -1;
+static int hf_021_V2_3_295_AS_VALUE = -1;
+static const FieldPart I021_V2_3_295_AS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_3_295_AS_VALUE, NULL };
+static const FieldPart *I021_V2_3_295_AS_PARTS[] = {
+ &I021_V2_3_295_AS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_295_AS = { FIXED, 1, 0, 0, &hf_021_V2_3_295_AS, I021_V2_3_295_AS_PARTS, { NULL } };
+static int hf_021_V2_3_295_TAS = -1;
+static int hf_021_V2_3_295_TAS_VALUE = -1;
+static const FieldPart I021_V2_3_295_TAS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_3_295_TAS_VALUE, NULL };
+static const FieldPart *I021_V2_3_295_TAS_PARTS[] = {
+ &I021_V2_3_295_TAS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_295_TAS = { FIXED, 1, 0, 0, &hf_021_V2_3_295_TAS, I021_V2_3_295_TAS_PARTS, { NULL } };
+static int hf_021_V2_3_295_MH = -1;
+static int hf_021_V2_3_295_MH_VALUE = -1;
+static const FieldPart I021_V2_3_295_MH_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_3_295_MH_VALUE, NULL };
+static const FieldPart *I021_V2_3_295_MH_PARTS[] = {
+ &I021_V2_3_295_MH_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_295_MH = { FIXED, 1, 0, 0, &hf_021_V2_3_295_MH, I021_V2_3_295_MH_PARTS, { NULL } };
+static int hf_021_V2_3_295_BVR = -1;
+static int hf_021_V2_3_295_BVR_VALUE = -1;
+static const FieldPart I021_V2_3_295_BVR_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_3_295_BVR_VALUE, NULL };
+static const FieldPart *I021_V2_3_295_BVR_PARTS[] = {
+ &I021_V2_3_295_BVR_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_295_BVR = { FIXED, 1, 0, 0, &hf_021_V2_3_295_BVR, I021_V2_3_295_BVR_PARTS, { NULL } };
+static int hf_021_V2_3_295_GVR = -1;
+static int hf_021_V2_3_295_GVR_VALUE = -1;
+static const FieldPart I021_V2_3_295_GVR_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_3_295_GVR_VALUE, NULL };
+static const FieldPart *I021_V2_3_295_GVR_PARTS[] = {
+ &I021_V2_3_295_GVR_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_295_GVR = { FIXED, 1, 0, 0, &hf_021_V2_3_295_GVR, I021_V2_3_295_GVR_PARTS, { NULL } };
+static int hf_021_V2_3_295_GV = -1;
+static int hf_021_V2_3_295_GV_VALUE = -1;
+static const FieldPart I021_V2_3_295_GV_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_3_295_GV_VALUE, NULL };
+static const FieldPart *I021_V2_3_295_GV_PARTS[] = {
+ &I021_V2_3_295_GV_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_295_GV = { FIXED, 1, 0, 0, &hf_021_V2_3_295_GV, I021_V2_3_295_GV_PARTS, { NULL } };
+static int hf_021_V2_3_295_TAR = -1;
+static int hf_021_V2_3_295_TAR_VALUE = -1;
+static const FieldPart I021_V2_3_295_TAR_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_3_295_TAR_VALUE, NULL };
+static const FieldPart *I021_V2_3_295_TAR_PARTS[] = {
+ &I021_V2_3_295_TAR_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_295_TAR = { FIXED, 1, 0, 0, &hf_021_V2_3_295_TAR, I021_V2_3_295_TAR_PARTS, { NULL } };
+static int hf_021_V2_3_295_TI2 = -1;
+static int hf_021_V2_3_295_TI2_VALUE = -1;
+static const FieldPart I021_V2_3_295_TI2_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_3_295_TI2_VALUE, NULL };
+static const FieldPart *I021_V2_3_295_TI2_PARTS[] = {
+ &I021_V2_3_295_TI2_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_295_TI2 = { FIXED, 1, 0, 0, &hf_021_V2_3_295_TI2, I021_V2_3_295_TI2_PARTS, { NULL } };
+static int hf_021_V2_3_295_TS = -1;
+static int hf_021_V2_3_295_TS_VALUE = -1;
+static const FieldPart I021_V2_3_295_TS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_3_295_TS_VALUE, NULL };
+static const FieldPart *I021_V2_3_295_TS_PARTS[] = {
+ &I021_V2_3_295_TS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_295_TS = { FIXED, 1, 0, 0, &hf_021_V2_3_295_TS, I021_V2_3_295_TS_PARTS, { NULL } };
+static int hf_021_V2_3_295_MET = -1;
+static int hf_021_V2_3_295_MET_VALUE = -1;
+static const FieldPart I021_V2_3_295_MET_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_3_295_MET_VALUE, NULL };
+static const FieldPart *I021_V2_3_295_MET_PARTS[] = {
+ &I021_V2_3_295_MET_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_295_MET = { FIXED, 1, 0, 0, &hf_021_V2_3_295_MET, I021_V2_3_295_MET_PARTS, { NULL } };
+static int hf_021_V2_3_295_ROA = -1;
+static int hf_021_V2_3_295_ROA_VALUE = -1;
+static const FieldPart I021_V2_3_295_ROA_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_3_295_ROA_VALUE, NULL };
+static const FieldPart *I021_V2_3_295_ROA_PARTS[] = {
+ &I021_V2_3_295_ROA_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_295_ROA = { FIXED, 1, 0, 0, &hf_021_V2_3_295_ROA, I021_V2_3_295_ROA_PARTS, { NULL } };
+static int hf_021_V2_3_295_ARA = -1;
+static int hf_021_V2_3_295_ARA_VALUE = -1;
+static const FieldPart I021_V2_3_295_ARA_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_3_295_ARA_VALUE, NULL };
+static const FieldPart *I021_V2_3_295_ARA_PARTS[] = {
+ &I021_V2_3_295_ARA_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_295_ARA = { FIXED, 1, 0, 0, &hf_021_V2_3_295_ARA, I021_V2_3_295_ARA_PARTS, { NULL } };
+static int hf_021_V2_3_295_SCC = -1;
+static int hf_021_V2_3_295_SCC_VALUE = -1;
+static const FieldPart I021_V2_3_295_SCC_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_3_295_SCC_VALUE, NULL };
+static const FieldPart *I021_V2_3_295_SCC_PARTS[] = {
+ &I021_V2_3_295_SCC_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_295_SCC = { FIXED, 1, 0, 0, &hf_021_V2_3_295_SCC, I021_V2_3_295_SCC_PARTS, { NULL } };
+static const AsterixField I021_V2_3_295 = { COMPOUND, 0, 0, 0, &hf_021_V2_3_295, NULL, { &I021_V2_3_295_AOS, &I021_V2_3_295_TRD, &I021_V2_3_295_M3A, &I021_V2_3_295_QI, &I021_V2_3_295_TI1, &I021_V2_3_295_MAM, &I021_V2_3_295_GH, &I021_V2_3_295_FL, &I021_V2_3_295_ISA, &I021_V2_3_295_FSA, &I021_V2_3_295_AS, &I021_V2_3_295_TAS, &I021_V2_3_295_MH, &I021_V2_3_295_BVR, &I021_V2_3_295_GVR, &I021_V2_3_295_GV, &I021_V2_3_295_TAR, &I021_V2_3_295_TI2, &I021_V2_3_295_TS, &I021_V2_3_295_MET, &I021_V2_3_295_ROA, &I021_V2_3_295_ARA, &I021_V2_3_295_SCC, NULL } };
+static int hf_021_V2_3_400 = -1;
+static int hf_021_V2_3_400_VALUE = -1;
+static const FieldPart I021_V2_3_400_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_021_V2_3_400_VALUE, NULL };
+static const FieldPart *I021_V2_3_400_PARTS[] = {
+ &I021_V2_3_400_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_3_400 = { FIXED, 1, 0, 0, &hf_021_V2_3_400, I021_V2_3_400_PARTS, { NULL } };
+static int hf_021_V2_3_RE = -1;
+static const AsterixField I021_V2_3_RE = { EXP, 0, 0, 1, &hf_021_V2_3_RE, NULL, { NULL } };
+static int hf_021_V2_3_SP = -1;
+static const AsterixField I021_V2_3_SP = { EXP, 0, 0, 1, &hf_021_V2_3_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I021_V2_3_uap[] = {
+ &I021_V2_3_010,
+ &I021_V2_3_040,
+ &I021_V2_3_161,
+ &I021_V2_3_015,
+ &I021_V2_3_071,
+ &I021_V2_3_130,
+ &I021_V2_3_131,
+ &I021_V2_3_072,
+ &I021_V2_3_150,
+ &I021_V2_3_151,
+ &I021_V2_3_080,
+ &I021_V2_3_073,
+ &I021_V2_3_074,
+ &I021_V2_3_075,
+ &I021_V2_3_076,
+ &I021_V2_3_140,
+ &I021_V2_3_090,
+ &I021_V2_3_210,
+ &I021_V2_3_070,
+ &I021_V2_3_230,
+ &I021_V2_3_145,
+ &I021_V2_3_152,
+ &I021_V2_3_200,
+ &I021_V2_3_155,
+ &I021_V2_3_157,
+ &I021_V2_3_160,
+ &I021_V2_3_165,
+ &I021_V2_3_077,
+ &I021_V2_3_170,
+ &I021_V2_3_020,
+ &I021_V2_3_220,
+ &I021_V2_3_146,
+ &I021_V2_3_148,
+ &I021_V2_3_110,
+ &I021_V2_3_016,
+ &I021_V2_3_008,
+ &I021_V2_3_271,
+ &I021_V2_3_132,
+ &I021_V2_3_250,
+ &I021_V2_3_260,
+ &I021_V2_3_400,
+ &I021_V2_3_295,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I021_V2_3_RE,
+ &I021_V2_3_SP,
+ NULL
+};
+static const AsterixField **I021_V2_3[] = {
+ I021_V2_3_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 021, edition 2.4 */
+static int hf_021_V2_4_008 = -1;
+static int hf_021_V2_4_008_RA = -1;
+static const value_string valstr_021_V2_4_008_RA[] = {
+ { 0, "TCAS II or ACAS RA not active" },
+ { 1, "TCAS RA active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_008_RA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_008_RA, NULL };
+static int hf_021_V2_4_008_TC = -1;
+static const value_string valstr_021_V2_4_008_TC[] = {
+ { 0, "No capability for Trajectory Change Reports" },
+ { 1, "Support for TC+0 reports only" },
+ { 2, "Support for multiple TC reports" },
+ { 3, "Reserved" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_008_TC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_4_008_TC, NULL };
+static int hf_021_V2_4_008_TS = -1;
+static const value_string valstr_021_V2_4_008_TS[] = {
+ { 0, "No capability to support Target State Reports" },
+ { 1, "Capable of supporting target State Reports" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_008_TS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_008_TS, NULL };
+static int hf_021_V2_4_008_ARV = -1;
+static const value_string valstr_021_V2_4_008_ARV[] = {
+ { 0, "No capability to generate ARV-reports" },
+ { 1, "Capable of generate ARV-reports" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_008_ARV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_008_ARV, NULL };
+static int hf_021_V2_4_008_CDTIA = -1;
+static const value_string valstr_021_V2_4_008_CDTIA[] = {
+ { 0, "CDTI not operational" },
+ { 1, "CDTI operational" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_008_CDTIA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_008_CDTIA, NULL };
+static int hf_021_V2_4_008_NOTTCAS = -1;
+static const value_string valstr_021_V2_4_008_NOTTCAS[] = {
+ { 0, "TCAS operational" },
+ { 1, "TCAS not operational" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_008_NOTTCAS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_008_NOTTCAS, NULL };
+static int hf_021_V2_4_008_SA = -1;
+static const value_string valstr_021_V2_4_008_SA[] = {
+ { 0, "Antenna Diversity" },
+ { 1, "Single Antenna only" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_008_SA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_008_SA, NULL };
+static const FieldPart *I021_V2_4_008_PARTS[] = {
+ &I021_V2_4_008_RA,
+ &I021_V2_4_008_TC,
+ &I021_V2_4_008_TS,
+ &I021_V2_4_008_ARV,
+ &I021_V2_4_008_CDTIA,
+ &I021_V2_4_008_NOTTCAS,
+ &I021_V2_4_008_SA,
+ NULL
+};
+static const AsterixField I021_V2_4_008 = { FIXED, 1, 0, 0, &hf_021_V2_4_008, I021_V2_4_008_PARTS, { NULL } };
+static int hf_021_V2_4_010 = -1;
+static int hf_021_V2_4_010_SAC = -1;
+static const FieldPart I021_V2_4_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_021_V2_4_010_SAC, NULL };
+static int hf_021_V2_4_010_SIC = -1;
+static const FieldPart I021_V2_4_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_021_V2_4_010_SIC, NULL };
+static const FieldPart *I021_V2_4_010_PARTS[] = {
+ &I021_V2_4_010_SAC,
+ &I021_V2_4_010_SIC,
+ NULL
+};
+static const AsterixField I021_V2_4_010 = { FIXED, 2, 0, 0, &hf_021_V2_4_010, I021_V2_4_010_PARTS, { NULL } };
+static int hf_021_V2_4_015 = -1;
+static int hf_021_V2_4_015_VALUE = -1;
+static const FieldPart I021_V2_4_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_021_V2_4_015_VALUE, NULL };
+static const FieldPart *I021_V2_4_015_PARTS[] = {
+ &I021_V2_4_015_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_015 = { FIXED, 1, 0, 0, &hf_021_V2_4_015, I021_V2_4_015_PARTS, { NULL } };
+static int hf_021_V2_4_016 = -1;
+static int hf_021_V2_4_016_VALUE = -1;
+static const FieldPart I021_V2_4_016_VALUE = { 8, 0.5, FIELD_PART_UFLOAT, &hf_021_V2_4_016_VALUE, NULL };
+static const FieldPart *I021_V2_4_016_PARTS[] = {
+ &I021_V2_4_016_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_016 = { FIXED, 1, 0, 0, &hf_021_V2_4_016, I021_V2_4_016_PARTS, { NULL } };
+static int hf_021_V2_4_020 = -1;
+static int hf_021_V2_4_020_VALUE = -1;
+static const value_string valstr_021_V2_4_020_VALUE[] = {
+ { 0, "No ADS-B Emitter Category Information" },
+ { 1, "Light aircraft <= 15500 lbs" },
+ { 2, "15500 lbs < small aircraft <75000 lbs" },
+ { 3, "75000 lbs < medium a/c < 300000 lbs" },
+ { 4, "High Vortex Large" },
+ { 5, "300000 lbs <= heavy aircraft" },
+ { 6, "Highly manoeuvrable (5g acceleration capability) and high speed (>400 knots cruise)" },
+ { 7, "Reserved" },
+ { 8, "Reserved" },
+ { 9, "Reserved" },
+ { 10, "Rotocraft" },
+ { 11, "Glider / sailplane" },
+ { 12, "Lighter-than-air" },
+ { 13, "Unmanned aerial vehicle" },
+ { 14, "Space / transatmospheric vehicle" },
+ { 15, "Ultralight / handglider / paraglider" },
+ { 16, "Parachutist / skydiver" },
+ { 17, "Reserved" },
+ { 18, "Reserved" },
+ { 19, "Reserved" },
+ { 20, "Surface emergency vehicle" },
+ { 21, "Surface service vehicle" },
+ { 22, "Fixed ground or tethered obstruction" },
+ { 23, "Cluster obstacle" },
+ { 24, "Line obstacle" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_020_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_V2_4_020_VALUE, NULL };
+static const FieldPart *I021_V2_4_020_PARTS[] = {
+ &I021_V2_4_020_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_020 = { FIXED, 1, 0, 0, &hf_021_V2_4_020, I021_V2_4_020_PARTS, { NULL } };
+static int hf_021_V2_4_040 = -1;
+static int hf_021_V2_4_040_ATP = -1;
+static const value_string valstr_021_V2_4_040_ATP[] = {
+ { 0, "24-Bit ICAO address" },
+ { 1, "Duplicate address" },
+ { 2, "Surface vehicle address" },
+ { 3, "Anonymous address" },
+ { 4, "Reserved for future use" },
+ { 5, "Reserved for future use" },
+ { 6, "Reserved for future use" },
+ { 7, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_040_ATP = { 3, 1.0, FIELD_PART_UINT, &hf_021_V2_4_040_ATP, NULL };
+static int hf_021_V2_4_040_ARC = -1;
+static const value_string valstr_021_V2_4_040_ARC[] = {
+ { 0, "25 ft" },
+ { 1, "100 ft" },
+ { 2, "Unknown" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_040_ARC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_4_040_ARC, NULL };
+static int hf_021_V2_4_040_RC = -1;
+static const value_string valstr_021_V2_4_040_RC[] = {
+ { 0, "Default" },
+ { 1, "Range Check passed, CPR Validation pending" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_040_RC = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_040_RC, NULL };
+static int hf_021_V2_4_040_RAB = -1;
+static const value_string valstr_021_V2_4_040_RAB[] = {
+ { 0, "Report from target transponder" },
+ { 1, "Report from field monitor (fixed transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_040_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_040_RAB, NULL };
+static int hf_021_V2_4_040_DCR = -1;
+static const value_string valstr_021_V2_4_040_DCR[] = {
+ { 0, "No differential correction (ADS-B)" },
+ { 1, "Differential correction (ADS-B)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_040_DCR = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_040_DCR, NULL };
+static int hf_021_V2_4_040_GBS = -1;
+static const value_string valstr_021_V2_4_040_GBS[] = {
+ { 0, "Ground Bit not set" },
+ { 1, "Ground Bit set" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_040_GBS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_040_GBS, NULL };
+static int hf_021_V2_4_040_SIM = -1;
+static const value_string valstr_021_V2_4_040_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_040_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_040_SIM, NULL };
+static int hf_021_V2_4_040_TST = -1;
+static const value_string valstr_021_V2_4_040_TST[] = {
+ { 0, "Default" },
+ { 1, "Test Target" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_040_TST = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_040_TST, NULL };
+static int hf_021_V2_4_040_SAA = -1;
+static const value_string valstr_021_V2_4_040_SAA[] = {
+ { 0, "Equipment capable to provide Selected Altitude" },
+ { 1, "Equipment not capable to provide Selected Altitude" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_040_SAA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_040_SAA, NULL };
+static int hf_021_V2_4_040_CL = -1;
+static const value_string valstr_021_V2_4_040_CL[] = {
+ { 0, "Report valid" },
+ { 1, "Report suspect" },
+ { 2, "No information" },
+ { 3, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_040_CL = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_4_040_CL, NULL };
+static int hf_021_V2_4_040_LLC = -1;
+static const value_string valstr_021_V2_4_040_LLC[] = {
+ { 0, "Default" },
+ { 1, "List Lookup failed (see note)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_040_LLC = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_040_LLC, NULL };
+static int hf_021_V2_4_040_IPC = -1;
+static const value_string valstr_021_V2_4_040_IPC[] = {
+ { 0, "Default (see note)" },
+ { 1, "Independent Position Check failed" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_040_IPC = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_040_IPC, NULL };
+static int hf_021_V2_4_040_NOGO = -1;
+static const value_string valstr_021_V2_4_040_NOGO[] = {
+ { 0, "NOGO-bit not set" },
+ { 1, "NOGO-bit set" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_040_NOGO = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_040_NOGO, NULL };
+static int hf_021_V2_4_040_CPR = -1;
+static const value_string valstr_021_V2_4_040_CPR[] = {
+ { 0, "CPR Validation correct" },
+ { 1, "CPR Validation failed" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_040_CPR = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_040_CPR, NULL };
+static int hf_021_V2_4_040_LDPJ = -1;
+static const value_string valstr_021_V2_4_040_LDPJ[] = {
+ { 0, "LDPJ not detected" },
+ { 1, "LDPJ detected" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_040_LDPJ = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_040_LDPJ, NULL };
+static int hf_021_V2_4_040_RCF = -1;
+static const value_string valstr_021_V2_4_040_RCF[] = {
+ { 0, "Default" },
+ { 1, "Range Check failed" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_040_RCF = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_040_RCF, NULL };
+static const FieldPart *I021_V2_4_040_PARTS[] = {
+ &I021_V2_4_040_ATP,
+ &I021_V2_4_040_ARC,
+ &I021_V2_4_040_RC,
+ &I021_V2_4_040_RAB,
+ &IXXX_FX,
+ &I021_V2_4_040_DCR,
+ &I021_V2_4_040_GBS,
+ &I021_V2_4_040_SIM,
+ &I021_V2_4_040_TST,
+ &I021_V2_4_040_SAA,
+ &I021_V2_4_040_CL,
+ &IXXX_FX,
+ &IXXX_1bit_spare,
+ &I021_V2_4_040_LLC,
+ &I021_V2_4_040_IPC,
+ &I021_V2_4_040_NOGO,
+ &I021_V2_4_040_CPR,
+ &I021_V2_4_040_LDPJ,
+ &I021_V2_4_040_RCF,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V2_4_040 = { FX, 1, 0, 0, &hf_021_V2_4_040, I021_V2_4_040_PARTS, { NULL } };
+static int hf_021_V2_4_070 = -1;
+static int hf_021_V2_4_070_MODE3A = -1;
+static const FieldPart I021_V2_4_070_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_021_V2_4_070_MODE3A, NULL };
+static const FieldPart *I021_V2_4_070_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I021_V2_4_070_MODE3A,
+ NULL
+};
+static const AsterixField I021_V2_4_070 = { FIXED, 2, 0, 0, &hf_021_V2_4_070, I021_V2_4_070_PARTS, { NULL } };
+static int hf_021_V2_4_071 = -1;
+static int hf_021_V2_4_071_VALUE = -1;
+static const FieldPart I021_V2_4_071_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_4_071_VALUE, NULL };
+static const FieldPart *I021_V2_4_071_PARTS[] = {
+ &I021_V2_4_071_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_071 = { FIXED, 3, 0, 0, &hf_021_V2_4_071, I021_V2_4_071_PARTS, { NULL } };
+static int hf_021_V2_4_072 = -1;
+static int hf_021_V2_4_072_VALUE = -1;
+static const FieldPart I021_V2_4_072_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_4_072_VALUE, NULL };
+static const FieldPart *I021_V2_4_072_PARTS[] = {
+ &I021_V2_4_072_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_072 = { FIXED, 3, 0, 0, &hf_021_V2_4_072, I021_V2_4_072_PARTS, { NULL } };
+static int hf_021_V2_4_073 = -1;
+static int hf_021_V2_4_073_VALUE = -1;
+static const FieldPart I021_V2_4_073_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_4_073_VALUE, NULL };
+static const FieldPart *I021_V2_4_073_PARTS[] = {
+ &I021_V2_4_073_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_073 = { FIXED, 3, 0, 0, &hf_021_V2_4_073, I021_V2_4_073_PARTS, { NULL } };
+static int hf_021_V2_4_074 = -1;
+static int hf_021_V2_4_074_FSI = -1;
+static const value_string valstr_021_V2_4_074_FSI[] = {
+ { 3, "Reserved" },
+ { 2, "TOMRp whole seconds = (I021/073) Whole seconds - 1" },
+ { 1, "TOMRp whole seconds = (I021/073) Whole seconds + 1" },
+ { 0, "TOMRp whole seconds = (I021/073) Whole seconds" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_074_FSI = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_4_074_FSI, NULL };
+static int hf_021_V2_4_074_TOMRP = -1;
+static const FieldPart I021_V2_4_074_TOMRP = { 30, 0.00000000093132257461547851562, FIELD_PART_UFLOAT, &hf_021_V2_4_074_TOMRP, NULL };
+static const FieldPart *I021_V2_4_074_PARTS[] = {
+ &I021_V2_4_074_FSI,
+ &I021_V2_4_074_TOMRP,
+ NULL
+};
+static const AsterixField I021_V2_4_074 = { FIXED, 4, 0, 0, &hf_021_V2_4_074, I021_V2_4_074_PARTS, { NULL } };
+static int hf_021_V2_4_075 = -1;
+static int hf_021_V2_4_075_VALUE = -1;
+static const FieldPart I021_V2_4_075_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_4_075_VALUE, NULL };
+static const FieldPart *I021_V2_4_075_PARTS[] = {
+ &I021_V2_4_075_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_075 = { FIXED, 3, 0, 0, &hf_021_V2_4_075, I021_V2_4_075_PARTS, { NULL } };
+static int hf_021_V2_4_076 = -1;
+static int hf_021_V2_4_076_FSI = -1;
+static const value_string valstr_021_V2_4_076_FSI[] = {
+ { 3, "Reserved" },
+ { 2, "TOMRp whole seconds = (I021/075) Whole seconds - 1" },
+ { 1, "TOMRp whole seconds = (I021/075) Whole seconds + 1" },
+ { 0, "TOMRp whole seconds = (I021/075) Whole seconds" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_076_FSI = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_4_076_FSI, NULL };
+static int hf_021_V2_4_076_TOMRP = -1;
+static const FieldPart I021_V2_4_076_TOMRP = { 30, 0.00000000093132257461547851562, FIELD_PART_UFLOAT, &hf_021_V2_4_076_TOMRP, NULL };
+static const FieldPart *I021_V2_4_076_PARTS[] = {
+ &I021_V2_4_076_FSI,
+ &I021_V2_4_076_TOMRP,
+ NULL
+};
+static const AsterixField I021_V2_4_076 = { FIXED, 4, 0, 0, &hf_021_V2_4_076, I021_V2_4_076_PARTS, { NULL } };
+static int hf_021_V2_4_077 = -1;
+static int hf_021_V2_4_077_VALUE = -1;
+static const FieldPart I021_V2_4_077_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_4_077_VALUE, NULL };
+static const FieldPart *I021_V2_4_077_PARTS[] = {
+ &I021_V2_4_077_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_077 = { FIXED, 3, 0, 0, &hf_021_V2_4_077, I021_V2_4_077_PARTS, { NULL } };
+static int hf_021_V2_4_080 = -1;
+static int hf_021_V2_4_080_VALUE = -1;
+static const FieldPart I021_V2_4_080_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_021_V2_4_080_VALUE, NULL };
+static const FieldPart *I021_V2_4_080_PARTS[] = {
+ &I021_V2_4_080_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_080 = { FIXED, 3, 0, 0, &hf_021_V2_4_080, I021_V2_4_080_PARTS, { NULL } };
+static int hf_021_V2_4_090 = -1;
+static int hf_021_V2_4_090_NUCRNACV = -1;
+static const FieldPart I021_V2_4_090_NUCRNACV = { 3, 1.0, FIELD_PART_HEX, &hf_021_V2_4_090_NUCRNACV, NULL };
+static int hf_021_V2_4_090_NUCPNIC = -1;
+static const FieldPart I021_V2_4_090_NUCPNIC = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_4_090_NUCPNIC, NULL };
+static int hf_021_V2_4_090_NICBARO = -1;
+static const FieldPart I021_V2_4_090_NICBARO = { 1, 1.0, FIELD_PART_HEX, &hf_021_V2_4_090_NICBARO, NULL };
+static int hf_021_V2_4_090_SIL = -1;
+static const FieldPart I021_V2_4_090_SIL = { 2, 1.0, FIELD_PART_HEX, &hf_021_V2_4_090_SIL, NULL };
+static int hf_021_V2_4_090_NACP = -1;
+static const FieldPart I021_V2_4_090_NACP = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_4_090_NACP, NULL };
+static int hf_021_V2_4_090_SILS = -1;
+static const value_string valstr_021_V2_4_090_SILS[] = {
+ { 0, "Measured per flight-hour" },
+ { 1, "Measured per sample" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_090_SILS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_090_SILS, NULL };
+static int hf_021_V2_4_090_SDA = -1;
+static const FieldPart I021_V2_4_090_SDA = { 2, 1.0, FIELD_PART_HEX, &hf_021_V2_4_090_SDA, NULL };
+static int hf_021_V2_4_090_GVA = -1;
+static const FieldPart I021_V2_4_090_GVA = { 2, 1.0, FIELD_PART_HEX, &hf_021_V2_4_090_GVA, NULL };
+static int hf_021_V2_4_090_PIC = -1;
+static const FieldPart I021_V2_4_090_PIC = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_4_090_PIC, NULL };
+static const FieldPart *I021_V2_4_090_PARTS[] = {
+ &I021_V2_4_090_NUCRNACV,
+ &I021_V2_4_090_NUCPNIC,
+ &IXXX_FX,
+ &I021_V2_4_090_NICBARO,
+ &I021_V2_4_090_SIL,
+ &I021_V2_4_090_NACP,
+ &IXXX_FX,
+ &IXXX_2bit_spare,
+ &I021_V2_4_090_SILS,
+ &I021_V2_4_090_SDA,
+ &I021_V2_4_090_GVA,
+ &IXXX_FX,
+ &I021_V2_4_090_PIC,
+ &IXXX_3bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V2_4_090 = { FX, 1, 0, 0, &hf_021_V2_4_090, I021_V2_4_090_PARTS, { NULL } };
+static int hf_021_V2_4_110 = -1;
+static int hf_021_V2_4_110_TIS = -1;
+static int hf_021_V2_4_110_TIS_NAV = -1;
+static const value_string valstr_021_V2_4_110_TIS_NAV[] = {
+ { 0, "Trajectory Intent Data is available for this aircraft" },
+ { 1, "Trajectory Intent Data is not available for this aircraft" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_110_TIS_NAV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_110_TIS_NAV, NULL };
+static int hf_021_V2_4_110_TIS_NVB = -1;
+static const value_string valstr_021_V2_4_110_TIS_NVB[] = {
+ { 0, "Trajectory Intent Data is valid" },
+ { 1, "Trajectory Intent Data is not valid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_110_TIS_NVB = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_110_TIS_NVB, NULL };
+static const FieldPart *I021_V2_4_110_TIS_PARTS[] = {
+ &I021_V2_4_110_TIS_NAV,
+ &I021_V2_4_110_TIS_NVB,
+ &IXXX_5bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V2_4_110_TIS = { FX, 1, 0, 0, &hf_021_V2_4_110_TIS, I021_V2_4_110_TIS_PARTS, { NULL } };
+static int hf_021_V2_4_110_TID = -1;
+static int hf_021_V2_4_110_TID_TCA = -1;
+static const value_string valstr_021_V2_4_110_TID_TCA[] = {
+ { 0, "TCP number available" },
+ { 1, "TCP number not available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_110_TID_TCA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_110_TID_TCA, NULL };
+static int hf_021_V2_4_110_TID_NC = -1;
+static const value_string valstr_021_V2_4_110_TID_NC[] = {
+ { 0, "TCP compliance" },
+ { 1, "TCP non-compliance" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_110_TID_NC = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_110_TID_NC, NULL };
+static int hf_021_V2_4_110_TID_TCPN = -1;
+static const FieldPart I021_V2_4_110_TID_TCPN = { 6, 1.0, FIELD_PART_HEX, &hf_021_V2_4_110_TID_TCPN, NULL };
+static int hf_021_V2_4_110_TID_ALT = -1;
+static const FieldPart I021_V2_4_110_TID_ALT = { 16, 10.0, FIELD_PART_FLOAT, &hf_021_V2_4_110_TID_ALT, NULL };
+static int hf_021_V2_4_110_TID_LAT = -1;
+static const FieldPart I021_V2_4_110_TID_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V2_4_110_TID_LAT, NULL };
+static int hf_021_V2_4_110_TID_LON = -1;
+static const FieldPart I021_V2_4_110_TID_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V2_4_110_TID_LON, NULL };
+static int hf_021_V2_4_110_TID_PT = -1;
+static const value_string valstr_021_V2_4_110_TID_PT[] = {
+ { 0, "Unknown" },
+ { 1, "Fly by waypoint (LT)" },
+ { 2, "Fly over waypoint (LT)" },
+ { 3, "Hold pattern (LT)" },
+ { 4, "Procedure hold (LT)" },
+ { 5, "Procedure turn (LT)" },
+ { 6, "RF leg (LT)" },
+ { 7, "Top of climb (VT)" },
+ { 8, "Top of descent (VT)" },
+ { 9, "Start of level (VT)" },
+ { 10, "Cross-over altitude (VT)" },
+ { 11, "Transition altitude (VT)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_110_TID_PT = { 4, 1.0, FIELD_PART_UINT, &hf_021_V2_4_110_TID_PT, NULL };
+static int hf_021_V2_4_110_TID_TD = -1;
+static const value_string valstr_021_V2_4_110_TID_TD[] = {
+ { 0, "N/A" },
+ { 1, "Turn right" },
+ { 2, "Turn left" },
+ { 3, "No turn" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_110_TID_TD = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_4_110_TID_TD, NULL };
+static int hf_021_V2_4_110_TID_TRA = -1;
+static const value_string valstr_021_V2_4_110_TID_TRA[] = {
+ { 0, "TTR not available" },
+ { 1, "TTR available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_110_TID_TRA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_110_TID_TRA, NULL };
+static int hf_021_V2_4_110_TID_TOA = -1;
+static const value_string valstr_021_V2_4_110_TID_TOA[] = {
+ { 0, "TOV available" },
+ { 1, "TOV not available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_110_TID_TOA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_110_TID_TOA, NULL };
+static int hf_021_V2_4_110_TID_TOV = -1;
+static const FieldPart I021_V2_4_110_TID_TOV = { 24, 1.0, FIELD_PART_UFLOAT, &hf_021_V2_4_110_TID_TOV, NULL };
+static int hf_021_V2_4_110_TID_TTR = -1;
+static const FieldPart I021_V2_4_110_TID_TTR = { 16, 0.01, FIELD_PART_UFLOAT, &hf_021_V2_4_110_TID_TTR, NULL };
+static const FieldPart *I021_V2_4_110_TID_PARTS[] = {
+ &I021_V2_4_110_TID_TCA,
+ &I021_V2_4_110_TID_NC,
+ &I021_V2_4_110_TID_TCPN,
+ &I021_V2_4_110_TID_ALT,
+ &I021_V2_4_110_TID_LAT,
+ &I021_V2_4_110_TID_LON,
+ &I021_V2_4_110_TID_PT,
+ &I021_V2_4_110_TID_TD,
+ &I021_V2_4_110_TID_TRA,
+ &I021_V2_4_110_TID_TOA,
+ &I021_V2_4_110_TID_TOV,
+ &I021_V2_4_110_TID_TTR,
+ NULL
+};
+static const AsterixField I021_V2_4_110_TID = { REPETITIVE, 15, 1, 0, &hf_021_V2_4_110_TID, I021_V2_4_110_TID_PARTS, { NULL } };
+static const AsterixField I021_V2_4_110 = { COMPOUND, 0, 0, 0, &hf_021_V2_4_110, NULL, { &I021_V2_4_110_TIS, &I021_V2_4_110_TID, NULL } };
+static int hf_021_V2_4_130 = -1;
+static int hf_021_V2_4_130_LAT = -1;
+static const FieldPart I021_V2_4_130_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V2_4_130_LAT, NULL };
+static int hf_021_V2_4_130_LON = -1;
+static const FieldPart I021_V2_4_130_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V2_4_130_LON, NULL };
+static const FieldPart *I021_V2_4_130_PARTS[] = {
+ &I021_V2_4_130_LAT,
+ &I021_V2_4_130_LON,
+ NULL
+};
+static const AsterixField I021_V2_4_130 = { FIXED, 6, 0, 0, &hf_021_V2_4_130, I021_V2_4_130_PARTS, { NULL } };
+static int hf_021_V2_4_131 = -1;
+static int hf_021_V2_4_131_LAT = -1;
+static const FieldPart I021_V2_4_131_LAT = { 32, 0.0000001676380634307861328125, FIELD_PART_FLOAT, &hf_021_V2_4_131_LAT, NULL };
+static int hf_021_V2_4_131_LON = -1;
+static const FieldPart I021_V2_4_131_LON = { 32, 0.0000001676380634307861328125, FIELD_PART_FLOAT, &hf_021_V2_4_131_LON, NULL };
+static const FieldPart *I021_V2_4_131_PARTS[] = {
+ &I021_V2_4_131_LAT,
+ &I021_V2_4_131_LON,
+ NULL
+};
+static const AsterixField I021_V2_4_131 = { FIXED, 8, 0, 0, &hf_021_V2_4_131, I021_V2_4_131_PARTS, { NULL } };
+static int hf_021_V2_4_132 = -1;
+static int hf_021_V2_4_132_VALUE = -1;
+static const FieldPart I021_V2_4_132_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_021_V2_4_132_VALUE, NULL };
+static const FieldPart *I021_V2_4_132_PARTS[] = {
+ &I021_V2_4_132_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_132 = { FIXED, 1, 0, 0, &hf_021_V2_4_132, I021_V2_4_132_PARTS, { NULL } };
+static int hf_021_V2_4_140 = -1;
+static int hf_021_V2_4_140_VALUE = -1;
+static const FieldPart I021_V2_4_140_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_021_V2_4_140_VALUE, NULL };
+static const FieldPart *I021_V2_4_140_PARTS[] = {
+ &I021_V2_4_140_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_140 = { FIXED, 2, 0, 0, &hf_021_V2_4_140, I021_V2_4_140_PARTS, { NULL } };
+static int hf_021_V2_4_145 = -1;
+static int hf_021_V2_4_145_VALUE = -1;
+static const FieldPart I021_V2_4_145_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_021_V2_4_145_VALUE, NULL };
+static const FieldPart *I021_V2_4_145_PARTS[] = {
+ &I021_V2_4_145_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_145 = { FIXED, 2, 0, 0, &hf_021_V2_4_145, I021_V2_4_145_PARTS, { NULL } };
+static int hf_021_V2_4_146 = -1;
+static int hf_021_V2_4_146_SAS = -1;
+static const value_string valstr_021_V2_4_146_SAS[] = {
+ { 0, "No source information provided" },
+ { 1, "Source Information provided" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_146_SAS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_146_SAS, NULL };
+static int hf_021_V2_4_146_S = -1;
+static const value_string valstr_021_V2_4_146_S[] = {
+ { 0, "Unknown" },
+ { 1, "Aircraft Altitude (Holding Altitude)" },
+ { 2, "MCP/FCU Selected Altitude" },
+ { 3, "FMS Selected Altitude" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_146_S = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_4_146_S, NULL };
+static int hf_021_V2_4_146_ALT = -1;
+static const FieldPart I021_V2_4_146_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_021_V2_4_146_ALT, NULL };
+static const FieldPart *I021_V2_4_146_PARTS[] = {
+ &I021_V2_4_146_SAS,
+ &I021_V2_4_146_S,
+ &I021_V2_4_146_ALT,
+ NULL
+};
+static const AsterixField I021_V2_4_146 = { FIXED, 2, 0, 0, &hf_021_V2_4_146, I021_V2_4_146_PARTS, { NULL } };
+static int hf_021_V2_4_148 = -1;
+static int hf_021_V2_4_148_MV = -1;
+static const value_string valstr_021_V2_4_148_MV[] = {
+ { 0, "Not active or unknown" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_148_MV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_148_MV, NULL };
+static int hf_021_V2_4_148_AH = -1;
+static const value_string valstr_021_V2_4_148_AH[] = {
+ { 0, "Not active or unknown" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_148_AH = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_148_AH, NULL };
+static int hf_021_V2_4_148_AM = -1;
+static const value_string valstr_021_V2_4_148_AM[] = {
+ { 0, "Not active or unknown" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_148_AM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_148_AM, NULL };
+static int hf_021_V2_4_148_ALT = -1;
+static const FieldPart I021_V2_4_148_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_021_V2_4_148_ALT, NULL };
+static const FieldPart *I021_V2_4_148_PARTS[] = {
+ &I021_V2_4_148_MV,
+ &I021_V2_4_148_AH,
+ &I021_V2_4_148_AM,
+ &I021_V2_4_148_ALT,
+ NULL
+};
+static const AsterixField I021_V2_4_148 = { FIXED, 2, 0, 0, &hf_021_V2_4_148, I021_V2_4_148_PARTS, { NULL } };
+static int hf_021_V2_4_150 = -1;
+static int hf_021_V2_4_150_IM = -1;
+static const value_string valstr_021_V2_4_150_IM[] = {
+ { 0, "Air Speed = IAS, LSB (Bit-1) = 2 -14 NM/s" },
+ { 1, "Air Speed = Mach, LSB (Bit-1) = 0.001" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_150_IM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_150_IM, NULL };
+static int hf_021_V2_4_150_AS = -1;
+static const FieldPart I021_V2_4_150_AS = { 15, 1.0, FIELD_PART_HEX, &hf_021_V2_4_150_AS, NULL };
+static const FieldPart *I021_V2_4_150_PARTS[] = {
+ &I021_V2_4_150_IM,
+ &I021_V2_4_150_AS,
+ NULL
+};
+static const AsterixField I021_V2_4_150 = { FIXED, 2, 0, 0, &hf_021_V2_4_150, I021_V2_4_150_PARTS, { NULL } };
+static int hf_021_V2_4_151 = -1;
+static int hf_021_V2_4_151_RE = -1;
+static const value_string valstr_021_V2_4_151_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_151_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_151_RE, NULL };
+static int hf_021_V2_4_151_TAS = -1;
+static const FieldPart I021_V2_4_151_TAS = { 15, 1.0, FIELD_PART_UFLOAT, &hf_021_V2_4_151_TAS, NULL };
+static const FieldPart *I021_V2_4_151_PARTS[] = {
+ &I021_V2_4_151_RE,
+ &I021_V2_4_151_TAS,
+ NULL
+};
+static const AsterixField I021_V2_4_151 = { FIXED, 2, 0, 0, &hf_021_V2_4_151, I021_V2_4_151_PARTS, { NULL } };
+static int hf_021_V2_4_152 = -1;
+static int hf_021_V2_4_152_VALUE = -1;
+static const FieldPart I021_V2_4_152_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_021_V2_4_152_VALUE, NULL };
+static const FieldPart *I021_V2_4_152_PARTS[] = {
+ &I021_V2_4_152_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_152 = { FIXED, 2, 0, 0, &hf_021_V2_4_152, I021_V2_4_152_PARTS, { NULL } };
+static int hf_021_V2_4_155 = -1;
+static int hf_021_V2_4_155_RE = -1;
+static const value_string valstr_021_V2_4_155_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_155_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_155_RE, NULL };
+static int hf_021_V2_4_155_BVR = -1;
+static const FieldPart I021_V2_4_155_BVR = { 15, 6.25, FIELD_PART_FLOAT, &hf_021_V2_4_155_BVR, NULL };
+static const FieldPart *I021_V2_4_155_PARTS[] = {
+ &I021_V2_4_155_RE,
+ &I021_V2_4_155_BVR,
+ NULL
+};
+static const AsterixField I021_V2_4_155 = { FIXED, 2, 0, 0, &hf_021_V2_4_155, I021_V2_4_155_PARTS, { NULL } };
+static int hf_021_V2_4_157 = -1;
+static int hf_021_V2_4_157_RE = -1;
+static const value_string valstr_021_V2_4_157_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_157_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_157_RE, NULL };
+static int hf_021_V2_4_157_GVR = -1;
+static const FieldPart I021_V2_4_157_GVR = { 15, 6.25, FIELD_PART_FLOAT, &hf_021_V2_4_157_GVR, NULL };
+static const FieldPart *I021_V2_4_157_PARTS[] = {
+ &I021_V2_4_157_RE,
+ &I021_V2_4_157_GVR,
+ NULL
+};
+static const AsterixField I021_V2_4_157 = { FIXED, 2, 0, 0, &hf_021_V2_4_157, I021_V2_4_157_PARTS, { NULL } };
+static int hf_021_V2_4_160 = -1;
+static int hf_021_V2_4_160_RE = -1;
+static const value_string valstr_021_V2_4_160_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_160_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_160_RE, NULL };
+static int hf_021_V2_4_160_GS = -1;
+static const FieldPart I021_V2_4_160_GS = { 15, 0.00006103515625, FIELD_PART_UFLOAT, &hf_021_V2_4_160_GS, NULL };
+static int hf_021_V2_4_160_TA = -1;
+static const FieldPart I021_V2_4_160_TA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_021_V2_4_160_TA, NULL };
+static const FieldPart *I021_V2_4_160_PARTS[] = {
+ &I021_V2_4_160_RE,
+ &I021_V2_4_160_GS,
+ &I021_V2_4_160_TA,
+ NULL
+};
+static const AsterixField I021_V2_4_160 = { FIXED, 4, 0, 0, &hf_021_V2_4_160, I021_V2_4_160_PARTS, { NULL } };
+static int hf_021_V2_4_161 = -1;
+static int hf_021_V2_4_161_TRNUM = -1;
+static const FieldPart I021_V2_4_161_TRNUM = { 12, 1.0, FIELD_PART_HEX, &hf_021_V2_4_161_TRNUM, NULL };
+static const FieldPart *I021_V2_4_161_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I021_V2_4_161_TRNUM,
+ NULL
+};
+static const AsterixField I021_V2_4_161 = { FIXED, 2, 0, 0, &hf_021_V2_4_161, I021_V2_4_161_PARTS, { NULL } };
+static int hf_021_V2_4_165 = -1;
+static int hf_021_V2_4_165_TAR = -1;
+static const FieldPart I021_V2_4_165_TAR = { 10, 0.03125, FIELD_PART_FLOAT, &hf_021_V2_4_165_TAR, NULL };
+static const FieldPart *I021_V2_4_165_PARTS[] = {
+ &IXXX_6bit_spare,
+ &I021_V2_4_165_TAR,
+ NULL
+};
+static const AsterixField I021_V2_4_165 = { FIXED, 2, 0, 0, &hf_021_V2_4_165, I021_V2_4_165_PARTS, { NULL } };
+static int hf_021_V2_4_170 = -1;
+static int hf_021_V2_4_170_VALUE = -1;
+static const FieldPart I021_V2_4_170_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_021_V2_4_170_VALUE, NULL };
+static const FieldPart *I021_V2_4_170_PARTS[] = {
+ &I021_V2_4_170_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_170 = { FIXED, 6, 0, 0, &hf_021_V2_4_170, I021_V2_4_170_PARTS, { NULL } };
+static int hf_021_V2_4_200 = -1;
+static int hf_021_V2_4_200_ICF = -1;
+static const value_string valstr_021_V2_4_200_ICF[] = {
+ { 0, "No intent change active" },
+ { 1, "Intent change flag raised" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_200_ICF = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_200_ICF, NULL };
+static int hf_021_V2_4_200_LNAV = -1;
+static const value_string valstr_021_V2_4_200_LNAV[] = {
+ { 0, "LNAV Mode engaged" },
+ { 1, "LNAV Mode not engaged" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_200_LNAV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_200_LNAV, NULL };
+static int hf_021_V2_4_200_ME = -1;
+static const value_string valstr_021_V2_4_200_ME[] = {
+ { 0, "No military emergency" },
+ { 1, "Military emergency" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_200_ME = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_200_ME, NULL };
+static int hf_021_V2_4_200_PS = -1;
+static const value_string valstr_021_V2_4_200_PS[] = {
+ { 0, "No emergency / not reported" },
+ { 1, "General emergency" },
+ { 2, "Lifeguard / medical emergency" },
+ { 3, "Minimum fuel" },
+ { 4, "No communications" },
+ { 5, "Unlawful interference" },
+ { 6, "DOWNED Aircraft" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_200_PS = { 3, 1.0, FIELD_PART_UINT, &hf_021_V2_4_200_PS, NULL };
+static int hf_021_V2_4_200_SS = -1;
+static const value_string valstr_021_V2_4_200_SS[] = {
+ { 0, "No condition reported" },
+ { 1, "Permanent Alert (Emergency condition)" },
+ { 2, "Temporary Alert (change in Mode 3/A Code other than emergency)" },
+ { 3, "SPI set" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_200_SS = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_4_200_SS, NULL };
+static const FieldPart *I021_V2_4_200_PARTS[] = {
+ &I021_V2_4_200_ICF,
+ &I021_V2_4_200_LNAV,
+ &I021_V2_4_200_ME,
+ &I021_V2_4_200_PS,
+ &I021_V2_4_200_SS,
+ NULL
+};
+static const AsterixField I021_V2_4_200 = { FIXED, 1, 0, 0, &hf_021_V2_4_200, I021_V2_4_200_PARTS, { NULL } };
+static int hf_021_V2_4_210 = -1;
+static int hf_021_V2_4_210_VNS = -1;
+static const value_string valstr_021_V2_4_210_VNS[] = {
+ { 0, "The MOPS Version is supported by the GS" },
+ { 1, "The MOPS Version is not supported by the GS" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_210_VNS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_210_VNS, NULL };
+static int hf_021_V2_4_210_VN = -1;
+static const value_string valstr_021_V2_4_210_VN[] = {
+ { 0, "ED102/DO-260 [Ref. 8]" },
+ { 1, "DO-260A [Ref. 9]" },
+ { 2, "ED102A/DO-260B [Ref. 11]" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_210_VN = { 3, 1.0, FIELD_PART_UINT, &hf_021_V2_4_210_VN, NULL };
+static int hf_021_V2_4_210_LTT = -1;
+static const value_string valstr_021_V2_4_210_LTT[] = {
+ { 0, "Other" },
+ { 1, "UAT" },
+ { 2, "1090 ES" },
+ { 3, "VDL 4" },
+ { 4, "Not assigned" },
+ { 5, "Not assigned" },
+ { 6, "Not assigned" },
+ { 7, "Not assigned" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_210_LTT = { 3, 1.0, FIELD_PART_UINT, &hf_021_V2_4_210_LTT, NULL };
+static const FieldPart *I021_V2_4_210_PARTS[] = {
+ &IXXX_1bit_spare,
+ &I021_V2_4_210_VNS,
+ &I021_V2_4_210_VN,
+ &I021_V2_4_210_LTT,
+ NULL
+};
+static const AsterixField I021_V2_4_210 = { FIXED, 1, 0, 0, &hf_021_V2_4_210, I021_V2_4_210_PARTS, { NULL } };
+static int hf_021_V2_4_220 = -1;
+static int hf_021_V2_4_220_WS = -1;
+static int hf_021_V2_4_220_WS_VALUE = -1;
+static const FieldPart I021_V2_4_220_WS_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_V2_4_220_WS_VALUE, NULL };
+static const FieldPart *I021_V2_4_220_WS_PARTS[] = {
+ &I021_V2_4_220_WS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_220_WS = { FIXED, 2, 0, 0, &hf_021_V2_4_220_WS, I021_V2_4_220_WS_PARTS, { NULL } };
+static int hf_021_V2_4_220_WD = -1;
+static int hf_021_V2_4_220_WD_VALUE = -1;
+static const FieldPart I021_V2_4_220_WD_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_V2_4_220_WD_VALUE, NULL };
+static const FieldPart *I021_V2_4_220_WD_PARTS[] = {
+ &I021_V2_4_220_WD_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_220_WD = { FIXED, 2, 0, 0, &hf_021_V2_4_220_WD, I021_V2_4_220_WD_PARTS, { NULL } };
+static int hf_021_V2_4_220_TMP = -1;
+static int hf_021_V2_4_220_TMP_VALUE = -1;
+static const FieldPart I021_V2_4_220_TMP_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_021_V2_4_220_TMP_VALUE, NULL };
+static const FieldPart *I021_V2_4_220_TMP_PARTS[] = {
+ &I021_V2_4_220_TMP_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_220_TMP = { FIXED, 2, 0, 0, &hf_021_V2_4_220_TMP, I021_V2_4_220_TMP_PARTS, { NULL } };
+static int hf_021_V2_4_220_TRB = -1;
+static int hf_021_V2_4_220_TRB_VALUE = -1;
+static const FieldPart I021_V2_4_220_TRB_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_V2_4_220_TRB_VALUE, NULL };
+static const FieldPart *I021_V2_4_220_TRB_PARTS[] = {
+ &I021_V2_4_220_TRB_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_220_TRB = { FIXED, 1, 0, 0, &hf_021_V2_4_220_TRB, I021_V2_4_220_TRB_PARTS, { NULL } };
+static const AsterixField I021_V2_4_220 = { COMPOUND, 0, 0, 0, &hf_021_V2_4_220, NULL, { &I021_V2_4_220_WS, &I021_V2_4_220_WD, &I021_V2_4_220_TMP, &I021_V2_4_220_TRB, NULL } };
+static int hf_021_V2_4_230 = -1;
+static int hf_021_V2_4_230_VALUE = -1;
+static const FieldPart I021_V2_4_230_VALUE = { 16, 0.01, FIELD_PART_FLOAT, &hf_021_V2_4_230_VALUE, NULL };
+static const FieldPart *I021_V2_4_230_PARTS[] = {
+ &I021_V2_4_230_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_230 = { FIXED, 2, 0, 0, &hf_021_V2_4_230, I021_V2_4_230_PARTS, { NULL } };
+static int hf_021_V2_4_250 = -1;
+static int hf_021_V2_4_250_VALUE = -1;
+static const FieldPart I021_V2_4_250_VALUE = { 64, 1.0, FIELD_PART_HEX, &hf_021_V2_4_250_VALUE, NULL };
+static const FieldPart *I021_V2_4_250_PARTS[] = {
+ &I021_V2_4_250_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_250 = { REPETITIVE, 8, 1, 0, &hf_021_V2_4_250, I021_V2_4_250_PARTS, { NULL } };
+static int hf_021_V2_4_260 = -1;
+static int hf_021_V2_4_260_TYP = -1;
+static const FieldPart I021_V2_4_260_TYP = { 5, 1.0, FIELD_PART_HEX, &hf_021_V2_4_260_TYP, NULL };
+static int hf_021_V2_4_260_STYP = -1;
+static const FieldPart I021_V2_4_260_STYP = { 3, 1.0, FIELD_PART_HEX, &hf_021_V2_4_260_STYP, NULL };
+static int hf_021_V2_4_260_ARA = -1;
+static const FieldPart I021_V2_4_260_ARA = { 14, 1.0, FIELD_PART_HEX, &hf_021_V2_4_260_ARA, NULL };
+static int hf_021_V2_4_260_RAC = -1;
+static const FieldPart I021_V2_4_260_RAC = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_4_260_RAC, NULL };
+static int hf_021_V2_4_260_RAT = -1;
+static const FieldPart I021_V2_4_260_RAT = { 1, 1.0, FIELD_PART_HEX, &hf_021_V2_4_260_RAT, NULL };
+static int hf_021_V2_4_260_MTE = -1;
+static const FieldPart I021_V2_4_260_MTE = { 1, 1.0, FIELD_PART_HEX, &hf_021_V2_4_260_MTE, NULL };
+static int hf_021_V2_4_260_TTI = -1;
+static const FieldPart I021_V2_4_260_TTI = { 2, 1.0, FIELD_PART_HEX, &hf_021_V2_4_260_TTI, NULL };
+static int hf_021_V2_4_260_TID = -1;
+static const FieldPart I021_V2_4_260_TID = { 26, 1.0, FIELD_PART_HEX, &hf_021_V2_4_260_TID, NULL };
+static const FieldPart *I021_V2_4_260_PARTS[] = {
+ &I021_V2_4_260_TYP,
+ &I021_V2_4_260_STYP,
+ &I021_V2_4_260_ARA,
+ &I021_V2_4_260_RAC,
+ &I021_V2_4_260_RAT,
+ &I021_V2_4_260_MTE,
+ &I021_V2_4_260_TTI,
+ &I021_V2_4_260_TID,
+ NULL
+};
+static const AsterixField I021_V2_4_260 = { FIXED, 7, 0, 0, &hf_021_V2_4_260, I021_V2_4_260_PARTS, { NULL } };
+static int hf_021_V2_4_271 = -1;
+static int hf_021_V2_4_271_POA = -1;
+static const value_string valstr_021_V2_4_271_POA[] = {
+ { 0, "Position transmitted is not ADS-B position reference point" },
+ { 1, "Position transmitted is the ADS-B position reference point" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_271_POA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_271_POA, NULL };
+static int hf_021_V2_4_271_CDTIS = -1;
+static const value_string valstr_021_V2_4_271_CDTIS[] = {
+ { 0, "CDTI not operational" },
+ { 1, "CDTI operational" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_271_CDTIS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_271_CDTIS, NULL };
+static int hf_021_V2_4_271_B2LOW = -1;
+static const value_string valstr_021_V2_4_271_B2LOW[] = {
+ { 0, ">= 70 Watts" },
+ { 1, "< 70 Watts" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_271_B2LOW = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_271_B2LOW, NULL };
+static int hf_021_V2_4_271_RAS = -1;
+static const value_string valstr_021_V2_4_271_RAS[] = {
+ { 0, "Aircraft not receiving ATC-services" },
+ { 1, "Aircraft receiving ATC services" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_271_RAS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_271_RAS, NULL };
+static int hf_021_V2_4_271_IDENT = -1;
+static const value_string valstr_021_V2_4_271_IDENT[] = {
+ { 0, "IDENT switch not active" },
+ { 1, "IDENT switch active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_4_271_IDENT = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_4_271_IDENT, NULL };
+static int hf_021_V2_4_271_LW = -1;
+static const FieldPart I021_V2_4_271_LW = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_4_271_LW, NULL };
+static const FieldPart *I021_V2_4_271_PARTS[] = {
+ &IXXX_2bit_spare,
+ &I021_V2_4_271_POA,
+ &I021_V2_4_271_CDTIS,
+ &I021_V2_4_271_B2LOW,
+ &I021_V2_4_271_RAS,
+ &I021_V2_4_271_IDENT,
+ &IXXX_FX,
+ &I021_V2_4_271_LW,
+ &IXXX_3bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V2_4_271 = { FX, 1, 0, 0, &hf_021_V2_4_271, I021_V2_4_271_PARTS, { NULL } };
+static int hf_021_V2_4_295 = -1;
+static int hf_021_V2_4_295_AOS = -1;
+static int hf_021_V2_4_295_AOS_VALUE = -1;
+static const FieldPart I021_V2_4_295_AOS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_4_295_AOS_VALUE, NULL };
+static const FieldPart *I021_V2_4_295_AOS_PARTS[] = {
+ &I021_V2_4_295_AOS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_295_AOS = { FIXED, 1, 0, 0, &hf_021_V2_4_295_AOS, I021_V2_4_295_AOS_PARTS, { NULL } };
+static int hf_021_V2_4_295_TRD = -1;
+static int hf_021_V2_4_295_TRD_VALUE = -1;
+static const FieldPart I021_V2_4_295_TRD_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_4_295_TRD_VALUE, NULL };
+static const FieldPart *I021_V2_4_295_TRD_PARTS[] = {
+ &I021_V2_4_295_TRD_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_295_TRD = { FIXED, 1, 0, 0, &hf_021_V2_4_295_TRD, I021_V2_4_295_TRD_PARTS, { NULL } };
+static int hf_021_V2_4_295_M3A = -1;
+static int hf_021_V2_4_295_M3A_VALUE = -1;
+static const FieldPart I021_V2_4_295_M3A_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_4_295_M3A_VALUE, NULL };
+static const FieldPart *I021_V2_4_295_M3A_PARTS[] = {
+ &I021_V2_4_295_M3A_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_295_M3A = { FIXED, 1, 0, 0, &hf_021_V2_4_295_M3A, I021_V2_4_295_M3A_PARTS, { NULL } };
+static int hf_021_V2_4_295_QI = -1;
+static int hf_021_V2_4_295_QI_VALUE = -1;
+static const FieldPart I021_V2_4_295_QI_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_4_295_QI_VALUE, NULL };
+static const FieldPart *I021_V2_4_295_QI_PARTS[] = {
+ &I021_V2_4_295_QI_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_295_QI = { FIXED, 1, 0, 0, &hf_021_V2_4_295_QI, I021_V2_4_295_QI_PARTS, { NULL } };
+static int hf_021_V2_4_295_TI1 = -1;
+static int hf_021_V2_4_295_TI1_VALUE = -1;
+static const FieldPart I021_V2_4_295_TI1_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_4_295_TI1_VALUE, NULL };
+static const FieldPart *I021_V2_4_295_TI1_PARTS[] = {
+ &I021_V2_4_295_TI1_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_295_TI1 = { FIXED, 1, 0, 0, &hf_021_V2_4_295_TI1, I021_V2_4_295_TI1_PARTS, { NULL } };
+static int hf_021_V2_4_295_MAM = -1;
+static int hf_021_V2_4_295_MAM_VALUE = -1;
+static const FieldPart I021_V2_4_295_MAM_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_4_295_MAM_VALUE, NULL };
+static const FieldPart *I021_V2_4_295_MAM_PARTS[] = {
+ &I021_V2_4_295_MAM_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_295_MAM = { FIXED, 1, 0, 0, &hf_021_V2_4_295_MAM, I021_V2_4_295_MAM_PARTS, { NULL } };
+static int hf_021_V2_4_295_GH = -1;
+static int hf_021_V2_4_295_GH_VALUE = -1;
+static const FieldPart I021_V2_4_295_GH_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_4_295_GH_VALUE, NULL };
+static const FieldPart *I021_V2_4_295_GH_PARTS[] = {
+ &I021_V2_4_295_GH_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_295_GH = { FIXED, 1, 0, 0, &hf_021_V2_4_295_GH, I021_V2_4_295_GH_PARTS, { NULL } };
+static int hf_021_V2_4_295_FL = -1;
+static int hf_021_V2_4_295_FL_VALUE = -1;
+static const FieldPart I021_V2_4_295_FL_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_4_295_FL_VALUE, NULL };
+static const FieldPart *I021_V2_4_295_FL_PARTS[] = {
+ &I021_V2_4_295_FL_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_295_FL = { FIXED, 1, 0, 0, &hf_021_V2_4_295_FL, I021_V2_4_295_FL_PARTS, { NULL } };
+static int hf_021_V2_4_295_ISA = -1;
+static int hf_021_V2_4_295_ISA_VALUE = -1;
+static const FieldPart I021_V2_4_295_ISA_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_4_295_ISA_VALUE, NULL };
+static const FieldPart *I021_V2_4_295_ISA_PARTS[] = {
+ &I021_V2_4_295_ISA_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_295_ISA = { FIXED, 1, 0, 0, &hf_021_V2_4_295_ISA, I021_V2_4_295_ISA_PARTS, { NULL } };
+static int hf_021_V2_4_295_FSA = -1;
+static int hf_021_V2_4_295_FSA_VALUE = -1;
+static const FieldPart I021_V2_4_295_FSA_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_4_295_FSA_VALUE, NULL };
+static const FieldPart *I021_V2_4_295_FSA_PARTS[] = {
+ &I021_V2_4_295_FSA_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_295_FSA = { FIXED, 1, 0, 0, &hf_021_V2_4_295_FSA, I021_V2_4_295_FSA_PARTS, { NULL } };
+static int hf_021_V2_4_295_AS = -1;
+static int hf_021_V2_4_295_AS_VALUE = -1;
+static const FieldPart I021_V2_4_295_AS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_4_295_AS_VALUE, NULL };
+static const FieldPart *I021_V2_4_295_AS_PARTS[] = {
+ &I021_V2_4_295_AS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_295_AS = { FIXED, 1, 0, 0, &hf_021_V2_4_295_AS, I021_V2_4_295_AS_PARTS, { NULL } };
+static int hf_021_V2_4_295_TAS = -1;
+static int hf_021_V2_4_295_TAS_VALUE = -1;
+static const FieldPart I021_V2_4_295_TAS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_4_295_TAS_VALUE, NULL };
+static const FieldPart *I021_V2_4_295_TAS_PARTS[] = {
+ &I021_V2_4_295_TAS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_295_TAS = { FIXED, 1, 0, 0, &hf_021_V2_4_295_TAS, I021_V2_4_295_TAS_PARTS, { NULL } };
+static int hf_021_V2_4_295_MH = -1;
+static int hf_021_V2_4_295_MH_VALUE = -1;
+static const FieldPart I021_V2_4_295_MH_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_4_295_MH_VALUE, NULL };
+static const FieldPart *I021_V2_4_295_MH_PARTS[] = {
+ &I021_V2_4_295_MH_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_295_MH = { FIXED, 1, 0, 0, &hf_021_V2_4_295_MH, I021_V2_4_295_MH_PARTS, { NULL } };
+static int hf_021_V2_4_295_BVR = -1;
+static int hf_021_V2_4_295_BVR_VALUE = -1;
+static const FieldPart I021_V2_4_295_BVR_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_4_295_BVR_VALUE, NULL };
+static const FieldPart *I021_V2_4_295_BVR_PARTS[] = {
+ &I021_V2_4_295_BVR_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_295_BVR = { FIXED, 1, 0, 0, &hf_021_V2_4_295_BVR, I021_V2_4_295_BVR_PARTS, { NULL } };
+static int hf_021_V2_4_295_GVR = -1;
+static int hf_021_V2_4_295_GVR_VALUE = -1;
+static const FieldPart I021_V2_4_295_GVR_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_4_295_GVR_VALUE, NULL };
+static const FieldPart *I021_V2_4_295_GVR_PARTS[] = {
+ &I021_V2_4_295_GVR_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_295_GVR = { FIXED, 1, 0, 0, &hf_021_V2_4_295_GVR, I021_V2_4_295_GVR_PARTS, { NULL } };
+static int hf_021_V2_4_295_GV = -1;
+static int hf_021_V2_4_295_GV_VALUE = -1;
+static const FieldPart I021_V2_4_295_GV_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_4_295_GV_VALUE, NULL };
+static const FieldPart *I021_V2_4_295_GV_PARTS[] = {
+ &I021_V2_4_295_GV_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_295_GV = { FIXED, 1, 0, 0, &hf_021_V2_4_295_GV, I021_V2_4_295_GV_PARTS, { NULL } };
+static int hf_021_V2_4_295_TAR = -1;
+static int hf_021_V2_4_295_TAR_VALUE = -1;
+static const FieldPart I021_V2_4_295_TAR_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_4_295_TAR_VALUE, NULL };
+static const FieldPart *I021_V2_4_295_TAR_PARTS[] = {
+ &I021_V2_4_295_TAR_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_295_TAR = { FIXED, 1, 0, 0, &hf_021_V2_4_295_TAR, I021_V2_4_295_TAR_PARTS, { NULL } };
+static int hf_021_V2_4_295_TI2 = -1;
+static int hf_021_V2_4_295_TI2_VALUE = -1;
+static const FieldPart I021_V2_4_295_TI2_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_4_295_TI2_VALUE, NULL };
+static const FieldPart *I021_V2_4_295_TI2_PARTS[] = {
+ &I021_V2_4_295_TI2_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_295_TI2 = { FIXED, 1, 0, 0, &hf_021_V2_4_295_TI2, I021_V2_4_295_TI2_PARTS, { NULL } };
+static int hf_021_V2_4_295_TS = -1;
+static int hf_021_V2_4_295_TS_VALUE = -1;
+static const FieldPart I021_V2_4_295_TS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_4_295_TS_VALUE, NULL };
+static const FieldPart *I021_V2_4_295_TS_PARTS[] = {
+ &I021_V2_4_295_TS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_295_TS = { FIXED, 1, 0, 0, &hf_021_V2_4_295_TS, I021_V2_4_295_TS_PARTS, { NULL } };
+static int hf_021_V2_4_295_MET = -1;
+static int hf_021_V2_4_295_MET_VALUE = -1;
+static const FieldPart I021_V2_4_295_MET_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_4_295_MET_VALUE, NULL };
+static const FieldPart *I021_V2_4_295_MET_PARTS[] = {
+ &I021_V2_4_295_MET_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_295_MET = { FIXED, 1, 0, 0, &hf_021_V2_4_295_MET, I021_V2_4_295_MET_PARTS, { NULL } };
+static int hf_021_V2_4_295_ROA = -1;
+static int hf_021_V2_4_295_ROA_VALUE = -1;
+static const FieldPart I021_V2_4_295_ROA_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_4_295_ROA_VALUE, NULL };
+static const FieldPart *I021_V2_4_295_ROA_PARTS[] = {
+ &I021_V2_4_295_ROA_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_295_ROA = { FIXED, 1, 0, 0, &hf_021_V2_4_295_ROA, I021_V2_4_295_ROA_PARTS, { NULL } };
+static int hf_021_V2_4_295_ARA = -1;
+static int hf_021_V2_4_295_ARA_VALUE = -1;
+static const FieldPart I021_V2_4_295_ARA_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_4_295_ARA_VALUE, NULL };
+static const FieldPart *I021_V2_4_295_ARA_PARTS[] = {
+ &I021_V2_4_295_ARA_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_295_ARA = { FIXED, 1, 0, 0, &hf_021_V2_4_295_ARA, I021_V2_4_295_ARA_PARTS, { NULL } };
+static int hf_021_V2_4_295_SCC = -1;
+static int hf_021_V2_4_295_SCC_VALUE = -1;
+static const FieldPart I021_V2_4_295_SCC_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_4_295_SCC_VALUE, NULL };
+static const FieldPart *I021_V2_4_295_SCC_PARTS[] = {
+ &I021_V2_4_295_SCC_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_295_SCC = { FIXED, 1, 0, 0, &hf_021_V2_4_295_SCC, I021_V2_4_295_SCC_PARTS, { NULL } };
+static const AsterixField I021_V2_4_295 = { COMPOUND, 0, 0, 0, &hf_021_V2_4_295, NULL, { &I021_V2_4_295_AOS, &I021_V2_4_295_TRD, &I021_V2_4_295_M3A, &I021_V2_4_295_QI, &I021_V2_4_295_TI1, &I021_V2_4_295_MAM, &I021_V2_4_295_GH, &I021_V2_4_295_FL, &I021_V2_4_295_ISA, &I021_V2_4_295_FSA, &I021_V2_4_295_AS, &I021_V2_4_295_TAS, &I021_V2_4_295_MH, &I021_V2_4_295_BVR, &I021_V2_4_295_GVR, &I021_V2_4_295_GV, &I021_V2_4_295_TAR, &I021_V2_4_295_TI2, &I021_V2_4_295_TS, &I021_V2_4_295_MET, &I021_V2_4_295_ROA, &I021_V2_4_295_ARA, &I021_V2_4_295_SCC, NULL } };
+static int hf_021_V2_4_400 = -1;
+static int hf_021_V2_4_400_VALUE = -1;
+static const FieldPart I021_V2_4_400_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_021_V2_4_400_VALUE, NULL };
+static const FieldPart *I021_V2_4_400_PARTS[] = {
+ &I021_V2_4_400_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_4_400 = { FIXED, 1, 0, 0, &hf_021_V2_4_400, I021_V2_4_400_PARTS, { NULL } };
+static int hf_021_V2_4_RE = -1;
+static const AsterixField I021_V2_4_RE = { EXP, 0, 0, 1, &hf_021_V2_4_RE, NULL, { NULL } };
+static int hf_021_V2_4_SP = -1;
+static const AsterixField I021_V2_4_SP = { EXP, 0, 0, 1, &hf_021_V2_4_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I021_V2_4_uap[] = {
+ &I021_V2_4_010,
+ &I021_V2_4_040,
+ &I021_V2_4_161,
+ &I021_V2_4_015,
+ &I021_V2_4_071,
+ &I021_V2_4_130,
+ &I021_V2_4_131,
+ &I021_V2_4_072,
+ &I021_V2_4_150,
+ &I021_V2_4_151,
+ &I021_V2_4_080,
+ &I021_V2_4_073,
+ &I021_V2_4_074,
+ &I021_V2_4_075,
+ &I021_V2_4_076,
+ &I021_V2_4_140,
+ &I021_V2_4_090,
+ &I021_V2_4_210,
+ &I021_V2_4_070,
+ &I021_V2_4_230,
+ &I021_V2_4_145,
+ &I021_V2_4_152,
+ &I021_V2_4_200,
+ &I021_V2_4_155,
+ &I021_V2_4_157,
+ &I021_V2_4_160,
+ &I021_V2_4_165,
+ &I021_V2_4_077,
+ &I021_V2_4_170,
+ &I021_V2_4_020,
+ &I021_V2_4_220,
+ &I021_V2_4_146,
+ &I021_V2_4_148,
+ &I021_V2_4_110,
+ &I021_V2_4_016,
+ &I021_V2_4_008,
+ &I021_V2_4_271,
+ &I021_V2_4_132,
+ &I021_V2_4_250,
+ &I021_V2_4_260,
+ &I021_V2_4_400,
+ &I021_V2_4_295,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I021_V2_4_RE,
+ &I021_V2_4_SP,
+ NULL
+};
+static const AsterixField **I021_V2_4[] = {
+ I021_V2_4_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 021, edition 2.5 */
+static int hf_021_V2_5_008 = -1;
+static int hf_021_V2_5_008_RA = -1;
+static const value_string valstr_021_V2_5_008_RA[] = {
+ { 0, "TCAS II or ACAS RA not active" },
+ { 1, "TCAS RA active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_008_RA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_008_RA, NULL };
+static int hf_021_V2_5_008_TC = -1;
+static const value_string valstr_021_V2_5_008_TC[] = {
+ { 0, "No capability for Trajectory Change Reports" },
+ { 1, "Support for TC+0 reports only" },
+ { 2, "Support for multiple TC reports" },
+ { 3, "Reserved" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_008_TC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_5_008_TC, NULL };
+static int hf_021_V2_5_008_TS = -1;
+static const value_string valstr_021_V2_5_008_TS[] = {
+ { 0, "No capability to support Target State Reports" },
+ { 1, "Capable of supporting target State Reports" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_008_TS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_008_TS, NULL };
+static int hf_021_V2_5_008_ARV = -1;
+static const value_string valstr_021_V2_5_008_ARV[] = {
+ { 0, "No capability to generate ARV-reports" },
+ { 1, "Capable of generate ARV-reports" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_008_ARV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_008_ARV, NULL };
+static int hf_021_V2_5_008_CDTIA = -1;
+static const value_string valstr_021_V2_5_008_CDTIA[] = {
+ { 0, "CDTI not operational" },
+ { 1, "CDTI operational" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_008_CDTIA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_008_CDTIA, NULL };
+static int hf_021_V2_5_008_NOTTCAS = -1;
+static const value_string valstr_021_V2_5_008_NOTTCAS[] = {
+ { 0, "TCAS operational" },
+ { 1, "TCAS not operational" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_008_NOTTCAS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_008_NOTTCAS, NULL };
+static int hf_021_V2_5_008_SA = -1;
+static const value_string valstr_021_V2_5_008_SA[] = {
+ { 0, "Antenna Diversity" },
+ { 1, "Single Antenna only" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_008_SA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_008_SA, NULL };
+static const FieldPart *I021_V2_5_008_PARTS[] = {
+ &I021_V2_5_008_RA,
+ &I021_V2_5_008_TC,
+ &I021_V2_5_008_TS,
+ &I021_V2_5_008_ARV,
+ &I021_V2_5_008_CDTIA,
+ &I021_V2_5_008_NOTTCAS,
+ &I021_V2_5_008_SA,
+ NULL
+};
+static const AsterixField I021_V2_5_008 = { FIXED, 1, 0, 0, &hf_021_V2_5_008, I021_V2_5_008_PARTS, { NULL } };
+static int hf_021_V2_5_010 = -1;
+static int hf_021_V2_5_010_SAC = -1;
+static const FieldPart I021_V2_5_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_021_V2_5_010_SAC, NULL };
+static int hf_021_V2_5_010_SIC = -1;
+static const FieldPart I021_V2_5_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_021_V2_5_010_SIC, NULL };
+static const FieldPart *I021_V2_5_010_PARTS[] = {
+ &I021_V2_5_010_SAC,
+ &I021_V2_5_010_SIC,
+ NULL
+};
+static const AsterixField I021_V2_5_010 = { FIXED, 2, 0, 0, &hf_021_V2_5_010, I021_V2_5_010_PARTS, { NULL } };
+static int hf_021_V2_5_015 = -1;
+static int hf_021_V2_5_015_VALUE = -1;
+static const FieldPart I021_V2_5_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_021_V2_5_015_VALUE, NULL };
+static const FieldPart *I021_V2_5_015_PARTS[] = {
+ &I021_V2_5_015_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_015 = { FIXED, 1, 0, 0, &hf_021_V2_5_015, I021_V2_5_015_PARTS, { NULL } };
+static int hf_021_V2_5_016 = -1;
+static int hf_021_V2_5_016_VALUE = -1;
+static const FieldPart I021_V2_5_016_VALUE = { 8, 0.5, FIELD_PART_UFLOAT, &hf_021_V2_5_016_VALUE, NULL };
+static const FieldPart *I021_V2_5_016_PARTS[] = {
+ &I021_V2_5_016_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_016 = { FIXED, 1, 0, 0, &hf_021_V2_5_016, I021_V2_5_016_PARTS, { NULL } };
+static int hf_021_V2_5_020 = -1;
+static int hf_021_V2_5_020_VALUE = -1;
+static const value_string valstr_021_V2_5_020_VALUE[] = {
+ { 0, "No ADS-B Emitter Category Information" },
+ { 1, "Light aircraft <= 15500 lbs" },
+ { 2, "15500 lbs < small aircraft <75000 lbs" },
+ { 3, "75000 lbs < medium a/c < 300000 lbs" },
+ { 4, "High Vortex Large" },
+ { 5, "300000 lbs <= heavy aircraft" },
+ { 6, "Highly manoeuvrable (5g acceleration capability) and high speed (>400 knots cruise)" },
+ { 7, "Reserved" },
+ { 8, "Reserved" },
+ { 9, "Reserved" },
+ { 10, "Rotocraft" },
+ { 11, "Glider / sailplane" },
+ { 12, "Lighter-than-air" },
+ { 13, "Unmanned aerial vehicle" },
+ { 14, "Space / transatmospheric vehicle" },
+ { 15, "Ultralight / handglider / paraglider" },
+ { 16, "Parachutist / skydiver" },
+ { 17, "Reserved" },
+ { 18, "Reserved" },
+ { 19, "Reserved" },
+ { 20, "Surface emergency vehicle" },
+ { 21, "Surface service vehicle" },
+ { 22, "Fixed ground or tethered obstruction" },
+ { 23, "Cluster obstacle" },
+ { 24, "Line obstacle" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_020_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_V2_5_020_VALUE, NULL };
+static const FieldPart *I021_V2_5_020_PARTS[] = {
+ &I021_V2_5_020_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_020 = { FIXED, 1, 0, 0, &hf_021_V2_5_020, I021_V2_5_020_PARTS, { NULL } };
+static int hf_021_V2_5_040 = -1;
+static int hf_021_V2_5_040_ATP = -1;
+static const value_string valstr_021_V2_5_040_ATP[] = {
+ { 0, "24-Bit ICAO address" },
+ { 1, "Duplicate address" },
+ { 2, "Surface vehicle address" },
+ { 3, "Anonymous address" },
+ { 4, "Reserved for future use" },
+ { 5, "Reserved for future use" },
+ { 6, "Reserved for future use" },
+ { 7, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_040_ATP = { 3, 1.0, FIELD_PART_UINT, &hf_021_V2_5_040_ATP, NULL };
+static int hf_021_V2_5_040_ARC = -1;
+static const value_string valstr_021_V2_5_040_ARC[] = {
+ { 0, "25 ft" },
+ { 1, "100 ft" },
+ { 2, "Unknown" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_040_ARC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_5_040_ARC, NULL };
+static int hf_021_V2_5_040_RC = -1;
+static const value_string valstr_021_V2_5_040_RC[] = {
+ { 0, "Default" },
+ { 1, "Range Check passed, CPR Validation pending" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_040_RC = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_040_RC, NULL };
+static int hf_021_V2_5_040_RAB = -1;
+static const value_string valstr_021_V2_5_040_RAB[] = {
+ { 0, "Report from target transponder" },
+ { 1, "Report from field monitor (fixed transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_040_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_040_RAB, NULL };
+static int hf_021_V2_5_040_DCR = -1;
+static const value_string valstr_021_V2_5_040_DCR[] = {
+ { 0, "No differential correction (ADS-B)" },
+ { 1, "Differential correction (ADS-B)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_040_DCR = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_040_DCR, NULL };
+static int hf_021_V2_5_040_GBS = -1;
+static const value_string valstr_021_V2_5_040_GBS[] = {
+ { 0, "Ground Bit not set" },
+ { 1, "Ground Bit set" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_040_GBS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_040_GBS, NULL };
+static int hf_021_V2_5_040_SIM = -1;
+static const value_string valstr_021_V2_5_040_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_040_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_040_SIM, NULL };
+static int hf_021_V2_5_040_TST = -1;
+static const value_string valstr_021_V2_5_040_TST[] = {
+ { 0, "Default" },
+ { 1, "Test Target" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_040_TST = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_040_TST, NULL };
+static int hf_021_V2_5_040_SAA = -1;
+static const value_string valstr_021_V2_5_040_SAA[] = {
+ { 0, "Equipment capable to provide Selected Altitude" },
+ { 1, "Equipment not capable to provide Selected Altitude" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_040_SAA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_040_SAA, NULL };
+static int hf_021_V2_5_040_CL = -1;
+static const value_string valstr_021_V2_5_040_CL[] = {
+ { 0, "Report valid" },
+ { 1, "Report suspect" },
+ { 2, "No information" },
+ { 3, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_040_CL = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_5_040_CL, NULL };
+static int hf_021_V2_5_040_LLC = -1;
+static const value_string valstr_021_V2_5_040_LLC[] = {
+ { 0, "Default" },
+ { 1, "List Lookup failed (see note)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_040_LLC = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_040_LLC, NULL };
+static int hf_021_V2_5_040_IPC = -1;
+static const value_string valstr_021_V2_5_040_IPC[] = {
+ { 0, "Default (see note)" },
+ { 1, "Independent Position Check failed" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_040_IPC = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_040_IPC, NULL };
+static int hf_021_V2_5_040_NOGO = -1;
+static const value_string valstr_021_V2_5_040_NOGO[] = {
+ { 0, "NOGO-bit not set" },
+ { 1, "NOGO-bit set" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_040_NOGO = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_040_NOGO, NULL };
+static int hf_021_V2_5_040_CPR = -1;
+static const value_string valstr_021_V2_5_040_CPR[] = {
+ { 0, "CPR Validation correct" },
+ { 1, "CPR Validation failed" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_040_CPR = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_040_CPR, NULL };
+static int hf_021_V2_5_040_LDPJ = -1;
+static const value_string valstr_021_V2_5_040_LDPJ[] = {
+ { 0, "LDPJ not detected" },
+ { 1, "LDPJ detected" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_040_LDPJ = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_040_LDPJ, NULL };
+static int hf_021_V2_5_040_RCF = -1;
+static const value_string valstr_021_V2_5_040_RCF[] = {
+ { 0, "Default" },
+ { 1, "Range Check failed" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_040_RCF = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_040_RCF, NULL };
+static const FieldPart *I021_V2_5_040_PARTS[] = {
+ &I021_V2_5_040_ATP,
+ &I021_V2_5_040_ARC,
+ &I021_V2_5_040_RC,
+ &I021_V2_5_040_RAB,
+ &IXXX_FX,
+ &I021_V2_5_040_DCR,
+ &I021_V2_5_040_GBS,
+ &I021_V2_5_040_SIM,
+ &I021_V2_5_040_TST,
+ &I021_V2_5_040_SAA,
+ &I021_V2_5_040_CL,
+ &IXXX_FX,
+ &IXXX_1bit_spare,
+ &I021_V2_5_040_LLC,
+ &I021_V2_5_040_IPC,
+ &I021_V2_5_040_NOGO,
+ &I021_V2_5_040_CPR,
+ &I021_V2_5_040_LDPJ,
+ &I021_V2_5_040_RCF,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V2_5_040 = { FX, 1, 0, 0, &hf_021_V2_5_040, I021_V2_5_040_PARTS, { NULL } };
+static int hf_021_V2_5_070 = -1;
+static int hf_021_V2_5_070_MODE3A = -1;
+static const FieldPart I021_V2_5_070_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_021_V2_5_070_MODE3A, NULL };
+static const FieldPart *I021_V2_5_070_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I021_V2_5_070_MODE3A,
+ NULL
+};
+static const AsterixField I021_V2_5_070 = { FIXED, 2, 0, 0, &hf_021_V2_5_070, I021_V2_5_070_PARTS, { NULL } };
+static int hf_021_V2_5_071 = -1;
+static int hf_021_V2_5_071_VALUE = -1;
+static const FieldPart I021_V2_5_071_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_5_071_VALUE, NULL };
+static const FieldPart *I021_V2_5_071_PARTS[] = {
+ &I021_V2_5_071_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_071 = { FIXED, 3, 0, 0, &hf_021_V2_5_071, I021_V2_5_071_PARTS, { NULL } };
+static int hf_021_V2_5_072 = -1;
+static int hf_021_V2_5_072_VALUE = -1;
+static const FieldPart I021_V2_5_072_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_5_072_VALUE, NULL };
+static const FieldPart *I021_V2_5_072_PARTS[] = {
+ &I021_V2_5_072_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_072 = { FIXED, 3, 0, 0, &hf_021_V2_5_072, I021_V2_5_072_PARTS, { NULL } };
+static int hf_021_V2_5_073 = -1;
+static int hf_021_V2_5_073_VALUE = -1;
+static const FieldPart I021_V2_5_073_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_5_073_VALUE, NULL };
+static const FieldPart *I021_V2_5_073_PARTS[] = {
+ &I021_V2_5_073_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_073 = { FIXED, 3, 0, 0, &hf_021_V2_5_073, I021_V2_5_073_PARTS, { NULL } };
+static int hf_021_V2_5_074 = -1;
+static int hf_021_V2_5_074_FSI = -1;
+static const value_string valstr_021_V2_5_074_FSI[] = {
+ { 3, "Reserved" },
+ { 2, "TOMRp whole seconds = (I021/073) Whole seconds - 1" },
+ { 1, "TOMRp whole seconds = (I021/073) Whole seconds + 1" },
+ { 0, "TOMRp whole seconds = (I021/073) Whole seconds" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_074_FSI = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_5_074_FSI, NULL };
+static int hf_021_V2_5_074_TOMRP = -1;
+static const FieldPart I021_V2_5_074_TOMRP = { 30, 0.00000000093132257461547851562, FIELD_PART_UFLOAT, &hf_021_V2_5_074_TOMRP, NULL };
+static const FieldPart *I021_V2_5_074_PARTS[] = {
+ &I021_V2_5_074_FSI,
+ &I021_V2_5_074_TOMRP,
+ NULL
+};
+static const AsterixField I021_V2_5_074 = { FIXED, 4, 0, 0, &hf_021_V2_5_074, I021_V2_5_074_PARTS, { NULL } };
+static int hf_021_V2_5_075 = -1;
+static int hf_021_V2_5_075_VALUE = -1;
+static const FieldPart I021_V2_5_075_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_5_075_VALUE, NULL };
+static const FieldPart *I021_V2_5_075_PARTS[] = {
+ &I021_V2_5_075_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_075 = { FIXED, 3, 0, 0, &hf_021_V2_5_075, I021_V2_5_075_PARTS, { NULL } };
+static int hf_021_V2_5_076 = -1;
+static int hf_021_V2_5_076_FSI = -1;
+static const value_string valstr_021_V2_5_076_FSI[] = {
+ { 3, "Reserved" },
+ { 2, "TOMRp whole seconds = (I021/075) Whole seconds - 1" },
+ { 1, "TOMRp whole seconds = (I021/075) Whole seconds + 1" },
+ { 0, "TOMRp whole seconds = (I021/075) Whole seconds" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_076_FSI = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_5_076_FSI, NULL };
+static int hf_021_V2_5_076_TOMRP = -1;
+static const FieldPart I021_V2_5_076_TOMRP = { 30, 0.00000000093132257461547851562, FIELD_PART_UFLOAT, &hf_021_V2_5_076_TOMRP, NULL };
+static const FieldPart *I021_V2_5_076_PARTS[] = {
+ &I021_V2_5_076_FSI,
+ &I021_V2_5_076_TOMRP,
+ NULL
+};
+static const AsterixField I021_V2_5_076 = { FIXED, 4, 0, 0, &hf_021_V2_5_076, I021_V2_5_076_PARTS, { NULL } };
+static int hf_021_V2_5_077 = -1;
+static int hf_021_V2_5_077_VALUE = -1;
+static const FieldPart I021_V2_5_077_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_5_077_VALUE, NULL };
+static const FieldPart *I021_V2_5_077_PARTS[] = {
+ &I021_V2_5_077_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_077 = { FIXED, 3, 0, 0, &hf_021_V2_5_077, I021_V2_5_077_PARTS, { NULL } };
+static int hf_021_V2_5_080 = -1;
+static int hf_021_V2_5_080_VALUE = -1;
+static const FieldPart I021_V2_5_080_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_021_V2_5_080_VALUE, NULL };
+static const FieldPart *I021_V2_5_080_PARTS[] = {
+ &I021_V2_5_080_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_080 = { FIXED, 3, 0, 0, &hf_021_V2_5_080, I021_V2_5_080_PARTS, { NULL } };
+static int hf_021_V2_5_090 = -1;
+static int hf_021_V2_5_090_NUCRNACV = -1;
+static const FieldPart I021_V2_5_090_NUCRNACV = { 3, 1.0, FIELD_PART_HEX, &hf_021_V2_5_090_NUCRNACV, NULL };
+static int hf_021_V2_5_090_NUCPNIC = -1;
+static const FieldPart I021_V2_5_090_NUCPNIC = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_5_090_NUCPNIC, NULL };
+static int hf_021_V2_5_090_NICBARO = -1;
+static const FieldPart I021_V2_5_090_NICBARO = { 1, 1.0, FIELD_PART_HEX, &hf_021_V2_5_090_NICBARO, NULL };
+static int hf_021_V2_5_090_SIL = -1;
+static const FieldPart I021_V2_5_090_SIL = { 2, 1.0, FIELD_PART_HEX, &hf_021_V2_5_090_SIL, NULL };
+static int hf_021_V2_5_090_NACP = -1;
+static const FieldPart I021_V2_5_090_NACP = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_5_090_NACP, NULL };
+static int hf_021_V2_5_090_SILS = -1;
+static const value_string valstr_021_V2_5_090_SILS[] = {
+ { 0, "Measured per flight-hour" },
+ { 1, "Measured per sample" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_090_SILS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_090_SILS, NULL };
+static int hf_021_V2_5_090_SDA = -1;
+static const FieldPart I021_V2_5_090_SDA = { 2, 1.0, FIELD_PART_HEX, &hf_021_V2_5_090_SDA, NULL };
+static int hf_021_V2_5_090_GVA = -1;
+static const FieldPart I021_V2_5_090_GVA = { 2, 1.0, FIELD_PART_HEX, &hf_021_V2_5_090_GVA, NULL };
+static int hf_021_V2_5_090_PIC = -1;
+static const FieldPart I021_V2_5_090_PIC = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_5_090_PIC, NULL };
+static const FieldPart *I021_V2_5_090_PARTS[] = {
+ &I021_V2_5_090_NUCRNACV,
+ &I021_V2_5_090_NUCPNIC,
+ &IXXX_FX,
+ &I021_V2_5_090_NICBARO,
+ &I021_V2_5_090_SIL,
+ &I021_V2_5_090_NACP,
+ &IXXX_FX,
+ &IXXX_2bit_spare,
+ &I021_V2_5_090_SILS,
+ &I021_V2_5_090_SDA,
+ &I021_V2_5_090_GVA,
+ &IXXX_FX,
+ &I021_V2_5_090_PIC,
+ &IXXX_3bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V2_5_090 = { FX, 1, 0, 0, &hf_021_V2_5_090, I021_V2_5_090_PARTS, { NULL } };
+static int hf_021_V2_5_110 = -1;
+static int hf_021_V2_5_110_TIS = -1;
+static int hf_021_V2_5_110_TIS_NAV = -1;
+static const value_string valstr_021_V2_5_110_TIS_NAV[] = {
+ { 0, "Trajectory Intent Data is available for this aircraft" },
+ { 1, "Trajectory Intent Data is not available for this aircraft" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_110_TIS_NAV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_110_TIS_NAV, NULL };
+static int hf_021_V2_5_110_TIS_NVB = -1;
+static const value_string valstr_021_V2_5_110_TIS_NVB[] = {
+ { 0, "Trajectory Intent Data is valid" },
+ { 1, "Trajectory Intent Data is not valid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_110_TIS_NVB = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_110_TIS_NVB, NULL };
+static const FieldPart *I021_V2_5_110_TIS_PARTS[] = {
+ &I021_V2_5_110_TIS_NAV,
+ &I021_V2_5_110_TIS_NVB,
+ &IXXX_5bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V2_5_110_TIS = { FX, 1, 0, 0, &hf_021_V2_5_110_TIS, I021_V2_5_110_TIS_PARTS, { NULL } };
+static int hf_021_V2_5_110_TID = -1;
+static int hf_021_V2_5_110_TID_TCA = -1;
+static const value_string valstr_021_V2_5_110_TID_TCA[] = {
+ { 0, "TCP number available" },
+ { 1, "TCP number not available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_110_TID_TCA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_110_TID_TCA, NULL };
+static int hf_021_V2_5_110_TID_NC = -1;
+static const value_string valstr_021_V2_5_110_TID_NC[] = {
+ { 0, "TCP compliance" },
+ { 1, "TCP non-compliance" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_110_TID_NC = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_110_TID_NC, NULL };
+static int hf_021_V2_5_110_TID_TCPN = -1;
+static const FieldPart I021_V2_5_110_TID_TCPN = { 6, 1.0, FIELD_PART_HEX, &hf_021_V2_5_110_TID_TCPN, NULL };
+static int hf_021_V2_5_110_TID_ALT = -1;
+static const FieldPart I021_V2_5_110_TID_ALT = { 16, 10.0, FIELD_PART_FLOAT, &hf_021_V2_5_110_TID_ALT, NULL };
+static int hf_021_V2_5_110_TID_LAT = -1;
+static const FieldPart I021_V2_5_110_TID_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V2_5_110_TID_LAT, NULL };
+static int hf_021_V2_5_110_TID_LON = -1;
+static const FieldPart I021_V2_5_110_TID_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V2_5_110_TID_LON, NULL };
+static int hf_021_V2_5_110_TID_PT = -1;
+static const value_string valstr_021_V2_5_110_TID_PT[] = {
+ { 0, "Unknown" },
+ { 1, "Fly by waypoint (LT)" },
+ { 2, "Fly over waypoint (LT)" },
+ { 3, "Hold pattern (LT)" },
+ { 4, "Procedure hold (LT)" },
+ { 5, "Procedure turn (LT)" },
+ { 6, "RF leg (LT)" },
+ { 7, "Top of climb (VT)" },
+ { 8, "Top of descent (VT)" },
+ { 9, "Start of level (VT)" },
+ { 10, "Cross-over altitude (VT)" },
+ { 11, "Transition altitude (VT)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_110_TID_PT = { 4, 1.0, FIELD_PART_UINT, &hf_021_V2_5_110_TID_PT, NULL };
+static int hf_021_V2_5_110_TID_TD = -1;
+static const value_string valstr_021_V2_5_110_TID_TD[] = {
+ { 0, "N/A" },
+ { 1, "Turn right" },
+ { 2, "Turn left" },
+ { 3, "No turn" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_110_TID_TD = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_5_110_TID_TD, NULL };
+static int hf_021_V2_5_110_TID_TRA = -1;
+static const value_string valstr_021_V2_5_110_TID_TRA[] = {
+ { 0, "TTR not available" },
+ { 1, "TTR available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_110_TID_TRA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_110_TID_TRA, NULL };
+static int hf_021_V2_5_110_TID_TOA = -1;
+static const value_string valstr_021_V2_5_110_TID_TOA[] = {
+ { 0, "TOV available" },
+ { 1, "TOV not available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_110_TID_TOA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_110_TID_TOA, NULL };
+static int hf_021_V2_5_110_TID_TOV = -1;
+static const FieldPart I021_V2_5_110_TID_TOV = { 24, 1.0, FIELD_PART_UFLOAT, &hf_021_V2_5_110_TID_TOV, NULL };
+static int hf_021_V2_5_110_TID_TTR = -1;
+static const FieldPart I021_V2_5_110_TID_TTR = { 16, 0.01, FIELD_PART_UFLOAT, &hf_021_V2_5_110_TID_TTR, NULL };
+static const FieldPart *I021_V2_5_110_TID_PARTS[] = {
+ &I021_V2_5_110_TID_TCA,
+ &I021_V2_5_110_TID_NC,
+ &I021_V2_5_110_TID_TCPN,
+ &I021_V2_5_110_TID_ALT,
+ &I021_V2_5_110_TID_LAT,
+ &I021_V2_5_110_TID_LON,
+ &I021_V2_5_110_TID_PT,
+ &I021_V2_5_110_TID_TD,
+ &I021_V2_5_110_TID_TRA,
+ &I021_V2_5_110_TID_TOA,
+ &I021_V2_5_110_TID_TOV,
+ &I021_V2_5_110_TID_TTR,
+ NULL
+};
+static const AsterixField I021_V2_5_110_TID = { REPETITIVE, 15, 1, 0, &hf_021_V2_5_110_TID, I021_V2_5_110_TID_PARTS, { NULL } };
+static const AsterixField I021_V2_5_110 = { COMPOUND, 0, 0, 0, &hf_021_V2_5_110, NULL, { &I021_V2_5_110_TIS, &I021_V2_5_110_TID, NULL } };
+static int hf_021_V2_5_130 = -1;
+static int hf_021_V2_5_130_LAT = -1;
+static const FieldPart I021_V2_5_130_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V2_5_130_LAT, NULL };
+static int hf_021_V2_5_130_LON = -1;
+static const FieldPart I021_V2_5_130_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V2_5_130_LON, NULL };
+static const FieldPart *I021_V2_5_130_PARTS[] = {
+ &I021_V2_5_130_LAT,
+ &I021_V2_5_130_LON,
+ NULL
+};
+static const AsterixField I021_V2_5_130 = { FIXED, 6, 0, 0, &hf_021_V2_5_130, I021_V2_5_130_PARTS, { NULL } };
+static int hf_021_V2_5_131 = -1;
+static int hf_021_V2_5_131_LAT = -1;
+static const FieldPart I021_V2_5_131_LAT = { 32, 0.0000001676380634307861328125, FIELD_PART_FLOAT, &hf_021_V2_5_131_LAT, NULL };
+static int hf_021_V2_5_131_LON = -1;
+static const FieldPart I021_V2_5_131_LON = { 32, 0.0000001676380634307861328125, FIELD_PART_FLOAT, &hf_021_V2_5_131_LON, NULL };
+static const FieldPart *I021_V2_5_131_PARTS[] = {
+ &I021_V2_5_131_LAT,
+ &I021_V2_5_131_LON,
+ NULL
+};
+static const AsterixField I021_V2_5_131 = { FIXED, 8, 0, 0, &hf_021_V2_5_131, I021_V2_5_131_PARTS, { NULL } };
+static int hf_021_V2_5_132 = -1;
+static int hf_021_V2_5_132_VALUE = -1;
+static const FieldPart I021_V2_5_132_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_021_V2_5_132_VALUE, NULL };
+static const FieldPart *I021_V2_5_132_PARTS[] = {
+ &I021_V2_5_132_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_132 = { FIXED, 1, 0, 0, &hf_021_V2_5_132, I021_V2_5_132_PARTS, { NULL } };
+static int hf_021_V2_5_140 = -1;
+static int hf_021_V2_5_140_VALUE = -1;
+static const FieldPart I021_V2_5_140_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_021_V2_5_140_VALUE, NULL };
+static const FieldPart *I021_V2_5_140_PARTS[] = {
+ &I021_V2_5_140_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_140 = { FIXED, 2, 0, 0, &hf_021_V2_5_140, I021_V2_5_140_PARTS, { NULL } };
+static int hf_021_V2_5_145 = -1;
+static int hf_021_V2_5_145_VALUE = -1;
+static const FieldPart I021_V2_5_145_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_021_V2_5_145_VALUE, NULL };
+static const FieldPart *I021_V2_5_145_PARTS[] = {
+ &I021_V2_5_145_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_145 = { FIXED, 2, 0, 0, &hf_021_V2_5_145, I021_V2_5_145_PARTS, { NULL } };
+static int hf_021_V2_5_146 = -1;
+static int hf_021_V2_5_146_SAS = -1;
+static const value_string valstr_021_V2_5_146_SAS[] = {
+ { 0, "No source information provided" },
+ { 1, "Source Information provided" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_146_SAS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_146_SAS, NULL };
+static int hf_021_V2_5_146_S = -1;
+static const value_string valstr_021_V2_5_146_S[] = {
+ { 0, "Unknown" },
+ { 1, "Aircraft Altitude (Holding Altitude)" },
+ { 2, "MCP/FCU Selected Altitude" },
+ { 3, "FMS Selected Altitude" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_146_S = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_5_146_S, NULL };
+static int hf_021_V2_5_146_ALT = -1;
+static const FieldPart I021_V2_5_146_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_021_V2_5_146_ALT, NULL };
+static const FieldPart *I021_V2_5_146_PARTS[] = {
+ &I021_V2_5_146_SAS,
+ &I021_V2_5_146_S,
+ &I021_V2_5_146_ALT,
+ NULL
+};
+static const AsterixField I021_V2_5_146 = { FIXED, 2, 0, 0, &hf_021_V2_5_146, I021_V2_5_146_PARTS, { NULL } };
+static int hf_021_V2_5_148 = -1;
+static int hf_021_V2_5_148_MV = -1;
+static const value_string valstr_021_V2_5_148_MV[] = {
+ { 0, "Not active or unknown" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_148_MV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_148_MV, NULL };
+static int hf_021_V2_5_148_AH = -1;
+static const value_string valstr_021_V2_5_148_AH[] = {
+ { 0, "Not active or unknown" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_148_AH = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_148_AH, NULL };
+static int hf_021_V2_5_148_AM = -1;
+static const value_string valstr_021_V2_5_148_AM[] = {
+ { 0, "Not active or unknown" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_148_AM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_148_AM, NULL };
+static int hf_021_V2_5_148_ALT = -1;
+static const FieldPart I021_V2_5_148_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_021_V2_5_148_ALT, NULL };
+static const FieldPart *I021_V2_5_148_PARTS[] = {
+ &I021_V2_5_148_MV,
+ &I021_V2_5_148_AH,
+ &I021_V2_5_148_AM,
+ &I021_V2_5_148_ALT,
+ NULL
+};
+static const AsterixField I021_V2_5_148 = { FIXED, 2, 0, 0, &hf_021_V2_5_148, I021_V2_5_148_PARTS, { NULL } };
+static int hf_021_V2_5_150 = -1;
+static int hf_021_V2_5_150_IM = -1;
+static const value_string valstr_021_V2_5_150_IM[] = {
+ { 0, "Air Speed = IAS, LSB (Bit-1) = 2 -14 NM/s" },
+ { 1, "Air Speed = Mach, LSB (Bit-1) = 0.001" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_150_IM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_150_IM, NULL };
+static int hf_021_V2_5_150_AS = -1;
+static const FieldPart I021_V2_5_150_AS = { 15, 1.0, FIELD_PART_HEX, &hf_021_V2_5_150_AS, NULL };
+static const FieldPart *I021_V2_5_150_PARTS[] = {
+ &I021_V2_5_150_IM,
+ &I021_V2_5_150_AS,
+ NULL
+};
+static const AsterixField I021_V2_5_150 = { FIXED, 2, 0, 0, &hf_021_V2_5_150, I021_V2_5_150_PARTS, { NULL } };
+static int hf_021_V2_5_151 = -1;
+static int hf_021_V2_5_151_RE = -1;
+static const value_string valstr_021_V2_5_151_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_151_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_151_RE, NULL };
+static int hf_021_V2_5_151_TAS = -1;
+static const FieldPart I021_V2_5_151_TAS = { 15, 1.0, FIELD_PART_UFLOAT, &hf_021_V2_5_151_TAS, NULL };
+static const FieldPart *I021_V2_5_151_PARTS[] = {
+ &I021_V2_5_151_RE,
+ &I021_V2_5_151_TAS,
+ NULL
+};
+static const AsterixField I021_V2_5_151 = { FIXED, 2, 0, 0, &hf_021_V2_5_151, I021_V2_5_151_PARTS, { NULL } };
+static int hf_021_V2_5_152 = -1;
+static int hf_021_V2_5_152_VALUE = -1;
+static const FieldPart I021_V2_5_152_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_021_V2_5_152_VALUE, NULL };
+static const FieldPart *I021_V2_5_152_PARTS[] = {
+ &I021_V2_5_152_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_152 = { FIXED, 2, 0, 0, &hf_021_V2_5_152, I021_V2_5_152_PARTS, { NULL } };
+static int hf_021_V2_5_155 = -1;
+static int hf_021_V2_5_155_RE = -1;
+static const value_string valstr_021_V2_5_155_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_155_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_155_RE, NULL };
+static int hf_021_V2_5_155_BVR = -1;
+static const FieldPart I021_V2_5_155_BVR = { 15, 6.25, FIELD_PART_FLOAT, &hf_021_V2_5_155_BVR, NULL };
+static const FieldPart *I021_V2_5_155_PARTS[] = {
+ &I021_V2_5_155_RE,
+ &I021_V2_5_155_BVR,
+ NULL
+};
+static const AsterixField I021_V2_5_155 = { FIXED, 2, 0, 0, &hf_021_V2_5_155, I021_V2_5_155_PARTS, { NULL } };
+static int hf_021_V2_5_157 = -1;
+static int hf_021_V2_5_157_RE = -1;
+static const value_string valstr_021_V2_5_157_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_157_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_157_RE, NULL };
+static int hf_021_V2_5_157_GVR = -1;
+static const FieldPart I021_V2_5_157_GVR = { 15, 6.25, FIELD_PART_FLOAT, &hf_021_V2_5_157_GVR, NULL };
+static const FieldPart *I021_V2_5_157_PARTS[] = {
+ &I021_V2_5_157_RE,
+ &I021_V2_5_157_GVR,
+ NULL
+};
+static const AsterixField I021_V2_5_157 = { FIXED, 2, 0, 0, &hf_021_V2_5_157, I021_V2_5_157_PARTS, { NULL } };
+static int hf_021_V2_5_160 = -1;
+static int hf_021_V2_5_160_RE = -1;
+static const value_string valstr_021_V2_5_160_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_160_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_160_RE, NULL };
+static int hf_021_V2_5_160_GS = -1;
+static const FieldPart I021_V2_5_160_GS = { 15, 0.00006103515625, FIELD_PART_UFLOAT, &hf_021_V2_5_160_GS, NULL };
+static int hf_021_V2_5_160_TA = -1;
+static const FieldPart I021_V2_5_160_TA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_021_V2_5_160_TA, NULL };
+static const FieldPart *I021_V2_5_160_PARTS[] = {
+ &I021_V2_5_160_RE,
+ &I021_V2_5_160_GS,
+ &I021_V2_5_160_TA,
+ NULL
+};
+static const AsterixField I021_V2_5_160 = { FIXED, 4, 0, 0, &hf_021_V2_5_160, I021_V2_5_160_PARTS, { NULL } };
+static int hf_021_V2_5_161 = -1;
+static int hf_021_V2_5_161_TRNUM = -1;
+static const FieldPart I021_V2_5_161_TRNUM = { 12, 1.0, FIELD_PART_HEX, &hf_021_V2_5_161_TRNUM, NULL };
+static const FieldPart *I021_V2_5_161_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I021_V2_5_161_TRNUM,
+ NULL
+};
+static const AsterixField I021_V2_5_161 = { FIXED, 2, 0, 0, &hf_021_V2_5_161, I021_V2_5_161_PARTS, { NULL } };
+static int hf_021_V2_5_165 = -1;
+static int hf_021_V2_5_165_TAR = -1;
+static const FieldPart I021_V2_5_165_TAR = { 10, 0.03125, FIELD_PART_FLOAT, &hf_021_V2_5_165_TAR, NULL };
+static const FieldPart *I021_V2_5_165_PARTS[] = {
+ &IXXX_6bit_spare,
+ &I021_V2_5_165_TAR,
+ NULL
+};
+static const AsterixField I021_V2_5_165 = { FIXED, 2, 0, 0, &hf_021_V2_5_165, I021_V2_5_165_PARTS, { NULL } };
+static int hf_021_V2_5_170 = -1;
+static int hf_021_V2_5_170_VALUE = -1;
+static const FieldPart I021_V2_5_170_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_021_V2_5_170_VALUE, NULL };
+static const FieldPart *I021_V2_5_170_PARTS[] = {
+ &I021_V2_5_170_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_170 = { FIXED, 6, 0, 0, &hf_021_V2_5_170, I021_V2_5_170_PARTS, { NULL } };
+static int hf_021_V2_5_200 = -1;
+static int hf_021_V2_5_200_ICF = -1;
+static const value_string valstr_021_V2_5_200_ICF[] = {
+ { 0, "No intent change active" },
+ { 1, "Intent change flag raised" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_200_ICF = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_200_ICF, NULL };
+static int hf_021_V2_5_200_LNAV = -1;
+static const value_string valstr_021_V2_5_200_LNAV[] = {
+ { 0, "LNAV Mode engaged" },
+ { 1, "LNAV Mode not engaged" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_200_LNAV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_200_LNAV, NULL };
+static int hf_021_V2_5_200_ME = -1;
+static const value_string valstr_021_V2_5_200_ME[] = {
+ { 0, "No military emergency" },
+ { 1, "Military emergency" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_200_ME = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_200_ME, NULL };
+static int hf_021_V2_5_200_PS = -1;
+static const value_string valstr_021_V2_5_200_PS[] = {
+ { 0, "No emergency / not reported" },
+ { 1, "General emergency" },
+ { 2, "Lifeguard / medical emergency" },
+ { 3, "Minimum fuel" },
+ { 4, "No communications" },
+ { 5, "Unlawful interference" },
+ { 6, "DOWNED Aircraft" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_200_PS = { 3, 1.0, FIELD_PART_UINT, &hf_021_V2_5_200_PS, NULL };
+static int hf_021_V2_5_200_SS = -1;
+static const value_string valstr_021_V2_5_200_SS[] = {
+ { 0, "No condition reported" },
+ { 1, "Permanent Alert (Emergency condition)" },
+ { 2, "Temporary Alert (change in Mode 3/A Code other than emergency)" },
+ { 3, "SPI set" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_200_SS = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_5_200_SS, NULL };
+static const FieldPart *I021_V2_5_200_PARTS[] = {
+ &I021_V2_5_200_ICF,
+ &I021_V2_5_200_LNAV,
+ &I021_V2_5_200_ME,
+ &I021_V2_5_200_PS,
+ &I021_V2_5_200_SS,
+ NULL
+};
+static const AsterixField I021_V2_5_200 = { FIXED, 1, 0, 0, &hf_021_V2_5_200, I021_V2_5_200_PARTS, { NULL } };
+static int hf_021_V2_5_210 = -1;
+static int hf_021_V2_5_210_VNS = -1;
+static const value_string valstr_021_V2_5_210_VNS[] = {
+ { 0, "The MOPS Version is supported by the GS" },
+ { 1, "The MOPS Version is not supported by the GS" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_210_VNS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_210_VNS, NULL };
+static int hf_021_V2_5_210_VN = -1;
+static const value_string valstr_021_V2_5_210_VN[] = {
+ { 0, "ED102/DO-260 [Ref. 7]" },
+ { 1, "DO-260A [Ref. 8]" },
+ { 2, "ED102A/DO-260B [Ref. 10]" },
+ { 3, "ED-102B/DO-260C [Ref. 11]" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_210_VN = { 3, 1.0, FIELD_PART_UINT, &hf_021_V2_5_210_VN, NULL };
+static int hf_021_V2_5_210_LTT = -1;
+static const value_string valstr_021_V2_5_210_LTT[] = {
+ { 0, "Other" },
+ { 1, "UAT" },
+ { 2, "1090 ES" },
+ { 3, "VDL 4" },
+ { 4, "Not assigned" },
+ { 5, "Not assigned" },
+ { 6, "Not assigned" },
+ { 7, "Not assigned" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_210_LTT = { 3, 1.0, FIELD_PART_UINT, &hf_021_V2_5_210_LTT, NULL };
+static const FieldPart *I021_V2_5_210_PARTS[] = {
+ &IXXX_1bit_spare,
+ &I021_V2_5_210_VNS,
+ &I021_V2_5_210_VN,
+ &I021_V2_5_210_LTT,
+ NULL
+};
+static const AsterixField I021_V2_5_210 = { FIXED, 1, 0, 0, &hf_021_V2_5_210, I021_V2_5_210_PARTS, { NULL } };
+static int hf_021_V2_5_220 = -1;
+static int hf_021_V2_5_220_WS = -1;
+static int hf_021_V2_5_220_WS_VALUE = -1;
+static const FieldPart I021_V2_5_220_WS_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_V2_5_220_WS_VALUE, NULL };
+static const FieldPart *I021_V2_5_220_WS_PARTS[] = {
+ &I021_V2_5_220_WS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_220_WS = { FIXED, 2, 0, 0, &hf_021_V2_5_220_WS, I021_V2_5_220_WS_PARTS, { NULL } };
+static int hf_021_V2_5_220_WD = -1;
+static int hf_021_V2_5_220_WD_VALUE = -1;
+static const FieldPart I021_V2_5_220_WD_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_V2_5_220_WD_VALUE, NULL };
+static const FieldPart *I021_V2_5_220_WD_PARTS[] = {
+ &I021_V2_5_220_WD_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_220_WD = { FIXED, 2, 0, 0, &hf_021_V2_5_220_WD, I021_V2_5_220_WD_PARTS, { NULL } };
+static int hf_021_V2_5_220_TMP = -1;
+static int hf_021_V2_5_220_TMP_VALUE = -1;
+static const FieldPart I021_V2_5_220_TMP_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_021_V2_5_220_TMP_VALUE, NULL };
+static const FieldPart *I021_V2_5_220_TMP_PARTS[] = {
+ &I021_V2_5_220_TMP_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_220_TMP = { FIXED, 2, 0, 0, &hf_021_V2_5_220_TMP, I021_V2_5_220_TMP_PARTS, { NULL } };
+static int hf_021_V2_5_220_TRB = -1;
+static int hf_021_V2_5_220_TRB_VALUE = -1;
+static const FieldPart I021_V2_5_220_TRB_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_V2_5_220_TRB_VALUE, NULL };
+static const FieldPart *I021_V2_5_220_TRB_PARTS[] = {
+ &I021_V2_5_220_TRB_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_220_TRB = { FIXED, 1, 0, 0, &hf_021_V2_5_220_TRB, I021_V2_5_220_TRB_PARTS, { NULL } };
+static const AsterixField I021_V2_5_220 = { COMPOUND, 0, 0, 0, &hf_021_V2_5_220, NULL, { &I021_V2_5_220_WS, &I021_V2_5_220_WD, &I021_V2_5_220_TMP, &I021_V2_5_220_TRB, NULL } };
+static int hf_021_V2_5_230 = -1;
+static int hf_021_V2_5_230_VALUE = -1;
+static const FieldPart I021_V2_5_230_VALUE = { 16, 0.01, FIELD_PART_FLOAT, &hf_021_V2_5_230_VALUE, NULL };
+static const FieldPart *I021_V2_5_230_PARTS[] = {
+ &I021_V2_5_230_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_230 = { FIXED, 2, 0, 0, &hf_021_V2_5_230, I021_V2_5_230_PARTS, { NULL } };
+static int hf_021_V2_5_250 = -1;
+static int hf_021_V2_5_250_VALUE = -1;
+static const FieldPart I021_V2_5_250_VALUE = { 64, 1.0, FIELD_PART_HEX, &hf_021_V2_5_250_VALUE, NULL };
+static const FieldPart *I021_V2_5_250_PARTS[] = {
+ &I021_V2_5_250_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_250 = { REPETITIVE, 8, 1, 0, &hf_021_V2_5_250, I021_V2_5_250_PARTS, { NULL } };
+static int hf_021_V2_5_260 = -1;
+static int hf_021_V2_5_260_TYP = -1;
+static const FieldPart I021_V2_5_260_TYP = { 5, 1.0, FIELD_PART_HEX, &hf_021_V2_5_260_TYP, NULL };
+static int hf_021_V2_5_260_STYP = -1;
+static const FieldPart I021_V2_5_260_STYP = { 3, 1.0, FIELD_PART_HEX, &hf_021_V2_5_260_STYP, NULL };
+static int hf_021_V2_5_260_ARA = -1;
+static const FieldPart I021_V2_5_260_ARA = { 14, 1.0, FIELD_PART_HEX, &hf_021_V2_5_260_ARA, NULL };
+static int hf_021_V2_5_260_RAC = -1;
+static const FieldPart I021_V2_5_260_RAC = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_5_260_RAC, NULL };
+static int hf_021_V2_5_260_RAT = -1;
+static const FieldPart I021_V2_5_260_RAT = { 1, 1.0, FIELD_PART_HEX, &hf_021_V2_5_260_RAT, NULL };
+static int hf_021_V2_5_260_MTE = -1;
+static const FieldPart I021_V2_5_260_MTE = { 1, 1.0, FIELD_PART_HEX, &hf_021_V2_5_260_MTE, NULL };
+static int hf_021_V2_5_260_TTI = -1;
+static const FieldPart I021_V2_5_260_TTI = { 2, 1.0, FIELD_PART_HEX, &hf_021_V2_5_260_TTI, NULL };
+static int hf_021_V2_5_260_TID = -1;
+static const FieldPart I021_V2_5_260_TID = { 26, 1.0, FIELD_PART_HEX, &hf_021_V2_5_260_TID, NULL };
+static const FieldPart *I021_V2_5_260_PARTS[] = {
+ &I021_V2_5_260_TYP,
+ &I021_V2_5_260_STYP,
+ &I021_V2_5_260_ARA,
+ &I021_V2_5_260_RAC,
+ &I021_V2_5_260_RAT,
+ &I021_V2_5_260_MTE,
+ &I021_V2_5_260_TTI,
+ &I021_V2_5_260_TID,
+ NULL
+};
+static const AsterixField I021_V2_5_260 = { FIXED, 7, 0, 0, &hf_021_V2_5_260, I021_V2_5_260_PARTS, { NULL } };
+static int hf_021_V2_5_271 = -1;
+static int hf_021_V2_5_271_POA = -1;
+static const value_string valstr_021_V2_5_271_POA[] = {
+ { 0, "Position transmitted is not ADS-B position reference point" },
+ { 1, "Position transmitted is the ADS-B position reference point" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_271_POA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_271_POA, NULL };
+static int hf_021_V2_5_271_CDTIS = -1;
+static const value_string valstr_021_V2_5_271_CDTIS[] = {
+ { 0, "CDTI not operational" },
+ { 1, "CDTI operational" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_271_CDTIS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_271_CDTIS, NULL };
+static int hf_021_V2_5_271_B2LOW = -1;
+static const value_string valstr_021_V2_5_271_B2LOW[] = {
+ { 0, ">= 70 Watts" },
+ { 1, "< 70 Watts" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_271_B2LOW = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_271_B2LOW, NULL };
+static int hf_021_V2_5_271_RAS = -1;
+static const value_string valstr_021_V2_5_271_RAS[] = {
+ { 0, "Aircraft not receiving ATC-services" },
+ { 1, "Aircraft receiving ATC services" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_271_RAS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_271_RAS, NULL };
+static int hf_021_V2_5_271_IDENT = -1;
+static const value_string valstr_021_V2_5_271_IDENT[] = {
+ { 0, "IDENT switch not active" },
+ { 1, "IDENT switch active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_5_271_IDENT = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_5_271_IDENT, NULL };
+static int hf_021_V2_5_271_LW = -1;
+static const FieldPart I021_V2_5_271_LW = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_5_271_LW, NULL };
+static const FieldPart *I021_V2_5_271_PARTS[] = {
+ &IXXX_2bit_spare,
+ &I021_V2_5_271_POA,
+ &I021_V2_5_271_CDTIS,
+ &I021_V2_5_271_B2LOW,
+ &I021_V2_5_271_RAS,
+ &I021_V2_5_271_IDENT,
+ &IXXX_FX,
+ &I021_V2_5_271_LW,
+ &IXXX_3bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V2_5_271 = { FX, 1, 0, 0, &hf_021_V2_5_271, I021_V2_5_271_PARTS, { NULL } };
+static int hf_021_V2_5_295 = -1;
+static int hf_021_V2_5_295_AOS = -1;
+static int hf_021_V2_5_295_AOS_VALUE = -1;
+static const FieldPart I021_V2_5_295_AOS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_5_295_AOS_VALUE, NULL };
+static const FieldPart *I021_V2_5_295_AOS_PARTS[] = {
+ &I021_V2_5_295_AOS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_295_AOS = { FIXED, 1, 0, 0, &hf_021_V2_5_295_AOS, I021_V2_5_295_AOS_PARTS, { NULL } };
+static int hf_021_V2_5_295_TRD = -1;
+static int hf_021_V2_5_295_TRD_VALUE = -1;
+static const FieldPart I021_V2_5_295_TRD_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_5_295_TRD_VALUE, NULL };
+static const FieldPart *I021_V2_5_295_TRD_PARTS[] = {
+ &I021_V2_5_295_TRD_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_295_TRD = { FIXED, 1, 0, 0, &hf_021_V2_5_295_TRD, I021_V2_5_295_TRD_PARTS, { NULL } };
+static int hf_021_V2_5_295_M3A = -1;
+static int hf_021_V2_5_295_M3A_VALUE = -1;
+static const FieldPart I021_V2_5_295_M3A_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_5_295_M3A_VALUE, NULL };
+static const FieldPart *I021_V2_5_295_M3A_PARTS[] = {
+ &I021_V2_5_295_M3A_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_295_M3A = { FIXED, 1, 0, 0, &hf_021_V2_5_295_M3A, I021_V2_5_295_M3A_PARTS, { NULL } };
+static int hf_021_V2_5_295_QI = -1;
+static int hf_021_V2_5_295_QI_VALUE = -1;
+static const FieldPart I021_V2_5_295_QI_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_5_295_QI_VALUE, NULL };
+static const FieldPart *I021_V2_5_295_QI_PARTS[] = {
+ &I021_V2_5_295_QI_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_295_QI = { FIXED, 1, 0, 0, &hf_021_V2_5_295_QI, I021_V2_5_295_QI_PARTS, { NULL } };
+static int hf_021_V2_5_295_TI1 = -1;
+static int hf_021_V2_5_295_TI1_VALUE = -1;
+static const FieldPart I021_V2_5_295_TI1_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_5_295_TI1_VALUE, NULL };
+static const FieldPart *I021_V2_5_295_TI1_PARTS[] = {
+ &I021_V2_5_295_TI1_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_295_TI1 = { FIXED, 1, 0, 0, &hf_021_V2_5_295_TI1, I021_V2_5_295_TI1_PARTS, { NULL } };
+static int hf_021_V2_5_295_MAM = -1;
+static int hf_021_V2_5_295_MAM_VALUE = -1;
+static const FieldPart I021_V2_5_295_MAM_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_5_295_MAM_VALUE, NULL };
+static const FieldPart *I021_V2_5_295_MAM_PARTS[] = {
+ &I021_V2_5_295_MAM_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_295_MAM = { FIXED, 1, 0, 0, &hf_021_V2_5_295_MAM, I021_V2_5_295_MAM_PARTS, { NULL } };
+static int hf_021_V2_5_295_GH = -1;
+static int hf_021_V2_5_295_GH_VALUE = -1;
+static const FieldPart I021_V2_5_295_GH_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_5_295_GH_VALUE, NULL };
+static const FieldPart *I021_V2_5_295_GH_PARTS[] = {
+ &I021_V2_5_295_GH_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_295_GH = { FIXED, 1, 0, 0, &hf_021_V2_5_295_GH, I021_V2_5_295_GH_PARTS, { NULL } };
+static int hf_021_V2_5_295_FL = -1;
+static int hf_021_V2_5_295_FL_VALUE = -1;
+static const FieldPart I021_V2_5_295_FL_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_5_295_FL_VALUE, NULL };
+static const FieldPart *I021_V2_5_295_FL_PARTS[] = {
+ &I021_V2_5_295_FL_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_295_FL = { FIXED, 1, 0, 0, &hf_021_V2_5_295_FL, I021_V2_5_295_FL_PARTS, { NULL } };
+static int hf_021_V2_5_295_ISA = -1;
+static int hf_021_V2_5_295_ISA_VALUE = -1;
+static const FieldPart I021_V2_5_295_ISA_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_5_295_ISA_VALUE, NULL };
+static const FieldPart *I021_V2_5_295_ISA_PARTS[] = {
+ &I021_V2_5_295_ISA_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_295_ISA = { FIXED, 1, 0, 0, &hf_021_V2_5_295_ISA, I021_V2_5_295_ISA_PARTS, { NULL } };
+static int hf_021_V2_5_295_FSA = -1;
+static int hf_021_V2_5_295_FSA_VALUE = -1;
+static const FieldPart I021_V2_5_295_FSA_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_5_295_FSA_VALUE, NULL };
+static const FieldPart *I021_V2_5_295_FSA_PARTS[] = {
+ &I021_V2_5_295_FSA_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_295_FSA = { FIXED, 1, 0, 0, &hf_021_V2_5_295_FSA, I021_V2_5_295_FSA_PARTS, { NULL } };
+static int hf_021_V2_5_295_AS = -1;
+static int hf_021_V2_5_295_AS_VALUE = -1;
+static const FieldPart I021_V2_5_295_AS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_5_295_AS_VALUE, NULL };
+static const FieldPart *I021_V2_5_295_AS_PARTS[] = {
+ &I021_V2_5_295_AS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_295_AS = { FIXED, 1, 0, 0, &hf_021_V2_5_295_AS, I021_V2_5_295_AS_PARTS, { NULL } };
+static int hf_021_V2_5_295_TAS = -1;
+static int hf_021_V2_5_295_TAS_VALUE = -1;
+static const FieldPart I021_V2_5_295_TAS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_5_295_TAS_VALUE, NULL };
+static const FieldPart *I021_V2_5_295_TAS_PARTS[] = {
+ &I021_V2_5_295_TAS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_295_TAS = { FIXED, 1, 0, 0, &hf_021_V2_5_295_TAS, I021_V2_5_295_TAS_PARTS, { NULL } };
+static int hf_021_V2_5_295_MH = -1;
+static int hf_021_V2_5_295_MH_VALUE = -1;
+static const FieldPart I021_V2_5_295_MH_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_5_295_MH_VALUE, NULL };
+static const FieldPart *I021_V2_5_295_MH_PARTS[] = {
+ &I021_V2_5_295_MH_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_295_MH = { FIXED, 1, 0, 0, &hf_021_V2_5_295_MH, I021_V2_5_295_MH_PARTS, { NULL } };
+static int hf_021_V2_5_295_BVR = -1;
+static int hf_021_V2_5_295_BVR_VALUE = -1;
+static const FieldPart I021_V2_5_295_BVR_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_5_295_BVR_VALUE, NULL };
+static const FieldPart *I021_V2_5_295_BVR_PARTS[] = {
+ &I021_V2_5_295_BVR_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_295_BVR = { FIXED, 1, 0, 0, &hf_021_V2_5_295_BVR, I021_V2_5_295_BVR_PARTS, { NULL } };
+static int hf_021_V2_5_295_GVR = -1;
+static int hf_021_V2_5_295_GVR_VALUE = -1;
+static const FieldPart I021_V2_5_295_GVR_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_5_295_GVR_VALUE, NULL };
+static const FieldPart *I021_V2_5_295_GVR_PARTS[] = {
+ &I021_V2_5_295_GVR_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_295_GVR = { FIXED, 1, 0, 0, &hf_021_V2_5_295_GVR, I021_V2_5_295_GVR_PARTS, { NULL } };
+static int hf_021_V2_5_295_GV = -1;
+static int hf_021_V2_5_295_GV_VALUE = -1;
+static const FieldPart I021_V2_5_295_GV_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_5_295_GV_VALUE, NULL };
+static const FieldPart *I021_V2_5_295_GV_PARTS[] = {
+ &I021_V2_5_295_GV_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_295_GV = { FIXED, 1, 0, 0, &hf_021_V2_5_295_GV, I021_V2_5_295_GV_PARTS, { NULL } };
+static int hf_021_V2_5_295_TAR = -1;
+static int hf_021_V2_5_295_TAR_VALUE = -1;
+static const FieldPart I021_V2_5_295_TAR_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_5_295_TAR_VALUE, NULL };
+static const FieldPart *I021_V2_5_295_TAR_PARTS[] = {
+ &I021_V2_5_295_TAR_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_295_TAR = { FIXED, 1, 0, 0, &hf_021_V2_5_295_TAR, I021_V2_5_295_TAR_PARTS, { NULL } };
+static int hf_021_V2_5_295_TI2 = -1;
+static int hf_021_V2_5_295_TI2_VALUE = -1;
+static const FieldPart I021_V2_5_295_TI2_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_5_295_TI2_VALUE, NULL };
+static const FieldPart *I021_V2_5_295_TI2_PARTS[] = {
+ &I021_V2_5_295_TI2_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_295_TI2 = { FIXED, 1, 0, 0, &hf_021_V2_5_295_TI2, I021_V2_5_295_TI2_PARTS, { NULL } };
+static int hf_021_V2_5_295_TS = -1;
+static int hf_021_V2_5_295_TS_VALUE = -1;
+static const FieldPart I021_V2_5_295_TS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_5_295_TS_VALUE, NULL };
+static const FieldPart *I021_V2_5_295_TS_PARTS[] = {
+ &I021_V2_5_295_TS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_295_TS = { FIXED, 1, 0, 0, &hf_021_V2_5_295_TS, I021_V2_5_295_TS_PARTS, { NULL } };
+static int hf_021_V2_5_295_MET = -1;
+static int hf_021_V2_5_295_MET_VALUE = -1;
+static const FieldPart I021_V2_5_295_MET_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_5_295_MET_VALUE, NULL };
+static const FieldPart *I021_V2_5_295_MET_PARTS[] = {
+ &I021_V2_5_295_MET_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_295_MET = { FIXED, 1, 0, 0, &hf_021_V2_5_295_MET, I021_V2_5_295_MET_PARTS, { NULL } };
+static int hf_021_V2_5_295_ROA = -1;
+static int hf_021_V2_5_295_ROA_VALUE = -1;
+static const FieldPart I021_V2_5_295_ROA_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_5_295_ROA_VALUE, NULL };
+static const FieldPart *I021_V2_5_295_ROA_PARTS[] = {
+ &I021_V2_5_295_ROA_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_295_ROA = { FIXED, 1, 0, 0, &hf_021_V2_5_295_ROA, I021_V2_5_295_ROA_PARTS, { NULL } };
+static int hf_021_V2_5_295_ARA = -1;
+static int hf_021_V2_5_295_ARA_VALUE = -1;
+static const FieldPart I021_V2_5_295_ARA_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_5_295_ARA_VALUE, NULL };
+static const FieldPart *I021_V2_5_295_ARA_PARTS[] = {
+ &I021_V2_5_295_ARA_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_295_ARA = { FIXED, 1, 0, 0, &hf_021_V2_5_295_ARA, I021_V2_5_295_ARA_PARTS, { NULL } };
+static int hf_021_V2_5_295_SCC = -1;
+static int hf_021_V2_5_295_SCC_VALUE = -1;
+static const FieldPart I021_V2_5_295_SCC_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_5_295_SCC_VALUE, NULL };
+static const FieldPart *I021_V2_5_295_SCC_PARTS[] = {
+ &I021_V2_5_295_SCC_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_295_SCC = { FIXED, 1, 0, 0, &hf_021_V2_5_295_SCC, I021_V2_5_295_SCC_PARTS, { NULL } };
+static const AsterixField I021_V2_5_295 = { COMPOUND, 0, 0, 0, &hf_021_V2_5_295, NULL, { &I021_V2_5_295_AOS, &I021_V2_5_295_TRD, &I021_V2_5_295_M3A, &I021_V2_5_295_QI, &I021_V2_5_295_TI1, &I021_V2_5_295_MAM, &I021_V2_5_295_GH, &I021_V2_5_295_FL, &I021_V2_5_295_ISA, &I021_V2_5_295_FSA, &I021_V2_5_295_AS, &I021_V2_5_295_TAS, &I021_V2_5_295_MH, &I021_V2_5_295_BVR, &I021_V2_5_295_GVR, &I021_V2_5_295_GV, &I021_V2_5_295_TAR, &I021_V2_5_295_TI2, &I021_V2_5_295_TS, &I021_V2_5_295_MET, &I021_V2_5_295_ROA, &I021_V2_5_295_ARA, &I021_V2_5_295_SCC, NULL } };
+static int hf_021_V2_5_400 = -1;
+static int hf_021_V2_5_400_VALUE = -1;
+static const FieldPart I021_V2_5_400_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_021_V2_5_400_VALUE, NULL };
+static const FieldPart *I021_V2_5_400_PARTS[] = {
+ &I021_V2_5_400_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_5_400 = { FIXED, 1, 0, 0, &hf_021_V2_5_400, I021_V2_5_400_PARTS, { NULL } };
+static int hf_021_V2_5_RE = -1;
+static const AsterixField I021_V2_5_RE = { EXP, 0, 0, 1, &hf_021_V2_5_RE, NULL, { NULL } };
+static int hf_021_V2_5_SP = -1;
+static const AsterixField I021_V2_5_SP = { EXP, 0, 0, 1, &hf_021_V2_5_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I021_V2_5_uap[] = {
+ &I021_V2_5_010,
+ &I021_V2_5_040,
+ &I021_V2_5_161,
+ &I021_V2_5_015,
+ &I021_V2_5_071,
+ &I021_V2_5_130,
+ &I021_V2_5_131,
+ &I021_V2_5_072,
+ &I021_V2_5_150,
+ &I021_V2_5_151,
+ &I021_V2_5_080,
+ &I021_V2_5_073,
+ &I021_V2_5_074,
+ &I021_V2_5_075,
+ &I021_V2_5_076,
+ &I021_V2_5_140,
+ &I021_V2_5_090,
+ &I021_V2_5_210,
+ &I021_V2_5_070,
+ &I021_V2_5_230,
+ &I021_V2_5_145,
+ &I021_V2_5_152,
+ &I021_V2_5_200,
+ &I021_V2_5_155,
+ &I021_V2_5_157,
+ &I021_V2_5_160,
+ &I021_V2_5_165,
+ &I021_V2_5_077,
+ &I021_V2_5_170,
+ &I021_V2_5_020,
+ &I021_V2_5_220,
+ &I021_V2_5_146,
+ &I021_V2_5_148,
+ &I021_V2_5_110,
+ &I021_V2_5_016,
+ &I021_V2_5_008,
+ &I021_V2_5_271,
+ &I021_V2_5_132,
+ &I021_V2_5_250,
+ &I021_V2_5_260,
+ &I021_V2_5_400,
+ &I021_V2_5_295,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I021_V2_5_RE,
+ &I021_V2_5_SP,
+ NULL
+};
+static const AsterixField **I021_V2_5[] = {
+ I021_V2_5_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 021, edition 2.6 */
+static int hf_021_V2_6_008 = -1;
+static int hf_021_V2_6_008_RA = -1;
+static const value_string valstr_021_V2_6_008_RA[] = {
+ { 0, "TCAS II or ACAS RA not active" },
+ { 1, "TCAS RA active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_008_RA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_008_RA, NULL };
+static int hf_021_V2_6_008_TC = -1;
+static const value_string valstr_021_V2_6_008_TC[] = {
+ { 0, "No capability for Trajectory Change Reports" },
+ { 1, "Support for TC+0 reports only" },
+ { 2, "Support for multiple TC reports" },
+ { 3, "Reserved" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_008_TC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_6_008_TC, NULL };
+static int hf_021_V2_6_008_TS = -1;
+static const value_string valstr_021_V2_6_008_TS[] = {
+ { 0, "No capability to support Target State Reports" },
+ { 1, "Capable of supporting target State Reports" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_008_TS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_008_TS, NULL };
+static int hf_021_V2_6_008_ARV = -1;
+static const value_string valstr_021_V2_6_008_ARV[] = {
+ { 0, "No capability to generate ARV-reports" },
+ { 1, "Capable of generate ARV-reports" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_008_ARV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_008_ARV, NULL };
+static int hf_021_V2_6_008_CDTIA = -1;
+static const value_string valstr_021_V2_6_008_CDTIA[] = {
+ { 0, "CDTI not operational" },
+ { 1, "CDTI operational" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_008_CDTIA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_008_CDTIA, NULL };
+static int hf_021_V2_6_008_NOTTCAS = -1;
+static const value_string valstr_021_V2_6_008_NOTTCAS[] = {
+ { 0, "TCAS operational" },
+ { 1, "TCAS not operational" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_008_NOTTCAS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_008_NOTTCAS, NULL };
+static int hf_021_V2_6_008_SA = -1;
+static const value_string valstr_021_V2_6_008_SA[] = {
+ { 0, "Antenna Diversity" },
+ { 1, "Single Antenna only" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_008_SA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_008_SA, NULL };
+static const FieldPart *I021_V2_6_008_PARTS[] = {
+ &I021_V2_6_008_RA,
+ &I021_V2_6_008_TC,
+ &I021_V2_6_008_TS,
+ &I021_V2_6_008_ARV,
+ &I021_V2_6_008_CDTIA,
+ &I021_V2_6_008_NOTTCAS,
+ &I021_V2_6_008_SA,
+ NULL
+};
+static const AsterixField I021_V2_6_008 = { FIXED, 1, 0, 0, &hf_021_V2_6_008, I021_V2_6_008_PARTS, { NULL } };
+static int hf_021_V2_6_010 = -1;
+static int hf_021_V2_6_010_SAC = -1;
+static const FieldPart I021_V2_6_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_021_V2_6_010_SAC, NULL };
+static int hf_021_V2_6_010_SIC = -1;
+static const FieldPart I021_V2_6_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_021_V2_6_010_SIC, NULL };
+static const FieldPart *I021_V2_6_010_PARTS[] = {
+ &I021_V2_6_010_SAC,
+ &I021_V2_6_010_SIC,
+ NULL
+};
+static const AsterixField I021_V2_6_010 = { FIXED, 2, 0, 0, &hf_021_V2_6_010, I021_V2_6_010_PARTS, { NULL } };
+static int hf_021_V2_6_015 = -1;
+static int hf_021_V2_6_015_VALUE = -1;
+static const FieldPart I021_V2_6_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_021_V2_6_015_VALUE, NULL };
+static const FieldPart *I021_V2_6_015_PARTS[] = {
+ &I021_V2_6_015_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_015 = { FIXED, 1, 0, 0, &hf_021_V2_6_015, I021_V2_6_015_PARTS, { NULL } };
+static int hf_021_V2_6_016 = -1;
+static int hf_021_V2_6_016_VALUE = -1;
+static const FieldPart I021_V2_6_016_VALUE = { 8, 0.5, FIELD_PART_UFLOAT, &hf_021_V2_6_016_VALUE, NULL };
+static const FieldPart *I021_V2_6_016_PARTS[] = {
+ &I021_V2_6_016_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_016 = { FIXED, 1, 0, 0, &hf_021_V2_6_016, I021_V2_6_016_PARTS, { NULL } };
+static int hf_021_V2_6_020 = -1;
+static int hf_021_V2_6_020_VALUE = -1;
+static const value_string valstr_021_V2_6_020_VALUE[] = {
+ { 0, "No ADS-B Emitter Category Information" },
+ { 1, "Light aircraft <= 15500 lbs" },
+ { 2, "15500 lbs < small aircraft <75000 lbs" },
+ { 3, "75000 lbs < medium a/c < 300000 lbs" },
+ { 4, "High Vortex Large" },
+ { 5, "300000 lbs <= heavy aircraft" },
+ { 6, "Highly manoeuvrable (5g acceleration capability) and high speed (>400 knots cruise)" },
+ { 7, "Reserved" },
+ { 8, "Reserved" },
+ { 9, "Reserved" },
+ { 10, "Rotocraft" },
+ { 11, "Glider / sailplane" },
+ { 12, "Lighter-than-air" },
+ { 13, "Unmanned aerial vehicle" },
+ { 14, "Space / transatmospheric vehicle" },
+ { 15, "Ultralight / handglider / paraglider" },
+ { 16, "Parachutist / skydiver" },
+ { 17, "Reserved" },
+ { 18, "Reserved" },
+ { 19, "Reserved" },
+ { 20, "Surface emergency vehicle" },
+ { 21, "Surface service vehicle" },
+ { 22, "Fixed ground or tethered obstruction" },
+ { 23, "Cluster obstacle" },
+ { 24, "Line obstacle" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_020_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_V2_6_020_VALUE, NULL };
+static const FieldPart *I021_V2_6_020_PARTS[] = {
+ &I021_V2_6_020_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_020 = { FIXED, 1, 0, 0, &hf_021_V2_6_020, I021_V2_6_020_PARTS, { NULL } };
+static int hf_021_V2_6_040 = -1;
+static int hf_021_V2_6_040_ATP = -1;
+static const value_string valstr_021_V2_6_040_ATP[] = {
+ { 0, "24-Bit ICAO address" },
+ { 1, "Duplicate address" },
+ { 2, "Surface vehicle address" },
+ { 3, "Anonymous address" },
+ { 4, "Reserved for future use" },
+ { 5, "Reserved for future use" },
+ { 6, "Reserved for future use" },
+ { 7, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_040_ATP = { 3, 1.0, FIELD_PART_UINT, &hf_021_V2_6_040_ATP, NULL };
+static int hf_021_V2_6_040_ARC = -1;
+static const value_string valstr_021_V2_6_040_ARC[] = {
+ { 0, "25 ft" },
+ { 1, "100 ft" },
+ { 2, "Unknown" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_040_ARC = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_6_040_ARC, NULL };
+static int hf_021_V2_6_040_RC = -1;
+static const value_string valstr_021_V2_6_040_RC[] = {
+ { 0, "Default" },
+ { 1, "Range Check passed, CPR Validation pending" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_040_RC = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_040_RC, NULL };
+static int hf_021_V2_6_040_RAB = -1;
+static const value_string valstr_021_V2_6_040_RAB[] = {
+ { 0, "Report from target transponder" },
+ { 1, "Report from field monitor (fixed transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_040_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_040_RAB, NULL };
+static int hf_021_V2_6_040_DCR = -1;
+static const value_string valstr_021_V2_6_040_DCR[] = {
+ { 0, "No differential correction (ADS-B)" },
+ { 1, "Differential correction (ADS-B)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_040_DCR = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_040_DCR, NULL };
+static int hf_021_V2_6_040_GBS = -1;
+static const value_string valstr_021_V2_6_040_GBS[] = {
+ { 0, "Ground Bit not set" },
+ { 1, "Ground Bit set" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_040_GBS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_040_GBS, NULL };
+static int hf_021_V2_6_040_SIM = -1;
+static const value_string valstr_021_V2_6_040_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_040_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_040_SIM, NULL };
+static int hf_021_V2_6_040_TST = -1;
+static const value_string valstr_021_V2_6_040_TST[] = {
+ { 0, "Default" },
+ { 1, "Test Target" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_040_TST = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_040_TST, NULL };
+static int hf_021_V2_6_040_SAA = -1;
+static const value_string valstr_021_V2_6_040_SAA[] = {
+ { 0, "Equipment capable to provide Selected Altitude" },
+ { 1, "Equipment not capable to provide Selected Altitude" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_040_SAA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_040_SAA, NULL };
+static int hf_021_V2_6_040_CL = -1;
+static const value_string valstr_021_V2_6_040_CL[] = {
+ { 0, "Report valid" },
+ { 1, "Report suspect" },
+ { 2, "No information" },
+ { 3, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_040_CL = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_6_040_CL, NULL };
+static int hf_021_V2_6_040_LLC = -1;
+static const value_string valstr_021_V2_6_040_LLC[] = {
+ { 0, "Default" },
+ { 1, "List Lookup failed (see note)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_040_LLC = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_040_LLC, NULL };
+static int hf_021_V2_6_040_IPC = -1;
+static const value_string valstr_021_V2_6_040_IPC[] = {
+ { 0, "Default (see note)" },
+ { 1, "Independent Position Check failed" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_040_IPC = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_040_IPC, NULL };
+static int hf_021_V2_6_040_NOGO = -1;
+static const value_string valstr_021_V2_6_040_NOGO[] = {
+ { 0, "NOGO-bit not set" },
+ { 1, "NOGO-bit set" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_040_NOGO = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_040_NOGO, NULL };
+static int hf_021_V2_6_040_CPR = -1;
+static const value_string valstr_021_V2_6_040_CPR[] = {
+ { 0, "CPR Validation correct" },
+ { 1, "CPR Validation failed" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_040_CPR = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_040_CPR, NULL };
+static int hf_021_V2_6_040_LDPJ = -1;
+static const value_string valstr_021_V2_6_040_LDPJ[] = {
+ { 0, "LDPJ not detected" },
+ { 1, "LDPJ detected" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_040_LDPJ = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_040_LDPJ, NULL };
+static int hf_021_V2_6_040_RCF = -1;
+static const value_string valstr_021_V2_6_040_RCF[] = {
+ { 0, "Default" },
+ { 1, "Range Check failed" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_040_RCF = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_040_RCF, NULL };
+static int hf_021_V2_6_040_TBC = -1;
+static const FieldPart I021_V2_6_040_TBC = { 7, 1.0, FIELD_PART_HEX, &hf_021_V2_6_040_TBC, NULL };
+static int hf_021_V2_6_040_MBC = -1;
+static const FieldPart I021_V2_6_040_MBC = { 7, 1.0, FIELD_PART_HEX, &hf_021_V2_6_040_MBC, NULL };
+static const FieldPart *I021_V2_6_040_PARTS[] = {
+ &I021_V2_6_040_ATP,
+ &I021_V2_6_040_ARC,
+ &I021_V2_6_040_RC,
+ &I021_V2_6_040_RAB,
+ &IXXX_FX,
+ &I021_V2_6_040_DCR,
+ &I021_V2_6_040_GBS,
+ &I021_V2_6_040_SIM,
+ &I021_V2_6_040_TST,
+ &I021_V2_6_040_SAA,
+ &I021_V2_6_040_CL,
+ &IXXX_FX,
+ &IXXX_1bit_spare,
+ &I021_V2_6_040_LLC,
+ &I021_V2_6_040_IPC,
+ &I021_V2_6_040_NOGO,
+ &I021_V2_6_040_CPR,
+ &I021_V2_6_040_LDPJ,
+ &I021_V2_6_040_RCF,
+ &IXXX_FX,
+ &I021_V2_6_040_TBC,
+ &IXXX_FX,
+ &I021_V2_6_040_MBC,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V2_6_040 = { FX, 1, 0, 0, &hf_021_V2_6_040, I021_V2_6_040_PARTS, { NULL } };
+static int hf_021_V2_6_070 = -1;
+static int hf_021_V2_6_070_MODE3A = -1;
+static const FieldPart I021_V2_6_070_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_021_V2_6_070_MODE3A, NULL };
+static const FieldPart *I021_V2_6_070_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I021_V2_6_070_MODE3A,
+ NULL
+};
+static const AsterixField I021_V2_6_070 = { FIXED, 2, 0, 0, &hf_021_V2_6_070, I021_V2_6_070_PARTS, { NULL } };
+static int hf_021_V2_6_071 = -1;
+static int hf_021_V2_6_071_VALUE = -1;
+static const FieldPart I021_V2_6_071_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_6_071_VALUE, NULL };
+static const FieldPart *I021_V2_6_071_PARTS[] = {
+ &I021_V2_6_071_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_071 = { FIXED, 3, 0, 0, &hf_021_V2_6_071, I021_V2_6_071_PARTS, { NULL } };
+static int hf_021_V2_6_072 = -1;
+static int hf_021_V2_6_072_VALUE = -1;
+static const FieldPart I021_V2_6_072_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_6_072_VALUE, NULL };
+static const FieldPart *I021_V2_6_072_PARTS[] = {
+ &I021_V2_6_072_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_072 = { FIXED, 3, 0, 0, &hf_021_V2_6_072, I021_V2_6_072_PARTS, { NULL } };
+static int hf_021_V2_6_073 = -1;
+static int hf_021_V2_6_073_VALUE = -1;
+static const FieldPart I021_V2_6_073_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_6_073_VALUE, NULL };
+static const FieldPart *I021_V2_6_073_PARTS[] = {
+ &I021_V2_6_073_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_073 = { FIXED, 3, 0, 0, &hf_021_V2_6_073, I021_V2_6_073_PARTS, { NULL } };
+static int hf_021_V2_6_074 = -1;
+static int hf_021_V2_6_074_FSI = -1;
+static const value_string valstr_021_V2_6_074_FSI[] = {
+ { 3, "Reserved" },
+ { 2, "TOMRp whole seconds = (I021/073) Whole seconds - 1" },
+ { 1, "TOMRp whole seconds = (I021/073) Whole seconds + 1" },
+ { 0, "TOMRp whole seconds = (I021/073) Whole seconds" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_074_FSI = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_6_074_FSI, NULL };
+static int hf_021_V2_6_074_TOMRP = -1;
+static const FieldPart I021_V2_6_074_TOMRP = { 30, 0.00000000093132257461547851562, FIELD_PART_UFLOAT, &hf_021_V2_6_074_TOMRP, NULL };
+static const FieldPart *I021_V2_6_074_PARTS[] = {
+ &I021_V2_6_074_FSI,
+ &I021_V2_6_074_TOMRP,
+ NULL
+};
+static const AsterixField I021_V2_6_074 = { FIXED, 4, 0, 0, &hf_021_V2_6_074, I021_V2_6_074_PARTS, { NULL } };
+static int hf_021_V2_6_075 = -1;
+static int hf_021_V2_6_075_VALUE = -1;
+static const FieldPart I021_V2_6_075_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_6_075_VALUE, NULL };
+static const FieldPart *I021_V2_6_075_PARTS[] = {
+ &I021_V2_6_075_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_075 = { FIXED, 3, 0, 0, &hf_021_V2_6_075, I021_V2_6_075_PARTS, { NULL } };
+static int hf_021_V2_6_076 = -1;
+static int hf_021_V2_6_076_FSI = -1;
+static const value_string valstr_021_V2_6_076_FSI[] = {
+ { 3, "Reserved" },
+ { 2, "TOMRp whole seconds = (I021/075) Whole seconds - 1" },
+ { 1, "TOMRp whole seconds = (I021/075) Whole seconds + 1" },
+ { 0, "TOMRp whole seconds = (I021/075) Whole seconds" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_076_FSI = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_6_076_FSI, NULL };
+static int hf_021_V2_6_076_TOMRP = -1;
+static const FieldPart I021_V2_6_076_TOMRP = { 30, 0.00000000093132257461547851562, FIELD_PART_UFLOAT, &hf_021_V2_6_076_TOMRP, NULL };
+static const FieldPart *I021_V2_6_076_PARTS[] = {
+ &I021_V2_6_076_FSI,
+ &I021_V2_6_076_TOMRP,
+ NULL
+};
+static const AsterixField I021_V2_6_076 = { FIXED, 4, 0, 0, &hf_021_V2_6_076, I021_V2_6_076_PARTS, { NULL } };
+static int hf_021_V2_6_077 = -1;
+static int hf_021_V2_6_077_VALUE = -1;
+static const FieldPart I021_V2_6_077_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_V2_6_077_VALUE, NULL };
+static const FieldPart *I021_V2_6_077_PARTS[] = {
+ &I021_V2_6_077_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_077 = { FIXED, 3, 0, 0, &hf_021_V2_6_077, I021_V2_6_077_PARTS, { NULL } };
+static int hf_021_V2_6_080 = -1;
+static int hf_021_V2_6_080_VALUE = -1;
+static const FieldPart I021_V2_6_080_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_021_V2_6_080_VALUE, NULL };
+static const FieldPart *I021_V2_6_080_PARTS[] = {
+ &I021_V2_6_080_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_080 = { FIXED, 3, 0, 0, &hf_021_V2_6_080, I021_V2_6_080_PARTS, { NULL } };
+static int hf_021_V2_6_090 = -1;
+static int hf_021_V2_6_090_NUCRNACV = -1;
+static const FieldPart I021_V2_6_090_NUCRNACV = { 3, 1.0, FIELD_PART_HEX, &hf_021_V2_6_090_NUCRNACV, NULL };
+static int hf_021_V2_6_090_NUCPNIC = -1;
+static const FieldPart I021_V2_6_090_NUCPNIC = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_6_090_NUCPNIC, NULL };
+static int hf_021_V2_6_090_NICBARO = -1;
+static const FieldPart I021_V2_6_090_NICBARO = { 1, 1.0, FIELD_PART_HEX, &hf_021_V2_6_090_NICBARO, NULL };
+static int hf_021_V2_6_090_SIL = -1;
+static const FieldPart I021_V2_6_090_SIL = { 2, 1.0, FIELD_PART_HEX, &hf_021_V2_6_090_SIL, NULL };
+static int hf_021_V2_6_090_NACP = -1;
+static const FieldPart I021_V2_6_090_NACP = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_6_090_NACP, NULL };
+static int hf_021_V2_6_090_SILS = -1;
+static const value_string valstr_021_V2_6_090_SILS[] = {
+ { 0, "Measured per flight-hour" },
+ { 1, "Measured per sample" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_090_SILS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_090_SILS, NULL };
+static int hf_021_V2_6_090_SDA = -1;
+static const FieldPart I021_V2_6_090_SDA = { 2, 1.0, FIELD_PART_HEX, &hf_021_V2_6_090_SDA, NULL };
+static int hf_021_V2_6_090_GVA = -1;
+static const FieldPart I021_V2_6_090_GVA = { 2, 1.0, FIELD_PART_HEX, &hf_021_V2_6_090_GVA, NULL };
+static int hf_021_V2_6_090_PIC = -1;
+static const FieldPart I021_V2_6_090_PIC = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_6_090_PIC, NULL };
+static const FieldPart *I021_V2_6_090_PARTS[] = {
+ &I021_V2_6_090_NUCRNACV,
+ &I021_V2_6_090_NUCPNIC,
+ &IXXX_FX,
+ &I021_V2_6_090_NICBARO,
+ &I021_V2_6_090_SIL,
+ &I021_V2_6_090_NACP,
+ &IXXX_FX,
+ &IXXX_2bit_spare,
+ &I021_V2_6_090_SILS,
+ &I021_V2_6_090_SDA,
+ &I021_V2_6_090_GVA,
+ &IXXX_FX,
+ &I021_V2_6_090_PIC,
+ &IXXX_3bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V2_6_090 = { FX, 1, 0, 0, &hf_021_V2_6_090, I021_V2_6_090_PARTS, { NULL } };
+static int hf_021_V2_6_110 = -1;
+static int hf_021_V2_6_110_TIS = -1;
+static int hf_021_V2_6_110_TIS_NAV = -1;
+static const value_string valstr_021_V2_6_110_TIS_NAV[] = {
+ { 0, "Trajectory Intent Data is available for this aircraft" },
+ { 1, "Trajectory Intent Data is not available for this aircraft" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_110_TIS_NAV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_110_TIS_NAV, NULL };
+static int hf_021_V2_6_110_TIS_NVB = -1;
+static const value_string valstr_021_V2_6_110_TIS_NVB[] = {
+ { 0, "Trajectory Intent Data is valid" },
+ { 1, "Trajectory Intent Data is not valid" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_110_TIS_NVB = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_110_TIS_NVB, NULL };
+static const FieldPart *I021_V2_6_110_TIS_PARTS[] = {
+ &I021_V2_6_110_TIS_NAV,
+ &I021_V2_6_110_TIS_NVB,
+ &IXXX_5bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V2_6_110_TIS = { FX, 1, 0, 0, &hf_021_V2_6_110_TIS, I021_V2_6_110_TIS_PARTS, { NULL } };
+static int hf_021_V2_6_110_TID = -1;
+static int hf_021_V2_6_110_TID_TCA = -1;
+static const value_string valstr_021_V2_6_110_TID_TCA[] = {
+ { 0, "TCP number available" },
+ { 1, "TCP number not available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_110_TID_TCA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_110_TID_TCA, NULL };
+static int hf_021_V2_6_110_TID_NC = -1;
+static const value_string valstr_021_V2_6_110_TID_NC[] = {
+ { 0, "TCP compliance" },
+ { 1, "TCP non-compliance" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_110_TID_NC = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_110_TID_NC, NULL };
+static int hf_021_V2_6_110_TID_TCPN = -1;
+static const FieldPart I021_V2_6_110_TID_TCPN = { 6, 1.0, FIELD_PART_HEX, &hf_021_V2_6_110_TID_TCPN, NULL };
+static int hf_021_V2_6_110_TID_ALT = -1;
+static const FieldPart I021_V2_6_110_TID_ALT = { 16, 10.0, FIELD_PART_FLOAT, &hf_021_V2_6_110_TID_ALT, NULL };
+static int hf_021_V2_6_110_TID_LAT = -1;
+static const FieldPart I021_V2_6_110_TID_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V2_6_110_TID_LAT, NULL };
+static int hf_021_V2_6_110_TID_LON = -1;
+static const FieldPart I021_V2_6_110_TID_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V2_6_110_TID_LON, NULL };
+static int hf_021_V2_6_110_TID_PT = -1;
+static const value_string valstr_021_V2_6_110_TID_PT[] = {
+ { 0, "Unknown" },
+ { 1, "Fly by waypoint (LT)" },
+ { 2, "Fly over waypoint (LT)" },
+ { 3, "Hold pattern (LT)" },
+ { 4, "Procedure hold (LT)" },
+ { 5, "Procedure turn (LT)" },
+ { 6, "RF leg (LT)" },
+ { 7, "Top of climb (VT)" },
+ { 8, "Top of descent (VT)" },
+ { 9, "Start of level (VT)" },
+ { 10, "Cross-over altitude (VT)" },
+ { 11, "Transition altitude (VT)" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_110_TID_PT = { 4, 1.0, FIELD_PART_UINT, &hf_021_V2_6_110_TID_PT, NULL };
+static int hf_021_V2_6_110_TID_TD = -1;
+static const value_string valstr_021_V2_6_110_TID_TD[] = {
+ { 0, "N/A" },
+ { 1, "Turn right" },
+ { 2, "Turn left" },
+ { 3, "No turn" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_110_TID_TD = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_6_110_TID_TD, NULL };
+static int hf_021_V2_6_110_TID_TRA = -1;
+static const value_string valstr_021_V2_6_110_TID_TRA[] = {
+ { 0, "TTR not available" },
+ { 1, "TTR available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_110_TID_TRA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_110_TID_TRA, NULL };
+static int hf_021_V2_6_110_TID_TOA = -1;
+static const value_string valstr_021_V2_6_110_TID_TOA[] = {
+ { 0, "TOV available" },
+ { 1, "TOV not available" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_110_TID_TOA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_110_TID_TOA, NULL };
+static int hf_021_V2_6_110_TID_TOV = -1;
+static const FieldPart I021_V2_6_110_TID_TOV = { 24, 1.0, FIELD_PART_UFLOAT, &hf_021_V2_6_110_TID_TOV, NULL };
+static int hf_021_V2_6_110_TID_TTR = -1;
+static const FieldPart I021_V2_6_110_TID_TTR = { 16, 0.01, FIELD_PART_UFLOAT, &hf_021_V2_6_110_TID_TTR, NULL };
+static const FieldPart *I021_V2_6_110_TID_PARTS[] = {
+ &I021_V2_6_110_TID_TCA,
+ &I021_V2_6_110_TID_NC,
+ &I021_V2_6_110_TID_TCPN,
+ &I021_V2_6_110_TID_ALT,
+ &I021_V2_6_110_TID_LAT,
+ &I021_V2_6_110_TID_LON,
+ &I021_V2_6_110_TID_PT,
+ &I021_V2_6_110_TID_TD,
+ &I021_V2_6_110_TID_TRA,
+ &I021_V2_6_110_TID_TOA,
+ &I021_V2_6_110_TID_TOV,
+ &I021_V2_6_110_TID_TTR,
+ NULL
+};
+static const AsterixField I021_V2_6_110_TID = { REPETITIVE, 15, 1, 0, &hf_021_V2_6_110_TID, I021_V2_6_110_TID_PARTS, { NULL } };
+static const AsterixField I021_V2_6_110 = { COMPOUND, 0, 0, 0, &hf_021_V2_6_110, NULL, { &I021_V2_6_110_TIS, &I021_V2_6_110_TID, NULL } };
+static int hf_021_V2_6_130 = -1;
+static int hf_021_V2_6_130_LAT = -1;
+static const FieldPart I021_V2_6_130_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V2_6_130_LAT, NULL };
+static int hf_021_V2_6_130_LON = -1;
+static const FieldPart I021_V2_6_130_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_V2_6_130_LON, NULL };
+static const FieldPart *I021_V2_6_130_PARTS[] = {
+ &I021_V2_6_130_LAT,
+ &I021_V2_6_130_LON,
+ NULL
+};
+static const AsterixField I021_V2_6_130 = { FIXED, 6, 0, 0, &hf_021_V2_6_130, I021_V2_6_130_PARTS, { NULL } };
+static int hf_021_V2_6_131 = -1;
+static int hf_021_V2_6_131_LAT = -1;
+static const FieldPart I021_V2_6_131_LAT = { 32, 0.0000001676380634307861328125, FIELD_PART_FLOAT, &hf_021_V2_6_131_LAT, NULL };
+static int hf_021_V2_6_131_LON = -1;
+static const FieldPart I021_V2_6_131_LON = { 32, 0.0000001676380634307861328125, FIELD_PART_FLOAT, &hf_021_V2_6_131_LON, NULL };
+static const FieldPart *I021_V2_6_131_PARTS[] = {
+ &I021_V2_6_131_LAT,
+ &I021_V2_6_131_LON,
+ NULL
+};
+static const AsterixField I021_V2_6_131 = { FIXED, 8, 0, 0, &hf_021_V2_6_131, I021_V2_6_131_PARTS, { NULL } };
+static int hf_021_V2_6_132 = -1;
+static int hf_021_V2_6_132_VALUE = -1;
+static const FieldPart I021_V2_6_132_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_021_V2_6_132_VALUE, NULL };
+static const FieldPart *I021_V2_6_132_PARTS[] = {
+ &I021_V2_6_132_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_132 = { FIXED, 1, 0, 0, &hf_021_V2_6_132, I021_V2_6_132_PARTS, { NULL } };
+static int hf_021_V2_6_140 = -1;
+static int hf_021_V2_6_140_VALUE = -1;
+static const FieldPart I021_V2_6_140_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_021_V2_6_140_VALUE, NULL };
+static const FieldPart *I021_V2_6_140_PARTS[] = {
+ &I021_V2_6_140_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_140 = { FIXED, 2, 0, 0, &hf_021_V2_6_140, I021_V2_6_140_PARTS, { NULL } };
+static int hf_021_V2_6_145 = -1;
+static int hf_021_V2_6_145_VALUE = -1;
+static const FieldPart I021_V2_6_145_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_021_V2_6_145_VALUE, NULL };
+static const FieldPart *I021_V2_6_145_PARTS[] = {
+ &I021_V2_6_145_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_145 = { FIXED, 2, 0, 0, &hf_021_V2_6_145, I021_V2_6_145_PARTS, { NULL } };
+static int hf_021_V2_6_146 = -1;
+static int hf_021_V2_6_146_SAS = -1;
+static const value_string valstr_021_V2_6_146_SAS[] = {
+ { 0, "No source information provided" },
+ { 1, "Source Information provided" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_146_SAS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_146_SAS, NULL };
+static int hf_021_V2_6_146_S = -1;
+static const value_string valstr_021_V2_6_146_S[] = {
+ { 0, "Unknown" },
+ { 1, "Aircraft Altitude (Holding Altitude)" },
+ { 2, "MCP/FCU Selected Altitude" },
+ { 3, "FMS Selected Altitude" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_146_S = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_6_146_S, NULL };
+static int hf_021_V2_6_146_ALT = -1;
+static const FieldPart I021_V2_6_146_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_021_V2_6_146_ALT, NULL };
+static const FieldPart *I021_V2_6_146_PARTS[] = {
+ &I021_V2_6_146_SAS,
+ &I021_V2_6_146_S,
+ &I021_V2_6_146_ALT,
+ NULL
+};
+static const AsterixField I021_V2_6_146 = { FIXED, 2, 0, 0, &hf_021_V2_6_146, I021_V2_6_146_PARTS, { NULL } };
+static int hf_021_V2_6_148 = -1;
+static int hf_021_V2_6_148_MV = -1;
+static const value_string valstr_021_V2_6_148_MV[] = {
+ { 0, "Not active or unknown" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_148_MV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_148_MV, NULL };
+static int hf_021_V2_6_148_AH = -1;
+static const value_string valstr_021_V2_6_148_AH[] = {
+ { 0, "Not active or unknown" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_148_AH = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_148_AH, NULL };
+static int hf_021_V2_6_148_AM = -1;
+static const value_string valstr_021_V2_6_148_AM[] = {
+ { 0, "Not active or unknown" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_148_AM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_148_AM, NULL };
+static int hf_021_V2_6_148_ALT = -1;
+static const FieldPart I021_V2_6_148_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_021_V2_6_148_ALT, NULL };
+static const FieldPart *I021_V2_6_148_PARTS[] = {
+ &I021_V2_6_148_MV,
+ &I021_V2_6_148_AH,
+ &I021_V2_6_148_AM,
+ &I021_V2_6_148_ALT,
+ NULL
+};
+static const AsterixField I021_V2_6_148 = { FIXED, 2, 0, 0, &hf_021_V2_6_148, I021_V2_6_148_PARTS, { NULL } };
+static int hf_021_V2_6_150 = -1;
+static int hf_021_V2_6_150_IM = -1;
+static const value_string valstr_021_V2_6_150_IM[] = {
+ { 0, "Air Speed = IAS, LSB (Bit-1) = 2 -14 NM/s" },
+ { 1, "Air Speed = Mach, LSB (Bit-1) = 0.001" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_150_IM = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_150_IM, NULL };
+static int hf_021_V2_6_150_AS = -1;
+static const FieldPart I021_V2_6_150_AS = { 15, 1.0, FIELD_PART_HEX, &hf_021_V2_6_150_AS, NULL };
+static const FieldPart *I021_V2_6_150_PARTS[] = {
+ &I021_V2_6_150_IM,
+ &I021_V2_6_150_AS,
+ NULL
+};
+static const AsterixField I021_V2_6_150 = { FIXED, 2, 0, 0, &hf_021_V2_6_150, I021_V2_6_150_PARTS, { NULL } };
+static int hf_021_V2_6_151 = -1;
+static int hf_021_V2_6_151_RE = -1;
+static const value_string valstr_021_V2_6_151_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_151_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_151_RE, NULL };
+static int hf_021_V2_6_151_TAS = -1;
+static const FieldPart I021_V2_6_151_TAS = { 15, 1.0, FIELD_PART_UFLOAT, &hf_021_V2_6_151_TAS, NULL };
+static const FieldPart *I021_V2_6_151_PARTS[] = {
+ &I021_V2_6_151_RE,
+ &I021_V2_6_151_TAS,
+ NULL
+};
+static const AsterixField I021_V2_6_151 = { FIXED, 2, 0, 0, &hf_021_V2_6_151, I021_V2_6_151_PARTS, { NULL } };
+static int hf_021_V2_6_152 = -1;
+static int hf_021_V2_6_152_VALUE = -1;
+static const FieldPart I021_V2_6_152_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_021_V2_6_152_VALUE, NULL };
+static const FieldPart *I021_V2_6_152_PARTS[] = {
+ &I021_V2_6_152_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_152 = { FIXED, 2, 0, 0, &hf_021_V2_6_152, I021_V2_6_152_PARTS, { NULL } };
+static int hf_021_V2_6_155 = -1;
+static int hf_021_V2_6_155_RE = -1;
+static const value_string valstr_021_V2_6_155_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_155_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_155_RE, NULL };
+static int hf_021_V2_6_155_BVR = -1;
+static const FieldPart I021_V2_6_155_BVR = { 15, 6.25, FIELD_PART_FLOAT, &hf_021_V2_6_155_BVR, NULL };
+static const FieldPart *I021_V2_6_155_PARTS[] = {
+ &I021_V2_6_155_RE,
+ &I021_V2_6_155_BVR,
+ NULL
+};
+static const AsterixField I021_V2_6_155 = { FIXED, 2, 0, 0, &hf_021_V2_6_155, I021_V2_6_155_PARTS, { NULL } };
+static int hf_021_V2_6_157 = -1;
+static int hf_021_V2_6_157_RE = -1;
+static const value_string valstr_021_V2_6_157_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_157_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_157_RE, NULL };
+static int hf_021_V2_6_157_GVR = -1;
+static const FieldPart I021_V2_6_157_GVR = { 15, 6.25, FIELD_PART_FLOAT, &hf_021_V2_6_157_GVR, NULL };
+static const FieldPart *I021_V2_6_157_PARTS[] = {
+ &I021_V2_6_157_RE,
+ &I021_V2_6_157_GVR,
+ NULL
+};
+static const AsterixField I021_V2_6_157 = { FIXED, 2, 0, 0, &hf_021_V2_6_157, I021_V2_6_157_PARTS, { NULL } };
+static int hf_021_V2_6_160 = -1;
+static int hf_021_V2_6_160_RE = -1;
+static const value_string valstr_021_V2_6_160_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_160_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_160_RE, NULL };
+static int hf_021_V2_6_160_GS = -1;
+static const FieldPart I021_V2_6_160_GS = { 15, 0.00006103515625, FIELD_PART_UFLOAT, &hf_021_V2_6_160_GS, NULL };
+static int hf_021_V2_6_160_TA = -1;
+static const FieldPart I021_V2_6_160_TA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_021_V2_6_160_TA, NULL };
+static const FieldPart *I021_V2_6_160_PARTS[] = {
+ &I021_V2_6_160_RE,
+ &I021_V2_6_160_GS,
+ &I021_V2_6_160_TA,
+ NULL
+};
+static const AsterixField I021_V2_6_160 = { FIXED, 4, 0, 0, &hf_021_V2_6_160, I021_V2_6_160_PARTS, { NULL } };
+static int hf_021_V2_6_161 = -1;
+static int hf_021_V2_6_161_TRNUM = -1;
+static const FieldPart I021_V2_6_161_TRNUM = { 12, 1.0, FIELD_PART_HEX, &hf_021_V2_6_161_TRNUM, NULL };
+static const FieldPart *I021_V2_6_161_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I021_V2_6_161_TRNUM,
+ NULL
+};
+static const AsterixField I021_V2_6_161 = { FIXED, 2, 0, 0, &hf_021_V2_6_161, I021_V2_6_161_PARTS, { NULL } };
+static int hf_021_V2_6_165 = -1;
+static int hf_021_V2_6_165_TAR = -1;
+static const FieldPart I021_V2_6_165_TAR = { 10, 0.03125, FIELD_PART_FLOAT, &hf_021_V2_6_165_TAR, NULL };
+static const FieldPart *I021_V2_6_165_PARTS[] = {
+ &IXXX_6bit_spare,
+ &I021_V2_6_165_TAR,
+ NULL
+};
+static const AsterixField I021_V2_6_165 = { FIXED, 2, 0, 0, &hf_021_V2_6_165, I021_V2_6_165_PARTS, { NULL } };
+static int hf_021_V2_6_170 = -1;
+static int hf_021_V2_6_170_VALUE = -1;
+static const FieldPart I021_V2_6_170_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_021_V2_6_170_VALUE, NULL };
+static const FieldPart *I021_V2_6_170_PARTS[] = {
+ &I021_V2_6_170_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_170 = { FIXED, 6, 0, 0, &hf_021_V2_6_170, I021_V2_6_170_PARTS, { NULL } };
+static int hf_021_V2_6_200 = -1;
+static int hf_021_V2_6_200_ICF = -1;
+static const value_string valstr_021_V2_6_200_ICF[] = {
+ { 0, "No intent change active" },
+ { 1, "Intent change flag raised" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_200_ICF = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_200_ICF, NULL };
+static int hf_021_V2_6_200_LNAV = -1;
+static const value_string valstr_021_V2_6_200_LNAV[] = {
+ { 0, "LNAV Mode engaged" },
+ { 1, "LNAV Mode not engaged" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_200_LNAV = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_200_LNAV, NULL };
+static int hf_021_V2_6_200_ME = -1;
+static const value_string valstr_021_V2_6_200_ME[] = {
+ { 0, "No military emergency" },
+ { 1, "Military emergency" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_200_ME = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_200_ME, NULL };
+static int hf_021_V2_6_200_PS = -1;
+static const value_string valstr_021_V2_6_200_PS[] = {
+ { 0, "No emergency / not reported" },
+ { 1, "General emergency" },
+ { 2, "Lifeguard / medical emergency" },
+ { 3, "Minimum fuel" },
+ { 4, "No communications" },
+ { 5, "Unlawful interference" },
+ { 6, "DOWNED Aircraft" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_200_PS = { 3, 1.0, FIELD_PART_UINT, &hf_021_V2_6_200_PS, NULL };
+static int hf_021_V2_6_200_SS = -1;
+static const value_string valstr_021_V2_6_200_SS[] = {
+ { 0, "No condition reported" },
+ { 1, "Permanent Alert (Emergency condition)" },
+ { 2, "Temporary Alert (change in Mode 3/A Code other than emergency)" },
+ { 3, "SPI set" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_200_SS = { 2, 1.0, FIELD_PART_UINT, &hf_021_V2_6_200_SS, NULL };
+static const FieldPart *I021_V2_6_200_PARTS[] = {
+ &I021_V2_6_200_ICF,
+ &I021_V2_6_200_LNAV,
+ &I021_V2_6_200_ME,
+ &I021_V2_6_200_PS,
+ &I021_V2_6_200_SS,
+ NULL
+};
+static const AsterixField I021_V2_6_200 = { FIXED, 1, 0, 0, &hf_021_V2_6_200, I021_V2_6_200_PARTS, { NULL } };
+static int hf_021_V2_6_210 = -1;
+static int hf_021_V2_6_210_VNS = -1;
+static const value_string valstr_021_V2_6_210_VNS[] = {
+ { 0, "The MOPS Version is supported by the GS" },
+ { 1, "The MOPS Version is not supported by the GS" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_210_VNS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_210_VNS, NULL };
+static int hf_021_V2_6_210_VN = -1;
+static const value_string valstr_021_V2_6_210_VN[] = {
+ { 0, "ED102/DO-260 [Ref. 7]" },
+ { 1, "DO-260A [Ref. 8]" },
+ { 2, "ED102A/DO-260B [Ref. 10]" },
+ { 3, "ED-102B/DO-260C [Ref. 11]" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_210_VN = { 3, 1.0, FIELD_PART_UINT, &hf_021_V2_6_210_VN, NULL };
+static int hf_021_V2_6_210_LTT = -1;
+static const value_string valstr_021_V2_6_210_LTT[] = {
+ { 0, "Other" },
+ { 1, "UAT" },
+ { 2, "1090 ES" },
+ { 3, "VDL 4" },
+ { 4, "Not assigned" },
+ { 5, "Not assigned" },
+ { 6, "Not assigned" },
+ { 7, "Not assigned" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_210_LTT = { 3, 1.0, FIELD_PART_UINT, &hf_021_V2_6_210_LTT, NULL };
+static const FieldPart *I021_V2_6_210_PARTS[] = {
+ &IXXX_1bit_spare,
+ &I021_V2_6_210_VNS,
+ &I021_V2_6_210_VN,
+ &I021_V2_6_210_LTT,
+ NULL
+};
+static const AsterixField I021_V2_6_210 = { FIXED, 1, 0, 0, &hf_021_V2_6_210, I021_V2_6_210_PARTS, { NULL } };
+static int hf_021_V2_6_220 = -1;
+static int hf_021_V2_6_220_WS = -1;
+static int hf_021_V2_6_220_WS_VALUE = -1;
+static const FieldPart I021_V2_6_220_WS_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_V2_6_220_WS_VALUE, NULL };
+static const FieldPart *I021_V2_6_220_WS_PARTS[] = {
+ &I021_V2_6_220_WS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_220_WS = { FIXED, 2, 0, 0, &hf_021_V2_6_220_WS, I021_V2_6_220_WS_PARTS, { NULL } };
+static int hf_021_V2_6_220_WD = -1;
+static int hf_021_V2_6_220_WD_VALUE = -1;
+static const FieldPart I021_V2_6_220_WD_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_V2_6_220_WD_VALUE, NULL };
+static const FieldPart *I021_V2_6_220_WD_PARTS[] = {
+ &I021_V2_6_220_WD_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_220_WD = { FIXED, 2, 0, 0, &hf_021_V2_6_220_WD, I021_V2_6_220_WD_PARTS, { NULL } };
+static int hf_021_V2_6_220_TMP = -1;
+static int hf_021_V2_6_220_TMP_VALUE = -1;
+static const FieldPart I021_V2_6_220_TMP_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_021_V2_6_220_TMP_VALUE, NULL };
+static const FieldPart *I021_V2_6_220_TMP_PARTS[] = {
+ &I021_V2_6_220_TMP_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_220_TMP = { FIXED, 2, 0, 0, &hf_021_V2_6_220_TMP, I021_V2_6_220_TMP_PARTS, { NULL } };
+static int hf_021_V2_6_220_TRB = -1;
+static int hf_021_V2_6_220_TRB_VALUE = -1;
+static const FieldPart I021_V2_6_220_TRB_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_V2_6_220_TRB_VALUE, NULL };
+static const FieldPart *I021_V2_6_220_TRB_PARTS[] = {
+ &I021_V2_6_220_TRB_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_220_TRB = { FIXED, 1, 0, 0, &hf_021_V2_6_220_TRB, I021_V2_6_220_TRB_PARTS, { NULL } };
+static const AsterixField I021_V2_6_220 = { COMPOUND, 0, 0, 0, &hf_021_V2_6_220, NULL, { &I021_V2_6_220_WS, &I021_V2_6_220_WD, &I021_V2_6_220_TMP, &I021_V2_6_220_TRB, NULL } };
+static int hf_021_V2_6_230 = -1;
+static int hf_021_V2_6_230_VALUE = -1;
+static const FieldPart I021_V2_6_230_VALUE = { 16, 0.01, FIELD_PART_FLOAT, &hf_021_V2_6_230_VALUE, NULL };
+static const FieldPart *I021_V2_6_230_PARTS[] = {
+ &I021_V2_6_230_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_230 = { FIXED, 2, 0, 0, &hf_021_V2_6_230, I021_V2_6_230_PARTS, { NULL } };
+static int hf_021_V2_6_250 = -1;
+static int hf_021_V2_6_250_VALUE = -1;
+static const FieldPart I021_V2_6_250_VALUE = { 64, 1.0, FIELD_PART_HEX, &hf_021_V2_6_250_VALUE, NULL };
+static const FieldPart *I021_V2_6_250_PARTS[] = {
+ &I021_V2_6_250_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_250 = { REPETITIVE, 8, 1, 0, &hf_021_V2_6_250, I021_V2_6_250_PARTS, { NULL } };
+static int hf_021_V2_6_260 = -1;
+static int hf_021_V2_6_260_TYP = -1;
+static const FieldPart I021_V2_6_260_TYP = { 5, 1.0, FIELD_PART_HEX, &hf_021_V2_6_260_TYP, NULL };
+static int hf_021_V2_6_260_STYP = -1;
+static const FieldPart I021_V2_6_260_STYP = { 3, 1.0, FIELD_PART_HEX, &hf_021_V2_6_260_STYP, NULL };
+static int hf_021_V2_6_260_ARA = -1;
+static const FieldPart I021_V2_6_260_ARA = { 14, 1.0, FIELD_PART_HEX, &hf_021_V2_6_260_ARA, NULL };
+static int hf_021_V2_6_260_RAC = -1;
+static const FieldPart I021_V2_6_260_RAC = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_6_260_RAC, NULL };
+static int hf_021_V2_6_260_RAT = -1;
+static const FieldPart I021_V2_6_260_RAT = { 1, 1.0, FIELD_PART_HEX, &hf_021_V2_6_260_RAT, NULL };
+static int hf_021_V2_6_260_MTE = -1;
+static const FieldPart I021_V2_6_260_MTE = { 1, 1.0, FIELD_PART_HEX, &hf_021_V2_6_260_MTE, NULL };
+static int hf_021_V2_6_260_TTI = -1;
+static const FieldPart I021_V2_6_260_TTI = { 2, 1.0, FIELD_PART_HEX, &hf_021_V2_6_260_TTI, NULL };
+static int hf_021_V2_6_260_TID = -1;
+static const FieldPart I021_V2_6_260_TID = { 26, 1.0, FIELD_PART_HEX, &hf_021_V2_6_260_TID, NULL };
+static const FieldPart *I021_V2_6_260_PARTS[] = {
+ &I021_V2_6_260_TYP,
+ &I021_V2_6_260_STYP,
+ &I021_V2_6_260_ARA,
+ &I021_V2_6_260_RAC,
+ &I021_V2_6_260_RAT,
+ &I021_V2_6_260_MTE,
+ &I021_V2_6_260_TTI,
+ &I021_V2_6_260_TID,
+ NULL
+};
+static const AsterixField I021_V2_6_260 = { FIXED, 7, 0, 0, &hf_021_V2_6_260, I021_V2_6_260_PARTS, { NULL } };
+static int hf_021_V2_6_271 = -1;
+static int hf_021_V2_6_271_POA = -1;
+static const value_string valstr_021_V2_6_271_POA[] = {
+ { 0, "Position transmitted is not ADS-B position reference point" },
+ { 1, "Position transmitted is the ADS-B position reference point" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_271_POA = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_271_POA, NULL };
+static int hf_021_V2_6_271_CDTIS = -1;
+static const value_string valstr_021_V2_6_271_CDTIS[] = {
+ { 0, "CDTI not operational" },
+ { 1, "CDTI operational" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_271_CDTIS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_271_CDTIS, NULL };
+static int hf_021_V2_6_271_B2LOW = -1;
+static const value_string valstr_021_V2_6_271_B2LOW[] = {
+ { 0, ">= 70 Watts" },
+ { 1, "< 70 Watts" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_271_B2LOW = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_271_B2LOW, NULL };
+static int hf_021_V2_6_271_RAS = -1;
+static const value_string valstr_021_V2_6_271_RAS[] = {
+ { 0, "Aircraft not receiving ATC-services" },
+ { 1, "Aircraft receiving ATC services" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_271_RAS = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_271_RAS, NULL };
+static int hf_021_V2_6_271_IDENT = -1;
+static const value_string valstr_021_V2_6_271_IDENT[] = {
+ { 0, "IDENT switch not active" },
+ { 1, "IDENT switch active" },
+ { 0, NULL }
+};
+static const FieldPart I021_V2_6_271_IDENT = { 1, 1.0, FIELD_PART_UINT, &hf_021_V2_6_271_IDENT, NULL };
+static int hf_021_V2_6_271_LW = -1;
+static const FieldPart I021_V2_6_271_LW = { 4, 1.0, FIELD_PART_HEX, &hf_021_V2_6_271_LW, NULL };
+static const FieldPart *I021_V2_6_271_PARTS[] = {
+ &IXXX_2bit_spare,
+ &I021_V2_6_271_POA,
+ &I021_V2_6_271_CDTIS,
+ &I021_V2_6_271_B2LOW,
+ &I021_V2_6_271_RAS,
+ &I021_V2_6_271_IDENT,
+ &IXXX_FX,
+ &I021_V2_6_271_LW,
+ &IXXX_3bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_V2_6_271 = { FX, 1, 0, 0, &hf_021_V2_6_271, I021_V2_6_271_PARTS, { NULL } };
+static int hf_021_V2_6_295 = -1;
+static int hf_021_V2_6_295_AOS = -1;
+static int hf_021_V2_6_295_AOS_VALUE = -1;
+static const FieldPart I021_V2_6_295_AOS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_6_295_AOS_VALUE, NULL };
+static const FieldPart *I021_V2_6_295_AOS_PARTS[] = {
+ &I021_V2_6_295_AOS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_295_AOS = { FIXED, 1, 0, 0, &hf_021_V2_6_295_AOS, I021_V2_6_295_AOS_PARTS, { NULL } };
+static int hf_021_V2_6_295_TRD = -1;
+static int hf_021_V2_6_295_TRD_VALUE = -1;
+static const FieldPart I021_V2_6_295_TRD_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_6_295_TRD_VALUE, NULL };
+static const FieldPart *I021_V2_6_295_TRD_PARTS[] = {
+ &I021_V2_6_295_TRD_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_295_TRD = { FIXED, 1, 0, 0, &hf_021_V2_6_295_TRD, I021_V2_6_295_TRD_PARTS, { NULL } };
+static int hf_021_V2_6_295_M3A = -1;
+static int hf_021_V2_6_295_M3A_VALUE = -1;
+static const FieldPart I021_V2_6_295_M3A_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_6_295_M3A_VALUE, NULL };
+static const FieldPart *I021_V2_6_295_M3A_PARTS[] = {
+ &I021_V2_6_295_M3A_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_295_M3A = { FIXED, 1, 0, 0, &hf_021_V2_6_295_M3A, I021_V2_6_295_M3A_PARTS, { NULL } };
+static int hf_021_V2_6_295_QI = -1;
+static int hf_021_V2_6_295_QI_VALUE = -1;
+static const FieldPart I021_V2_6_295_QI_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_6_295_QI_VALUE, NULL };
+static const FieldPart *I021_V2_6_295_QI_PARTS[] = {
+ &I021_V2_6_295_QI_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_295_QI = { FIXED, 1, 0, 0, &hf_021_V2_6_295_QI, I021_V2_6_295_QI_PARTS, { NULL } };
+static int hf_021_V2_6_295_TI1 = -1;
+static int hf_021_V2_6_295_TI1_VALUE = -1;
+static const FieldPart I021_V2_6_295_TI1_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_6_295_TI1_VALUE, NULL };
+static const FieldPart *I021_V2_6_295_TI1_PARTS[] = {
+ &I021_V2_6_295_TI1_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_295_TI1 = { FIXED, 1, 0, 0, &hf_021_V2_6_295_TI1, I021_V2_6_295_TI1_PARTS, { NULL } };
+static int hf_021_V2_6_295_MAM = -1;
+static int hf_021_V2_6_295_MAM_VALUE = -1;
+static const FieldPart I021_V2_6_295_MAM_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_6_295_MAM_VALUE, NULL };
+static const FieldPart *I021_V2_6_295_MAM_PARTS[] = {
+ &I021_V2_6_295_MAM_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_295_MAM = { FIXED, 1, 0, 0, &hf_021_V2_6_295_MAM, I021_V2_6_295_MAM_PARTS, { NULL } };
+static int hf_021_V2_6_295_GH = -1;
+static int hf_021_V2_6_295_GH_VALUE = -1;
+static const FieldPart I021_V2_6_295_GH_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_6_295_GH_VALUE, NULL };
+static const FieldPart *I021_V2_6_295_GH_PARTS[] = {
+ &I021_V2_6_295_GH_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_295_GH = { FIXED, 1, 0, 0, &hf_021_V2_6_295_GH, I021_V2_6_295_GH_PARTS, { NULL } };
+static int hf_021_V2_6_295_FL = -1;
+static int hf_021_V2_6_295_FL_VALUE = -1;
+static const FieldPart I021_V2_6_295_FL_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_6_295_FL_VALUE, NULL };
+static const FieldPart *I021_V2_6_295_FL_PARTS[] = {
+ &I021_V2_6_295_FL_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_295_FL = { FIXED, 1, 0, 0, &hf_021_V2_6_295_FL, I021_V2_6_295_FL_PARTS, { NULL } };
+static int hf_021_V2_6_295_SAL = -1;
+static int hf_021_V2_6_295_SAL_VALUE = -1;
+static const FieldPart I021_V2_6_295_SAL_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_6_295_SAL_VALUE, NULL };
+static const FieldPart *I021_V2_6_295_SAL_PARTS[] = {
+ &I021_V2_6_295_SAL_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_295_SAL = { FIXED, 1, 0, 0, &hf_021_V2_6_295_SAL, I021_V2_6_295_SAL_PARTS, { NULL } };
+static int hf_021_V2_6_295_FSA = -1;
+static int hf_021_V2_6_295_FSA_VALUE = -1;
+static const FieldPart I021_V2_6_295_FSA_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_6_295_FSA_VALUE, NULL };
+static const FieldPart *I021_V2_6_295_FSA_PARTS[] = {
+ &I021_V2_6_295_FSA_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_295_FSA = { FIXED, 1, 0, 0, &hf_021_V2_6_295_FSA, I021_V2_6_295_FSA_PARTS, { NULL } };
+static int hf_021_V2_6_295_AS = -1;
+static int hf_021_V2_6_295_AS_VALUE = -1;
+static const FieldPart I021_V2_6_295_AS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_6_295_AS_VALUE, NULL };
+static const FieldPart *I021_V2_6_295_AS_PARTS[] = {
+ &I021_V2_6_295_AS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_295_AS = { FIXED, 1, 0, 0, &hf_021_V2_6_295_AS, I021_V2_6_295_AS_PARTS, { NULL } };
+static int hf_021_V2_6_295_TAS = -1;
+static int hf_021_V2_6_295_TAS_VALUE = -1;
+static const FieldPart I021_V2_6_295_TAS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_6_295_TAS_VALUE, NULL };
+static const FieldPart *I021_V2_6_295_TAS_PARTS[] = {
+ &I021_V2_6_295_TAS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_295_TAS = { FIXED, 1, 0, 0, &hf_021_V2_6_295_TAS, I021_V2_6_295_TAS_PARTS, { NULL } };
+static int hf_021_V2_6_295_MH = -1;
+static int hf_021_V2_6_295_MH_VALUE = -1;
+static const FieldPart I021_V2_6_295_MH_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_6_295_MH_VALUE, NULL };
+static const FieldPart *I021_V2_6_295_MH_PARTS[] = {
+ &I021_V2_6_295_MH_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_295_MH = { FIXED, 1, 0, 0, &hf_021_V2_6_295_MH, I021_V2_6_295_MH_PARTS, { NULL } };
+static int hf_021_V2_6_295_BVR = -1;
+static int hf_021_V2_6_295_BVR_VALUE = -1;
+static const FieldPart I021_V2_6_295_BVR_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_6_295_BVR_VALUE, NULL };
+static const FieldPart *I021_V2_6_295_BVR_PARTS[] = {
+ &I021_V2_6_295_BVR_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_295_BVR = { FIXED, 1, 0, 0, &hf_021_V2_6_295_BVR, I021_V2_6_295_BVR_PARTS, { NULL } };
+static int hf_021_V2_6_295_GVR = -1;
+static int hf_021_V2_6_295_GVR_VALUE = -1;
+static const FieldPart I021_V2_6_295_GVR_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_6_295_GVR_VALUE, NULL };
+static const FieldPart *I021_V2_6_295_GVR_PARTS[] = {
+ &I021_V2_6_295_GVR_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_295_GVR = { FIXED, 1, 0, 0, &hf_021_V2_6_295_GVR, I021_V2_6_295_GVR_PARTS, { NULL } };
+static int hf_021_V2_6_295_GV = -1;
+static int hf_021_V2_6_295_GV_VALUE = -1;
+static const FieldPart I021_V2_6_295_GV_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_6_295_GV_VALUE, NULL };
+static const FieldPart *I021_V2_6_295_GV_PARTS[] = {
+ &I021_V2_6_295_GV_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_295_GV = { FIXED, 1, 0, 0, &hf_021_V2_6_295_GV, I021_V2_6_295_GV_PARTS, { NULL } };
+static int hf_021_V2_6_295_TAR = -1;
+static int hf_021_V2_6_295_TAR_VALUE = -1;
+static const FieldPart I021_V2_6_295_TAR_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_6_295_TAR_VALUE, NULL };
+static const FieldPart *I021_V2_6_295_TAR_PARTS[] = {
+ &I021_V2_6_295_TAR_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_295_TAR = { FIXED, 1, 0, 0, &hf_021_V2_6_295_TAR, I021_V2_6_295_TAR_PARTS, { NULL } };
+static int hf_021_V2_6_295_TI2 = -1;
+static int hf_021_V2_6_295_TI2_VALUE = -1;
+static const FieldPart I021_V2_6_295_TI2_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_6_295_TI2_VALUE, NULL };
+static const FieldPart *I021_V2_6_295_TI2_PARTS[] = {
+ &I021_V2_6_295_TI2_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_295_TI2 = { FIXED, 1, 0, 0, &hf_021_V2_6_295_TI2, I021_V2_6_295_TI2_PARTS, { NULL } };
+static int hf_021_V2_6_295_TS = -1;
+static int hf_021_V2_6_295_TS_VALUE = -1;
+static const FieldPart I021_V2_6_295_TS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_6_295_TS_VALUE, NULL };
+static const FieldPart *I021_V2_6_295_TS_PARTS[] = {
+ &I021_V2_6_295_TS_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_295_TS = { FIXED, 1, 0, 0, &hf_021_V2_6_295_TS, I021_V2_6_295_TS_PARTS, { NULL } };
+static int hf_021_V2_6_295_MET = -1;
+static int hf_021_V2_6_295_MET_VALUE = -1;
+static const FieldPart I021_V2_6_295_MET_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_6_295_MET_VALUE, NULL };
+static const FieldPart *I021_V2_6_295_MET_PARTS[] = {
+ &I021_V2_6_295_MET_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_295_MET = { FIXED, 1, 0, 0, &hf_021_V2_6_295_MET, I021_V2_6_295_MET_PARTS, { NULL } };
+static int hf_021_V2_6_295_ROA = -1;
+static int hf_021_V2_6_295_ROA_VALUE = -1;
+static const FieldPart I021_V2_6_295_ROA_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_6_295_ROA_VALUE, NULL };
+static const FieldPart *I021_V2_6_295_ROA_PARTS[] = {
+ &I021_V2_6_295_ROA_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_295_ROA = { FIXED, 1, 0, 0, &hf_021_V2_6_295_ROA, I021_V2_6_295_ROA_PARTS, { NULL } };
+static int hf_021_V2_6_295_ARA = -1;
+static int hf_021_V2_6_295_ARA_VALUE = -1;
+static const FieldPart I021_V2_6_295_ARA_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_6_295_ARA_VALUE, NULL };
+static const FieldPart *I021_V2_6_295_ARA_PARTS[] = {
+ &I021_V2_6_295_ARA_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_295_ARA = { FIXED, 1, 0, 0, &hf_021_V2_6_295_ARA, I021_V2_6_295_ARA_PARTS, { NULL } };
+static int hf_021_V2_6_295_SCC = -1;
+static int hf_021_V2_6_295_SCC_VALUE = -1;
+static const FieldPart I021_V2_6_295_SCC_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_V2_6_295_SCC_VALUE, NULL };
+static const FieldPart *I021_V2_6_295_SCC_PARTS[] = {
+ &I021_V2_6_295_SCC_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_295_SCC = { FIXED, 1, 0, 0, &hf_021_V2_6_295_SCC, I021_V2_6_295_SCC_PARTS, { NULL } };
+static const AsterixField I021_V2_6_295 = { COMPOUND, 0, 0, 0, &hf_021_V2_6_295, NULL, { &I021_V2_6_295_AOS, &I021_V2_6_295_TRD, &I021_V2_6_295_M3A, &I021_V2_6_295_QI, &I021_V2_6_295_TI1, &I021_V2_6_295_MAM, &I021_V2_6_295_GH, &I021_V2_6_295_FL, &I021_V2_6_295_SAL, &I021_V2_6_295_FSA, &I021_V2_6_295_AS, &I021_V2_6_295_TAS, &I021_V2_6_295_MH, &I021_V2_6_295_BVR, &I021_V2_6_295_GVR, &I021_V2_6_295_GV, &I021_V2_6_295_TAR, &I021_V2_6_295_TI2, &I021_V2_6_295_TS, &I021_V2_6_295_MET, &I021_V2_6_295_ROA, &I021_V2_6_295_ARA, &I021_V2_6_295_SCC, NULL } };
+static int hf_021_V2_6_400 = -1;
+static int hf_021_V2_6_400_VALUE = -1;
+static const FieldPart I021_V2_6_400_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_021_V2_6_400_VALUE, NULL };
+static const FieldPart *I021_V2_6_400_PARTS[] = {
+ &I021_V2_6_400_VALUE,
+ NULL
+};
+static const AsterixField I021_V2_6_400 = { FIXED, 1, 0, 0, &hf_021_V2_6_400, I021_V2_6_400_PARTS, { NULL } };
+static int hf_021_V2_6_RE = -1;
+static const AsterixField I021_V2_6_RE = { EXP, 0, 0, 1, &hf_021_V2_6_RE, NULL, { NULL } };
+static int hf_021_V2_6_SP = -1;
+static const AsterixField I021_V2_6_SP = { EXP, 0, 0, 1, &hf_021_V2_6_SP, NULL, { NULL } };
+
+/* Category 021, edition 2.6 (latest) */
+static int hf_021_008 = -1;
+static int hf_021_008_RA = -1;
+static const value_string valstr_021_008_RA[] = {
+ { 0, "TCAS II or ACAS RA not active" },
+ { 1, "TCAS RA active" },
+ { 0, NULL }
+};
+static const FieldPart I021_008_RA = { 1, 1.0, FIELD_PART_UINT, &hf_021_008_RA, NULL };
+static int hf_021_008_TC = -1;
+static const value_string valstr_021_008_TC[] = {
+ { 0, "No capability for Trajectory Change Reports" },
+ { 1, "Support for TC+0 reports only" },
+ { 2, "Support for multiple TC reports" },
+ { 3, "Reserved" },
+ { 0, NULL }
+};
+static const FieldPart I021_008_TC = { 2, 1.0, FIELD_PART_UINT, &hf_021_008_TC, NULL };
+static int hf_021_008_TS = -1;
+static const value_string valstr_021_008_TS[] = {
+ { 0, "No capability to support Target State Reports" },
+ { 1, "Capable of supporting target State Reports" },
+ { 0, NULL }
+};
+static const FieldPart I021_008_TS = { 1, 1.0, FIELD_PART_UINT, &hf_021_008_TS, NULL };
+static int hf_021_008_ARV = -1;
+static const value_string valstr_021_008_ARV[] = {
+ { 0, "No capability to generate ARV-reports" },
+ { 1, "Capable of generate ARV-reports" },
+ { 0, NULL }
+};
+static const FieldPart I021_008_ARV = { 1, 1.0, FIELD_PART_UINT, &hf_021_008_ARV, NULL };
+static int hf_021_008_CDTIA = -1;
+static const value_string valstr_021_008_CDTIA[] = {
+ { 0, "CDTI not operational" },
+ { 1, "CDTI operational" },
+ { 0, NULL }
+};
+static const FieldPart I021_008_CDTIA = { 1, 1.0, FIELD_PART_UINT, &hf_021_008_CDTIA, NULL };
+static int hf_021_008_NOTTCAS = -1;
+static const value_string valstr_021_008_NOTTCAS[] = {
+ { 0, "TCAS operational" },
+ { 1, "TCAS not operational" },
+ { 0, NULL }
+};
+static const FieldPart I021_008_NOTTCAS = { 1, 1.0, FIELD_PART_UINT, &hf_021_008_NOTTCAS, NULL };
+static int hf_021_008_SA = -1;
+static const value_string valstr_021_008_SA[] = {
+ { 0, "Antenna Diversity" },
+ { 1, "Single Antenna only" },
+ { 0, NULL }
+};
+static const FieldPart I021_008_SA = { 1, 1.0, FIELD_PART_UINT, &hf_021_008_SA, NULL };
+static const FieldPart *I021_008_PARTS[] = {
+ &I021_008_RA,
+ &I021_008_TC,
+ &I021_008_TS,
+ &I021_008_ARV,
+ &I021_008_CDTIA,
+ &I021_008_NOTTCAS,
+ &I021_008_SA,
+ NULL
+};
+static const AsterixField I021_008 = { FIXED, 1, 0, 0, &hf_021_008, I021_008_PARTS, { NULL } };
+static int hf_021_010 = -1;
+static int hf_021_010_SAC = -1;
+static const FieldPart I021_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_021_010_SAC, NULL };
+static int hf_021_010_SIC = -1;
+static const FieldPart I021_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_021_010_SIC, NULL };
+static const FieldPart *I021_010_PARTS[] = {
+ &I021_010_SAC,
+ &I021_010_SIC,
+ NULL
+};
+static const AsterixField I021_010 = { FIXED, 2, 0, 0, &hf_021_010, I021_010_PARTS, { NULL } };
+static int hf_021_015 = -1;
+static int hf_021_015_VALUE = -1;
+static const FieldPart I021_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_021_015_VALUE, NULL };
+static const FieldPart *I021_015_PARTS[] = {
+ &I021_015_VALUE,
+ NULL
+};
+static const AsterixField I021_015 = { FIXED, 1, 0, 0, &hf_021_015, I021_015_PARTS, { NULL } };
+static int hf_021_016 = -1;
+static int hf_021_016_VALUE = -1;
+static const FieldPart I021_016_VALUE = { 8, 0.5, FIELD_PART_UFLOAT, &hf_021_016_VALUE, NULL };
+static const FieldPart *I021_016_PARTS[] = {
+ &I021_016_VALUE,
+ NULL
+};
+static const AsterixField I021_016 = { FIXED, 1, 0, 0, &hf_021_016, I021_016_PARTS, { NULL } };
+static int hf_021_020 = -1;
+static int hf_021_020_VALUE = -1;
+static const value_string valstr_021_020_VALUE[] = {
+ { 0, "No ADS-B Emitter Category Information" },
+ { 1, "Light aircraft <= 15500 lbs" },
+ { 2, "15500 lbs < small aircraft <75000 lbs" },
+ { 3, "75000 lbs < medium a/c < 300000 lbs" },
+ { 4, "High Vortex Large" },
+ { 5, "300000 lbs <= heavy aircraft" },
+ { 6, "Highly manoeuvrable (5g acceleration capability) and high speed (>400 knots cruise)" },
+ { 7, "Reserved" },
+ { 8, "Reserved" },
+ { 9, "Reserved" },
+ { 10, "Rotocraft" },
+ { 11, "Glider / sailplane" },
+ { 12, "Lighter-than-air" },
+ { 13, "Unmanned aerial vehicle" },
+ { 14, "Space / transatmospheric vehicle" },
+ { 15, "Ultralight / handglider / paraglider" },
+ { 16, "Parachutist / skydiver" },
+ { 17, "Reserved" },
+ { 18, "Reserved" },
+ { 19, "Reserved" },
+ { 20, "Surface emergency vehicle" },
+ { 21, "Surface service vehicle" },
+ { 22, "Fixed ground or tethered obstruction" },
+ { 23, "Cluster obstacle" },
+ { 24, "Line obstacle" },
+ { 0, NULL }
+};
+static const FieldPart I021_020_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_020_VALUE, NULL };
+static const FieldPart *I021_020_PARTS[] = {
+ &I021_020_VALUE,
+ NULL
+};
+static const AsterixField I021_020 = { FIXED, 1, 0, 0, &hf_021_020, I021_020_PARTS, { NULL } };
+static int hf_021_040 = -1;
+static int hf_021_040_ATP = -1;
+static const value_string valstr_021_040_ATP[] = {
+ { 0, "24-Bit ICAO address" },
+ { 1, "Duplicate address" },
+ { 2, "Surface vehicle address" },
+ { 3, "Anonymous address" },
+ { 4, "Reserved for future use" },
+ { 5, "Reserved for future use" },
+ { 6, "Reserved for future use" },
+ { 7, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I021_040_ATP = { 3, 1.0, FIELD_PART_UINT, &hf_021_040_ATP, NULL };
+static int hf_021_040_ARC = -1;
+static const value_string valstr_021_040_ARC[] = {
+ { 0, "25 ft" },
+ { 1, "100 ft" },
+ { 2, "Unknown" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I021_040_ARC = { 2, 1.0, FIELD_PART_UINT, &hf_021_040_ARC, NULL };
+static int hf_021_040_RC = -1;
+static const value_string valstr_021_040_RC[] = {
+ { 0, "Default" },
+ { 1, "Range Check passed, CPR Validation pending" },
+ { 0, NULL }
+};
+static const FieldPart I021_040_RC = { 1, 1.0, FIELD_PART_UINT, &hf_021_040_RC, NULL };
+static int hf_021_040_RAB = -1;
+static const value_string valstr_021_040_RAB[] = {
+ { 0, "Report from target transponder" },
+ { 1, "Report from field monitor (fixed transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I021_040_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_021_040_RAB, NULL };
+static int hf_021_040_DCR = -1;
+static const value_string valstr_021_040_DCR[] = {
+ { 0, "No differential correction (ADS-B)" },
+ { 1, "Differential correction (ADS-B)" },
+ { 0, NULL }
+};
+static const FieldPart I021_040_DCR = { 1, 1.0, FIELD_PART_UINT, &hf_021_040_DCR, NULL };
+static int hf_021_040_GBS = -1;
+static const value_string valstr_021_040_GBS[] = {
+ { 0, "Ground Bit not set" },
+ { 1, "Ground Bit set" },
+ { 0, NULL }
+};
+static const FieldPart I021_040_GBS = { 1, 1.0, FIELD_PART_UINT, &hf_021_040_GBS, NULL };
+static int hf_021_040_SIM = -1;
+static const value_string valstr_021_040_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I021_040_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_021_040_SIM, NULL };
+static int hf_021_040_TST = -1;
+static const value_string valstr_021_040_TST[] = {
+ { 0, "Default" },
+ { 1, "Test Target" },
+ { 0, NULL }
+};
+static const FieldPart I021_040_TST = { 1, 1.0, FIELD_PART_UINT, &hf_021_040_TST, NULL };
+static int hf_021_040_SAA = -1;
+static const value_string valstr_021_040_SAA[] = {
+ { 0, "Equipment capable to provide Selected Altitude" },
+ { 1, "Equipment not capable to provide Selected Altitude" },
+ { 0, NULL }
+};
+static const FieldPart I021_040_SAA = { 1, 1.0, FIELD_PART_UINT, &hf_021_040_SAA, NULL };
+static int hf_021_040_CL = -1;
+static const value_string valstr_021_040_CL[] = {
+ { 0, "Report valid" },
+ { 1, "Report suspect" },
+ { 2, "No information" },
+ { 3, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I021_040_CL = { 2, 1.0, FIELD_PART_UINT, &hf_021_040_CL, NULL };
+static int hf_021_040_LLC = -1;
+static const value_string valstr_021_040_LLC[] = {
+ { 0, "Default" },
+ { 1, "List Lookup failed (see note)" },
+ { 0, NULL }
+};
+static const FieldPart I021_040_LLC = { 1, 1.0, FIELD_PART_UINT, &hf_021_040_LLC, NULL };
+static int hf_021_040_IPC = -1;
+static const value_string valstr_021_040_IPC[] = {
+ { 0, "Default (see note)" },
+ { 1, "Independent Position Check failed" },
+ { 0, NULL }
+};
+static const FieldPart I021_040_IPC = { 1, 1.0, FIELD_PART_UINT, &hf_021_040_IPC, NULL };
+static int hf_021_040_NOGO = -1;
+static const value_string valstr_021_040_NOGO[] = {
+ { 0, "NOGO-bit not set" },
+ { 1, "NOGO-bit set" },
+ { 0, NULL }
+};
+static const FieldPart I021_040_NOGO = { 1, 1.0, FIELD_PART_UINT, &hf_021_040_NOGO, NULL };
+static int hf_021_040_CPR = -1;
+static const value_string valstr_021_040_CPR[] = {
+ { 0, "CPR Validation correct" },
+ { 1, "CPR Validation failed" },
+ { 0, NULL }
+};
+static const FieldPart I021_040_CPR = { 1, 1.0, FIELD_PART_UINT, &hf_021_040_CPR, NULL };
+static int hf_021_040_LDPJ = -1;
+static const value_string valstr_021_040_LDPJ[] = {
+ { 0, "LDPJ not detected" },
+ { 1, "LDPJ detected" },
+ { 0, NULL }
+};
+static const FieldPart I021_040_LDPJ = { 1, 1.0, FIELD_PART_UINT, &hf_021_040_LDPJ, NULL };
+static int hf_021_040_RCF = -1;
+static const value_string valstr_021_040_RCF[] = {
+ { 0, "Default" },
+ { 1, "Range Check failed" },
+ { 0, NULL }
+};
+static const FieldPart I021_040_RCF = { 1, 1.0, FIELD_PART_UINT, &hf_021_040_RCF, NULL };
+static int hf_021_040_TBC = -1;
+static const FieldPart I021_040_TBC = { 7, 1.0, FIELD_PART_HEX, &hf_021_040_TBC, NULL };
+static int hf_021_040_MBC = -1;
+static const FieldPart I021_040_MBC = { 7, 1.0, FIELD_PART_HEX, &hf_021_040_MBC, NULL };
+static const FieldPart *I021_040_PARTS[] = {
+ &I021_040_ATP,
+ &I021_040_ARC,
+ &I021_040_RC,
+ &I021_040_RAB,
+ &IXXX_FX,
+ &I021_040_DCR,
+ &I021_040_GBS,
+ &I021_040_SIM,
+ &I021_040_TST,
+ &I021_040_SAA,
+ &I021_040_CL,
+ &IXXX_FX,
+ &IXXX_1bit_spare,
+ &I021_040_LLC,
+ &I021_040_IPC,
+ &I021_040_NOGO,
+ &I021_040_CPR,
+ &I021_040_LDPJ,
+ &I021_040_RCF,
+ &IXXX_FX,
+ &I021_040_TBC,
+ &IXXX_FX,
+ &I021_040_MBC,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_040 = { FX, 1, 0, 0, &hf_021_040, I021_040_PARTS, { NULL } };
+static int hf_021_070 = -1;
+static int hf_021_070_MODE3A = -1;
+static const FieldPart I021_070_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_021_070_MODE3A, NULL };
+static const FieldPart *I021_070_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I021_070_MODE3A,
+ NULL
+};
+static const AsterixField I021_070 = { FIXED, 2, 0, 0, &hf_021_070, I021_070_PARTS, { NULL } };
+static int hf_021_071 = -1;
+static int hf_021_071_VALUE = -1;
+static const FieldPart I021_071_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_071_VALUE, NULL };
+static const FieldPart *I021_071_PARTS[] = {
+ &I021_071_VALUE,
+ NULL
+};
+static const AsterixField I021_071 = { FIXED, 3, 0, 0, &hf_021_071, I021_071_PARTS, { NULL } };
+static int hf_021_072 = -1;
+static int hf_021_072_VALUE = -1;
+static const FieldPart I021_072_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_072_VALUE, NULL };
+static const FieldPart *I021_072_PARTS[] = {
+ &I021_072_VALUE,
+ NULL
+};
+static const AsterixField I021_072 = { FIXED, 3, 0, 0, &hf_021_072, I021_072_PARTS, { NULL } };
+static int hf_021_073 = -1;
+static int hf_021_073_VALUE = -1;
+static const FieldPart I021_073_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_073_VALUE, NULL };
+static const FieldPart *I021_073_PARTS[] = {
+ &I021_073_VALUE,
+ NULL
+};
+static const AsterixField I021_073 = { FIXED, 3, 0, 0, &hf_021_073, I021_073_PARTS, { NULL } };
+static int hf_021_074 = -1;
+static int hf_021_074_FSI = -1;
+static const value_string valstr_021_074_FSI[] = {
+ { 3, "Reserved" },
+ { 2, "TOMRp whole seconds = (I021/073) Whole seconds - 1" },
+ { 1, "TOMRp whole seconds = (I021/073) Whole seconds + 1" },
+ { 0, "TOMRp whole seconds = (I021/073) Whole seconds" },
+ { 0, NULL }
+};
+static const FieldPart I021_074_FSI = { 2, 1.0, FIELD_PART_UINT, &hf_021_074_FSI, NULL };
+static int hf_021_074_TOMRP = -1;
+static const FieldPart I021_074_TOMRP = { 30, 0.00000000093132257461547851562, FIELD_PART_UFLOAT, &hf_021_074_TOMRP, NULL };
+static const FieldPart *I021_074_PARTS[] = {
+ &I021_074_FSI,
+ &I021_074_TOMRP,
+ NULL
+};
+static const AsterixField I021_074 = { FIXED, 4, 0, 0, &hf_021_074, I021_074_PARTS, { NULL } };
+static int hf_021_075 = -1;
+static int hf_021_075_VALUE = -1;
+static const FieldPart I021_075_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_075_VALUE, NULL };
+static const FieldPart *I021_075_PARTS[] = {
+ &I021_075_VALUE,
+ NULL
+};
+static const AsterixField I021_075 = { FIXED, 3, 0, 0, &hf_021_075, I021_075_PARTS, { NULL } };
+static int hf_021_076 = -1;
+static int hf_021_076_FSI = -1;
+static const value_string valstr_021_076_FSI[] = {
+ { 3, "Reserved" },
+ { 2, "TOMRp whole seconds = (I021/075) Whole seconds - 1" },
+ { 1, "TOMRp whole seconds = (I021/075) Whole seconds + 1" },
+ { 0, "TOMRp whole seconds = (I021/075) Whole seconds" },
+ { 0, NULL }
+};
+static const FieldPart I021_076_FSI = { 2, 1.0, FIELD_PART_UINT, &hf_021_076_FSI, NULL };
+static int hf_021_076_TOMRP = -1;
+static const FieldPart I021_076_TOMRP = { 30, 0.00000000093132257461547851562, FIELD_PART_UFLOAT, &hf_021_076_TOMRP, NULL };
+static const FieldPart *I021_076_PARTS[] = {
+ &I021_076_FSI,
+ &I021_076_TOMRP,
+ NULL
+};
+static const AsterixField I021_076 = { FIXED, 4, 0, 0, &hf_021_076, I021_076_PARTS, { NULL } };
+static int hf_021_077 = -1;
+static int hf_021_077_VALUE = -1;
+static const FieldPart I021_077_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_021_077_VALUE, NULL };
+static const FieldPart *I021_077_PARTS[] = {
+ &I021_077_VALUE,
+ NULL
+};
+static const AsterixField I021_077 = { FIXED, 3, 0, 0, &hf_021_077, I021_077_PARTS, { NULL } };
+static int hf_021_080 = -1;
+static int hf_021_080_VALUE = -1;
+static const FieldPart I021_080_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_021_080_VALUE, NULL };
+static const FieldPart *I021_080_PARTS[] = {
+ &I021_080_VALUE,
+ NULL
+};
+static const AsterixField I021_080 = { FIXED, 3, 0, 0, &hf_021_080, I021_080_PARTS, { NULL } };
+static int hf_021_090 = -1;
+static int hf_021_090_NUCRNACV = -1;
+static const FieldPart I021_090_NUCRNACV = { 3, 1.0, FIELD_PART_HEX, &hf_021_090_NUCRNACV, NULL };
+static int hf_021_090_NUCPNIC = -1;
+static const FieldPart I021_090_NUCPNIC = { 4, 1.0, FIELD_PART_HEX, &hf_021_090_NUCPNIC, NULL };
+static int hf_021_090_NICBARO = -1;
+static const FieldPart I021_090_NICBARO = { 1, 1.0, FIELD_PART_HEX, &hf_021_090_NICBARO, NULL };
+static int hf_021_090_SIL = -1;
+static const FieldPart I021_090_SIL = { 2, 1.0, FIELD_PART_HEX, &hf_021_090_SIL, NULL };
+static int hf_021_090_NACP = -1;
+static const FieldPart I021_090_NACP = { 4, 1.0, FIELD_PART_HEX, &hf_021_090_NACP, NULL };
+static int hf_021_090_SILS = -1;
+static const value_string valstr_021_090_SILS[] = {
+ { 0, "Measured per flight-hour" },
+ { 1, "Measured per sample" },
+ { 0, NULL }
+};
+static const FieldPart I021_090_SILS = { 1, 1.0, FIELD_PART_UINT, &hf_021_090_SILS, NULL };
+static int hf_021_090_SDA = -1;
+static const FieldPart I021_090_SDA = { 2, 1.0, FIELD_PART_HEX, &hf_021_090_SDA, NULL };
+static int hf_021_090_GVA = -1;
+static const FieldPart I021_090_GVA = { 2, 1.0, FIELD_PART_HEX, &hf_021_090_GVA, NULL };
+static int hf_021_090_PIC = -1;
+static const FieldPart I021_090_PIC = { 4, 1.0, FIELD_PART_HEX, &hf_021_090_PIC, NULL };
+static const FieldPart *I021_090_PARTS[] = {
+ &I021_090_NUCRNACV,
+ &I021_090_NUCPNIC,
+ &IXXX_FX,
+ &I021_090_NICBARO,
+ &I021_090_SIL,
+ &I021_090_NACP,
+ &IXXX_FX,
+ &IXXX_2bit_spare,
+ &I021_090_SILS,
+ &I021_090_SDA,
+ &I021_090_GVA,
+ &IXXX_FX,
+ &I021_090_PIC,
+ &IXXX_3bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_090 = { FX, 1, 0, 0, &hf_021_090, I021_090_PARTS, { NULL } };
+static int hf_021_110 = -1;
+static int hf_021_110_TIS = -1;
+static int hf_021_110_TIS_NAV = -1;
+static const value_string valstr_021_110_TIS_NAV[] = {
+ { 0, "Trajectory Intent Data is available for this aircraft" },
+ { 1, "Trajectory Intent Data is not available for this aircraft" },
+ { 0, NULL }
+};
+static const FieldPart I021_110_TIS_NAV = { 1, 1.0, FIELD_PART_UINT, &hf_021_110_TIS_NAV, NULL };
+static int hf_021_110_TIS_NVB = -1;
+static const value_string valstr_021_110_TIS_NVB[] = {
+ { 0, "Trajectory Intent Data is valid" },
+ { 1, "Trajectory Intent Data is not valid" },
+ { 0, NULL }
+};
+static const FieldPart I021_110_TIS_NVB = { 1, 1.0, FIELD_PART_UINT, &hf_021_110_TIS_NVB, NULL };
+static const FieldPart *I021_110_TIS_PARTS[] = {
+ &I021_110_TIS_NAV,
+ &I021_110_TIS_NVB,
+ &IXXX_5bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_110_TIS = { FX, 1, 0, 0, &hf_021_110_TIS, I021_110_TIS_PARTS, { NULL } };
+static int hf_021_110_TID = -1;
+static int hf_021_110_TID_TCA = -1;
+static const value_string valstr_021_110_TID_TCA[] = {
+ { 0, "TCP number available" },
+ { 1, "TCP number not available" },
+ { 0, NULL }
+};
+static const FieldPart I021_110_TID_TCA = { 1, 1.0, FIELD_PART_UINT, &hf_021_110_TID_TCA, NULL };
+static int hf_021_110_TID_NC = -1;
+static const value_string valstr_021_110_TID_NC[] = {
+ { 0, "TCP compliance" },
+ { 1, "TCP non-compliance" },
+ { 0, NULL }
+};
+static const FieldPart I021_110_TID_NC = { 1, 1.0, FIELD_PART_UINT, &hf_021_110_TID_NC, NULL };
+static int hf_021_110_TID_TCPN = -1;
+static const FieldPart I021_110_TID_TCPN = { 6, 1.0, FIELD_PART_HEX, &hf_021_110_TID_TCPN, NULL };
+static int hf_021_110_TID_ALT = -1;
+static const FieldPart I021_110_TID_ALT = { 16, 10.0, FIELD_PART_FLOAT, &hf_021_110_TID_ALT, NULL };
+static int hf_021_110_TID_LAT = -1;
+static const FieldPart I021_110_TID_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_110_TID_LAT, NULL };
+static int hf_021_110_TID_LON = -1;
+static const FieldPart I021_110_TID_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_110_TID_LON, NULL };
+static int hf_021_110_TID_PT = -1;
+static const value_string valstr_021_110_TID_PT[] = {
+ { 0, "Unknown" },
+ { 1, "Fly by waypoint (LT)" },
+ { 2, "Fly over waypoint (LT)" },
+ { 3, "Hold pattern (LT)" },
+ { 4, "Procedure hold (LT)" },
+ { 5, "Procedure turn (LT)" },
+ { 6, "RF leg (LT)" },
+ { 7, "Top of climb (VT)" },
+ { 8, "Top of descent (VT)" },
+ { 9, "Start of level (VT)" },
+ { 10, "Cross-over altitude (VT)" },
+ { 11, "Transition altitude (VT)" },
+ { 0, NULL }
+};
+static const FieldPart I021_110_TID_PT = { 4, 1.0, FIELD_PART_UINT, &hf_021_110_TID_PT, NULL };
+static int hf_021_110_TID_TD = -1;
+static const value_string valstr_021_110_TID_TD[] = {
+ { 0, "N/A" },
+ { 1, "Turn right" },
+ { 2, "Turn left" },
+ { 3, "No turn" },
+ { 0, NULL }
+};
+static const FieldPart I021_110_TID_TD = { 2, 1.0, FIELD_PART_UINT, &hf_021_110_TID_TD, NULL };
+static int hf_021_110_TID_TRA = -1;
+static const value_string valstr_021_110_TID_TRA[] = {
+ { 0, "TTR not available" },
+ { 1, "TTR available" },
+ { 0, NULL }
+};
+static const FieldPart I021_110_TID_TRA = { 1, 1.0, FIELD_PART_UINT, &hf_021_110_TID_TRA, NULL };
+static int hf_021_110_TID_TOA = -1;
+static const value_string valstr_021_110_TID_TOA[] = {
+ { 0, "TOV available" },
+ { 1, "TOV not available" },
+ { 0, NULL }
+};
+static const FieldPart I021_110_TID_TOA = { 1, 1.0, FIELD_PART_UINT, &hf_021_110_TID_TOA, NULL };
+static int hf_021_110_TID_TOV = -1;
+static const FieldPart I021_110_TID_TOV = { 24, 1.0, FIELD_PART_UFLOAT, &hf_021_110_TID_TOV, NULL };
+static int hf_021_110_TID_TTR = -1;
+static const FieldPart I021_110_TID_TTR = { 16, 0.01, FIELD_PART_UFLOAT, &hf_021_110_TID_TTR, NULL };
+static const FieldPart *I021_110_TID_PARTS[] = {
+ &I021_110_TID_TCA,
+ &I021_110_TID_NC,
+ &I021_110_TID_TCPN,
+ &I021_110_TID_ALT,
+ &I021_110_TID_LAT,
+ &I021_110_TID_LON,
+ &I021_110_TID_PT,
+ &I021_110_TID_TD,
+ &I021_110_TID_TRA,
+ &I021_110_TID_TOA,
+ &I021_110_TID_TOV,
+ &I021_110_TID_TTR,
+ NULL
+};
+static const AsterixField I021_110_TID = { REPETITIVE, 15, 1, 0, &hf_021_110_TID, I021_110_TID_PARTS, { NULL } };
+static const AsterixField I021_110 = { COMPOUND, 0, 0, 0, &hf_021_110, NULL, { &I021_110_TIS, &I021_110_TID, NULL } };
+static int hf_021_130 = -1;
+static int hf_021_130_LAT = -1;
+static const FieldPart I021_130_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_130_LAT, NULL };
+static int hf_021_130_LON = -1;
+static const FieldPart I021_130_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_021_130_LON, NULL };
+static const FieldPart *I021_130_PARTS[] = {
+ &I021_130_LAT,
+ &I021_130_LON,
+ NULL
+};
+static const AsterixField I021_130 = { FIXED, 6, 0, 0, &hf_021_130, I021_130_PARTS, { NULL } };
+static int hf_021_131 = -1;
+static int hf_021_131_LAT = -1;
+static const FieldPart I021_131_LAT = { 32, 0.0000001676380634307861328125, FIELD_PART_FLOAT, &hf_021_131_LAT, NULL };
+static int hf_021_131_LON = -1;
+static const FieldPart I021_131_LON = { 32, 0.0000001676380634307861328125, FIELD_PART_FLOAT, &hf_021_131_LON, NULL };
+static const FieldPart *I021_131_PARTS[] = {
+ &I021_131_LAT,
+ &I021_131_LON,
+ NULL
+};
+static const AsterixField I021_131 = { FIXED, 8, 0, 0, &hf_021_131, I021_131_PARTS, { NULL } };
+static int hf_021_132 = -1;
+static int hf_021_132_VALUE = -1;
+static const FieldPart I021_132_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_021_132_VALUE, NULL };
+static const FieldPart *I021_132_PARTS[] = {
+ &I021_132_VALUE,
+ NULL
+};
+static const AsterixField I021_132 = { FIXED, 1, 0, 0, &hf_021_132, I021_132_PARTS, { NULL } };
+static int hf_021_140 = -1;
+static int hf_021_140_VALUE = -1;
+static const FieldPart I021_140_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_021_140_VALUE, NULL };
+static const FieldPart *I021_140_PARTS[] = {
+ &I021_140_VALUE,
+ NULL
+};
+static const AsterixField I021_140 = { FIXED, 2, 0, 0, &hf_021_140, I021_140_PARTS, { NULL } };
+static int hf_021_145 = -1;
+static int hf_021_145_VALUE = -1;
+static const FieldPart I021_145_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_021_145_VALUE, NULL };
+static const FieldPart *I021_145_PARTS[] = {
+ &I021_145_VALUE,
+ NULL
+};
+static const AsterixField I021_145 = { FIXED, 2, 0, 0, &hf_021_145, I021_145_PARTS, { NULL } };
+static int hf_021_146 = -1;
+static int hf_021_146_SAS = -1;
+static const value_string valstr_021_146_SAS[] = {
+ { 0, "No source information provided" },
+ { 1, "Source Information provided" },
+ { 0, NULL }
+};
+static const FieldPart I021_146_SAS = { 1, 1.0, FIELD_PART_UINT, &hf_021_146_SAS, NULL };
+static int hf_021_146_S = -1;
+static const value_string valstr_021_146_S[] = {
+ { 0, "Unknown" },
+ { 1, "Aircraft Altitude (Holding Altitude)" },
+ { 2, "MCP/FCU Selected Altitude" },
+ { 3, "FMS Selected Altitude" },
+ { 0, NULL }
+};
+static const FieldPart I021_146_S = { 2, 1.0, FIELD_PART_UINT, &hf_021_146_S, NULL };
+static int hf_021_146_ALT = -1;
+static const FieldPart I021_146_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_021_146_ALT, NULL };
+static const FieldPart *I021_146_PARTS[] = {
+ &I021_146_SAS,
+ &I021_146_S,
+ &I021_146_ALT,
+ NULL
+};
+static const AsterixField I021_146 = { FIXED, 2, 0, 0, &hf_021_146, I021_146_PARTS, { NULL } };
+static int hf_021_148 = -1;
+static int hf_021_148_MV = -1;
+static const value_string valstr_021_148_MV[] = {
+ { 0, "Not active or unknown" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_148_MV = { 1, 1.0, FIELD_PART_UINT, &hf_021_148_MV, NULL };
+static int hf_021_148_AH = -1;
+static const value_string valstr_021_148_AH[] = {
+ { 0, "Not active or unknown" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_148_AH = { 1, 1.0, FIELD_PART_UINT, &hf_021_148_AH, NULL };
+static int hf_021_148_AM = -1;
+static const value_string valstr_021_148_AM[] = {
+ { 0, "Not active or unknown" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I021_148_AM = { 1, 1.0, FIELD_PART_UINT, &hf_021_148_AM, NULL };
+static int hf_021_148_ALT = -1;
+static const FieldPart I021_148_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_021_148_ALT, NULL };
+static const FieldPart *I021_148_PARTS[] = {
+ &I021_148_MV,
+ &I021_148_AH,
+ &I021_148_AM,
+ &I021_148_ALT,
+ NULL
+};
+static const AsterixField I021_148 = { FIXED, 2, 0, 0, &hf_021_148, I021_148_PARTS, { NULL } };
+static int hf_021_150 = -1;
+static int hf_021_150_IM = -1;
+static const value_string valstr_021_150_IM[] = {
+ { 0, "Air Speed = IAS, LSB (Bit-1) = 2 -14 NM/s" },
+ { 1, "Air Speed = Mach, LSB (Bit-1) = 0.001" },
+ { 0, NULL }
+};
+static const FieldPart I021_150_IM = { 1, 1.0, FIELD_PART_UINT, &hf_021_150_IM, NULL };
+static int hf_021_150_AS = -1;
+static const FieldPart I021_150_AS = { 15, 1.0, FIELD_PART_HEX, &hf_021_150_AS, NULL };
+static const FieldPart *I021_150_PARTS[] = {
+ &I021_150_IM,
+ &I021_150_AS,
+ NULL
+};
+static const AsterixField I021_150 = { FIXED, 2, 0, 0, &hf_021_150, I021_150_PARTS, { NULL } };
+static int hf_021_151 = -1;
+static int hf_021_151_RE = -1;
+static const value_string valstr_021_151_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_151_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_151_RE, NULL };
+static int hf_021_151_TAS = -1;
+static const FieldPart I021_151_TAS = { 15, 1.0, FIELD_PART_UFLOAT, &hf_021_151_TAS, NULL };
+static const FieldPart *I021_151_PARTS[] = {
+ &I021_151_RE,
+ &I021_151_TAS,
+ NULL
+};
+static const AsterixField I021_151 = { FIXED, 2, 0, 0, &hf_021_151, I021_151_PARTS, { NULL } };
+static int hf_021_152 = -1;
+static int hf_021_152_VALUE = -1;
+static const FieldPart I021_152_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_021_152_VALUE, NULL };
+static const FieldPart *I021_152_PARTS[] = {
+ &I021_152_VALUE,
+ NULL
+};
+static const AsterixField I021_152 = { FIXED, 2, 0, 0, &hf_021_152, I021_152_PARTS, { NULL } };
+static int hf_021_155 = -1;
+static int hf_021_155_RE = -1;
+static const value_string valstr_021_155_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_155_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_155_RE, NULL };
+static int hf_021_155_BVR = -1;
+static const FieldPart I021_155_BVR = { 15, 6.25, FIELD_PART_FLOAT, &hf_021_155_BVR, NULL };
+static const FieldPart *I021_155_PARTS[] = {
+ &I021_155_RE,
+ &I021_155_BVR,
+ NULL
+};
+static const AsterixField I021_155 = { FIXED, 2, 0, 0, &hf_021_155, I021_155_PARTS, { NULL } };
+static int hf_021_157 = -1;
+static int hf_021_157_RE = -1;
+static const value_string valstr_021_157_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_157_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_157_RE, NULL };
+static int hf_021_157_GVR = -1;
+static const FieldPart I021_157_GVR = { 15, 6.25, FIELD_PART_FLOAT, &hf_021_157_GVR, NULL };
+static const FieldPart *I021_157_PARTS[] = {
+ &I021_157_RE,
+ &I021_157_GVR,
+ NULL
+};
+static const AsterixField I021_157 = { FIXED, 2, 0, 0, &hf_021_157, I021_157_PARTS, { NULL } };
+static int hf_021_160 = -1;
+static int hf_021_160_RE = -1;
+static const value_string valstr_021_160_RE[] = {
+ { 0, "Value in defined range" },
+ { 1, "Value exceeds defined range" },
+ { 0, NULL }
+};
+static const FieldPart I021_160_RE = { 1, 1.0, FIELD_PART_UINT, &hf_021_160_RE, NULL };
+static int hf_021_160_GS = -1;
+static const FieldPart I021_160_GS = { 15, 0.00006103515625, FIELD_PART_UFLOAT, &hf_021_160_GS, NULL };
+static int hf_021_160_TA = -1;
+static const FieldPart I021_160_TA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_021_160_TA, NULL };
+static const FieldPart *I021_160_PARTS[] = {
+ &I021_160_RE,
+ &I021_160_GS,
+ &I021_160_TA,
+ NULL
+};
+static const AsterixField I021_160 = { FIXED, 4, 0, 0, &hf_021_160, I021_160_PARTS, { NULL } };
+static int hf_021_161 = -1;
+static int hf_021_161_TRNUM = -1;
+static const FieldPart I021_161_TRNUM = { 12, 1.0, FIELD_PART_HEX, &hf_021_161_TRNUM, NULL };
+static const FieldPart *I021_161_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I021_161_TRNUM,
+ NULL
+};
+static const AsterixField I021_161 = { FIXED, 2, 0, 0, &hf_021_161, I021_161_PARTS, { NULL } };
+static int hf_021_165 = -1;
+static int hf_021_165_TAR = -1;
+static const FieldPart I021_165_TAR = { 10, 0.03125, FIELD_PART_FLOAT, &hf_021_165_TAR, NULL };
+static const FieldPart *I021_165_PARTS[] = {
+ &IXXX_6bit_spare,
+ &I021_165_TAR,
+ NULL
+};
+static const AsterixField I021_165 = { FIXED, 2, 0, 0, &hf_021_165, I021_165_PARTS, { NULL } };
+static int hf_021_170 = -1;
+static int hf_021_170_VALUE = -1;
+static const FieldPart I021_170_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_021_170_VALUE, NULL };
+static const FieldPart *I021_170_PARTS[] = {
+ &I021_170_VALUE,
+ NULL
+};
+static const AsterixField I021_170 = { FIXED, 6, 0, 0, &hf_021_170, I021_170_PARTS, { NULL } };
+static int hf_021_200 = -1;
+static int hf_021_200_ICF = -1;
+static const value_string valstr_021_200_ICF[] = {
+ { 0, "No intent change active" },
+ { 1, "Intent change flag raised" },
+ { 0, NULL }
+};
+static const FieldPart I021_200_ICF = { 1, 1.0, FIELD_PART_UINT, &hf_021_200_ICF, NULL };
+static int hf_021_200_LNAV = -1;
+static const value_string valstr_021_200_LNAV[] = {
+ { 0, "LNAV Mode engaged" },
+ { 1, "LNAV Mode not engaged" },
+ { 0, NULL }
+};
+static const FieldPart I021_200_LNAV = { 1, 1.0, FIELD_PART_UINT, &hf_021_200_LNAV, NULL };
+static int hf_021_200_ME = -1;
+static const value_string valstr_021_200_ME[] = {
+ { 0, "No military emergency" },
+ { 1, "Military emergency" },
+ { 0, NULL }
+};
+static const FieldPart I021_200_ME = { 1, 1.0, FIELD_PART_UINT, &hf_021_200_ME, NULL };
+static int hf_021_200_PS = -1;
+static const value_string valstr_021_200_PS[] = {
+ { 0, "No emergency / not reported" },
+ { 1, "General emergency" },
+ { 2, "Lifeguard / medical emergency" },
+ { 3, "Minimum fuel" },
+ { 4, "No communications" },
+ { 5, "Unlawful interference" },
+ { 6, "DOWNED Aircraft" },
+ { 0, NULL }
+};
+static const FieldPart I021_200_PS = { 3, 1.0, FIELD_PART_UINT, &hf_021_200_PS, NULL };
+static int hf_021_200_SS = -1;
+static const value_string valstr_021_200_SS[] = {
+ { 0, "No condition reported" },
+ { 1, "Permanent Alert (Emergency condition)" },
+ { 2, "Temporary Alert (change in Mode 3/A Code other than emergency)" },
+ { 3, "SPI set" },
+ { 0, NULL }
+};
+static const FieldPart I021_200_SS = { 2, 1.0, FIELD_PART_UINT, &hf_021_200_SS, NULL };
+static const FieldPart *I021_200_PARTS[] = {
+ &I021_200_ICF,
+ &I021_200_LNAV,
+ &I021_200_ME,
+ &I021_200_PS,
+ &I021_200_SS,
+ NULL
+};
+static const AsterixField I021_200 = { FIXED, 1, 0, 0, &hf_021_200, I021_200_PARTS, { NULL } };
+static int hf_021_210 = -1;
+static int hf_021_210_VNS = -1;
+static const value_string valstr_021_210_VNS[] = {
+ { 0, "The MOPS Version is supported by the GS" },
+ { 1, "The MOPS Version is not supported by the GS" },
+ { 0, NULL }
+};
+static const FieldPart I021_210_VNS = { 1, 1.0, FIELD_PART_UINT, &hf_021_210_VNS, NULL };
+static int hf_021_210_VN = -1;
+static const value_string valstr_021_210_VN[] = {
+ { 0, "ED102/DO-260 [Ref. 7]" },
+ { 1, "DO-260A [Ref. 8]" },
+ { 2, "ED102A/DO-260B [Ref. 10]" },
+ { 3, "ED-102B/DO-260C [Ref. 11]" },
+ { 0, NULL }
+};
+static const FieldPart I021_210_VN = { 3, 1.0, FIELD_PART_UINT, &hf_021_210_VN, NULL };
+static int hf_021_210_LTT = -1;
+static const value_string valstr_021_210_LTT[] = {
+ { 0, "Other" },
+ { 1, "UAT" },
+ { 2, "1090 ES" },
+ { 3, "VDL 4" },
+ { 4, "Not assigned" },
+ { 5, "Not assigned" },
+ { 6, "Not assigned" },
+ { 7, "Not assigned" },
+ { 0, NULL }
+};
+static const FieldPart I021_210_LTT = { 3, 1.0, FIELD_PART_UINT, &hf_021_210_LTT, NULL };
+static const FieldPart *I021_210_PARTS[] = {
+ &IXXX_1bit_spare,
+ &I021_210_VNS,
+ &I021_210_VN,
+ &I021_210_LTT,
+ NULL
+};
+static const AsterixField I021_210 = { FIXED, 1, 0, 0, &hf_021_210, I021_210_PARTS, { NULL } };
+static int hf_021_220 = -1;
+static int hf_021_220_WS = -1;
+static int hf_021_220_WS_VALUE = -1;
+static const FieldPart I021_220_WS_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_220_WS_VALUE, NULL };
+static const FieldPart *I021_220_WS_PARTS[] = {
+ &I021_220_WS_VALUE,
+ NULL
+};
+static const AsterixField I021_220_WS = { FIXED, 2, 0, 0, &hf_021_220_WS, I021_220_WS_PARTS, { NULL } };
+static int hf_021_220_WD = -1;
+static int hf_021_220_WD_VALUE = -1;
+static const FieldPart I021_220_WD_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_021_220_WD_VALUE, NULL };
+static const FieldPart *I021_220_WD_PARTS[] = {
+ &I021_220_WD_VALUE,
+ NULL
+};
+static const AsterixField I021_220_WD = { FIXED, 2, 0, 0, &hf_021_220_WD, I021_220_WD_PARTS, { NULL } };
+static int hf_021_220_TMP = -1;
+static int hf_021_220_TMP_VALUE = -1;
+static const FieldPart I021_220_TMP_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_021_220_TMP_VALUE, NULL };
+static const FieldPart *I021_220_TMP_PARTS[] = {
+ &I021_220_TMP_VALUE,
+ NULL
+};
+static const AsterixField I021_220_TMP = { FIXED, 2, 0, 0, &hf_021_220_TMP, I021_220_TMP_PARTS, { NULL } };
+static int hf_021_220_TRB = -1;
+static int hf_021_220_TRB_VALUE = -1;
+static const FieldPart I021_220_TRB_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_021_220_TRB_VALUE, NULL };
+static const FieldPart *I021_220_TRB_PARTS[] = {
+ &I021_220_TRB_VALUE,
+ NULL
+};
+static const AsterixField I021_220_TRB = { FIXED, 1, 0, 0, &hf_021_220_TRB, I021_220_TRB_PARTS, { NULL } };
+static const AsterixField I021_220 = { COMPOUND, 0, 0, 0, &hf_021_220, NULL, { &I021_220_WS, &I021_220_WD, &I021_220_TMP, &I021_220_TRB, NULL } };
+static int hf_021_230 = -1;
+static int hf_021_230_VALUE = -1;
+static const FieldPart I021_230_VALUE = { 16, 0.01, FIELD_PART_FLOAT, &hf_021_230_VALUE, NULL };
+static const FieldPart *I021_230_PARTS[] = {
+ &I021_230_VALUE,
+ NULL
+};
+static const AsterixField I021_230 = { FIXED, 2, 0, 0, &hf_021_230, I021_230_PARTS, { NULL } };
+static int hf_021_250 = -1;
+static int hf_021_250_VALUE = -1;
+static const FieldPart I021_250_VALUE = { 64, 1.0, FIELD_PART_HEX, &hf_021_250_VALUE, NULL };
+static const FieldPart *I021_250_PARTS[] = {
+ &I021_250_VALUE,
+ NULL
+};
+static const AsterixField I021_250 = { REPETITIVE, 8, 1, 0, &hf_021_250, I021_250_PARTS, { NULL } };
+static int hf_021_260 = -1;
+static int hf_021_260_TYP = -1;
+static const FieldPart I021_260_TYP = { 5, 1.0, FIELD_PART_HEX, &hf_021_260_TYP, NULL };
+static int hf_021_260_STYP = -1;
+static const FieldPart I021_260_STYP = { 3, 1.0, FIELD_PART_HEX, &hf_021_260_STYP, NULL };
+static int hf_021_260_ARA = -1;
+static const FieldPart I021_260_ARA = { 14, 1.0, FIELD_PART_HEX, &hf_021_260_ARA, NULL };
+static int hf_021_260_RAC = -1;
+static const FieldPart I021_260_RAC = { 4, 1.0, FIELD_PART_HEX, &hf_021_260_RAC, NULL };
+static int hf_021_260_RAT = -1;
+static const FieldPart I021_260_RAT = { 1, 1.0, FIELD_PART_HEX, &hf_021_260_RAT, NULL };
+static int hf_021_260_MTE = -1;
+static const FieldPart I021_260_MTE = { 1, 1.0, FIELD_PART_HEX, &hf_021_260_MTE, NULL };
+static int hf_021_260_TTI = -1;
+static const FieldPart I021_260_TTI = { 2, 1.0, FIELD_PART_HEX, &hf_021_260_TTI, NULL };
+static int hf_021_260_TID = -1;
+static const FieldPart I021_260_TID = { 26, 1.0, FIELD_PART_HEX, &hf_021_260_TID, NULL };
+static const FieldPart *I021_260_PARTS[] = {
+ &I021_260_TYP,
+ &I021_260_STYP,
+ &I021_260_ARA,
+ &I021_260_RAC,
+ &I021_260_RAT,
+ &I021_260_MTE,
+ &I021_260_TTI,
+ &I021_260_TID,
+ NULL
+};
+static const AsterixField I021_260 = { FIXED, 7, 0, 0, &hf_021_260, I021_260_PARTS, { NULL } };
+static int hf_021_271 = -1;
+static int hf_021_271_POA = -1;
+static const value_string valstr_021_271_POA[] = {
+ { 0, "Position transmitted is not ADS-B position reference point" },
+ { 1, "Position transmitted is the ADS-B position reference point" },
+ { 0, NULL }
+};
+static const FieldPart I021_271_POA = { 1, 1.0, FIELD_PART_UINT, &hf_021_271_POA, NULL };
+static int hf_021_271_CDTIS = -1;
+static const value_string valstr_021_271_CDTIS[] = {
+ { 0, "CDTI not operational" },
+ { 1, "CDTI operational" },
+ { 0, NULL }
+};
+static const FieldPart I021_271_CDTIS = { 1, 1.0, FIELD_PART_UINT, &hf_021_271_CDTIS, NULL };
+static int hf_021_271_B2LOW = -1;
+static const value_string valstr_021_271_B2LOW[] = {
+ { 0, ">= 70 Watts" },
+ { 1, "< 70 Watts" },
+ { 0, NULL }
+};
+static const FieldPart I021_271_B2LOW = { 1, 1.0, FIELD_PART_UINT, &hf_021_271_B2LOW, NULL };
+static int hf_021_271_RAS = -1;
+static const value_string valstr_021_271_RAS[] = {
+ { 0, "Aircraft not receiving ATC-services" },
+ { 1, "Aircraft receiving ATC services" },
+ { 0, NULL }
+};
+static const FieldPart I021_271_RAS = { 1, 1.0, FIELD_PART_UINT, &hf_021_271_RAS, NULL };
+static int hf_021_271_IDENT = -1;
+static const value_string valstr_021_271_IDENT[] = {
+ { 0, "IDENT switch not active" },
+ { 1, "IDENT switch active" },
+ { 0, NULL }
+};
+static const FieldPart I021_271_IDENT = { 1, 1.0, FIELD_PART_UINT, &hf_021_271_IDENT, NULL };
+static int hf_021_271_LW = -1;
+static const FieldPart I021_271_LW = { 4, 1.0, FIELD_PART_HEX, &hf_021_271_LW, NULL };
+static const FieldPart *I021_271_PARTS[] = {
+ &IXXX_2bit_spare,
+ &I021_271_POA,
+ &I021_271_CDTIS,
+ &I021_271_B2LOW,
+ &I021_271_RAS,
+ &I021_271_IDENT,
+ &IXXX_FX,
+ &I021_271_LW,
+ &IXXX_3bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I021_271 = { FX, 1, 0, 0, &hf_021_271, I021_271_PARTS, { NULL } };
+static int hf_021_295 = -1;
+static int hf_021_295_AOS = -1;
+static int hf_021_295_AOS_VALUE = -1;
+static const FieldPart I021_295_AOS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_295_AOS_VALUE, NULL };
+static const FieldPart *I021_295_AOS_PARTS[] = {
+ &I021_295_AOS_VALUE,
+ NULL
+};
+static const AsterixField I021_295_AOS = { FIXED, 1, 0, 0, &hf_021_295_AOS, I021_295_AOS_PARTS, { NULL } };
+static int hf_021_295_TRD = -1;
+static int hf_021_295_TRD_VALUE = -1;
+static const FieldPart I021_295_TRD_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_295_TRD_VALUE, NULL };
+static const FieldPart *I021_295_TRD_PARTS[] = {
+ &I021_295_TRD_VALUE,
+ NULL
+};
+static const AsterixField I021_295_TRD = { FIXED, 1, 0, 0, &hf_021_295_TRD, I021_295_TRD_PARTS, { NULL } };
+static int hf_021_295_M3A = -1;
+static int hf_021_295_M3A_VALUE = -1;
+static const FieldPart I021_295_M3A_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_295_M3A_VALUE, NULL };
+static const FieldPart *I021_295_M3A_PARTS[] = {
+ &I021_295_M3A_VALUE,
+ NULL
+};
+static const AsterixField I021_295_M3A = { FIXED, 1, 0, 0, &hf_021_295_M3A, I021_295_M3A_PARTS, { NULL } };
+static int hf_021_295_QI = -1;
+static int hf_021_295_QI_VALUE = -1;
+static const FieldPart I021_295_QI_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_295_QI_VALUE, NULL };
+static const FieldPart *I021_295_QI_PARTS[] = {
+ &I021_295_QI_VALUE,
+ NULL
+};
+static const AsterixField I021_295_QI = { FIXED, 1, 0, 0, &hf_021_295_QI, I021_295_QI_PARTS, { NULL } };
+static int hf_021_295_TI1 = -1;
+static int hf_021_295_TI1_VALUE = -1;
+static const FieldPart I021_295_TI1_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_295_TI1_VALUE, NULL };
+static const FieldPart *I021_295_TI1_PARTS[] = {
+ &I021_295_TI1_VALUE,
+ NULL
+};
+static const AsterixField I021_295_TI1 = { FIXED, 1, 0, 0, &hf_021_295_TI1, I021_295_TI1_PARTS, { NULL } };
+static int hf_021_295_MAM = -1;
+static int hf_021_295_MAM_VALUE = -1;
+static const FieldPart I021_295_MAM_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_295_MAM_VALUE, NULL };
+static const FieldPart *I021_295_MAM_PARTS[] = {
+ &I021_295_MAM_VALUE,
+ NULL
+};
+static const AsterixField I021_295_MAM = { FIXED, 1, 0, 0, &hf_021_295_MAM, I021_295_MAM_PARTS, { NULL } };
+static int hf_021_295_GH = -1;
+static int hf_021_295_GH_VALUE = -1;
+static const FieldPart I021_295_GH_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_295_GH_VALUE, NULL };
+static const FieldPart *I021_295_GH_PARTS[] = {
+ &I021_295_GH_VALUE,
+ NULL
+};
+static const AsterixField I021_295_GH = { FIXED, 1, 0, 0, &hf_021_295_GH, I021_295_GH_PARTS, { NULL } };
+static int hf_021_295_FL = -1;
+static int hf_021_295_FL_VALUE = -1;
+static const FieldPart I021_295_FL_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_295_FL_VALUE, NULL };
+static const FieldPart *I021_295_FL_PARTS[] = {
+ &I021_295_FL_VALUE,
+ NULL
+};
+static const AsterixField I021_295_FL = { FIXED, 1, 0, 0, &hf_021_295_FL, I021_295_FL_PARTS, { NULL } };
+static int hf_021_295_SAL = -1;
+static int hf_021_295_SAL_VALUE = -1;
+static const FieldPart I021_295_SAL_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_295_SAL_VALUE, NULL };
+static const FieldPart *I021_295_SAL_PARTS[] = {
+ &I021_295_SAL_VALUE,
+ NULL
+};
+static const AsterixField I021_295_SAL = { FIXED, 1, 0, 0, &hf_021_295_SAL, I021_295_SAL_PARTS, { NULL } };
+static int hf_021_295_FSA = -1;
+static int hf_021_295_FSA_VALUE = -1;
+static const FieldPart I021_295_FSA_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_295_FSA_VALUE, NULL };
+static const FieldPart *I021_295_FSA_PARTS[] = {
+ &I021_295_FSA_VALUE,
+ NULL
+};
+static const AsterixField I021_295_FSA = { FIXED, 1, 0, 0, &hf_021_295_FSA, I021_295_FSA_PARTS, { NULL } };
+static int hf_021_295_AS = -1;
+static int hf_021_295_AS_VALUE = -1;
+static const FieldPart I021_295_AS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_295_AS_VALUE, NULL };
+static const FieldPart *I021_295_AS_PARTS[] = {
+ &I021_295_AS_VALUE,
+ NULL
+};
+static const AsterixField I021_295_AS = { FIXED, 1, 0, 0, &hf_021_295_AS, I021_295_AS_PARTS, { NULL } };
+static int hf_021_295_TAS = -1;
+static int hf_021_295_TAS_VALUE = -1;
+static const FieldPart I021_295_TAS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_295_TAS_VALUE, NULL };
+static const FieldPart *I021_295_TAS_PARTS[] = {
+ &I021_295_TAS_VALUE,
+ NULL
+};
+static const AsterixField I021_295_TAS = { FIXED, 1, 0, 0, &hf_021_295_TAS, I021_295_TAS_PARTS, { NULL } };
+static int hf_021_295_MH = -1;
+static int hf_021_295_MH_VALUE = -1;
+static const FieldPart I021_295_MH_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_295_MH_VALUE, NULL };
+static const FieldPart *I021_295_MH_PARTS[] = {
+ &I021_295_MH_VALUE,
+ NULL
+};
+static const AsterixField I021_295_MH = { FIXED, 1, 0, 0, &hf_021_295_MH, I021_295_MH_PARTS, { NULL } };
+static int hf_021_295_BVR = -1;
+static int hf_021_295_BVR_VALUE = -1;
+static const FieldPart I021_295_BVR_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_295_BVR_VALUE, NULL };
+static const FieldPart *I021_295_BVR_PARTS[] = {
+ &I021_295_BVR_VALUE,
+ NULL
+};
+static const AsterixField I021_295_BVR = { FIXED, 1, 0, 0, &hf_021_295_BVR, I021_295_BVR_PARTS, { NULL } };
+static int hf_021_295_GVR = -1;
+static int hf_021_295_GVR_VALUE = -1;
+static const FieldPart I021_295_GVR_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_295_GVR_VALUE, NULL };
+static const FieldPart *I021_295_GVR_PARTS[] = {
+ &I021_295_GVR_VALUE,
+ NULL
+};
+static const AsterixField I021_295_GVR = { FIXED, 1, 0, 0, &hf_021_295_GVR, I021_295_GVR_PARTS, { NULL } };
+static int hf_021_295_GV = -1;
+static int hf_021_295_GV_VALUE = -1;
+static const FieldPart I021_295_GV_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_295_GV_VALUE, NULL };
+static const FieldPart *I021_295_GV_PARTS[] = {
+ &I021_295_GV_VALUE,
+ NULL
+};
+static const AsterixField I021_295_GV = { FIXED, 1, 0, 0, &hf_021_295_GV, I021_295_GV_PARTS, { NULL } };
+static int hf_021_295_TAR = -1;
+static int hf_021_295_TAR_VALUE = -1;
+static const FieldPart I021_295_TAR_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_295_TAR_VALUE, NULL };
+static const FieldPart *I021_295_TAR_PARTS[] = {
+ &I021_295_TAR_VALUE,
+ NULL
+};
+static const AsterixField I021_295_TAR = { FIXED, 1, 0, 0, &hf_021_295_TAR, I021_295_TAR_PARTS, { NULL } };
+static int hf_021_295_TI2 = -1;
+static int hf_021_295_TI2_VALUE = -1;
+static const FieldPart I021_295_TI2_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_295_TI2_VALUE, NULL };
+static const FieldPart *I021_295_TI2_PARTS[] = {
+ &I021_295_TI2_VALUE,
+ NULL
+};
+static const AsterixField I021_295_TI2 = { FIXED, 1, 0, 0, &hf_021_295_TI2, I021_295_TI2_PARTS, { NULL } };
+static int hf_021_295_TS = -1;
+static int hf_021_295_TS_VALUE = -1;
+static const FieldPart I021_295_TS_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_295_TS_VALUE, NULL };
+static const FieldPart *I021_295_TS_PARTS[] = {
+ &I021_295_TS_VALUE,
+ NULL
+};
+static const AsterixField I021_295_TS = { FIXED, 1, 0, 0, &hf_021_295_TS, I021_295_TS_PARTS, { NULL } };
+static int hf_021_295_MET = -1;
+static int hf_021_295_MET_VALUE = -1;
+static const FieldPart I021_295_MET_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_295_MET_VALUE, NULL };
+static const FieldPart *I021_295_MET_PARTS[] = {
+ &I021_295_MET_VALUE,
+ NULL
+};
+static const AsterixField I021_295_MET = { FIXED, 1, 0, 0, &hf_021_295_MET, I021_295_MET_PARTS, { NULL } };
+static int hf_021_295_ROA = -1;
+static int hf_021_295_ROA_VALUE = -1;
+static const FieldPart I021_295_ROA_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_295_ROA_VALUE, NULL };
+static const FieldPart *I021_295_ROA_PARTS[] = {
+ &I021_295_ROA_VALUE,
+ NULL
+};
+static const AsterixField I021_295_ROA = { FIXED, 1, 0, 0, &hf_021_295_ROA, I021_295_ROA_PARTS, { NULL } };
+static int hf_021_295_ARA = -1;
+static int hf_021_295_ARA_VALUE = -1;
+static const FieldPart I021_295_ARA_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_295_ARA_VALUE, NULL };
+static const FieldPart *I021_295_ARA_PARTS[] = {
+ &I021_295_ARA_VALUE,
+ NULL
+};
+static const AsterixField I021_295_ARA = { FIXED, 1, 0, 0, &hf_021_295_ARA, I021_295_ARA_PARTS, { NULL } };
+static int hf_021_295_SCC = -1;
+static int hf_021_295_SCC_VALUE = -1;
+static const FieldPart I021_295_SCC_VALUE = { 8, 0.1, FIELD_PART_UFLOAT, &hf_021_295_SCC_VALUE, NULL };
+static const FieldPart *I021_295_SCC_PARTS[] = {
+ &I021_295_SCC_VALUE,
+ NULL
+};
+static const AsterixField I021_295_SCC = { FIXED, 1, 0, 0, &hf_021_295_SCC, I021_295_SCC_PARTS, { NULL } };
+static const AsterixField I021_295 = { COMPOUND, 0, 0, 0, &hf_021_295, NULL, { &I021_295_AOS, &I021_295_TRD, &I021_295_M3A, &I021_295_QI, &I021_295_TI1, &I021_295_MAM, &I021_295_GH, &I021_295_FL, &I021_295_SAL, &I021_295_FSA, &I021_295_AS, &I021_295_TAS, &I021_295_MH, &I021_295_BVR, &I021_295_GVR, &I021_295_GV, &I021_295_TAR, &I021_295_TI2, &I021_295_TS, &I021_295_MET, &I021_295_ROA, &I021_295_ARA, &I021_295_SCC, NULL } };
+static int hf_021_400 = -1;
+static int hf_021_400_VALUE = -1;
+static const FieldPart I021_400_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_021_400_VALUE, NULL };
+static const FieldPart *I021_400_PARTS[] = {
+ &I021_400_VALUE,
+ NULL
+};
+static const AsterixField I021_400 = { FIXED, 1, 0, 0, &hf_021_400, I021_400_PARTS, { NULL } };
+static int hf_021_RE = -1;
+static const AsterixField I021_RE = { EXP, 0, 0, 1, &hf_021_RE, NULL, { NULL } };
+static int hf_021_SP = -1;
+static const AsterixField I021_SP = { EXP, 0, 0, 1, &hf_021_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I021_V2_6_uap[] = {
+ &I021_V2_6_010,
+ &I021_V2_6_040,
+ &I021_V2_6_161,
+ &I021_V2_6_015,
+ &I021_V2_6_071,
+ &I021_V2_6_130,
+ &I021_V2_6_131,
+ &I021_V2_6_072,
+ &I021_V2_6_150,
+ &I021_V2_6_151,
+ &I021_V2_6_080,
+ &I021_V2_6_073,
+ &I021_V2_6_074,
+ &I021_V2_6_075,
+ &I021_V2_6_076,
+ &I021_V2_6_140,
+ &I021_V2_6_090,
+ &I021_V2_6_210,
+ &I021_V2_6_070,
+ &I021_V2_6_230,
+ &I021_V2_6_145,
+ &I021_V2_6_152,
+ &I021_V2_6_200,
+ &I021_V2_6_155,
+ &I021_V2_6_157,
+ &I021_V2_6_160,
+ &I021_V2_6_165,
+ &I021_V2_6_077,
+ &I021_V2_6_170,
+ &I021_V2_6_020,
+ &I021_V2_6_220,
+ &I021_V2_6_146,
+ &I021_V2_6_148,
+ &I021_V2_6_110,
+ &I021_V2_6_016,
+ &I021_V2_6_008,
+ &I021_V2_6_271,
+ &I021_V2_6_132,
+ &I021_V2_6_250,
+ &I021_V2_6_260,
+ &I021_V2_6_400,
+ &I021_V2_6_295,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I021_V2_6_RE,
+ &I021_V2_6_SP,
+ NULL
+};
+static const AsterixField **I021_V2_6[] = {
+ I021_V2_6_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I021_uap[] = {
+ &I021_010,
+ &I021_040,
+ &I021_161,
+ &I021_015,
+ &I021_071,
+ &I021_130,
+ &I021_131,
+ &I021_072,
+ &I021_150,
+ &I021_151,
+ &I021_080,
+ &I021_073,
+ &I021_074,
+ &I021_075,
+ &I021_076,
+ &I021_140,
+ &I021_090,
+ &I021_210,
+ &I021_070,
+ &I021_230,
+ &I021_145,
+ &I021_152,
+ &I021_200,
+ &I021_155,
+ &I021_157,
+ &I021_160,
+ &I021_165,
+ &I021_077,
+ &I021_170,
+ &I021_020,
+ &I021_220,
+ &I021_146,
+ &I021_148,
+ &I021_110,
+ &I021_016,
+ &I021_008,
+ &I021_271,
+ &I021_132,
+ &I021_250,
+ &I021_260,
+ &I021_400,
+ &I021_295,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I021_RE,
+ &I021_SP,
+ NULL
+};
+static const AsterixField **I021[] = {
+ I021_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 023, edition 1.2 */
+static int hf_023_V1_2_000 = -1;
+static int hf_023_V1_2_000_VALUE = -1;
+static const value_string valstr_023_V1_2_000_VALUE[] = {
+ { 1, "Ground station status report" },
+ { 2, "Service status report" },
+ { 3, "Service statistics report" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_2_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_023_V1_2_000_VALUE, NULL };
+static const FieldPart *I023_V1_2_000_PARTS[] = {
+ &I023_V1_2_000_VALUE,
+ NULL
+};
+static const AsterixField I023_V1_2_000 = { FIXED, 1, 0, 0, &hf_023_V1_2_000, I023_V1_2_000_PARTS, { NULL } };
+static int hf_023_V1_2_010 = -1;
+static int hf_023_V1_2_010_SAC = -1;
+static const FieldPart I023_V1_2_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_023_V1_2_010_SAC, NULL };
+static int hf_023_V1_2_010_SIC = -1;
+static const FieldPart I023_V1_2_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_023_V1_2_010_SIC, NULL };
+static const FieldPart *I023_V1_2_010_PARTS[] = {
+ &I023_V1_2_010_SAC,
+ &I023_V1_2_010_SIC,
+ NULL
+};
+static const AsterixField I023_V1_2_010 = { FIXED, 2, 0, 0, &hf_023_V1_2_010, I023_V1_2_010_PARTS, { NULL } };
+static int hf_023_V1_2_015 = -1;
+static int hf_023_V1_2_015_SID = -1;
+static const FieldPart I023_V1_2_015_SID = { 4, 1.0, FIELD_PART_HEX, &hf_023_V1_2_015_SID, NULL };
+static int hf_023_V1_2_015_STYP = -1;
+static const value_string valstr_023_V1_2_015_STYP[] = {
+ { 1, "ADS-B VDL4" },
+ { 2, "ADS-B Ext Squitter" },
+ { 3, "ADS-B UAT" },
+ { 4, "TIS-B VDL4" },
+ { 5, "TIS-B Ext Squitter" },
+ { 6, "TIS-B UAT" },
+ { 7, "FIS-B VDL4" },
+ { 8, "GRAS VDL4" },
+ { 9, "MLT" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_2_015_STYP = { 4, 1.0, FIELD_PART_UINT, &hf_023_V1_2_015_STYP, NULL };
+static const FieldPart *I023_V1_2_015_PARTS[] = {
+ &I023_V1_2_015_SID,
+ &I023_V1_2_015_STYP,
+ NULL
+};
+static const AsterixField I023_V1_2_015 = { FIXED, 1, 0, 0, &hf_023_V1_2_015, I023_V1_2_015_PARTS, { NULL } };
+static int hf_023_V1_2_070 = -1;
+static int hf_023_V1_2_070_VALUE = -1;
+static const FieldPart I023_V1_2_070_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_023_V1_2_070_VALUE, NULL };
+static const FieldPart *I023_V1_2_070_PARTS[] = {
+ &I023_V1_2_070_VALUE,
+ NULL
+};
+static const AsterixField I023_V1_2_070 = { FIXED, 3, 0, 0, &hf_023_V1_2_070, I023_V1_2_070_PARTS, { NULL } };
+static int hf_023_V1_2_100 = -1;
+static int hf_023_V1_2_100_NOGO = -1;
+static const value_string valstr_023_V1_2_100_NOGO[] = {
+ { 0, "Data is released for operational use" },
+ { 1, "Data must not be used operationally" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_2_100_NOGO = { 1, 1.0, FIELD_PART_UINT, &hf_023_V1_2_100_NOGO, NULL };
+static int hf_023_V1_2_100_ODP = -1;
+static const value_string valstr_023_V1_2_100_ODP[] = {
+ { 0, "Default, no overload" },
+ { 1, "Overload in DP" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_2_100_ODP = { 1, 1.0, FIELD_PART_UINT, &hf_023_V1_2_100_ODP, NULL };
+static int hf_023_V1_2_100_OXT = -1;
+static const value_string valstr_023_V1_2_100_OXT[] = {
+ { 0, "Default, no overload" },
+ { 1, "Overload in transmission subsystem" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_2_100_OXT = { 1, 1.0, FIELD_PART_UINT, &hf_023_V1_2_100_OXT, NULL };
+static int hf_023_V1_2_100_MSC = -1;
+static const value_string valstr_023_V1_2_100_MSC[] = {
+ { 0, "Monitoring system not connected or unknown" },
+ { 1, "Monitoring system connected" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_2_100_MSC = { 1, 1.0, FIELD_PART_UINT, &hf_023_V1_2_100_MSC, NULL };
+static int hf_023_V1_2_100_TSV = -1;
+static const value_string valstr_023_V1_2_100_TSV[] = {
+ { 0, "Valid" },
+ { 1, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_2_100_TSV = { 1, 1.0, FIELD_PART_UINT, &hf_023_V1_2_100_TSV, NULL };
+static int hf_023_V1_2_100_SPO = -1;
+static const value_string valstr_023_V1_2_100_SPO[] = {
+ { 0, "No spoofing detected" },
+ { 1, "Potential spoofing attack" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_2_100_SPO = { 1, 1.0, FIELD_PART_UINT, &hf_023_V1_2_100_SPO, NULL };
+static int hf_023_V1_2_100_RN = -1;
+static const value_string valstr_023_V1_2_100_RN[] = {
+ { 0, "Default" },
+ { 1, "Track numbering has restarted" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_2_100_RN = { 1, 1.0, FIELD_PART_UINT, &hf_023_V1_2_100_RN, NULL };
+static int hf_023_V1_2_100_GSSP = -1;
+static const FieldPart I023_V1_2_100_GSSP = { 7, 1.0, FIELD_PART_UFLOAT, &hf_023_V1_2_100_GSSP, NULL };
+static const FieldPart *I023_V1_2_100_PARTS[] = {
+ &I023_V1_2_100_NOGO,
+ &I023_V1_2_100_ODP,
+ &I023_V1_2_100_OXT,
+ &I023_V1_2_100_MSC,
+ &I023_V1_2_100_TSV,
+ &I023_V1_2_100_SPO,
+ &I023_V1_2_100_RN,
+ &IXXX_FX,
+ &I023_V1_2_100_GSSP,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I023_V1_2_100 = { FX, 1, 0, 0, &hf_023_V1_2_100, I023_V1_2_100_PARTS, { NULL } };
+static int hf_023_V1_2_101 = -1;
+static int hf_023_V1_2_101_RP = -1;
+static const FieldPart I023_V1_2_101_RP = { 8, 0.5, FIELD_PART_UFLOAT, &hf_023_V1_2_101_RP, NULL };
+static int hf_023_V1_2_101_SC = -1;
+static const value_string valstr_023_V1_2_101_SC[] = {
+ { 0, "No information" },
+ { 1, "NRA class" },
+ { 2, "Reserved for future use" },
+ { 3, "Reserved for future use" },
+ { 4, "Reserved for future use" },
+ { 5, "Reserved for future use" },
+ { 6, "Reserved for future use" },
+ { 7, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_2_101_SC = { 3, 1.0, FIELD_PART_UINT, &hf_023_V1_2_101_SC, NULL };
+static int hf_023_V1_2_101_SSRP = -1;
+static const FieldPart I023_V1_2_101_SSRP = { 7, 1.0, FIELD_PART_UFLOAT, &hf_023_V1_2_101_SSRP, NULL };
+static const FieldPart *I023_V1_2_101_PARTS[] = {
+ &I023_V1_2_101_RP,
+ &I023_V1_2_101_SC,
+ &IXXX_4bit_spare,
+ &IXXX_FX,
+ &I023_V1_2_101_SSRP,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I023_V1_2_101 = { FX, 2, 0, 0, &hf_023_V1_2_101, I023_V1_2_101_PARTS, { NULL } };
+static int hf_023_V1_2_110 = -1;
+static int hf_023_V1_2_110_STAT = -1;
+static const value_string valstr_023_V1_2_110_STAT[] = {
+ { 0, "Unknown" },
+ { 1, "Failed" },
+ { 2, "Disabled" },
+ { 3, "Degraded" },
+ { 4, "Normal" },
+ { 5, "Initialisation" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_2_110_STAT = { 3, 1.0, FIELD_PART_UINT, &hf_023_V1_2_110_STAT, NULL };
+static const FieldPart *I023_V1_2_110_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I023_V1_2_110_STAT,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I023_V1_2_110 = { FX, 1, 0, 0, &hf_023_V1_2_110, I023_V1_2_110_PARTS, { NULL } };
+static int hf_023_V1_2_120 = -1;
+static int hf_023_V1_2_120_TYPE = -1;
+static const value_string valstr_023_V1_2_120_TYPE[] = {
+ { 0, "Number of unknown messages received" },
+ { 1, "Number of too old messages received" },
+ { 2, "Number of failed message conversions" },
+ { 3, "Total Number of messages received" },
+ { 4, "Total Number of messages transmitted" },
+ { 20, "Number of TIS-B management messages received" },
+ { 21, "Number of Basic messages received" },
+ { 22, "Number of High Dynamic messages received" },
+ { 23, "Number of Full Position messages received" },
+ { 24, "Number of Basic Ground messages received" },
+ { 25, "Number of TCP messages received" },
+ { 26, "Number of UTC time messages received" },
+ { 27, "Number of Data messages received" },
+ { 28, "Number of High Resolution messages received" },
+ { 29, "Number of Aircraft Target Airborne messages received" },
+ { 30, "Number of Aircraft Target Ground messages received" },
+ { 31, "Number of Ground Vehicle Target messages received" },
+ { 32, "Number of 2 slots TCP messages received" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_2_120_TYPE = { 8, 1.0, FIELD_PART_UINT, &hf_023_V1_2_120_TYPE, NULL };
+static int hf_023_V1_2_120_REF = -1;
+static const value_string valstr_023_V1_2_120_REF[] = {
+ { 0, "From midnight" },
+ { 1, "From the last report" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_2_120_REF = { 1, 1.0, FIELD_PART_UINT, &hf_023_V1_2_120_REF, NULL };
+static int hf_023_V1_2_120_CV = -1;
+static const FieldPart I023_V1_2_120_CV = { 32, 1.0, FIELD_PART_HEX, &hf_023_V1_2_120_CV, NULL };
+static const FieldPart *I023_V1_2_120_PARTS[] = {
+ &I023_V1_2_120_TYPE,
+ &I023_V1_2_120_REF,
+ &IXXX_7bit_spare,
+ &I023_V1_2_120_CV,
+ NULL
+};
+static const AsterixField I023_V1_2_120 = { REPETITIVE, 6, 1, 0, &hf_023_V1_2_120, I023_V1_2_120_PARTS, { NULL } };
+static int hf_023_V1_2_200 = -1;
+static int hf_023_V1_2_200_VALUE = -1;
+static const FieldPart I023_V1_2_200_VALUE = { 8, 1.0, FIELD_PART_UFLOAT, &hf_023_V1_2_200_VALUE, NULL };
+static const FieldPart *I023_V1_2_200_PARTS[] = {
+ &I023_V1_2_200_VALUE,
+ NULL
+};
+static const AsterixField I023_V1_2_200 = { FIXED, 1, 0, 0, &hf_023_V1_2_200, I023_V1_2_200_PARTS, { NULL } };
+static int hf_023_V1_2_RE = -1;
+static const AsterixField I023_V1_2_RE = { EXP, 0, 0, 1, &hf_023_V1_2_RE, NULL, { NULL } };
+static int hf_023_V1_2_SP = -1;
+static const AsterixField I023_V1_2_SP = { EXP, 0, 0, 1, &hf_023_V1_2_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I023_V1_2_uap[] = {
+ &I023_V1_2_010,
+ &I023_V1_2_000,
+ &I023_V1_2_015,
+ &I023_V1_2_070,
+ &I023_V1_2_100,
+ &I023_V1_2_101,
+ &I023_V1_2_200,
+ &I023_V1_2_110,
+ &I023_V1_2_120,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I023_V1_2_RE,
+ &I023_V1_2_SP,
+ NULL
+};
+static const AsterixField **I023_V1_2[] = {
+ I023_V1_2_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 023, edition 1.3 */
+static int hf_023_V1_3_000 = -1;
+static int hf_023_V1_3_000_VALUE = -1;
+static const value_string valstr_023_V1_3_000_VALUE[] = {
+ { 1, "Ground station status report" },
+ { 2, "Service status report" },
+ { 3, "Service statistics report" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_3_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_023_V1_3_000_VALUE, NULL };
+static const FieldPart *I023_V1_3_000_PARTS[] = {
+ &I023_V1_3_000_VALUE,
+ NULL
+};
+static const AsterixField I023_V1_3_000 = { FIXED, 1, 0, 0, &hf_023_V1_3_000, I023_V1_3_000_PARTS, { NULL } };
+static int hf_023_V1_3_010 = -1;
+static int hf_023_V1_3_010_SAC = -1;
+static const FieldPart I023_V1_3_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_023_V1_3_010_SAC, NULL };
+static int hf_023_V1_3_010_SIC = -1;
+static const FieldPart I023_V1_3_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_023_V1_3_010_SIC, NULL };
+static const FieldPart *I023_V1_3_010_PARTS[] = {
+ &I023_V1_3_010_SAC,
+ &I023_V1_3_010_SIC,
+ NULL
+};
+static const AsterixField I023_V1_3_010 = { FIXED, 2, 0, 0, &hf_023_V1_3_010, I023_V1_3_010_PARTS, { NULL } };
+static int hf_023_V1_3_015 = -1;
+static int hf_023_V1_3_015_SID = -1;
+static const FieldPart I023_V1_3_015_SID = { 4, 1.0, FIELD_PART_HEX, &hf_023_V1_3_015_SID, NULL };
+static int hf_023_V1_3_015_STYP = -1;
+static const value_string valstr_023_V1_3_015_STYP[] = {
+ { 1, "ADS-B VDL4" },
+ { 2, "ADS-B Ext Squitter" },
+ { 3, "ADS-B UAT" },
+ { 4, "TIS-B VDL4" },
+ { 5, "TIS-B Ext Squitter" },
+ { 6, "TIS-B UAT" },
+ { 7, "FIS-B VDL4" },
+ { 8, "GRAS VDL4" },
+ { 9, "MLT" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_3_015_STYP = { 4, 1.0, FIELD_PART_UINT, &hf_023_V1_3_015_STYP, NULL };
+static const FieldPart *I023_V1_3_015_PARTS[] = {
+ &I023_V1_3_015_SID,
+ &I023_V1_3_015_STYP,
+ NULL
+};
+static const AsterixField I023_V1_3_015 = { FIXED, 1, 0, 0, &hf_023_V1_3_015, I023_V1_3_015_PARTS, { NULL } };
+static int hf_023_V1_3_070 = -1;
+static int hf_023_V1_3_070_VALUE = -1;
+static const FieldPart I023_V1_3_070_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_023_V1_3_070_VALUE, NULL };
+static const FieldPart *I023_V1_3_070_PARTS[] = {
+ &I023_V1_3_070_VALUE,
+ NULL
+};
+static const AsterixField I023_V1_3_070 = { FIXED, 3, 0, 0, &hf_023_V1_3_070, I023_V1_3_070_PARTS, { NULL } };
+static int hf_023_V1_3_100 = -1;
+static int hf_023_V1_3_100_NOGO = -1;
+static const value_string valstr_023_V1_3_100_NOGO[] = {
+ { 0, "Data is released for operational use" },
+ { 1, "Data must not be used operationally" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_3_100_NOGO = { 1, 1.0, FIELD_PART_UINT, &hf_023_V1_3_100_NOGO, NULL };
+static int hf_023_V1_3_100_ODP = -1;
+static const value_string valstr_023_V1_3_100_ODP[] = {
+ { 0, "Default, no overload" },
+ { 1, "Overload in DP" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_3_100_ODP = { 1, 1.0, FIELD_PART_UINT, &hf_023_V1_3_100_ODP, NULL };
+static int hf_023_V1_3_100_OXT = -1;
+static const value_string valstr_023_V1_3_100_OXT[] = {
+ { 0, "Default, no overload" },
+ { 1, "Overload in transmission subsystem" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_3_100_OXT = { 1, 1.0, FIELD_PART_UINT, &hf_023_V1_3_100_OXT, NULL };
+static int hf_023_V1_3_100_MSC = -1;
+static const value_string valstr_023_V1_3_100_MSC[] = {
+ { 0, "Monitoring system not connected or unknown" },
+ { 1, "Monitoring system connected" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_3_100_MSC = { 1, 1.0, FIELD_PART_UINT, &hf_023_V1_3_100_MSC, NULL };
+static int hf_023_V1_3_100_TSV = -1;
+static const value_string valstr_023_V1_3_100_TSV[] = {
+ { 0, "Valid" },
+ { 1, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_3_100_TSV = { 1, 1.0, FIELD_PART_UINT, &hf_023_V1_3_100_TSV, NULL };
+static int hf_023_V1_3_100_SPO = -1;
+static const value_string valstr_023_V1_3_100_SPO[] = {
+ { 0, "No spoofing detected" },
+ { 1, "Potential spoofing attack" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_3_100_SPO = { 1, 1.0, FIELD_PART_UINT, &hf_023_V1_3_100_SPO, NULL };
+static int hf_023_V1_3_100_RN = -1;
+static const value_string valstr_023_V1_3_100_RN[] = {
+ { 0, "Default" },
+ { 1, "Track numbering has restarted" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_3_100_RN = { 1, 1.0, FIELD_PART_UINT, &hf_023_V1_3_100_RN, NULL };
+static int hf_023_V1_3_100_GSSP = -1;
+static const FieldPart I023_V1_3_100_GSSP = { 7, 1.0, FIELD_PART_UFLOAT, &hf_023_V1_3_100_GSSP, NULL };
+static const FieldPart *I023_V1_3_100_PARTS[] = {
+ &I023_V1_3_100_NOGO,
+ &I023_V1_3_100_ODP,
+ &I023_V1_3_100_OXT,
+ &I023_V1_3_100_MSC,
+ &I023_V1_3_100_TSV,
+ &I023_V1_3_100_SPO,
+ &I023_V1_3_100_RN,
+ &IXXX_FX,
+ &I023_V1_3_100_GSSP,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I023_V1_3_100 = { FX, 1, 0, 0, &hf_023_V1_3_100, I023_V1_3_100_PARTS, { NULL } };
+static int hf_023_V1_3_101 = -1;
+static int hf_023_V1_3_101_RP = -1;
+static const FieldPart I023_V1_3_101_RP = { 8, 0.5, FIELD_PART_UFLOAT, &hf_023_V1_3_101_RP, NULL };
+static int hf_023_V1_3_101_SC = -1;
+static const value_string valstr_023_V1_3_101_SC[] = {
+ { 0, "No information" },
+ { 1, "NRA class" },
+ { 2, "Reserved for future use" },
+ { 3, "Reserved for future use" },
+ { 4, "Reserved for future use" },
+ { 5, "Reserved for future use" },
+ { 6, "Reserved for future use" },
+ { 7, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_3_101_SC = { 3, 1.0, FIELD_PART_UINT, &hf_023_V1_3_101_SC, NULL };
+static int hf_023_V1_3_101_SSRP = -1;
+static const FieldPart I023_V1_3_101_SSRP = { 7, 1.0, FIELD_PART_UFLOAT, &hf_023_V1_3_101_SSRP, NULL };
+static const FieldPart *I023_V1_3_101_PARTS[] = {
+ &I023_V1_3_101_RP,
+ &I023_V1_3_101_SC,
+ &IXXX_4bit_spare,
+ &IXXX_FX,
+ &I023_V1_3_101_SSRP,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I023_V1_3_101 = { FX, 2, 0, 0, &hf_023_V1_3_101, I023_V1_3_101_PARTS, { NULL } };
+static int hf_023_V1_3_110 = -1;
+static int hf_023_V1_3_110_STAT = -1;
+static const value_string valstr_023_V1_3_110_STAT[] = {
+ { 0, "Unknown" },
+ { 1, "Failed" },
+ { 2, "Disabled" },
+ { 3, "Degraded" },
+ { 4, "Normal" },
+ { 5, "Initialisation" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_3_110_STAT = { 3, 1.0, FIELD_PART_UINT, &hf_023_V1_3_110_STAT, NULL };
+static const FieldPart *I023_V1_3_110_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I023_V1_3_110_STAT,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I023_V1_3_110 = { FX, 1, 0, 0, &hf_023_V1_3_110, I023_V1_3_110_PARTS, { NULL } };
+static int hf_023_V1_3_120 = -1;
+static int hf_023_V1_3_120_TYPE = -1;
+static const value_string valstr_023_V1_3_120_TYPE[] = {
+ { 0, "Number of unknown messages received" },
+ { 1, "Number of too old messages received" },
+ { 2, "Number of failed message conversions" },
+ { 3, "Total Number of messages received" },
+ { 4, "Total Number of messages transmitted" },
+ { 20, "Number of TIS-B management messages received" },
+ { 21, "Number of Basic messages received" },
+ { 22, "Number of High Dynamic messages received" },
+ { 23, "Number of Full Position messages received" },
+ { 24, "Number of Basic Ground messages received" },
+ { 25, "Number of TCP messages received" },
+ { 26, "Number of UTC time messages received" },
+ { 27, "Number of Data messages received" },
+ { 28, "Number of High Resolution messages received" },
+ { 29, "Number of Aircraft Target Airborne messages received" },
+ { 30, "Number of Aircraft Target Ground messages received" },
+ { 31, "Number of Ground Vehicle Target messages received" },
+ { 32, "Number of 2 slots TCP messages received" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_3_120_TYPE = { 8, 1.0, FIELD_PART_UINT, &hf_023_V1_3_120_TYPE, NULL };
+static int hf_023_V1_3_120_REF = -1;
+static const value_string valstr_023_V1_3_120_REF[] = {
+ { 0, "From midnight" },
+ { 1, "From the last report" },
+ { 0, NULL }
+};
+static const FieldPart I023_V1_3_120_REF = { 1, 1.0, FIELD_PART_UINT, &hf_023_V1_3_120_REF, NULL };
+static int hf_023_V1_3_120_CV = -1;
+static const FieldPart I023_V1_3_120_CV = { 32, 1.0, FIELD_PART_HEX, &hf_023_V1_3_120_CV, NULL };
+static const FieldPart *I023_V1_3_120_PARTS[] = {
+ &I023_V1_3_120_TYPE,
+ &I023_V1_3_120_REF,
+ &IXXX_7bit_spare,
+ &I023_V1_3_120_CV,
+ NULL
+};
+static const AsterixField I023_V1_3_120 = { REPETITIVE, 6, 1, 0, &hf_023_V1_3_120, I023_V1_3_120_PARTS, { NULL } };
+static int hf_023_V1_3_200 = -1;
+static int hf_023_V1_3_200_VALUE = -1;
+static const FieldPart I023_V1_3_200_VALUE = { 8, 1.0, FIELD_PART_UFLOAT, &hf_023_V1_3_200_VALUE, NULL };
+static const FieldPart *I023_V1_3_200_PARTS[] = {
+ &I023_V1_3_200_VALUE,
+ NULL
+};
+static const AsterixField I023_V1_3_200 = { FIXED, 1, 0, 0, &hf_023_V1_3_200, I023_V1_3_200_PARTS, { NULL } };
+static int hf_023_V1_3_RE = -1;
+static const AsterixField I023_V1_3_RE = { EXP, 0, 0, 1, &hf_023_V1_3_RE, NULL, { NULL } };
+static int hf_023_V1_3_SP = -1;
+static const AsterixField I023_V1_3_SP = { EXP, 0, 0, 1, &hf_023_V1_3_SP, NULL, { NULL } };
+
+/* Category 023, edition 1.3 (latest) */
+static int hf_023_000 = -1;
+static int hf_023_000_VALUE = -1;
+static const value_string valstr_023_000_VALUE[] = {
+ { 1, "Ground station status report" },
+ { 2, "Service status report" },
+ { 3, "Service statistics report" },
+ { 0, NULL }
+};
+static const FieldPart I023_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_023_000_VALUE, NULL };
+static const FieldPart *I023_000_PARTS[] = {
+ &I023_000_VALUE,
+ NULL
+};
+static const AsterixField I023_000 = { FIXED, 1, 0, 0, &hf_023_000, I023_000_PARTS, { NULL } };
+static int hf_023_010 = -1;
+static int hf_023_010_SAC = -1;
+static const FieldPart I023_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_023_010_SAC, NULL };
+static int hf_023_010_SIC = -1;
+static const FieldPart I023_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_023_010_SIC, NULL };
+static const FieldPart *I023_010_PARTS[] = {
+ &I023_010_SAC,
+ &I023_010_SIC,
+ NULL
+};
+static const AsterixField I023_010 = { FIXED, 2, 0, 0, &hf_023_010, I023_010_PARTS, { NULL } };
+static int hf_023_015 = -1;
+static int hf_023_015_SID = -1;
+static const FieldPart I023_015_SID = { 4, 1.0, FIELD_PART_HEX, &hf_023_015_SID, NULL };
+static int hf_023_015_STYP = -1;
+static const value_string valstr_023_015_STYP[] = {
+ { 1, "ADS-B VDL4" },
+ { 2, "ADS-B Ext Squitter" },
+ { 3, "ADS-B UAT" },
+ { 4, "TIS-B VDL4" },
+ { 5, "TIS-B Ext Squitter" },
+ { 6, "TIS-B UAT" },
+ { 7, "FIS-B VDL4" },
+ { 8, "GRAS VDL4" },
+ { 9, "MLT" },
+ { 0, NULL }
+};
+static const FieldPart I023_015_STYP = { 4, 1.0, FIELD_PART_UINT, &hf_023_015_STYP, NULL };
+static const FieldPart *I023_015_PARTS[] = {
+ &I023_015_SID,
+ &I023_015_STYP,
+ NULL
+};
+static const AsterixField I023_015 = { FIXED, 1, 0, 0, &hf_023_015, I023_015_PARTS, { NULL } };
+static int hf_023_070 = -1;
+static int hf_023_070_VALUE = -1;
+static const FieldPart I023_070_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_023_070_VALUE, NULL };
+static const FieldPart *I023_070_PARTS[] = {
+ &I023_070_VALUE,
+ NULL
+};
+static const AsterixField I023_070 = { FIXED, 3, 0, 0, &hf_023_070, I023_070_PARTS, { NULL } };
+static int hf_023_100 = -1;
+static int hf_023_100_NOGO = -1;
+static const value_string valstr_023_100_NOGO[] = {
+ { 0, "Data is released for operational use" },
+ { 1, "Data must not be used operationally" },
+ { 0, NULL }
+};
+static const FieldPart I023_100_NOGO = { 1, 1.0, FIELD_PART_UINT, &hf_023_100_NOGO, NULL };
+static int hf_023_100_ODP = -1;
+static const value_string valstr_023_100_ODP[] = {
+ { 0, "Default, no overload" },
+ { 1, "Overload in DP" },
+ { 0, NULL }
+};
+static const FieldPart I023_100_ODP = { 1, 1.0, FIELD_PART_UINT, &hf_023_100_ODP, NULL };
+static int hf_023_100_OXT = -1;
+static const value_string valstr_023_100_OXT[] = {
+ { 0, "Default, no overload" },
+ { 1, "Overload in transmission subsystem" },
+ { 0, NULL }
+};
+static const FieldPart I023_100_OXT = { 1, 1.0, FIELD_PART_UINT, &hf_023_100_OXT, NULL };
+static int hf_023_100_MSC = -1;
+static const value_string valstr_023_100_MSC[] = {
+ { 0, "Monitoring system not connected or unknown" },
+ { 1, "Monitoring system connected" },
+ { 0, NULL }
+};
+static const FieldPart I023_100_MSC = { 1, 1.0, FIELD_PART_UINT, &hf_023_100_MSC, NULL };
+static int hf_023_100_TSV = -1;
+static const value_string valstr_023_100_TSV[] = {
+ { 0, "Valid" },
+ { 1, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I023_100_TSV = { 1, 1.0, FIELD_PART_UINT, &hf_023_100_TSV, NULL };
+static int hf_023_100_SPO = -1;
+static const value_string valstr_023_100_SPO[] = {
+ { 0, "No spoofing detected" },
+ { 1, "Potential spoofing attack" },
+ { 0, NULL }
+};
+static const FieldPart I023_100_SPO = { 1, 1.0, FIELD_PART_UINT, &hf_023_100_SPO, NULL };
+static int hf_023_100_RN = -1;
+static const value_string valstr_023_100_RN[] = {
+ { 0, "Default" },
+ { 1, "Track numbering has restarted" },
+ { 0, NULL }
+};
+static const FieldPart I023_100_RN = { 1, 1.0, FIELD_PART_UINT, &hf_023_100_RN, NULL };
+static int hf_023_100_GSSP = -1;
+static const FieldPart I023_100_GSSP = { 7, 1.0, FIELD_PART_UFLOAT, &hf_023_100_GSSP, NULL };
+static const FieldPart *I023_100_PARTS[] = {
+ &I023_100_NOGO,
+ &I023_100_ODP,
+ &I023_100_OXT,
+ &I023_100_MSC,
+ &I023_100_TSV,
+ &I023_100_SPO,
+ &I023_100_RN,
+ &IXXX_FX,
+ &I023_100_GSSP,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I023_100 = { FX, 1, 0, 0, &hf_023_100, I023_100_PARTS, { NULL } };
+static int hf_023_101 = -1;
+static int hf_023_101_RP = -1;
+static const FieldPart I023_101_RP = { 8, 0.5, FIELD_PART_UFLOAT, &hf_023_101_RP, NULL };
+static int hf_023_101_SC = -1;
+static const value_string valstr_023_101_SC[] = {
+ { 0, "No information" },
+ { 1, "NRA class" },
+ { 2, "Reserved for future use" },
+ { 3, "Reserved for future use" },
+ { 4, "Reserved for future use" },
+ { 5, "Reserved for future use" },
+ { 6, "Reserved for future use" },
+ { 7, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I023_101_SC = { 3, 1.0, FIELD_PART_UINT, &hf_023_101_SC, NULL };
+static int hf_023_101_SSRP = -1;
+static const FieldPart I023_101_SSRP = { 7, 1.0, FIELD_PART_UFLOAT, &hf_023_101_SSRP, NULL };
+static const FieldPart *I023_101_PARTS[] = {
+ &I023_101_RP,
+ &I023_101_SC,
+ &IXXX_4bit_spare,
+ &IXXX_FX,
+ &I023_101_SSRP,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I023_101 = { FX, 2, 0, 0, &hf_023_101, I023_101_PARTS, { NULL } };
+static int hf_023_110 = -1;
+static int hf_023_110_STAT = -1;
+static const value_string valstr_023_110_STAT[] = {
+ { 0, "Unknown" },
+ { 1, "Failed" },
+ { 2, "Disabled" },
+ { 3, "Degraded" },
+ { 4, "Normal" },
+ { 5, "Initialisation" },
+ { 0, NULL }
+};
+static const FieldPart I023_110_STAT = { 3, 1.0, FIELD_PART_UINT, &hf_023_110_STAT, NULL };
+static const FieldPart *I023_110_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I023_110_STAT,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I023_110 = { FX, 1, 0, 0, &hf_023_110, I023_110_PARTS, { NULL } };
+static int hf_023_120 = -1;
+static int hf_023_120_TYPE = -1;
+static const value_string valstr_023_120_TYPE[] = {
+ { 0, "Number of unknown messages received" },
+ { 1, "Number of too old messages received" },
+ { 2, "Number of failed message conversions" },
+ { 3, "Total Number of messages received" },
+ { 4, "Total Number of messages transmitted" },
+ { 20, "Number of TIS-B management messages received" },
+ { 21, "Number of Basic messages received" },
+ { 22, "Number of High Dynamic messages received" },
+ { 23, "Number of Full Position messages received" },
+ { 24, "Number of Basic Ground messages received" },
+ { 25, "Number of TCP messages received" },
+ { 26, "Number of UTC time messages received" },
+ { 27, "Number of Data messages received" },
+ { 28, "Number of High Resolution messages received" },
+ { 29, "Number of Aircraft Target Airborne messages received" },
+ { 30, "Number of Aircraft Target Ground messages received" },
+ { 31, "Number of Ground Vehicle Target messages received" },
+ { 32, "Number of 2 slots TCP messages received" },
+ { 0, NULL }
+};
+static const FieldPart I023_120_TYPE = { 8, 1.0, FIELD_PART_UINT, &hf_023_120_TYPE, NULL };
+static int hf_023_120_REF = -1;
+static const value_string valstr_023_120_REF[] = {
+ { 0, "From midnight" },
+ { 1, "From the last report" },
+ { 0, NULL }
+};
+static const FieldPart I023_120_REF = { 1, 1.0, FIELD_PART_UINT, &hf_023_120_REF, NULL };
+static int hf_023_120_CV = -1;
+static const FieldPart I023_120_CV = { 32, 1.0, FIELD_PART_HEX, &hf_023_120_CV, NULL };
+static const FieldPart *I023_120_PARTS[] = {
+ &I023_120_TYPE,
+ &I023_120_REF,
+ &IXXX_7bit_spare,
+ &I023_120_CV,
+ NULL
+};
+static const AsterixField I023_120 = { REPETITIVE, 6, 1, 0, &hf_023_120, I023_120_PARTS, { NULL } };
+static int hf_023_200 = -1;
+static int hf_023_200_VALUE = -1;
+static const FieldPart I023_200_VALUE = { 8, 1.0, FIELD_PART_UFLOAT, &hf_023_200_VALUE, NULL };
+static const FieldPart *I023_200_PARTS[] = {
+ &I023_200_VALUE,
+ NULL
+};
+static const AsterixField I023_200 = { FIXED, 1, 0, 0, &hf_023_200, I023_200_PARTS, { NULL } };
+static int hf_023_RE = -1;
+static const AsterixField I023_RE = { EXP, 0, 0, 1, &hf_023_RE, NULL, { NULL } };
+static int hf_023_SP = -1;
+static const AsterixField I023_SP = { EXP, 0, 0, 1, &hf_023_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I023_V1_3_uap[] = {
+ &I023_V1_3_010,
+ &I023_V1_3_000,
+ &I023_V1_3_015,
+ &I023_V1_3_070,
+ &I023_V1_3_100,
+ &I023_V1_3_101,
+ &I023_V1_3_200,
+ &I023_V1_3_110,
+ &I023_V1_3_120,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I023_V1_3_RE,
+ &I023_V1_3_SP,
+ NULL
+};
+static const AsterixField **I023_V1_3[] = {
+ I023_V1_3_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I023_uap[] = {
+ &I023_010,
+ &I023_000,
+ &I023_015,
+ &I023_070,
+ &I023_100,
+ &I023_101,
+ &I023_200,
+ &I023_110,
+ &I023_120,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I023_RE,
+ &I023_SP,
+ NULL
+};
+static const AsterixField **I023[] = {
+ I023_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 025, edition 1.5 */
+static int hf_025_V1_5_000 = -1;
+static int hf_025_V1_5_000_RTYP = -1;
+static const FieldPart I025_V1_5_000_RTYP = { 7, 1.0, FIELD_PART_HEX, &hf_025_V1_5_000_RTYP, NULL };
+static int hf_025_V1_5_000_RG = -1;
+static const value_string valstr_025_V1_5_000_RG[] = {
+ { 0, "Periodic Report" },
+ { 1, "Event Driven Report" },
+ { 0, NULL }
+};
+static const FieldPart I025_V1_5_000_RG = { 1, 1.0, FIELD_PART_UINT, &hf_025_V1_5_000_RG, NULL };
+static const FieldPart *I025_V1_5_000_PARTS[] = {
+ &I025_V1_5_000_RTYP,
+ &I025_V1_5_000_RG,
+ NULL
+};
+static const AsterixField I025_V1_5_000 = { FIXED, 1, 0, 0, &hf_025_V1_5_000, I025_V1_5_000_PARTS, { NULL } };
+static int hf_025_V1_5_010 = -1;
+static int hf_025_V1_5_010_SAC = -1;
+static const FieldPart I025_V1_5_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_025_V1_5_010_SAC, NULL };
+static int hf_025_V1_5_010_SIC = -1;
+static const FieldPart I025_V1_5_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_025_V1_5_010_SIC, NULL };
+static const FieldPart *I025_V1_5_010_PARTS[] = {
+ &I025_V1_5_010_SAC,
+ &I025_V1_5_010_SIC,
+ NULL
+};
+static const AsterixField I025_V1_5_010 = { FIXED, 2, 0, 0, &hf_025_V1_5_010, I025_V1_5_010_PARTS, { NULL } };
+static int hf_025_V1_5_015 = -1;
+static int hf_025_V1_5_015_VALUE = -1;
+static const FieldPart I025_V1_5_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_025_V1_5_015_VALUE, NULL };
+static const FieldPart *I025_V1_5_015_PARTS[] = {
+ &I025_V1_5_015_VALUE,
+ NULL
+};
+static const AsterixField I025_V1_5_015 = { FIXED, 1, 0, 0, &hf_025_V1_5_015, I025_V1_5_015_PARTS, { NULL } };
+static int hf_025_V1_5_020 = -1;
+static int hf_025_V1_5_020_VALUE = -1;
+static const FieldPart I025_V1_5_020_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_025_V1_5_020_VALUE, NULL };
+static const FieldPart *I025_V1_5_020_PARTS[] = {
+ &I025_V1_5_020_VALUE,
+ NULL
+};
+static const AsterixField I025_V1_5_020 = { FIXED, 6, 0, 0, &hf_025_V1_5_020, I025_V1_5_020_PARTS, { NULL } };
+static int hf_025_V1_5_070 = -1;
+static int hf_025_V1_5_070_VALUE = -1;
+static const FieldPart I025_V1_5_070_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_025_V1_5_070_VALUE, NULL };
+static const FieldPart *I025_V1_5_070_PARTS[] = {
+ &I025_V1_5_070_VALUE,
+ NULL
+};
+static const AsterixField I025_V1_5_070 = { FIXED, 3, 0, 0, &hf_025_V1_5_070, I025_V1_5_070_PARTS, { NULL } };
+static int hf_025_V1_5_100 = -1;
+static int hf_025_V1_5_100_NOGO = -1;
+static const value_string valstr_025_V1_5_100_NOGO[] = {
+ { 0, "Data is released for operational use" },
+ { 1, "Data must not be used operationally" },
+ { 0, NULL }
+};
+static const FieldPart I025_V1_5_100_NOGO = { 1, 1.0, FIELD_PART_UINT, &hf_025_V1_5_100_NOGO, NULL };
+static int hf_025_V1_5_100_OPS = -1;
+static const value_string valstr_025_V1_5_100_OPS[] = {
+ { 0, "Operational" },
+ { 1, "Operational but in Standby" },
+ { 2, "Maintenance" },
+ { 3, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I025_V1_5_100_OPS = { 2, 1.0, FIELD_PART_UINT, &hf_025_V1_5_100_OPS, NULL };
+static int hf_025_V1_5_100_SSTAT = -1;
+static const value_string valstr_025_V1_5_100_SSTAT[] = {
+ { 0, "Running" },
+ { 1, "Failed" },
+ { 2, "Degraded" },
+ { 3, "Undefined" },
+ { 4, "Reserved for future use" },
+ { 5, "Reserved for future use" },
+ { 6, "Reserved for future use" },
+ { 7, "Reserved for future use" },
+ { 8, "Reserved for future use" },
+ { 9, "Reserved for future use" },
+ { 10, "Reserved for future use" },
+ { 11, "Reserved for future use" },
+ { 12, "Reserved for future use" },
+ { 13, "Reserved for future use" },
+ { 14, "Reserved for future use" },
+ { 15, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I025_V1_5_100_SSTAT = { 4, 1.0, FIELD_PART_UINT, &hf_025_V1_5_100_SSTAT, NULL };
+static int hf_025_V1_5_100_SYSTAT = -1;
+static const value_string valstr_025_V1_5_100_SYSTAT[] = {
+ { 0, "Running / OK" },
+ { 1, "Failed" },
+ { 2, "Degraded" },
+ { 3, "Undefined" },
+ { 4, "Reserved for future use" },
+ { 5, "Reserved for future use" },
+ { 6, "Reserved for future use" },
+ { 7, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I025_V1_5_100_SYSTAT = { 3, 1.0, FIELD_PART_UINT, &hf_025_V1_5_100_SYSTAT, NULL };
+static int hf_025_V1_5_100_SESTAT = -1;
+static const value_string valstr_025_V1_5_100_SESTAT[] = {
+ { 0, "OK" },
+ { 1, "Failed" },
+ { 2, "Degraded" },
+ { 3, "Undefined" },
+ { 4, "Reserved for future use" },
+ { 5, "Reserved for future use" },
+ { 6, "Reserved for future use" },
+ { 7, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I025_V1_5_100_SESTAT = { 3, 1.0, FIELD_PART_UINT, &hf_025_V1_5_100_SESTAT, NULL };
+static const FieldPart *I025_V1_5_100_PARTS[] = {
+ &I025_V1_5_100_NOGO,
+ &I025_V1_5_100_OPS,
+ &I025_V1_5_100_SSTAT,
+ &IXXX_FX,
+ &IXXX_1bit_spare,
+ &I025_V1_5_100_SYSTAT,
+ &I025_V1_5_100_SESTAT,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I025_V1_5_100 = { FX, 1, 0, 0, &hf_025_V1_5_100, I025_V1_5_100_PARTS, { NULL } };
+static int hf_025_V1_5_105 = -1;
+static int hf_025_V1_5_105_VALUE = -1;
+static const value_string valstr_025_V1_5_105_VALUE[] = {
+ { 0, "No error detected (shall not be sent)" },
+ { 1, "Error Code Undefined" },
+ { 2, "Time Source Invalid" },
+ { 3, "Time Source Coasting" },
+ { 4, "Track ID numbering has restarted" },
+ { 5, "Data Processor Overload" },
+ { 6, "Ground Interface Data Communications Overload" },
+ { 7, "System stopped by operator" },
+ { 8, "CBIT failed" },
+ { 9, "Test Target Failure" },
+ { 10, "Reserved for allocation by the AMG" },
+ { 11, "Reserved for allocation by the AMG" },
+ { 12, "Reserved for allocation by the AMG" },
+ { 13, "Reserved for allocation by the AMG" },
+ { 14, "Reserved for allocation by the AMG" },
+ { 15, "Reserved for allocation by the AMG" },
+ { 16, "Reserved for allocation by the AMG" },
+ { 17, "Reserved for allocation by the AMG" },
+ { 18, "Reserved for allocation by the AMG" },
+ { 19, "Reserved for allocation by the AMG" },
+ { 20, "Reserved for allocation by the AMG" },
+ { 21, "Reserved for allocation by the AMG" },
+ { 22, "Reserved for allocation by the AMG" },
+ { 23, "Reserved for allocation by the AMG" },
+ { 24, "Reserved for allocation by the AMG" },
+ { 25, "Reserved for allocation by the AMG" },
+ { 26, "Reserved for allocation by the AMG" },
+ { 27, "Reserved for allocation by the AMG" },
+ { 28, "Reserved for allocation by the AMG" },
+ { 29, "Reserved for allocation by the AMG" },
+ { 30, "Reserved for allocation by the AMG" },
+ { 31, "Reserved for allocation by the AMG" },
+ { 32, "Reserved for allocation by system manufacturers" },
+ { 33, "Reserved for allocation by system manufacturers" },
+ { 34, "Reserved for allocation by system manufacturers" },
+ { 35, "Reserved for allocation by system manufacturers" },
+ { 36, "Reserved for allocation by system manufacturers" },
+ { 37, "Reserved for allocation by system manufacturers" },
+ { 38, "Reserved for allocation by system manufacturers" },
+ { 39, "Reserved for allocation by system manufacturers" },
+ { 40, "Reserved for allocation by system manufacturers" },
+ { 41, "Reserved for allocation by system manufacturers" },
+ { 42, "Reserved for allocation by system manufacturers" },
+ { 43, "Reserved for allocation by system manufacturers" },
+ { 44, "Reserved for allocation by system manufacturers" },
+ { 45, "Reserved for allocation by system manufacturers" },
+ { 46, "Reserved for allocation by system manufacturers" },
+ { 47, "Reserved for allocation by system manufacturers" },
+ { 48, "Reserved for allocation by system manufacturers" },
+ { 49, "Reserved for allocation by system manufacturers" },
+ { 50, "Reserved for allocation by system manufacturers" },
+ { 51, "Reserved for allocation by system manufacturers" },
+ { 52, "Reserved for allocation by system manufacturers" },
+ { 53, "Reserved for allocation by system manufacturers" },
+ { 54, "Reserved for allocation by system manufacturers" },
+ { 55, "Reserved for allocation by system manufacturers" },
+ { 56, "Reserved for allocation by system manufacturers" },
+ { 57, "Reserved for allocation by system manufacturers" },
+ { 58, "Reserved for allocation by system manufacturers" },
+ { 59, "Reserved for allocation by system manufacturers" },
+ { 60, "Reserved for allocation by system manufacturers" },
+ { 61, "Reserved for allocation by system manufacturers" },
+ { 62, "Reserved for allocation by system manufacturers" },
+ { 63, "Reserved for allocation by system manufacturers" },
+ { 64, "Reserved for allocation by system manufacturers" },
+ { 65, "Reserved for allocation by system manufacturers" },
+ { 66, "Reserved for allocation by system manufacturers" },
+ { 67, "Reserved for allocation by system manufacturers" },
+ { 68, "Reserved for allocation by system manufacturers" },
+ { 69, "Reserved for allocation by system manufacturers" },
+ { 70, "Reserved for allocation by system manufacturers" },
+ { 71, "Reserved for allocation by system manufacturers" },
+ { 72, "Reserved for allocation by system manufacturers" },
+ { 73, "Reserved for allocation by system manufacturers" },
+ { 74, "Reserved for allocation by system manufacturers" },
+ { 75, "Reserved for allocation by system manufacturers" },
+ { 76, "Reserved for allocation by system manufacturers" },
+ { 77, "Reserved for allocation by system manufacturers" },
+ { 78, "Reserved for allocation by system manufacturers" },
+ { 79, "Reserved for allocation by system manufacturers" },
+ { 80, "Reserved for allocation by system manufacturers" },
+ { 81, "Reserved for allocation by system manufacturers" },
+ { 82, "Reserved for allocation by system manufacturers" },
+ { 83, "Reserved for allocation by system manufacturers" },
+ { 84, "Reserved for allocation by system manufacturers" },
+ { 85, "Reserved for allocation by system manufacturers" },
+ { 86, "Reserved for allocation by system manufacturers" },
+ { 87, "Reserved for allocation by system manufacturers" },
+ { 88, "Reserved for allocation by system manufacturers" },
+ { 89, "Reserved for allocation by system manufacturers" },
+ { 90, "Reserved for allocation by system manufacturers" },
+ { 91, "Reserved for allocation by system manufacturers" },
+ { 92, "Reserved for allocation by system manufacturers" },
+ { 93, "Reserved for allocation by system manufacturers" },
+ { 94, "Reserved for allocation by system manufacturers" },
+ { 95, "Reserved for allocation by system manufacturers" },
+ { 96, "Reserved for allocation by system manufacturers" },
+ { 97, "Reserved for allocation by system manufacturers" },
+ { 98, "Reserved for allocation by system manufacturers" },
+ { 99, "Reserved for allocation by system manufacturers" },
+ { 100, "Reserved for allocation by system manufacturers" },
+ { 101, "Reserved for allocation by system manufacturers" },
+ { 102, "Reserved for allocation by system manufacturers" },
+ { 103, "Reserved for allocation by system manufacturers" },
+ { 104, "Reserved for allocation by system manufacturers" },
+ { 105, "Reserved for allocation by system manufacturers" },
+ { 106, "Reserved for allocation by system manufacturers" },
+ { 107, "Reserved for allocation by system manufacturers" },
+ { 108, "Reserved for allocation by system manufacturers" },
+ { 109, "Reserved for allocation by system manufacturers" },
+ { 110, "Reserved for allocation by system manufacturers" },
+ { 111, "Reserved for allocation by system manufacturers" },
+ { 112, "Reserved for allocation by system manufacturers" },
+ { 113, "Reserved for allocation by system manufacturers" },
+ { 114, "Reserved for allocation by system manufacturers" },
+ { 115, "Reserved for allocation by system manufacturers" },
+ { 116, "Reserved for allocation by system manufacturers" },
+ { 117, "Reserved for allocation by system manufacturers" },
+ { 118, "Reserved for allocation by system manufacturers" },
+ { 119, "Reserved for allocation by system manufacturers" },
+ { 120, "Reserved for allocation by system manufacturers" },
+ { 121, "Reserved for allocation by system manufacturers" },
+ { 122, "Reserved for allocation by system manufacturers" },
+ { 123, "Reserved for allocation by system manufacturers" },
+ { 124, "Reserved for allocation by system manufacturers" },
+ { 125, "Reserved for allocation by system manufacturers" },
+ { 126, "Reserved for allocation by system manufacturers" },
+ { 127, "Reserved for allocation by system manufacturers" },
+ { 128, "Reserved for allocation by system manufacturers" },
+ { 129, "Reserved for allocation by system manufacturers" },
+ { 130, "Reserved for allocation by system manufacturers" },
+ { 131, "Reserved for allocation by system manufacturers" },
+ { 132, "Reserved for allocation by system manufacturers" },
+ { 133, "Reserved for allocation by system manufacturers" },
+ { 134, "Reserved for allocation by system manufacturers" },
+ { 135, "Reserved for allocation by system manufacturers" },
+ { 136, "Reserved for allocation by system manufacturers" },
+ { 137, "Reserved for allocation by system manufacturers" },
+ { 138, "Reserved for allocation by system manufacturers" },
+ { 139, "Reserved for allocation by system manufacturers" },
+ { 140, "Reserved for allocation by system manufacturers" },
+ { 141, "Reserved for allocation by system manufacturers" },
+ { 142, "Reserved for allocation by system manufacturers" },
+ { 143, "Reserved for allocation by system manufacturers" },
+ { 144, "Reserved for allocation by system manufacturers" },
+ { 145, "Reserved for allocation by system manufacturers" },
+ { 146, "Reserved for allocation by system manufacturers" },
+ { 147, "Reserved for allocation by system manufacturers" },
+ { 148, "Reserved for allocation by system manufacturers" },
+ { 149, "Reserved for allocation by system manufacturers" },
+ { 150, "Reserved for allocation by system manufacturers" },
+ { 151, "Reserved for allocation by system manufacturers" },
+ { 152, "Reserved for allocation by system manufacturers" },
+ { 153, "Reserved for allocation by system manufacturers" },
+ { 154, "Reserved for allocation by system manufacturers" },
+ { 155, "Reserved for allocation by system manufacturers" },
+ { 156, "Reserved for allocation by system manufacturers" },
+ { 157, "Reserved for allocation by system manufacturers" },
+ { 158, "Reserved for allocation by system manufacturers" },
+ { 159, "Reserved for allocation by system manufacturers" },
+ { 160, "Reserved for allocation by system manufacturers" },
+ { 161, "Reserved for allocation by system manufacturers" },
+ { 162, "Reserved for allocation by system manufacturers" },
+ { 163, "Reserved for allocation by system manufacturers" },
+ { 164, "Reserved for allocation by system manufacturers" },
+ { 165, "Reserved for allocation by system manufacturers" },
+ { 166, "Reserved for allocation by system manufacturers" },
+ { 167, "Reserved for allocation by system manufacturers" },
+ { 168, "Reserved for allocation by system manufacturers" },
+ { 169, "Reserved for allocation by system manufacturers" },
+ { 170, "Reserved for allocation by system manufacturers" },
+ { 171, "Reserved for allocation by system manufacturers" },
+ { 172, "Reserved for allocation by system manufacturers" },
+ { 173, "Reserved for allocation by system manufacturers" },
+ { 174, "Reserved for allocation by system manufacturers" },
+ { 175, "Reserved for allocation by system manufacturers" },
+ { 176, "Reserved for allocation by system manufacturers" },
+ { 177, "Reserved for allocation by system manufacturers" },
+ { 178, "Reserved for allocation by system manufacturers" },
+ { 179, "Reserved for allocation by system manufacturers" },
+ { 180, "Reserved for allocation by system manufacturers" },
+ { 181, "Reserved for allocation by system manufacturers" },
+ { 182, "Reserved for allocation by system manufacturers" },
+ { 183, "Reserved for allocation by system manufacturers" },
+ { 184, "Reserved for allocation by system manufacturers" },
+ { 185, "Reserved for allocation by system manufacturers" },
+ { 186, "Reserved for allocation by system manufacturers" },
+ { 187, "Reserved for allocation by system manufacturers" },
+ { 188, "Reserved for allocation by system manufacturers" },
+ { 189, "Reserved for allocation by system manufacturers" },
+ { 190, "Reserved for allocation by system manufacturers" },
+ { 191, "Reserved for allocation by system manufacturers" },
+ { 192, "Reserved for allocation by system manufacturers" },
+ { 193, "Reserved for allocation by system manufacturers" },
+ { 194, "Reserved for allocation by system manufacturers" },
+ { 195, "Reserved for allocation by system manufacturers" },
+ { 196, "Reserved for allocation by system manufacturers" },
+ { 197, "Reserved for allocation by system manufacturers" },
+ { 198, "Reserved for allocation by system manufacturers" },
+ { 199, "Reserved for allocation by system manufacturers" },
+ { 200, "Reserved for allocation by system manufacturers" },
+ { 201, "Reserved for allocation by system manufacturers" },
+ { 202, "Reserved for allocation by system manufacturers" },
+ { 203, "Reserved for allocation by system manufacturers" },
+ { 204, "Reserved for allocation by system manufacturers" },
+ { 205, "Reserved for allocation by system manufacturers" },
+ { 206, "Reserved for allocation by system manufacturers" },
+ { 207, "Reserved for allocation by system manufacturers" },
+ { 208, "Reserved for allocation by system manufacturers" },
+ { 209, "Reserved for allocation by system manufacturers" },
+ { 210, "Reserved for allocation by system manufacturers" },
+ { 211, "Reserved for allocation by system manufacturers" },
+ { 212, "Reserved for allocation by system manufacturers" },
+ { 213, "Reserved for allocation by system manufacturers" },
+ { 214, "Reserved for allocation by system manufacturers" },
+ { 215, "Reserved for allocation by system manufacturers" },
+ { 216, "Reserved for allocation by system manufacturers" },
+ { 217, "Reserved for allocation by system manufacturers" },
+ { 218, "Reserved for allocation by system manufacturers" },
+ { 219, "Reserved for allocation by system manufacturers" },
+ { 220, "Reserved for allocation by system manufacturers" },
+ { 221, "Reserved for allocation by system manufacturers" },
+ { 222, "Reserved for allocation by system manufacturers" },
+ { 223, "Reserved for allocation by system manufacturers" },
+ { 224, "Reserved for allocation by system manufacturers" },
+ { 225, "Reserved for allocation by system manufacturers" },
+ { 226, "Reserved for allocation by system manufacturers" },
+ { 227, "Reserved for allocation by system manufacturers" },
+ { 228, "Reserved for allocation by system manufacturers" },
+ { 229, "Reserved for allocation by system manufacturers" },
+ { 230, "Reserved for allocation by system manufacturers" },
+ { 231, "Reserved for allocation by system manufacturers" },
+ { 232, "Reserved for allocation by system manufacturers" },
+ { 233, "Reserved for allocation by system manufacturers" },
+ { 234, "Reserved for allocation by system manufacturers" },
+ { 235, "Reserved for allocation by system manufacturers" },
+ { 236, "Reserved for allocation by system manufacturers" },
+ { 237, "Reserved for allocation by system manufacturers" },
+ { 238, "Reserved for allocation by system manufacturers" },
+ { 239, "Reserved for allocation by system manufacturers" },
+ { 240, "Reserved for allocation by system manufacturers" },
+ { 241, "Reserved for allocation by system manufacturers" },
+ { 242, "Reserved for allocation by system manufacturers" },
+ { 243, "Reserved for allocation by system manufacturers" },
+ { 244, "Reserved for allocation by system manufacturers" },
+ { 245, "Reserved for allocation by system manufacturers" },
+ { 246, "Reserved for allocation by system manufacturers" },
+ { 247, "Reserved for allocation by system manufacturers" },
+ { 248, "Reserved for allocation by system manufacturers" },
+ { 249, "Reserved for allocation by system manufacturers" },
+ { 250, "Reserved for allocation by system manufacturers" },
+ { 251, "Reserved for allocation by system manufacturers" },
+ { 252, "Reserved for allocation by system manufacturers" },
+ { 253, "Reserved for allocation by system manufacturers" },
+ { 254, "Reserved for allocation by system manufacturers" },
+ { 255, "Reserved for allocation by system manufacturers" },
+ { 0, NULL }
+};
+static const FieldPart I025_V1_5_105_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_025_V1_5_105_VALUE, NULL };
+static const FieldPart *I025_V1_5_105_PARTS[] = {
+ &I025_V1_5_105_VALUE,
+ NULL
+};
+static const AsterixField I025_V1_5_105 = { REPETITIVE, 1, 1, 0, &hf_025_V1_5_105, I025_V1_5_105_PARTS, { NULL } };
+static int hf_025_V1_5_120 = -1;
+static int hf_025_V1_5_120_CID = -1;
+static const FieldPart I025_V1_5_120_CID = { 16, 1.0, FIELD_PART_HEX, &hf_025_V1_5_120_CID, NULL };
+static int hf_025_V1_5_120_ERRC = -1;
+static const value_string valstr_025_V1_5_120_ERRC[] = {
+ { 0, "No Error Detected" },
+ { 1, "Error Code Undefined" },
+ { 2, "Reserved for allocation by the AMG" },
+ { 3, "Reserved for allocation by the AMG" },
+ { 4, "Reserved for allocation by the AMG" },
+ { 5, "Reserved for allocation by the AMG" },
+ { 6, "Reserved for allocation by the AMG" },
+ { 7, "Reserved for allocation by the AMG" },
+ { 8, "Reserved for allocation by the AMG" },
+ { 9, "Reserved for allocation by the AMG" },
+ { 10, "Reserved for allocation by the AMG" },
+ { 11, "Reserved for allocation by the AMG" },
+ { 12, "Reserved for allocation by the AMG" },
+ { 13, "Reserved for allocation by the AMG" },
+ { 14, "Reserved for allocation by the AMG" },
+ { 15, "Reserved for allocation by the AMG" },
+ { 16, "Reserved for allocation by system manufacturers" },
+ { 17, "Reserved for allocation by system manufacturers" },
+ { 18, "Reserved for allocation by system manufacturers" },
+ { 19, "Reserved for allocation by system manufacturers" },
+ { 20, "Reserved for allocation by system manufacturers" },
+ { 21, "Reserved for allocation by system manufacturers" },
+ { 22, "Reserved for allocation by system manufacturers" },
+ { 23, "Reserved for allocation by system manufacturers" },
+ { 24, "Reserved for allocation by system manufacturers" },
+ { 25, "Reserved for allocation by system manufacturers" },
+ { 26, "Reserved for allocation by system manufacturers" },
+ { 27, "Reserved for allocation by system manufacturers" },
+ { 28, "Reserved for allocation by system manufacturers" },
+ { 29, "Reserved for allocation by system manufacturers" },
+ { 30, "Reserved for allocation by system manufacturers" },
+ { 31, "Reserved for allocation by system manufacturers" },
+ { 32, "Reserved for allocation by system manufacturers" },
+ { 33, "Reserved for allocation by system manufacturers" },
+ { 34, "Reserved for allocation by system manufacturers" },
+ { 35, "Reserved for allocation by system manufacturers" },
+ { 36, "Reserved for allocation by system manufacturers" },
+ { 37, "Reserved for allocation by system manufacturers" },
+ { 38, "Reserved for allocation by system manufacturers" },
+ { 39, "Reserved for allocation by system manufacturers" },
+ { 40, "Reserved for allocation by system manufacturers" },
+ { 41, "Reserved for allocation by system manufacturers" },
+ { 42, "Reserved for allocation by system manufacturers" },
+ { 43, "Reserved for allocation by system manufacturers" },
+ { 44, "Reserved for allocation by system manufacturers" },
+ { 45, "Reserved for allocation by system manufacturers" },
+ { 46, "Reserved for allocation by system manufacturers" },
+ { 47, "Reserved for allocation by system manufacturers" },
+ { 48, "Reserved for allocation by system manufacturers" },
+ { 49, "Reserved for allocation by system manufacturers" },
+ { 50, "Reserved for allocation by system manufacturers" },
+ { 51, "Reserved for allocation by system manufacturers" },
+ { 52, "Reserved for allocation by system manufacturers" },
+ { 53, "Reserved for allocation by system manufacturers" },
+ { 54, "Reserved for allocation by system manufacturers" },
+ { 55, "Reserved for allocation by system manufacturers" },
+ { 56, "Reserved for allocation by system manufacturers" },
+ { 57, "Reserved for allocation by system manufacturers" },
+ { 58, "Reserved for allocation by system manufacturers" },
+ { 59, "Reserved for allocation by system manufacturers" },
+ { 60, "Reserved for allocation by system manufacturers" },
+ { 61, "Reserved for allocation by system manufacturers" },
+ { 62, "Reserved for allocation by system manufacturers" },
+ { 63, "Reserved for allocation by system manufacturers" },
+ { 0, NULL }
+};
+static const FieldPart I025_V1_5_120_ERRC = { 6, 1.0, FIELD_PART_UINT, &hf_025_V1_5_120_ERRC, NULL };
+static int hf_025_V1_5_120_CS = -1;
+static const value_string valstr_025_V1_5_120_CS[] = {
+ { 0, "Running" },
+ { 1, "Failed" },
+ { 2, "Maintenance" },
+ { 3, "Reserved" },
+ { 0, NULL }
+};
+static const FieldPart I025_V1_5_120_CS = { 2, 1.0, FIELD_PART_UINT, &hf_025_V1_5_120_CS, NULL };
+static const FieldPart *I025_V1_5_120_PARTS[] = {
+ &I025_V1_5_120_CID,
+ &I025_V1_5_120_ERRC,
+ &I025_V1_5_120_CS,
+ NULL
+};
+static const AsterixField I025_V1_5_120 = { REPETITIVE, 3, 1, 0, &hf_025_V1_5_120, I025_V1_5_120_PARTS, { NULL } };
+static int hf_025_V1_5_140 = -1;
+static int hf_025_V1_5_140_TYPE = -1;
+static const value_string valstr_025_V1_5_140_TYPE[] = {
+ { 0, "Number of unknown messages received" },
+ { 1, "Number of too old messages received" },
+ { 2, "Number of failed message conversions" },
+ { 3, "Total Number of messages received" },
+ { 4, "Total number of messages transmitted" },
+ { 5, "Reserved for AMG" },
+ { 6, "Reserved for AMG" },
+ { 7, "Reserved for AMG" },
+ { 8, "Reserved for AMG" },
+ { 9, "Reserved for AMG" },
+ { 10, "Reserved for AMG" },
+ { 11, "Reserved for AMG" },
+ { 12, "Reserved for AMG" },
+ { 13, "Reserved for AMG" },
+ { 14, "Reserved for AMG" },
+ { 15, "Reserved for AMG" },
+ { 16, "Reserved for AMG" },
+ { 17, "Reserved for AMG" },
+ { 18, "Reserved for AMG" },
+ { 19, "Reserved for AMG" },
+ { 20, "Implementation specific" },
+ { 21, "Implementation specific" },
+ { 22, "Implementation specific" },
+ { 23, "Implementation specific" },
+ { 24, "Implementation specific" },
+ { 25, "Implementation specific" },
+ { 26, "Implementation specific" },
+ { 27, "Implementation specific" },
+ { 28, "Implementation specific" },
+ { 29, "Implementation specific" },
+ { 30, "Implementation specific" },
+ { 31, "Implementation specific" },
+ { 32, "Implementation specific" },
+ { 33, "Implementation specific" },
+ { 34, "Implementation specific" },
+ { 35, "Implementation specific" },
+ { 36, "Implementation specific" },
+ { 37, "Implementation specific" },
+ { 38, "Implementation specific" },
+ { 39, "Implementation specific" },
+ { 40, "Implementation specific" },
+ { 41, "Implementation specific" },
+ { 42, "Implementation specific" },
+ { 43, "Implementation specific" },
+ { 44, "Implementation specific" },
+ { 45, "Implementation specific" },
+ { 46, "Implementation specific" },
+ { 47, "Implementation specific" },
+ { 48, "Implementation specific" },
+ { 49, "Implementation specific" },
+ { 50, "Implementation specific" },
+ { 51, "Implementation specific" },
+ { 52, "Implementation specific" },
+ { 53, "Implementation specific" },
+ { 54, "Implementation specific" },
+ { 55, "Implementation specific" },
+ { 56, "Implementation specific" },
+ { 57, "Implementation specific" },
+ { 58, "Implementation specific" },
+ { 59, "Implementation specific" },
+ { 60, "Implementation specific" },
+ { 61, "Implementation specific" },
+ { 62, "Implementation specific" },
+ { 63, "Implementation specific" },
+ { 64, "Implementation specific" },
+ { 65, "Implementation specific" },
+ { 66, "Implementation specific" },
+ { 67, "Implementation specific" },
+ { 68, "Implementation specific" },
+ { 69, "Implementation specific" },
+ { 70, "Implementation specific" },
+ { 71, "Implementation specific" },
+ { 72, "Implementation specific" },
+ { 73, "Implementation specific" },
+ { 74, "Implementation specific" },
+ { 75, "Implementation specific" },
+ { 76, "Implementation specific" },
+ { 77, "Implementation specific" },
+ { 78, "Implementation specific" },
+ { 79, "Implementation specific" },
+ { 80, "Implementation specific" },
+ { 81, "Implementation specific" },
+ { 82, "Implementation specific" },
+ { 83, "Implementation specific" },
+ { 84, "Implementation specific" },
+ { 85, "Implementation specific" },
+ { 86, "Implementation specific" },
+ { 87, "Implementation specific" },
+ { 88, "Implementation specific" },
+ { 89, "Implementation specific" },
+ { 90, "Implementation specific" },
+ { 91, "Implementation specific" },
+ { 92, "Implementation specific" },
+ { 93, "Implementation specific" },
+ { 94, "Implementation specific" },
+ { 95, "Implementation specific" },
+ { 96, "Implementation specific" },
+ { 97, "Implementation specific" },
+ { 98, "Implementation specific" },
+ { 99, "Implementation specific" },
+ { 100, "Implementation specific" },
+ { 101, "Implementation specific" },
+ { 102, "Implementation specific" },
+ { 103, "Implementation specific" },
+ { 104, "Implementation specific" },
+ { 105, "Implementation specific" },
+ { 106, "Implementation specific" },
+ { 107, "Implementation specific" },
+ { 108, "Implementation specific" },
+ { 109, "Implementation specific" },
+ { 110, "Implementation specific" },
+ { 111, "Implementation specific" },
+ { 112, "Implementation specific" },
+ { 113, "Implementation specific" },
+ { 114, "Implementation specific" },
+ { 115, "Implementation specific" },
+ { 116, "Implementation specific" },
+ { 117, "Implementation specific" },
+ { 118, "Implementation specific" },
+ { 119, "Implementation specific" },
+ { 120, "Implementation specific" },
+ { 121, "Implementation specific" },
+ { 122, "Implementation specific" },
+ { 123, "Implementation specific" },
+ { 124, "Implementation specific" },
+ { 125, "Implementation specific" },
+ { 126, "Implementation specific" },
+ { 127, "Implementation specific" },
+ { 128, "Implementation specific" },
+ { 129, "Implementation specific" },
+ { 130, "Implementation specific" },
+ { 131, "Implementation specific" },
+ { 132, "Implementation specific" },
+ { 133, "Implementation specific" },
+ { 134, "Implementation specific" },
+ { 135, "Implementation specific" },
+ { 136, "Implementation specific" },
+ { 137, "Implementation specific" },
+ { 138, "Implementation specific" },
+ { 139, "Implementation specific" },
+ { 140, "Implementation specific" },
+ { 141, "Implementation specific" },
+ { 142, "Implementation specific" },
+ { 143, "Implementation specific" },
+ { 144, "Implementation specific" },
+ { 145, "Implementation specific" },
+ { 146, "Implementation specific" },
+ { 147, "Implementation specific" },
+ { 148, "Implementation specific" },
+ { 149, "Implementation specific" },
+ { 150, "Implementation specific" },
+ { 151, "Implementation specific" },
+ { 152, "Implementation specific" },
+ { 153, "Implementation specific" },
+ { 154, "Implementation specific" },
+ { 155, "Implementation specific" },
+ { 156, "Implementation specific" },
+ { 157, "Implementation specific" },
+ { 158, "Implementation specific" },
+ { 159, "Implementation specific" },
+ { 160, "Implementation specific" },
+ { 161, "Implementation specific" },
+ { 162, "Implementation specific" },
+ { 163, "Implementation specific" },
+ { 164, "Implementation specific" },
+ { 165, "Implementation specific" },
+ { 166, "Implementation specific" },
+ { 167, "Implementation specific" },
+ { 168, "Implementation specific" },
+ { 169, "Implementation specific" },
+ { 170, "Implementation specific" },
+ { 171, "Implementation specific" },
+ { 172, "Implementation specific" },
+ { 173, "Implementation specific" },
+ { 174, "Implementation specific" },
+ { 175, "Implementation specific" },
+ { 176, "Implementation specific" },
+ { 177, "Implementation specific" },
+ { 178, "Implementation specific" },
+ { 179, "Implementation specific" },
+ { 180, "Implementation specific" },
+ { 181, "Implementation specific" },
+ { 182, "Implementation specific" },
+ { 183, "Implementation specific" },
+ { 184, "Implementation specific" },
+ { 185, "Implementation specific" },
+ { 186, "Implementation specific" },
+ { 187, "Implementation specific" },
+ { 188, "Implementation specific" },
+ { 189, "Implementation specific" },
+ { 190, "Implementation specific" },
+ { 191, "Implementation specific" },
+ { 192, "Implementation specific" },
+ { 193, "Implementation specific" },
+ { 194, "Implementation specific" },
+ { 195, "Implementation specific" },
+ { 196, "Implementation specific" },
+ { 197, "Implementation specific" },
+ { 198, "Implementation specific" },
+ { 199, "Implementation specific" },
+ { 200, "Implementation specific" },
+ { 201, "Implementation specific" },
+ { 202, "Implementation specific" },
+ { 203, "Implementation specific" },
+ { 204, "Implementation specific" },
+ { 205, "Implementation specific" },
+ { 206, "Implementation specific" },
+ { 207, "Implementation specific" },
+ { 208, "Implementation specific" },
+ { 209, "Implementation specific" },
+ { 210, "Implementation specific" },
+ { 211, "Implementation specific" },
+ { 212, "Implementation specific" },
+ { 213, "Implementation specific" },
+ { 214, "Implementation specific" },
+ { 215, "Implementation specific" },
+ { 216, "Implementation specific" },
+ { 217, "Implementation specific" },
+ { 218, "Implementation specific" },
+ { 219, "Implementation specific" },
+ { 220, "Implementation specific" },
+ { 221, "Implementation specific" },
+ { 222, "Implementation specific" },
+ { 223, "Implementation specific" },
+ { 224, "Implementation specific" },
+ { 225, "Implementation specific" },
+ { 226, "Implementation specific" },
+ { 227, "Implementation specific" },
+ { 228, "Implementation specific" },
+ { 229, "Implementation specific" },
+ { 230, "Implementation specific" },
+ { 231, "Implementation specific" },
+ { 232, "Implementation specific" },
+ { 233, "Implementation specific" },
+ { 234, "Implementation specific" },
+ { 235, "Implementation specific" },
+ { 236, "Implementation specific" },
+ { 237, "Implementation specific" },
+ { 238, "Implementation specific" },
+ { 239, "Implementation specific" },
+ { 240, "Implementation specific" },
+ { 241, "Implementation specific" },
+ { 242, "Implementation specific" },
+ { 243, "Implementation specific" },
+ { 244, "Implementation specific" },
+ { 245, "Implementation specific" },
+ { 246, "Implementation specific" },
+ { 247, "Implementation specific" },
+ { 248, "Implementation specific" },
+ { 249, "Implementation specific" },
+ { 250, "Implementation specific" },
+ { 251, "Implementation specific" },
+ { 252, "Implementation specific" },
+ { 253, "Implementation specific" },
+ { 254, "Implementation specific" },
+ { 255, "Implementation specific" },
+ { 0, NULL }
+};
+static const FieldPart I025_V1_5_140_TYPE = { 8, 1.0, FIELD_PART_UINT, &hf_025_V1_5_140_TYPE, NULL };
+static int hf_025_V1_5_140_REF = -1;
+static const value_string valstr_025_V1_5_140_REF[] = {
+ { 0, "From UTC midnight" },
+ { 1, "From the previous report" },
+ { 0, NULL }
+};
+static const FieldPart I025_V1_5_140_REF = { 1, 1.0, FIELD_PART_UINT, &hf_025_V1_5_140_REF, NULL };
+static int hf_025_V1_5_140_COUNT = -1;
+static const FieldPart I025_V1_5_140_COUNT = { 32, 1.0, FIELD_PART_UINT, &hf_025_V1_5_140_COUNT, NULL };
+static const FieldPart *I025_V1_5_140_PARTS[] = {
+ &I025_V1_5_140_TYPE,
+ &I025_V1_5_140_REF,
+ &IXXX_7bit_spare,
+ &I025_V1_5_140_COUNT,
+ NULL
+};
+static const AsterixField I025_V1_5_140 = { REPETITIVE, 6, 1, 0, &hf_025_V1_5_140, I025_V1_5_140_PARTS, { NULL } };
+static int hf_025_V1_5_200 = -1;
+static int hf_025_V1_5_200_VALUE = -1;
+static const FieldPart I025_V1_5_200_VALUE = { 24, 1.0, FIELD_PART_UINT, &hf_025_V1_5_200_VALUE, NULL };
+static const FieldPart *I025_V1_5_200_PARTS[] = {
+ &I025_V1_5_200_VALUE,
+ NULL
+};
+static const AsterixField I025_V1_5_200 = { FIXED, 3, 0, 0, &hf_025_V1_5_200, I025_V1_5_200_PARTS, { NULL } };
+static int hf_025_V1_5_600 = -1;
+static int hf_025_V1_5_600_LAT = -1;
+static const FieldPart I025_V1_5_600_LAT = { 32, 0.00000004190951585769653320312, FIELD_PART_FLOAT, &hf_025_V1_5_600_LAT, NULL };
+static int hf_025_V1_5_600_LON = -1;
+static const FieldPart I025_V1_5_600_LON = { 32, 0.00000004190951585769653320312, FIELD_PART_FLOAT, &hf_025_V1_5_600_LON, NULL };
+static const FieldPart *I025_V1_5_600_PARTS[] = {
+ &I025_V1_5_600_LAT,
+ &I025_V1_5_600_LON,
+ NULL
+};
+static const AsterixField I025_V1_5_600 = { FIXED, 8, 0, 0, &hf_025_V1_5_600, I025_V1_5_600_PARTS, { NULL } };
+static int hf_025_V1_5_610 = -1;
+static int hf_025_V1_5_610_VALUE = -1;
+static const FieldPart I025_V1_5_610_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_025_V1_5_610_VALUE, NULL };
+static const FieldPart *I025_V1_5_610_PARTS[] = {
+ &I025_V1_5_610_VALUE,
+ NULL
+};
+static const AsterixField I025_V1_5_610 = { FIXED, 2, 0, 0, &hf_025_V1_5_610, I025_V1_5_610_PARTS, { NULL } };
+static int hf_025_V1_5_SP = -1;
+static const AsterixField I025_V1_5_SP = { EXP, 0, 0, 1, &hf_025_V1_5_SP, NULL, { NULL } };
+
+/* Category 025, edition 1.5 (latest) */
+static int hf_025_000 = -1;
+static int hf_025_000_RTYP = -1;
+static const FieldPart I025_000_RTYP = { 7, 1.0, FIELD_PART_HEX, &hf_025_000_RTYP, NULL };
+static int hf_025_000_RG = -1;
+static const value_string valstr_025_000_RG[] = {
+ { 0, "Periodic Report" },
+ { 1, "Event Driven Report" },
+ { 0, NULL }
+};
+static const FieldPart I025_000_RG = { 1, 1.0, FIELD_PART_UINT, &hf_025_000_RG, NULL };
+static const FieldPart *I025_000_PARTS[] = {
+ &I025_000_RTYP,
+ &I025_000_RG,
+ NULL
+};
+static const AsterixField I025_000 = { FIXED, 1, 0, 0, &hf_025_000, I025_000_PARTS, { NULL } };
+static int hf_025_010 = -1;
+static int hf_025_010_SAC = -1;
+static const FieldPart I025_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_025_010_SAC, NULL };
+static int hf_025_010_SIC = -1;
+static const FieldPart I025_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_025_010_SIC, NULL };
+static const FieldPart *I025_010_PARTS[] = {
+ &I025_010_SAC,
+ &I025_010_SIC,
+ NULL
+};
+static const AsterixField I025_010 = { FIXED, 2, 0, 0, &hf_025_010, I025_010_PARTS, { NULL } };
+static int hf_025_015 = -1;
+static int hf_025_015_VALUE = -1;
+static const FieldPart I025_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_025_015_VALUE, NULL };
+static const FieldPart *I025_015_PARTS[] = {
+ &I025_015_VALUE,
+ NULL
+};
+static const AsterixField I025_015 = { FIXED, 1, 0, 0, &hf_025_015, I025_015_PARTS, { NULL } };
+static int hf_025_020 = -1;
+static int hf_025_020_VALUE = -1;
+static const FieldPart I025_020_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_025_020_VALUE, NULL };
+static const FieldPart *I025_020_PARTS[] = {
+ &I025_020_VALUE,
+ NULL
+};
+static const AsterixField I025_020 = { FIXED, 6, 0, 0, &hf_025_020, I025_020_PARTS, { NULL } };
+static int hf_025_070 = -1;
+static int hf_025_070_VALUE = -1;
+static const FieldPart I025_070_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_025_070_VALUE, NULL };
+static const FieldPart *I025_070_PARTS[] = {
+ &I025_070_VALUE,
+ NULL
+};
+static const AsterixField I025_070 = { FIXED, 3, 0, 0, &hf_025_070, I025_070_PARTS, { NULL } };
+static int hf_025_100 = -1;
+static int hf_025_100_NOGO = -1;
+static const value_string valstr_025_100_NOGO[] = {
+ { 0, "Data is released for operational use" },
+ { 1, "Data must not be used operationally" },
+ { 0, NULL }
+};
+static const FieldPart I025_100_NOGO = { 1, 1.0, FIELD_PART_UINT, &hf_025_100_NOGO, NULL };
+static int hf_025_100_OPS = -1;
+static const value_string valstr_025_100_OPS[] = {
+ { 0, "Operational" },
+ { 1, "Operational but in Standby" },
+ { 2, "Maintenance" },
+ { 3, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I025_100_OPS = { 2, 1.0, FIELD_PART_UINT, &hf_025_100_OPS, NULL };
+static int hf_025_100_SSTAT = -1;
+static const value_string valstr_025_100_SSTAT[] = {
+ { 0, "Running" },
+ { 1, "Failed" },
+ { 2, "Degraded" },
+ { 3, "Undefined" },
+ { 4, "Reserved for future use" },
+ { 5, "Reserved for future use" },
+ { 6, "Reserved for future use" },
+ { 7, "Reserved for future use" },
+ { 8, "Reserved for future use" },
+ { 9, "Reserved for future use" },
+ { 10, "Reserved for future use" },
+ { 11, "Reserved for future use" },
+ { 12, "Reserved for future use" },
+ { 13, "Reserved for future use" },
+ { 14, "Reserved for future use" },
+ { 15, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I025_100_SSTAT = { 4, 1.0, FIELD_PART_UINT, &hf_025_100_SSTAT, NULL };
+static int hf_025_100_SYSTAT = -1;
+static const value_string valstr_025_100_SYSTAT[] = {
+ { 0, "Running / OK" },
+ { 1, "Failed" },
+ { 2, "Degraded" },
+ { 3, "Undefined" },
+ { 4, "Reserved for future use" },
+ { 5, "Reserved for future use" },
+ { 6, "Reserved for future use" },
+ { 7, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I025_100_SYSTAT = { 3, 1.0, FIELD_PART_UINT, &hf_025_100_SYSTAT, NULL };
+static int hf_025_100_SESTAT = -1;
+static const value_string valstr_025_100_SESTAT[] = {
+ { 0, "OK" },
+ { 1, "Failed" },
+ { 2, "Degraded" },
+ { 3, "Undefined" },
+ { 4, "Reserved for future use" },
+ { 5, "Reserved for future use" },
+ { 6, "Reserved for future use" },
+ { 7, "Reserved for future use" },
+ { 0, NULL }
+};
+static const FieldPart I025_100_SESTAT = { 3, 1.0, FIELD_PART_UINT, &hf_025_100_SESTAT, NULL };
+static const FieldPart *I025_100_PARTS[] = {
+ &I025_100_NOGO,
+ &I025_100_OPS,
+ &I025_100_SSTAT,
+ &IXXX_FX,
+ &IXXX_1bit_spare,
+ &I025_100_SYSTAT,
+ &I025_100_SESTAT,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I025_100 = { FX, 1, 0, 0, &hf_025_100, I025_100_PARTS, { NULL } };
+static int hf_025_105 = -1;
+static int hf_025_105_VALUE = -1;
+static const value_string valstr_025_105_VALUE[] = {
+ { 0, "No error detected (shall not be sent)" },
+ { 1, "Error Code Undefined" },
+ { 2, "Time Source Invalid" },
+ { 3, "Time Source Coasting" },
+ { 4, "Track ID numbering has restarted" },
+ { 5, "Data Processor Overload" },
+ { 6, "Ground Interface Data Communications Overload" },
+ { 7, "System stopped by operator" },
+ { 8, "CBIT failed" },
+ { 9, "Test Target Failure" },
+ { 10, "Reserved for allocation by the AMG" },
+ { 11, "Reserved for allocation by the AMG" },
+ { 12, "Reserved for allocation by the AMG" },
+ { 13, "Reserved for allocation by the AMG" },
+ { 14, "Reserved for allocation by the AMG" },
+ { 15, "Reserved for allocation by the AMG" },
+ { 16, "Reserved for allocation by the AMG" },
+ { 17, "Reserved for allocation by the AMG" },
+ { 18, "Reserved for allocation by the AMG" },
+ { 19, "Reserved for allocation by the AMG" },
+ { 20, "Reserved for allocation by the AMG" },
+ { 21, "Reserved for allocation by the AMG" },
+ { 22, "Reserved for allocation by the AMG" },
+ { 23, "Reserved for allocation by the AMG" },
+ { 24, "Reserved for allocation by the AMG" },
+ { 25, "Reserved for allocation by the AMG" },
+ { 26, "Reserved for allocation by the AMG" },
+ { 27, "Reserved for allocation by the AMG" },
+ { 28, "Reserved for allocation by the AMG" },
+ { 29, "Reserved for allocation by the AMG" },
+ { 30, "Reserved for allocation by the AMG" },
+ { 31, "Reserved for allocation by the AMG" },
+ { 32, "Reserved for allocation by system manufacturers" },
+ { 33, "Reserved for allocation by system manufacturers" },
+ { 34, "Reserved for allocation by system manufacturers" },
+ { 35, "Reserved for allocation by system manufacturers" },
+ { 36, "Reserved for allocation by system manufacturers" },
+ { 37, "Reserved for allocation by system manufacturers" },
+ { 38, "Reserved for allocation by system manufacturers" },
+ { 39, "Reserved for allocation by system manufacturers" },
+ { 40, "Reserved for allocation by system manufacturers" },
+ { 41, "Reserved for allocation by system manufacturers" },
+ { 42, "Reserved for allocation by system manufacturers" },
+ { 43, "Reserved for allocation by system manufacturers" },
+ { 44, "Reserved for allocation by system manufacturers" },
+ { 45, "Reserved for allocation by system manufacturers" },
+ { 46, "Reserved for allocation by system manufacturers" },
+ { 47, "Reserved for allocation by system manufacturers" },
+ { 48, "Reserved for allocation by system manufacturers" },
+ { 49, "Reserved for allocation by system manufacturers" },
+ { 50, "Reserved for allocation by system manufacturers" },
+ { 51, "Reserved for allocation by system manufacturers" },
+ { 52, "Reserved for allocation by system manufacturers" },
+ { 53, "Reserved for allocation by system manufacturers" },
+ { 54, "Reserved for allocation by system manufacturers" },
+ { 55, "Reserved for allocation by system manufacturers" },
+ { 56, "Reserved for allocation by system manufacturers" },
+ { 57, "Reserved for allocation by system manufacturers" },
+ { 58, "Reserved for allocation by system manufacturers" },
+ { 59, "Reserved for allocation by system manufacturers" },
+ { 60, "Reserved for allocation by system manufacturers" },
+ { 61, "Reserved for allocation by system manufacturers" },
+ { 62, "Reserved for allocation by system manufacturers" },
+ { 63, "Reserved for allocation by system manufacturers" },
+ { 64, "Reserved for allocation by system manufacturers" },
+ { 65, "Reserved for allocation by system manufacturers" },
+ { 66, "Reserved for allocation by system manufacturers" },
+ { 67, "Reserved for allocation by system manufacturers" },
+ { 68, "Reserved for allocation by system manufacturers" },
+ { 69, "Reserved for allocation by system manufacturers" },
+ { 70, "Reserved for allocation by system manufacturers" },
+ { 71, "Reserved for allocation by system manufacturers" },
+ { 72, "Reserved for allocation by system manufacturers" },
+ { 73, "Reserved for allocation by system manufacturers" },
+ { 74, "Reserved for allocation by system manufacturers" },
+ { 75, "Reserved for allocation by system manufacturers" },
+ { 76, "Reserved for allocation by system manufacturers" },
+ { 77, "Reserved for allocation by system manufacturers" },
+ { 78, "Reserved for allocation by system manufacturers" },
+ { 79, "Reserved for allocation by system manufacturers" },
+ { 80, "Reserved for allocation by system manufacturers" },
+ { 81, "Reserved for allocation by system manufacturers" },
+ { 82, "Reserved for allocation by system manufacturers" },
+ { 83, "Reserved for allocation by system manufacturers" },
+ { 84, "Reserved for allocation by system manufacturers" },
+ { 85, "Reserved for allocation by system manufacturers" },
+ { 86, "Reserved for allocation by system manufacturers" },
+ { 87, "Reserved for allocation by system manufacturers" },
+ { 88, "Reserved for allocation by system manufacturers" },
+ { 89, "Reserved for allocation by system manufacturers" },
+ { 90, "Reserved for allocation by system manufacturers" },
+ { 91, "Reserved for allocation by system manufacturers" },
+ { 92, "Reserved for allocation by system manufacturers" },
+ { 93, "Reserved for allocation by system manufacturers" },
+ { 94, "Reserved for allocation by system manufacturers" },
+ { 95, "Reserved for allocation by system manufacturers" },
+ { 96, "Reserved for allocation by system manufacturers" },
+ { 97, "Reserved for allocation by system manufacturers" },
+ { 98, "Reserved for allocation by system manufacturers" },
+ { 99, "Reserved for allocation by system manufacturers" },
+ { 100, "Reserved for allocation by system manufacturers" },
+ { 101, "Reserved for allocation by system manufacturers" },
+ { 102, "Reserved for allocation by system manufacturers" },
+ { 103, "Reserved for allocation by system manufacturers" },
+ { 104, "Reserved for allocation by system manufacturers" },
+ { 105, "Reserved for allocation by system manufacturers" },
+ { 106, "Reserved for allocation by system manufacturers" },
+ { 107, "Reserved for allocation by system manufacturers" },
+ { 108, "Reserved for allocation by system manufacturers" },
+ { 109, "Reserved for allocation by system manufacturers" },
+ { 110, "Reserved for allocation by system manufacturers" },
+ { 111, "Reserved for allocation by system manufacturers" },
+ { 112, "Reserved for allocation by system manufacturers" },
+ { 113, "Reserved for allocation by system manufacturers" },
+ { 114, "Reserved for allocation by system manufacturers" },
+ { 115, "Reserved for allocation by system manufacturers" },
+ { 116, "Reserved for allocation by system manufacturers" },
+ { 117, "Reserved for allocation by system manufacturers" },
+ { 118, "Reserved for allocation by system manufacturers" },
+ { 119, "Reserved for allocation by system manufacturers" },
+ { 120, "Reserved for allocation by system manufacturers" },
+ { 121, "Reserved for allocation by system manufacturers" },
+ { 122, "Reserved for allocation by system manufacturers" },
+ { 123, "Reserved for allocation by system manufacturers" },
+ { 124, "Reserved for allocation by system manufacturers" },
+ { 125, "Reserved for allocation by system manufacturers" },
+ { 126, "Reserved for allocation by system manufacturers" },
+ { 127, "Reserved for allocation by system manufacturers" },
+ { 128, "Reserved for allocation by system manufacturers" },
+ { 129, "Reserved for allocation by system manufacturers" },
+ { 130, "Reserved for allocation by system manufacturers" },
+ { 131, "Reserved for allocation by system manufacturers" },
+ { 132, "Reserved for allocation by system manufacturers" },
+ { 133, "Reserved for allocation by system manufacturers" },
+ { 134, "Reserved for allocation by system manufacturers" },
+ { 135, "Reserved for allocation by system manufacturers" },
+ { 136, "Reserved for allocation by system manufacturers" },
+ { 137, "Reserved for allocation by system manufacturers" },
+ { 138, "Reserved for allocation by system manufacturers" },
+ { 139, "Reserved for allocation by system manufacturers" },
+ { 140, "Reserved for allocation by system manufacturers" },
+ { 141, "Reserved for allocation by system manufacturers" },
+ { 142, "Reserved for allocation by system manufacturers" },
+ { 143, "Reserved for allocation by system manufacturers" },
+ { 144, "Reserved for allocation by system manufacturers" },
+ { 145, "Reserved for allocation by system manufacturers" },
+ { 146, "Reserved for allocation by system manufacturers" },
+ { 147, "Reserved for allocation by system manufacturers" },
+ { 148, "Reserved for allocation by system manufacturers" },
+ { 149, "Reserved for allocation by system manufacturers" },
+ { 150, "Reserved for allocation by system manufacturers" },
+ { 151, "Reserved for allocation by system manufacturers" },
+ { 152, "Reserved for allocation by system manufacturers" },
+ { 153, "Reserved for allocation by system manufacturers" },
+ { 154, "Reserved for allocation by system manufacturers" },
+ { 155, "Reserved for allocation by system manufacturers" },
+ { 156, "Reserved for allocation by system manufacturers" },
+ { 157, "Reserved for allocation by system manufacturers" },
+ { 158, "Reserved for allocation by system manufacturers" },
+ { 159, "Reserved for allocation by system manufacturers" },
+ { 160, "Reserved for allocation by system manufacturers" },
+ { 161, "Reserved for allocation by system manufacturers" },
+ { 162, "Reserved for allocation by system manufacturers" },
+ { 163, "Reserved for allocation by system manufacturers" },
+ { 164, "Reserved for allocation by system manufacturers" },
+ { 165, "Reserved for allocation by system manufacturers" },
+ { 166, "Reserved for allocation by system manufacturers" },
+ { 167, "Reserved for allocation by system manufacturers" },
+ { 168, "Reserved for allocation by system manufacturers" },
+ { 169, "Reserved for allocation by system manufacturers" },
+ { 170, "Reserved for allocation by system manufacturers" },
+ { 171, "Reserved for allocation by system manufacturers" },
+ { 172, "Reserved for allocation by system manufacturers" },
+ { 173, "Reserved for allocation by system manufacturers" },
+ { 174, "Reserved for allocation by system manufacturers" },
+ { 175, "Reserved for allocation by system manufacturers" },
+ { 176, "Reserved for allocation by system manufacturers" },
+ { 177, "Reserved for allocation by system manufacturers" },
+ { 178, "Reserved for allocation by system manufacturers" },
+ { 179, "Reserved for allocation by system manufacturers" },
+ { 180, "Reserved for allocation by system manufacturers" },
+ { 181, "Reserved for allocation by system manufacturers" },
+ { 182, "Reserved for allocation by system manufacturers" },
+ { 183, "Reserved for allocation by system manufacturers" },
+ { 184, "Reserved for allocation by system manufacturers" },
+ { 185, "Reserved for allocation by system manufacturers" },
+ { 186, "Reserved for allocation by system manufacturers" },
+ { 187, "Reserved for allocation by system manufacturers" },
+ { 188, "Reserved for allocation by system manufacturers" },
+ { 189, "Reserved for allocation by system manufacturers" },
+ { 190, "Reserved for allocation by system manufacturers" },
+ { 191, "Reserved for allocation by system manufacturers" },
+ { 192, "Reserved for allocation by system manufacturers" },
+ { 193, "Reserved for allocation by system manufacturers" },
+ { 194, "Reserved for allocation by system manufacturers" },
+ { 195, "Reserved for allocation by system manufacturers" },
+ { 196, "Reserved for allocation by system manufacturers" },
+ { 197, "Reserved for allocation by system manufacturers" },
+ { 198, "Reserved for allocation by system manufacturers" },
+ { 199, "Reserved for allocation by system manufacturers" },
+ { 200, "Reserved for allocation by system manufacturers" },
+ { 201, "Reserved for allocation by system manufacturers" },
+ { 202, "Reserved for allocation by system manufacturers" },
+ { 203, "Reserved for allocation by system manufacturers" },
+ { 204, "Reserved for allocation by system manufacturers" },
+ { 205, "Reserved for allocation by system manufacturers" },
+ { 206, "Reserved for allocation by system manufacturers" },
+ { 207, "Reserved for allocation by system manufacturers" },
+ { 208, "Reserved for allocation by system manufacturers" },
+ { 209, "Reserved for allocation by system manufacturers" },
+ { 210, "Reserved for allocation by system manufacturers" },
+ { 211, "Reserved for allocation by system manufacturers" },
+ { 212, "Reserved for allocation by system manufacturers" },
+ { 213, "Reserved for allocation by system manufacturers" },
+ { 214, "Reserved for allocation by system manufacturers" },
+ { 215, "Reserved for allocation by system manufacturers" },
+ { 216, "Reserved for allocation by system manufacturers" },
+ { 217, "Reserved for allocation by system manufacturers" },
+ { 218, "Reserved for allocation by system manufacturers" },
+ { 219, "Reserved for allocation by system manufacturers" },
+ { 220, "Reserved for allocation by system manufacturers" },
+ { 221, "Reserved for allocation by system manufacturers" },
+ { 222, "Reserved for allocation by system manufacturers" },
+ { 223, "Reserved for allocation by system manufacturers" },
+ { 224, "Reserved for allocation by system manufacturers" },
+ { 225, "Reserved for allocation by system manufacturers" },
+ { 226, "Reserved for allocation by system manufacturers" },
+ { 227, "Reserved for allocation by system manufacturers" },
+ { 228, "Reserved for allocation by system manufacturers" },
+ { 229, "Reserved for allocation by system manufacturers" },
+ { 230, "Reserved for allocation by system manufacturers" },
+ { 231, "Reserved for allocation by system manufacturers" },
+ { 232, "Reserved for allocation by system manufacturers" },
+ { 233, "Reserved for allocation by system manufacturers" },
+ { 234, "Reserved for allocation by system manufacturers" },
+ { 235, "Reserved for allocation by system manufacturers" },
+ { 236, "Reserved for allocation by system manufacturers" },
+ { 237, "Reserved for allocation by system manufacturers" },
+ { 238, "Reserved for allocation by system manufacturers" },
+ { 239, "Reserved for allocation by system manufacturers" },
+ { 240, "Reserved for allocation by system manufacturers" },
+ { 241, "Reserved for allocation by system manufacturers" },
+ { 242, "Reserved for allocation by system manufacturers" },
+ { 243, "Reserved for allocation by system manufacturers" },
+ { 244, "Reserved for allocation by system manufacturers" },
+ { 245, "Reserved for allocation by system manufacturers" },
+ { 246, "Reserved for allocation by system manufacturers" },
+ { 247, "Reserved for allocation by system manufacturers" },
+ { 248, "Reserved for allocation by system manufacturers" },
+ { 249, "Reserved for allocation by system manufacturers" },
+ { 250, "Reserved for allocation by system manufacturers" },
+ { 251, "Reserved for allocation by system manufacturers" },
+ { 252, "Reserved for allocation by system manufacturers" },
+ { 253, "Reserved for allocation by system manufacturers" },
+ { 254, "Reserved for allocation by system manufacturers" },
+ { 255, "Reserved for allocation by system manufacturers" },
+ { 0, NULL }
+};
+static const FieldPart I025_105_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_025_105_VALUE, NULL };
+static const FieldPart *I025_105_PARTS[] = {
+ &I025_105_VALUE,
+ NULL
+};
+static const AsterixField I025_105 = { REPETITIVE, 1, 1, 0, &hf_025_105, I025_105_PARTS, { NULL } };
+static int hf_025_120 = -1;
+static int hf_025_120_CID = -1;
+static const FieldPart I025_120_CID = { 16, 1.0, FIELD_PART_HEX, &hf_025_120_CID, NULL };
+static int hf_025_120_ERRC = -1;
+static const value_string valstr_025_120_ERRC[] = {
+ { 0, "No Error Detected" },
+ { 1, "Error Code Undefined" },
+ { 2, "Reserved for allocation by the AMG" },
+ { 3, "Reserved for allocation by the AMG" },
+ { 4, "Reserved for allocation by the AMG" },
+ { 5, "Reserved for allocation by the AMG" },
+ { 6, "Reserved for allocation by the AMG" },
+ { 7, "Reserved for allocation by the AMG" },
+ { 8, "Reserved for allocation by the AMG" },
+ { 9, "Reserved for allocation by the AMG" },
+ { 10, "Reserved for allocation by the AMG" },
+ { 11, "Reserved for allocation by the AMG" },
+ { 12, "Reserved for allocation by the AMG" },
+ { 13, "Reserved for allocation by the AMG" },
+ { 14, "Reserved for allocation by the AMG" },
+ { 15, "Reserved for allocation by the AMG" },
+ { 16, "Reserved for allocation by system manufacturers" },
+ { 17, "Reserved for allocation by system manufacturers" },
+ { 18, "Reserved for allocation by system manufacturers" },
+ { 19, "Reserved for allocation by system manufacturers" },
+ { 20, "Reserved for allocation by system manufacturers" },
+ { 21, "Reserved for allocation by system manufacturers" },
+ { 22, "Reserved for allocation by system manufacturers" },
+ { 23, "Reserved for allocation by system manufacturers" },
+ { 24, "Reserved for allocation by system manufacturers" },
+ { 25, "Reserved for allocation by system manufacturers" },
+ { 26, "Reserved for allocation by system manufacturers" },
+ { 27, "Reserved for allocation by system manufacturers" },
+ { 28, "Reserved for allocation by system manufacturers" },
+ { 29, "Reserved for allocation by system manufacturers" },
+ { 30, "Reserved for allocation by system manufacturers" },
+ { 31, "Reserved for allocation by system manufacturers" },
+ { 32, "Reserved for allocation by system manufacturers" },
+ { 33, "Reserved for allocation by system manufacturers" },
+ { 34, "Reserved for allocation by system manufacturers" },
+ { 35, "Reserved for allocation by system manufacturers" },
+ { 36, "Reserved for allocation by system manufacturers" },
+ { 37, "Reserved for allocation by system manufacturers" },
+ { 38, "Reserved for allocation by system manufacturers" },
+ { 39, "Reserved for allocation by system manufacturers" },
+ { 40, "Reserved for allocation by system manufacturers" },
+ { 41, "Reserved for allocation by system manufacturers" },
+ { 42, "Reserved for allocation by system manufacturers" },
+ { 43, "Reserved for allocation by system manufacturers" },
+ { 44, "Reserved for allocation by system manufacturers" },
+ { 45, "Reserved for allocation by system manufacturers" },
+ { 46, "Reserved for allocation by system manufacturers" },
+ { 47, "Reserved for allocation by system manufacturers" },
+ { 48, "Reserved for allocation by system manufacturers" },
+ { 49, "Reserved for allocation by system manufacturers" },
+ { 50, "Reserved for allocation by system manufacturers" },
+ { 51, "Reserved for allocation by system manufacturers" },
+ { 52, "Reserved for allocation by system manufacturers" },
+ { 53, "Reserved for allocation by system manufacturers" },
+ { 54, "Reserved for allocation by system manufacturers" },
+ { 55, "Reserved for allocation by system manufacturers" },
+ { 56, "Reserved for allocation by system manufacturers" },
+ { 57, "Reserved for allocation by system manufacturers" },
+ { 58, "Reserved for allocation by system manufacturers" },
+ { 59, "Reserved for allocation by system manufacturers" },
+ { 60, "Reserved for allocation by system manufacturers" },
+ { 61, "Reserved for allocation by system manufacturers" },
+ { 62, "Reserved for allocation by system manufacturers" },
+ { 63, "Reserved for allocation by system manufacturers" },
+ { 0, NULL }
+};
+static const FieldPart I025_120_ERRC = { 6, 1.0, FIELD_PART_UINT, &hf_025_120_ERRC, NULL };
+static int hf_025_120_CS = -1;
+static const value_string valstr_025_120_CS[] = {
+ { 0, "Running" },
+ { 1, "Failed" },
+ { 2, "Maintenance" },
+ { 3, "Reserved" },
+ { 0, NULL }
+};
+static const FieldPart I025_120_CS = { 2, 1.0, FIELD_PART_UINT, &hf_025_120_CS, NULL };
+static const FieldPart *I025_120_PARTS[] = {
+ &I025_120_CID,
+ &I025_120_ERRC,
+ &I025_120_CS,
+ NULL
+};
+static const AsterixField I025_120 = { REPETITIVE, 3, 1, 0, &hf_025_120, I025_120_PARTS, { NULL } };
+static int hf_025_140 = -1;
+static int hf_025_140_TYPE = -1;
+static const value_string valstr_025_140_TYPE[] = {
+ { 0, "Number of unknown messages received" },
+ { 1, "Number of too old messages received" },
+ { 2, "Number of failed message conversions" },
+ { 3, "Total Number of messages received" },
+ { 4, "Total number of messages transmitted" },
+ { 5, "Reserved for AMG" },
+ { 6, "Reserved for AMG" },
+ { 7, "Reserved for AMG" },
+ { 8, "Reserved for AMG" },
+ { 9, "Reserved for AMG" },
+ { 10, "Reserved for AMG" },
+ { 11, "Reserved for AMG" },
+ { 12, "Reserved for AMG" },
+ { 13, "Reserved for AMG" },
+ { 14, "Reserved for AMG" },
+ { 15, "Reserved for AMG" },
+ { 16, "Reserved for AMG" },
+ { 17, "Reserved for AMG" },
+ { 18, "Reserved for AMG" },
+ { 19, "Reserved for AMG" },
+ { 20, "Implementation specific" },
+ { 21, "Implementation specific" },
+ { 22, "Implementation specific" },
+ { 23, "Implementation specific" },
+ { 24, "Implementation specific" },
+ { 25, "Implementation specific" },
+ { 26, "Implementation specific" },
+ { 27, "Implementation specific" },
+ { 28, "Implementation specific" },
+ { 29, "Implementation specific" },
+ { 30, "Implementation specific" },
+ { 31, "Implementation specific" },
+ { 32, "Implementation specific" },
+ { 33, "Implementation specific" },
+ { 34, "Implementation specific" },
+ { 35, "Implementation specific" },
+ { 36, "Implementation specific" },
+ { 37, "Implementation specific" },
+ { 38, "Implementation specific" },
+ { 39, "Implementation specific" },
+ { 40, "Implementation specific" },
+ { 41, "Implementation specific" },
+ { 42, "Implementation specific" },
+ { 43, "Implementation specific" },
+ { 44, "Implementation specific" },
+ { 45, "Implementation specific" },
+ { 46, "Implementation specific" },
+ { 47, "Implementation specific" },
+ { 48, "Implementation specific" },
+ { 49, "Implementation specific" },
+ { 50, "Implementation specific" },
+ { 51, "Implementation specific" },
+ { 52, "Implementation specific" },
+ { 53, "Implementation specific" },
+ { 54, "Implementation specific" },
+ { 55, "Implementation specific" },
+ { 56, "Implementation specific" },
+ { 57, "Implementation specific" },
+ { 58, "Implementation specific" },
+ { 59, "Implementation specific" },
+ { 60, "Implementation specific" },
+ { 61, "Implementation specific" },
+ { 62, "Implementation specific" },
+ { 63, "Implementation specific" },
+ { 64, "Implementation specific" },
+ { 65, "Implementation specific" },
+ { 66, "Implementation specific" },
+ { 67, "Implementation specific" },
+ { 68, "Implementation specific" },
+ { 69, "Implementation specific" },
+ { 70, "Implementation specific" },
+ { 71, "Implementation specific" },
+ { 72, "Implementation specific" },
+ { 73, "Implementation specific" },
+ { 74, "Implementation specific" },
+ { 75, "Implementation specific" },
+ { 76, "Implementation specific" },
+ { 77, "Implementation specific" },
+ { 78, "Implementation specific" },
+ { 79, "Implementation specific" },
+ { 80, "Implementation specific" },
+ { 81, "Implementation specific" },
+ { 82, "Implementation specific" },
+ { 83, "Implementation specific" },
+ { 84, "Implementation specific" },
+ { 85, "Implementation specific" },
+ { 86, "Implementation specific" },
+ { 87, "Implementation specific" },
+ { 88, "Implementation specific" },
+ { 89, "Implementation specific" },
+ { 90, "Implementation specific" },
+ { 91, "Implementation specific" },
+ { 92, "Implementation specific" },
+ { 93, "Implementation specific" },
+ { 94, "Implementation specific" },
+ { 95, "Implementation specific" },
+ { 96, "Implementation specific" },
+ { 97, "Implementation specific" },
+ { 98, "Implementation specific" },
+ { 99, "Implementation specific" },
+ { 100, "Implementation specific" },
+ { 101, "Implementation specific" },
+ { 102, "Implementation specific" },
+ { 103, "Implementation specific" },
+ { 104, "Implementation specific" },
+ { 105, "Implementation specific" },
+ { 106, "Implementation specific" },
+ { 107, "Implementation specific" },
+ { 108, "Implementation specific" },
+ { 109, "Implementation specific" },
+ { 110, "Implementation specific" },
+ { 111, "Implementation specific" },
+ { 112, "Implementation specific" },
+ { 113, "Implementation specific" },
+ { 114, "Implementation specific" },
+ { 115, "Implementation specific" },
+ { 116, "Implementation specific" },
+ { 117, "Implementation specific" },
+ { 118, "Implementation specific" },
+ { 119, "Implementation specific" },
+ { 120, "Implementation specific" },
+ { 121, "Implementation specific" },
+ { 122, "Implementation specific" },
+ { 123, "Implementation specific" },
+ { 124, "Implementation specific" },
+ { 125, "Implementation specific" },
+ { 126, "Implementation specific" },
+ { 127, "Implementation specific" },
+ { 128, "Implementation specific" },
+ { 129, "Implementation specific" },
+ { 130, "Implementation specific" },
+ { 131, "Implementation specific" },
+ { 132, "Implementation specific" },
+ { 133, "Implementation specific" },
+ { 134, "Implementation specific" },
+ { 135, "Implementation specific" },
+ { 136, "Implementation specific" },
+ { 137, "Implementation specific" },
+ { 138, "Implementation specific" },
+ { 139, "Implementation specific" },
+ { 140, "Implementation specific" },
+ { 141, "Implementation specific" },
+ { 142, "Implementation specific" },
+ { 143, "Implementation specific" },
+ { 144, "Implementation specific" },
+ { 145, "Implementation specific" },
+ { 146, "Implementation specific" },
+ { 147, "Implementation specific" },
+ { 148, "Implementation specific" },
+ { 149, "Implementation specific" },
+ { 150, "Implementation specific" },
+ { 151, "Implementation specific" },
+ { 152, "Implementation specific" },
+ { 153, "Implementation specific" },
+ { 154, "Implementation specific" },
+ { 155, "Implementation specific" },
+ { 156, "Implementation specific" },
+ { 157, "Implementation specific" },
+ { 158, "Implementation specific" },
+ { 159, "Implementation specific" },
+ { 160, "Implementation specific" },
+ { 161, "Implementation specific" },
+ { 162, "Implementation specific" },
+ { 163, "Implementation specific" },
+ { 164, "Implementation specific" },
+ { 165, "Implementation specific" },
+ { 166, "Implementation specific" },
+ { 167, "Implementation specific" },
+ { 168, "Implementation specific" },
+ { 169, "Implementation specific" },
+ { 170, "Implementation specific" },
+ { 171, "Implementation specific" },
+ { 172, "Implementation specific" },
+ { 173, "Implementation specific" },
+ { 174, "Implementation specific" },
+ { 175, "Implementation specific" },
+ { 176, "Implementation specific" },
+ { 177, "Implementation specific" },
+ { 178, "Implementation specific" },
+ { 179, "Implementation specific" },
+ { 180, "Implementation specific" },
+ { 181, "Implementation specific" },
+ { 182, "Implementation specific" },
+ { 183, "Implementation specific" },
+ { 184, "Implementation specific" },
+ { 185, "Implementation specific" },
+ { 186, "Implementation specific" },
+ { 187, "Implementation specific" },
+ { 188, "Implementation specific" },
+ { 189, "Implementation specific" },
+ { 190, "Implementation specific" },
+ { 191, "Implementation specific" },
+ { 192, "Implementation specific" },
+ { 193, "Implementation specific" },
+ { 194, "Implementation specific" },
+ { 195, "Implementation specific" },
+ { 196, "Implementation specific" },
+ { 197, "Implementation specific" },
+ { 198, "Implementation specific" },
+ { 199, "Implementation specific" },
+ { 200, "Implementation specific" },
+ { 201, "Implementation specific" },
+ { 202, "Implementation specific" },
+ { 203, "Implementation specific" },
+ { 204, "Implementation specific" },
+ { 205, "Implementation specific" },
+ { 206, "Implementation specific" },
+ { 207, "Implementation specific" },
+ { 208, "Implementation specific" },
+ { 209, "Implementation specific" },
+ { 210, "Implementation specific" },
+ { 211, "Implementation specific" },
+ { 212, "Implementation specific" },
+ { 213, "Implementation specific" },
+ { 214, "Implementation specific" },
+ { 215, "Implementation specific" },
+ { 216, "Implementation specific" },
+ { 217, "Implementation specific" },
+ { 218, "Implementation specific" },
+ { 219, "Implementation specific" },
+ { 220, "Implementation specific" },
+ { 221, "Implementation specific" },
+ { 222, "Implementation specific" },
+ { 223, "Implementation specific" },
+ { 224, "Implementation specific" },
+ { 225, "Implementation specific" },
+ { 226, "Implementation specific" },
+ { 227, "Implementation specific" },
+ { 228, "Implementation specific" },
+ { 229, "Implementation specific" },
+ { 230, "Implementation specific" },
+ { 231, "Implementation specific" },
+ { 232, "Implementation specific" },
+ { 233, "Implementation specific" },
+ { 234, "Implementation specific" },
+ { 235, "Implementation specific" },
+ { 236, "Implementation specific" },
+ { 237, "Implementation specific" },
+ { 238, "Implementation specific" },
+ { 239, "Implementation specific" },
+ { 240, "Implementation specific" },
+ { 241, "Implementation specific" },
+ { 242, "Implementation specific" },
+ { 243, "Implementation specific" },
+ { 244, "Implementation specific" },
+ { 245, "Implementation specific" },
+ { 246, "Implementation specific" },
+ { 247, "Implementation specific" },
+ { 248, "Implementation specific" },
+ { 249, "Implementation specific" },
+ { 250, "Implementation specific" },
+ { 251, "Implementation specific" },
+ { 252, "Implementation specific" },
+ { 253, "Implementation specific" },
+ { 254, "Implementation specific" },
+ { 255, "Implementation specific" },
+ { 0, NULL }
+};
+static const FieldPart I025_140_TYPE = { 8, 1.0, FIELD_PART_UINT, &hf_025_140_TYPE, NULL };
+static int hf_025_140_REF = -1;
+static const value_string valstr_025_140_REF[] = {
+ { 0, "From UTC midnight" },
+ { 1, "From the previous report" },
+ { 0, NULL }
+};
+static const FieldPart I025_140_REF = { 1, 1.0, FIELD_PART_UINT, &hf_025_140_REF, NULL };
+static int hf_025_140_COUNT = -1;
+static const FieldPart I025_140_COUNT = { 32, 1.0, FIELD_PART_UINT, &hf_025_140_COUNT, NULL };
+static const FieldPart *I025_140_PARTS[] = {
+ &I025_140_TYPE,
+ &I025_140_REF,
+ &IXXX_7bit_spare,
+ &I025_140_COUNT,
+ NULL
+};
+static const AsterixField I025_140 = { REPETITIVE, 6, 1, 0, &hf_025_140, I025_140_PARTS, { NULL } };
+static int hf_025_200 = -1;
+static int hf_025_200_VALUE = -1;
+static const FieldPart I025_200_VALUE = { 24, 1.0, FIELD_PART_UINT, &hf_025_200_VALUE, NULL };
+static const FieldPart *I025_200_PARTS[] = {
+ &I025_200_VALUE,
+ NULL
+};
+static const AsterixField I025_200 = { FIXED, 3, 0, 0, &hf_025_200, I025_200_PARTS, { NULL } };
+static int hf_025_600 = -1;
+static int hf_025_600_LAT = -1;
+static const FieldPart I025_600_LAT = { 32, 0.00000004190951585769653320312, FIELD_PART_FLOAT, &hf_025_600_LAT, NULL };
+static int hf_025_600_LON = -1;
+static const FieldPart I025_600_LON = { 32, 0.00000004190951585769653320312, FIELD_PART_FLOAT, &hf_025_600_LON, NULL };
+static const FieldPart *I025_600_PARTS[] = {
+ &I025_600_LAT,
+ &I025_600_LON,
+ NULL
+};
+static const AsterixField I025_600 = { FIXED, 8, 0, 0, &hf_025_600, I025_600_PARTS, { NULL } };
+static int hf_025_610 = -1;
+static int hf_025_610_VALUE = -1;
+static const FieldPart I025_610_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_025_610_VALUE, NULL };
+static const FieldPart *I025_610_PARTS[] = {
+ &I025_610_VALUE,
+ NULL
+};
+static const AsterixField I025_610 = { FIXED, 2, 0, 0, &hf_025_610, I025_610_PARTS, { NULL } };
+static int hf_025_SP = -1;
+static const AsterixField I025_SP = { EXP, 0, 0, 1, &hf_025_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I025_V1_5_uap[] = {
+ &I025_V1_5_010,
+ &I025_V1_5_000,
+ &I025_V1_5_200,
+ &I025_V1_5_015,
+ &I025_V1_5_020,
+ &I025_V1_5_070,
+ &I025_V1_5_100,
+ &I025_V1_5_105,
+ &I025_V1_5_120,
+ &I025_V1_5_140,
+ &I025_V1_5_SP,
+ &I025_V1_5_600,
+ &I025_V1_5_610,
+ NULL
+};
+static const AsterixField **I025_V1_5[] = {
+ I025_V1_5_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I025_uap[] = {
+ &I025_010,
+ &I025_000,
+ &I025_200,
+ &I025_015,
+ &I025_020,
+ &I025_070,
+ &I025_100,
+ &I025_105,
+ &I025_120,
+ &I025_140,
+ &I025_SP,
+ &I025_600,
+ &I025_610,
+ NULL
+};
+static const AsterixField **I025[] = {
+ I025_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 032, edition 1.1 */
+static int hf_032_V1_1_010 = -1;
+static int hf_032_V1_1_010_SAC = -1;
+static const FieldPart I032_V1_1_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_032_V1_1_010_SAC, NULL };
+static int hf_032_V1_1_010_SIC = -1;
+static const FieldPart I032_V1_1_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_032_V1_1_010_SIC, NULL };
+static const FieldPart *I032_V1_1_010_PARTS[] = {
+ &I032_V1_1_010_SAC,
+ &I032_V1_1_010_SIC,
+ NULL
+};
+static const AsterixField I032_V1_1_010 = { FIXED, 2, 0, 0, &hf_032_V1_1_010, I032_V1_1_010_PARTS, { NULL } };
+static int hf_032_V1_1_015 = -1;
+static int hf_032_V1_1_015_VALUE = -1;
+static const FieldPart I032_V1_1_015_VALUE = { 16, 1.0, FIELD_PART_UINT, &hf_032_V1_1_015_VALUE, NULL };
+static const FieldPart *I032_V1_1_015_PARTS[] = {
+ &I032_V1_1_015_VALUE,
+ NULL
+};
+static const AsterixField I032_V1_1_015 = { FIXED, 2, 0, 0, &hf_032_V1_1_015, I032_V1_1_015_PARTS, { NULL } };
+static int hf_032_V1_1_018 = -1;
+static int hf_032_V1_1_018_SAC = -1;
+static const FieldPart I032_V1_1_018_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_032_V1_1_018_SAC, NULL };
+static int hf_032_V1_1_018_SIC = -1;
+static const FieldPart I032_V1_1_018_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_032_V1_1_018_SIC, NULL };
+static const FieldPart *I032_V1_1_018_PARTS[] = {
+ &I032_V1_1_018_SAC,
+ &I032_V1_1_018_SIC,
+ NULL
+};
+static const AsterixField I032_V1_1_018 = { FIXED, 2, 0, 0, &hf_032_V1_1_018, I032_V1_1_018_PARTS, { NULL } };
+static int hf_032_V1_1_020 = -1;
+static int hf_032_V1_1_020_VALUE = -1;
+static const FieldPart I032_V1_1_020_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_032_V1_1_020_VALUE, NULL };
+static const FieldPart *I032_V1_1_020_PARTS[] = {
+ &I032_V1_1_020_VALUE,
+ NULL
+};
+static const AsterixField I032_V1_1_020 = { FIXED, 3, 0, 0, &hf_032_V1_1_020, I032_V1_1_020_PARTS, { NULL } };
+static int hf_032_V1_1_035 = -1;
+static int hf_032_V1_1_035_FAMILY = -1;
+static const value_string valstr_032_V1_1_035_FAMILY[] = {
+ { 1, "Information sent by an FPPS" },
+ { 0, NULL }
+};
+static const FieldPart I032_V1_1_035_FAMILY = { 4, 1.0, FIELD_PART_UINT, &hf_032_V1_1_035_FAMILY, NULL };
+static int hf_032_V1_1_035_NATURE = -1;
+static const value_string valstr_032_V1_1_035_NATURE[] = {
+ { 1, "Flight Plan to track initial correlation" },
+ { 2, "Miniplan update" },
+ { 3, "End of correlation" },
+ { 4, "Miniplan Cancellation" },
+ { 5, "Retained Miniplan" },
+ { 0, NULL }
+};
+static const FieldPart I032_V1_1_035_NATURE = { 4, 1.0, FIELD_PART_UINT, &hf_032_V1_1_035_NATURE, NULL };
+static const FieldPart *I032_V1_1_035_PARTS[] = {
+ &I032_V1_1_035_FAMILY,
+ &I032_V1_1_035_NATURE,
+ NULL
+};
+static const AsterixField I032_V1_1_035 = { FIXED, 1, 0, 0, &hf_032_V1_1_035, I032_V1_1_035_PARTS, { NULL } };
+static int hf_032_V1_1_040 = -1;
+static int hf_032_V1_1_040_VALUE = -1;
+static const FieldPart I032_V1_1_040_VALUE = { 16, 1.0, FIELD_PART_UINT, &hf_032_V1_1_040_VALUE, NULL };
+static const FieldPart *I032_V1_1_040_PARTS[] = {
+ &I032_V1_1_040_VALUE,
+ NULL
+};
+static const AsterixField I032_V1_1_040 = { FIXED, 2, 0, 0, &hf_032_V1_1_040, I032_V1_1_040_PARTS, { NULL } };
+static int hf_032_V1_1_050 = -1;
+static int hf_032_V1_1_050_SUI = -1;
+static const FieldPart I032_V1_1_050_SUI = { 8, 1.0, FIELD_PART_UINT, &hf_032_V1_1_050_SUI, NULL };
+static int hf_032_V1_1_050_STN = -1;
+static const FieldPart I032_V1_1_050_STN = { 15, 1.0, FIELD_PART_UINT, &hf_032_V1_1_050_STN, NULL };
+static const FieldPart *I032_V1_1_050_PARTS[] = {
+ &I032_V1_1_050_SUI,
+ &I032_V1_1_050_STN,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I032_V1_1_050 = { FX, 3, 0, 0, &hf_032_V1_1_050, I032_V1_1_050_PARTS, { NULL } };
+static int hf_032_V1_1_060 = -1;
+static int hf_032_V1_1_060_MODE3A = -1;
+static const FieldPart I032_V1_1_060_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_032_V1_1_060_MODE3A, NULL };
+static const FieldPart *I032_V1_1_060_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I032_V1_1_060_MODE3A,
+ NULL
+};
+static const AsterixField I032_V1_1_060 = { FIXED, 2, 0, 0, &hf_032_V1_1_060, I032_V1_1_060_PARTS, { NULL } };
+static int hf_032_V1_1_400 = -1;
+static int hf_032_V1_1_400_VALUE = -1;
+static const FieldPart I032_V1_1_400_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_032_V1_1_400_VALUE, NULL };
+static const FieldPart *I032_V1_1_400_PARTS[] = {
+ &I032_V1_1_400_VALUE,
+ NULL
+};
+static const AsterixField I032_V1_1_400 = { FIXED, 7, 0, 0, &hf_032_V1_1_400, I032_V1_1_400_PARTS, { NULL } };
+static int hf_032_V1_1_410 = -1;
+static int hf_032_V1_1_410_VALUE = -1;
+static const FieldPart I032_V1_1_410_VALUE = { 16, 1.0, FIELD_PART_UINT, &hf_032_V1_1_410_VALUE, NULL };
+static const FieldPart *I032_V1_1_410_PARTS[] = {
+ &I032_V1_1_410_VALUE,
+ NULL
+};
+static const AsterixField I032_V1_1_410 = { FIXED, 2, 0, 0, &hf_032_V1_1_410, I032_V1_1_410_PARTS, { NULL } };
+static int hf_032_V1_1_420 = -1;
+static int hf_032_V1_1_420_GATOAT = -1;
+static const value_string valstr_032_V1_1_420_GATOAT[] = {
+ { 0, "Unknown" },
+ { 1, "General Air Traffic" },
+ { 2, "Operational Air Traffic" },
+ { 3, "Not applicable" },
+ { 0, NULL }
+};
+static const FieldPart I032_V1_1_420_GATOAT = { 2, 1.0, FIELD_PART_UINT, &hf_032_V1_1_420_GATOAT, NULL };
+static int hf_032_V1_1_420_FR1FR2 = -1;
+static const value_string valstr_032_V1_1_420_FR1FR2[] = {
+ { 0, "Instrument Flight Rules" },
+ { 1, "Visual Flight rules" },
+ { 2, "Not applicable" },
+ { 3, "Controlled Visual Flight Rules" },
+ { 0, NULL }
+};
+static const FieldPart I032_V1_1_420_FR1FR2 = { 2, 1.0, FIELD_PART_UINT, &hf_032_V1_1_420_FR1FR2, NULL };
+static int hf_032_V1_1_420_SP3 = -1;
+static const FieldPart I032_V1_1_420_SP3 = { 1, 1.0, FIELD_PART_HEX, &hf_032_V1_1_420_SP3, NULL };
+static int hf_032_V1_1_420_SP2 = -1;
+static const FieldPart I032_V1_1_420_SP2 = { 1, 1.0, FIELD_PART_HEX, &hf_032_V1_1_420_SP2, NULL };
+static int hf_032_V1_1_420_SP1 = -1;
+static const FieldPart I032_V1_1_420_SP1 = { 1, 1.0, FIELD_PART_HEX, &hf_032_V1_1_420_SP1, NULL };
+static const FieldPart *I032_V1_1_420_PARTS[] = {
+ &I032_V1_1_420_GATOAT,
+ &I032_V1_1_420_FR1FR2,
+ &I032_V1_1_420_SP3,
+ &I032_V1_1_420_SP2,
+ &I032_V1_1_420_SP1,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I032_V1_1_420 = { FIXED, 1, 0, 0, &hf_032_V1_1_420, I032_V1_1_420_PARTS, { NULL } };
+static int hf_032_V1_1_430 = -1;
+static int hf_032_V1_1_430_VALUE = -1;
+static const FieldPart I032_V1_1_430_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_032_V1_1_430_VALUE, NULL };
+static const FieldPart *I032_V1_1_430_PARTS[] = {
+ &I032_V1_1_430_VALUE,
+ NULL
+};
+static const AsterixField I032_V1_1_430 = { FIXED, 4, 0, 0, &hf_032_V1_1_430, I032_V1_1_430_PARTS, { NULL } };
+static int hf_032_V1_1_435 = -1;
+static int hf_032_V1_1_435_VALUE = -1;
+static const value_string valstr_032_V1_1_435_VALUE[] = {
+ { 76, "Light" },
+ { 77, "Medium" },
+ { 72, "Heavy" },
+ { 74, "Super" },
+ { 0, NULL }
+};
+static const FieldPart I032_V1_1_435_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_032_V1_1_435_VALUE, NULL };
+static const FieldPart *I032_V1_1_435_PARTS[] = {
+ &I032_V1_1_435_VALUE,
+ NULL
+};
+static const AsterixField I032_V1_1_435 = { FIXED, 1, 0, 0, &hf_032_V1_1_435, I032_V1_1_435_PARTS, { NULL } };
+static int hf_032_V1_1_440 = -1;
+static int hf_032_V1_1_440_VALUE = -1;
+static const FieldPart I032_V1_1_440_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_032_V1_1_440_VALUE, NULL };
+static const FieldPart *I032_V1_1_440_PARTS[] = {
+ &I032_V1_1_440_VALUE,
+ NULL
+};
+static const AsterixField I032_V1_1_440 = { FIXED, 4, 0, 0, &hf_032_V1_1_440, I032_V1_1_440_PARTS, { NULL } };
+static int hf_032_V1_1_450 = -1;
+static int hf_032_V1_1_450_VALUE = -1;
+static const FieldPart I032_V1_1_450_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_032_V1_1_450_VALUE, NULL };
+static const FieldPart *I032_V1_1_450_PARTS[] = {
+ &I032_V1_1_450_VALUE,
+ NULL
+};
+static const AsterixField I032_V1_1_450 = { FIXED, 4, 0, 0, &hf_032_V1_1_450, I032_V1_1_450_PARTS, { NULL } };
+static int hf_032_V1_1_460 = -1;
+static int hf_032_V1_1_460_OCT1 = -1;
+static const FieldPart I032_V1_1_460_OCT1 = { 3, 1.0, FIELD_PART_HEX, &hf_032_V1_1_460_OCT1, NULL };
+static int hf_032_V1_1_460_OCT2 = -1;
+static const FieldPart I032_V1_1_460_OCT2 = { 3, 1.0, FIELD_PART_HEX, &hf_032_V1_1_460_OCT2, NULL };
+static int hf_032_V1_1_460_OCT3 = -1;
+static const FieldPart I032_V1_1_460_OCT3 = { 3, 1.0, FIELD_PART_HEX, &hf_032_V1_1_460_OCT3, NULL };
+static int hf_032_V1_1_460_OCT4 = -1;
+static const FieldPart I032_V1_1_460_OCT4 = { 3, 1.0, FIELD_PART_HEX, &hf_032_V1_1_460_OCT4, NULL };
+static const FieldPart *I032_V1_1_460_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I032_V1_1_460_OCT1,
+ &I032_V1_1_460_OCT2,
+ &I032_V1_1_460_OCT3,
+ &I032_V1_1_460_OCT4,
+ NULL
+};
+static const AsterixField I032_V1_1_460 = { REPETITIVE, 2, 1, 0, &hf_032_V1_1_460, I032_V1_1_460_PARTS, { NULL } };
+static int hf_032_V1_1_480 = -1;
+static int hf_032_V1_1_480_VALUE = -1;
+static const FieldPart I032_V1_1_480_VALUE = { 16, 0.25, FIELD_PART_UFLOAT, &hf_032_V1_1_480_VALUE, NULL };
+static const FieldPart *I032_V1_1_480_PARTS[] = {
+ &I032_V1_1_480_VALUE,
+ NULL
+};
+static const AsterixField I032_V1_1_480 = { FIXED, 2, 0, 0, &hf_032_V1_1_480, I032_V1_1_480_PARTS, { NULL } };
+static int hf_032_V1_1_490 = -1;
+static int hf_032_V1_1_490_CEN = -1;
+static const FieldPart I032_V1_1_490_CEN = { 8, 1.0, FIELD_PART_HEX, &hf_032_V1_1_490_CEN, NULL };
+static int hf_032_V1_1_490_POS = -1;
+static const FieldPart I032_V1_1_490_POS = { 8, 1.0, FIELD_PART_HEX, &hf_032_V1_1_490_POS, NULL };
+static const FieldPart *I032_V1_1_490_PARTS[] = {
+ &I032_V1_1_490_CEN,
+ &I032_V1_1_490_POS,
+ NULL
+};
+static const AsterixField I032_V1_1_490 = { FIXED, 2, 0, 0, &hf_032_V1_1_490, I032_V1_1_490_PARTS, { NULL } };
+static int hf_032_V1_1_500 = -1;
+static int hf_032_V1_1_500_IFI = -1;
+static int hf_032_V1_1_500_IFI_TYP = -1;
+static const value_string valstr_032_V1_1_500_IFI_TYP[] = {
+ { 0, "Plan Number" },
+ { 1, "Unit 1 internal flight number" },
+ { 2, "Unit 2 internal flight number" },
+ { 3, "Unit 3 internal flight number" },
+ { 0, NULL }
+};
+static const FieldPart I032_V1_1_500_IFI_TYP = { 2, 1.0, FIELD_PART_UINT, &hf_032_V1_1_500_IFI_TYP, NULL };
+static int hf_032_V1_1_500_IFI_NBR = -1;
+static const FieldPart I032_V1_1_500_IFI_NBR = { 27, 1.0, FIELD_PART_UINT, &hf_032_V1_1_500_IFI_NBR, NULL };
+static const FieldPart *I032_V1_1_500_IFI_PARTS[] = {
+ &I032_V1_1_500_IFI_TYP,
+ &IXXX_3bit_spare,
+ &I032_V1_1_500_IFI_NBR,
+ NULL
+};
+static const AsterixField I032_V1_1_500_IFI = { FIXED, 4, 0, 0, &hf_032_V1_1_500_IFI, I032_V1_1_500_IFI_PARTS, { NULL } };
+static int hf_032_V1_1_500_RVP = -1;
+static int hf_032_V1_1_500_RVP_RVSM = -1;
+static const value_string valstr_032_V1_1_500_RVP_RVSM[] = {
+ { 0, "Unknown" },
+ { 1, "Approved" },
+ { 2, "Exempt" },
+ { 3, "Not approved" },
+ { 0, NULL }
+};
+static const FieldPart I032_V1_1_500_RVP_RVSM = { 2, 1.0, FIELD_PART_UINT, &hf_032_V1_1_500_RVP_RVSM, NULL };
+static int hf_032_V1_1_500_RVP_HPR = -1;
+static const value_string valstr_032_V1_1_500_RVP_HPR[] = {
+ { 0, "Normal Priority Flight" },
+ { 1, "High Priority Flight" },
+ { 0, NULL }
+};
+static const FieldPart I032_V1_1_500_RVP_HPR = { 1, 1.0, FIELD_PART_UINT, &hf_032_V1_1_500_RVP_HPR, NULL };
+static const FieldPart *I032_V1_1_500_RVP_PARTS[] = {
+ &IXXX_5bit_spare,
+ &I032_V1_1_500_RVP_RVSM,
+ &I032_V1_1_500_RVP_HPR,
+ NULL
+};
+static const AsterixField I032_V1_1_500_RVP = { FIXED, 1, 0, 0, &hf_032_V1_1_500_RVP, I032_V1_1_500_RVP_PARTS, { NULL } };
+static int hf_032_V1_1_500_RDS = -1;
+static int hf_032_V1_1_500_RDS_NU1 = -1;
+static const FieldPart I032_V1_1_500_RDS_NU1 = { 8, 1.0, FIELD_PART_ASCII, &hf_032_V1_1_500_RDS_NU1, NULL };
+static int hf_032_V1_1_500_RDS_NU2 = -1;
+static const FieldPart I032_V1_1_500_RDS_NU2 = { 8, 1.0, FIELD_PART_ASCII, &hf_032_V1_1_500_RDS_NU2, NULL };
+static int hf_032_V1_1_500_RDS_LTR = -1;
+static const FieldPart I032_V1_1_500_RDS_LTR = { 8, 1.0, FIELD_PART_ASCII, &hf_032_V1_1_500_RDS_LTR, NULL };
+static const FieldPart *I032_V1_1_500_RDS_PARTS[] = {
+ &I032_V1_1_500_RDS_NU1,
+ &I032_V1_1_500_RDS_NU2,
+ &I032_V1_1_500_RDS_LTR,
+ NULL
+};
+static const AsterixField I032_V1_1_500_RDS = { FIXED, 3, 0, 0, &hf_032_V1_1_500_RDS, I032_V1_1_500_RDS_PARTS, { NULL } };
+static int hf_032_V1_1_500_TOD = -1;
+static int hf_032_V1_1_500_TOD_TYP = -1;
+static const value_string valstr_032_V1_1_500_TOD_TYP[] = {
+ { 0, "Scheduled Off-Block Time" },
+ { 1, "Estimated Off-Block Time" },
+ { 2, "Estimated Take-Off Time" },
+ { 3, "Actual Off-Block Time" },
+ { 4, "Predicted Time at Runway Hold" },
+ { 5, "Actual Time at Runway Hold" },
+ { 6, "Actual Line-Up Time" },
+ { 7, "Actual Take-Off Time" },
+ { 8, "Estimated Time of Arrival" },
+ { 9, "Predicted Landing Time" },
+ { 10, "Actual Landing Time" },
+ { 11, "Actual Time off Runway" },
+ { 12, "Predicted Time to Gate" },
+ { 13, "Actual On-Block Time" },
+ { 0, NULL }
+};
+static const FieldPart I032_V1_1_500_TOD_TYP = { 5, 1.0, FIELD_PART_UINT, &hf_032_V1_1_500_TOD_TYP, NULL };
+static int hf_032_V1_1_500_TOD_DAY = -1;
+static const value_string valstr_032_V1_1_500_TOD_DAY[] = {
+ { 0, "Today" },
+ { 1, "Yesterday" },
+ { 2, "Tomorrow" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I032_V1_1_500_TOD_DAY = { 2, 1.0, FIELD_PART_UINT, &hf_032_V1_1_500_TOD_DAY, NULL };
+static int hf_032_V1_1_500_TOD_HOR = -1;
+static const FieldPart I032_V1_1_500_TOD_HOR = { 5, 1.0, FIELD_PART_UINT, &hf_032_V1_1_500_TOD_HOR, NULL };
+static int hf_032_V1_1_500_TOD_MIN = -1;
+static const FieldPart I032_V1_1_500_TOD_MIN = { 6, 1.0, FIELD_PART_UINT, &hf_032_V1_1_500_TOD_MIN, NULL };
+static int hf_032_V1_1_500_TOD_AVS = -1;
+static const value_string valstr_032_V1_1_500_TOD_AVS[] = {
+ { 0, "Seconds available" },
+ { 1, "Seconds not available" },
+ { 0, NULL }
+};
+static const FieldPart I032_V1_1_500_TOD_AVS = { 1, 1.0, FIELD_PART_UINT, &hf_032_V1_1_500_TOD_AVS, NULL };
+static int hf_032_V1_1_500_TOD_SEC = -1;
+static const FieldPart I032_V1_1_500_TOD_SEC = { 6, 1.0, FIELD_PART_UINT, &hf_032_V1_1_500_TOD_SEC, NULL };
+static const FieldPart *I032_V1_1_500_TOD_PARTS[] = {
+ &I032_V1_1_500_TOD_TYP,
+ &I032_V1_1_500_TOD_DAY,
+ &IXXX_4bit_spare,
+ &I032_V1_1_500_TOD_HOR,
+ &IXXX_2bit_spare,
+ &I032_V1_1_500_TOD_MIN,
+ &I032_V1_1_500_TOD_AVS,
+ &IXXX_1bit_spare,
+ &I032_V1_1_500_TOD_SEC,
+ NULL
+};
+static const AsterixField I032_V1_1_500_TOD = { REPETITIVE, 4, 1, 0, &hf_032_V1_1_500_TOD, I032_V1_1_500_TOD_PARTS, { NULL } };
+static int hf_032_V1_1_500_AST = -1;
+static int hf_032_V1_1_500_AST_VALUE = -1;
+static const FieldPart I032_V1_1_500_AST_VALUE = { 48, 1.0, FIELD_PART_ASCII, &hf_032_V1_1_500_AST_VALUE, NULL };
+static const FieldPart *I032_V1_1_500_AST_PARTS[] = {
+ &I032_V1_1_500_AST_VALUE,
+ NULL
+};
+static const AsterixField I032_V1_1_500_AST = { FIXED, 6, 0, 0, &hf_032_V1_1_500_AST, I032_V1_1_500_AST_PARTS, { NULL } };
+static int hf_032_V1_1_500_STS = -1;
+static int hf_032_V1_1_500_STS_EMP = -1;
+static const value_string valstr_032_V1_1_500_STS_EMP[] = {
+ { 0, "Empty" },
+ { 1, "Occupied" },
+ { 2, "Unknown" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I032_V1_1_500_STS_EMP = { 2, 1.0, FIELD_PART_UINT, &hf_032_V1_1_500_STS_EMP, NULL };
+static int hf_032_V1_1_500_STS_AVL = -1;
+static const value_string valstr_032_V1_1_500_STS_AVL[] = {
+ { 0, "Available" },
+ { 1, "Not available" },
+ { 2, "Unknown" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I032_V1_1_500_STS_AVL = { 2, 1.0, FIELD_PART_UINT, &hf_032_V1_1_500_STS_AVL, NULL };
+static const FieldPart *I032_V1_1_500_STS_PARTS[] = {
+ &I032_V1_1_500_STS_EMP,
+ &I032_V1_1_500_STS_AVL,
+ &IXXX_4bit_spare,
+ NULL
+};
+static const AsterixField I032_V1_1_500_STS = { FIXED, 1, 0, 0, &hf_032_V1_1_500_STS, I032_V1_1_500_STS_PARTS, { NULL } };
+static int hf_032_V1_1_500_SID = -1;
+static int hf_032_V1_1_500_SID_VALUE = -1;
+static const FieldPart I032_V1_1_500_SID_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_032_V1_1_500_SID_VALUE, NULL };
+static const FieldPart *I032_V1_1_500_SID_PARTS[] = {
+ &I032_V1_1_500_SID_VALUE,
+ NULL
+};
+static const AsterixField I032_V1_1_500_SID = { FIXED, 7, 0, 0, &hf_032_V1_1_500_SID, I032_V1_1_500_SID_PARTS, { NULL } };
+static int hf_032_V1_1_500_STAR = -1;
+static int hf_032_V1_1_500_STAR_VALUE = -1;
+static const FieldPart I032_V1_1_500_STAR_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_032_V1_1_500_STAR_VALUE, NULL };
+static const FieldPart *I032_V1_1_500_STAR_PARTS[] = {
+ &I032_V1_1_500_STAR_VALUE,
+ NULL
+};
+static const AsterixField I032_V1_1_500_STAR = { FIXED, 7, 0, 0, &hf_032_V1_1_500_STAR, I032_V1_1_500_STAR_PARTS, { NULL } };
+static const AsterixField I032_V1_1_500 = { COMPOUND, 0, 0, 0, &hf_032_V1_1_500, NULL, { &I032_V1_1_500_IFI, &I032_V1_1_500_RVP, &I032_V1_1_500_RDS, &I032_V1_1_500_TOD, &I032_V1_1_500_AST, &I032_V1_1_500_STS, &I032_V1_1_500_SID, &I032_V1_1_500_STAR, NULL } };
+static int hf_032_V1_1_RE = -1;
+static const AsterixField I032_V1_1_RE = { EXP, 0, 0, 1, &hf_032_V1_1_RE, NULL, { NULL } };
+
+/* Category 032, edition 1.1 (latest) */
+static int hf_032_010 = -1;
+static int hf_032_010_SAC = -1;
+static const FieldPart I032_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_032_010_SAC, NULL };
+static int hf_032_010_SIC = -1;
+static const FieldPart I032_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_032_010_SIC, NULL };
+static const FieldPart *I032_010_PARTS[] = {
+ &I032_010_SAC,
+ &I032_010_SIC,
+ NULL
+};
+static const AsterixField I032_010 = { FIXED, 2, 0, 0, &hf_032_010, I032_010_PARTS, { NULL } };
+static int hf_032_015 = -1;
+static int hf_032_015_VALUE = -1;
+static const FieldPart I032_015_VALUE = { 16, 1.0, FIELD_PART_UINT, &hf_032_015_VALUE, NULL };
+static const FieldPart *I032_015_PARTS[] = {
+ &I032_015_VALUE,
+ NULL
+};
+static const AsterixField I032_015 = { FIXED, 2, 0, 0, &hf_032_015, I032_015_PARTS, { NULL } };
+static int hf_032_018 = -1;
+static int hf_032_018_SAC = -1;
+static const FieldPart I032_018_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_032_018_SAC, NULL };
+static int hf_032_018_SIC = -1;
+static const FieldPart I032_018_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_032_018_SIC, NULL };
+static const FieldPart *I032_018_PARTS[] = {
+ &I032_018_SAC,
+ &I032_018_SIC,
+ NULL
+};
+static const AsterixField I032_018 = { FIXED, 2, 0, 0, &hf_032_018, I032_018_PARTS, { NULL } };
+static int hf_032_020 = -1;
+static int hf_032_020_VALUE = -1;
+static const FieldPart I032_020_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_032_020_VALUE, NULL };
+static const FieldPart *I032_020_PARTS[] = {
+ &I032_020_VALUE,
+ NULL
+};
+static const AsterixField I032_020 = { FIXED, 3, 0, 0, &hf_032_020, I032_020_PARTS, { NULL } };
+static int hf_032_035 = -1;
+static int hf_032_035_FAMILY = -1;
+static const value_string valstr_032_035_FAMILY[] = {
+ { 1, "Information sent by an FPPS" },
+ { 0, NULL }
+};
+static const FieldPart I032_035_FAMILY = { 4, 1.0, FIELD_PART_UINT, &hf_032_035_FAMILY, NULL };
+static int hf_032_035_NATURE = -1;
+static const value_string valstr_032_035_NATURE[] = {
+ { 1, "Flight Plan to track initial correlation" },
+ { 2, "Miniplan update" },
+ { 3, "End of correlation" },
+ { 4, "Miniplan Cancellation" },
+ { 5, "Retained Miniplan" },
+ { 0, NULL }
+};
+static const FieldPart I032_035_NATURE = { 4, 1.0, FIELD_PART_UINT, &hf_032_035_NATURE, NULL };
+static const FieldPart *I032_035_PARTS[] = {
+ &I032_035_FAMILY,
+ &I032_035_NATURE,
+ NULL
+};
+static const AsterixField I032_035 = { FIXED, 1, 0, 0, &hf_032_035, I032_035_PARTS, { NULL } };
+static int hf_032_040 = -1;
+static int hf_032_040_VALUE = -1;
+static const FieldPart I032_040_VALUE = { 16, 1.0, FIELD_PART_UINT, &hf_032_040_VALUE, NULL };
+static const FieldPart *I032_040_PARTS[] = {
+ &I032_040_VALUE,
+ NULL
+};
+static const AsterixField I032_040 = { FIXED, 2, 0, 0, &hf_032_040, I032_040_PARTS, { NULL } };
+static int hf_032_050 = -1;
+static int hf_032_050_SUI = -1;
+static const FieldPart I032_050_SUI = { 8, 1.0, FIELD_PART_UINT, &hf_032_050_SUI, NULL };
+static int hf_032_050_STN = -1;
+static const FieldPart I032_050_STN = { 15, 1.0, FIELD_PART_UINT, &hf_032_050_STN, NULL };
+static const FieldPart *I032_050_PARTS[] = {
+ &I032_050_SUI,
+ &I032_050_STN,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I032_050 = { FX, 3, 0, 0, &hf_032_050, I032_050_PARTS, { NULL } };
+static int hf_032_060 = -1;
+static int hf_032_060_MODE3A = -1;
+static const FieldPart I032_060_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_032_060_MODE3A, NULL };
+static const FieldPart *I032_060_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I032_060_MODE3A,
+ NULL
+};
+static const AsterixField I032_060 = { FIXED, 2, 0, 0, &hf_032_060, I032_060_PARTS, { NULL } };
+static int hf_032_400 = -1;
+static int hf_032_400_VALUE = -1;
+static const FieldPart I032_400_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_032_400_VALUE, NULL };
+static const FieldPart *I032_400_PARTS[] = {
+ &I032_400_VALUE,
+ NULL
+};
+static const AsterixField I032_400 = { FIXED, 7, 0, 0, &hf_032_400, I032_400_PARTS, { NULL } };
+static int hf_032_410 = -1;
+static int hf_032_410_VALUE = -1;
+static const FieldPart I032_410_VALUE = { 16, 1.0, FIELD_PART_UINT, &hf_032_410_VALUE, NULL };
+static const FieldPart *I032_410_PARTS[] = {
+ &I032_410_VALUE,
+ NULL
+};
+static const AsterixField I032_410 = { FIXED, 2, 0, 0, &hf_032_410, I032_410_PARTS, { NULL } };
+static int hf_032_420 = -1;
+static int hf_032_420_GATOAT = -1;
+static const value_string valstr_032_420_GATOAT[] = {
+ { 0, "Unknown" },
+ { 1, "General Air Traffic" },
+ { 2, "Operational Air Traffic" },
+ { 3, "Not applicable" },
+ { 0, NULL }
+};
+static const FieldPart I032_420_GATOAT = { 2, 1.0, FIELD_PART_UINT, &hf_032_420_GATOAT, NULL };
+static int hf_032_420_FR1FR2 = -1;
+static const value_string valstr_032_420_FR1FR2[] = {
+ { 0, "Instrument Flight Rules" },
+ { 1, "Visual Flight rules" },
+ { 2, "Not applicable" },
+ { 3, "Controlled Visual Flight Rules" },
+ { 0, NULL }
+};
+static const FieldPart I032_420_FR1FR2 = { 2, 1.0, FIELD_PART_UINT, &hf_032_420_FR1FR2, NULL };
+static int hf_032_420_SP3 = -1;
+static const FieldPart I032_420_SP3 = { 1, 1.0, FIELD_PART_HEX, &hf_032_420_SP3, NULL };
+static int hf_032_420_SP2 = -1;
+static const FieldPart I032_420_SP2 = { 1, 1.0, FIELD_PART_HEX, &hf_032_420_SP2, NULL };
+static int hf_032_420_SP1 = -1;
+static const FieldPart I032_420_SP1 = { 1, 1.0, FIELD_PART_HEX, &hf_032_420_SP1, NULL };
+static const FieldPart *I032_420_PARTS[] = {
+ &I032_420_GATOAT,
+ &I032_420_FR1FR2,
+ &I032_420_SP3,
+ &I032_420_SP2,
+ &I032_420_SP1,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I032_420 = { FIXED, 1, 0, 0, &hf_032_420, I032_420_PARTS, { NULL } };
+static int hf_032_430 = -1;
+static int hf_032_430_VALUE = -1;
+static const FieldPart I032_430_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_032_430_VALUE, NULL };
+static const FieldPart *I032_430_PARTS[] = {
+ &I032_430_VALUE,
+ NULL
+};
+static const AsterixField I032_430 = { FIXED, 4, 0, 0, &hf_032_430, I032_430_PARTS, { NULL } };
+static int hf_032_435 = -1;
+static int hf_032_435_VALUE = -1;
+static const value_string valstr_032_435_VALUE[] = {
+ { 76, "Light" },
+ { 77, "Medium" },
+ { 72, "Heavy" },
+ { 74, "Super" },
+ { 0, NULL }
+};
+static const FieldPart I032_435_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_032_435_VALUE, NULL };
+static const FieldPart *I032_435_PARTS[] = {
+ &I032_435_VALUE,
+ NULL
+};
+static const AsterixField I032_435 = { FIXED, 1, 0, 0, &hf_032_435, I032_435_PARTS, { NULL } };
+static int hf_032_440 = -1;
+static int hf_032_440_VALUE = -1;
+static const FieldPart I032_440_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_032_440_VALUE, NULL };
+static const FieldPart *I032_440_PARTS[] = {
+ &I032_440_VALUE,
+ NULL
+};
+static const AsterixField I032_440 = { FIXED, 4, 0, 0, &hf_032_440, I032_440_PARTS, { NULL } };
+static int hf_032_450 = -1;
+static int hf_032_450_VALUE = -1;
+static const FieldPart I032_450_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_032_450_VALUE, NULL };
+static const FieldPart *I032_450_PARTS[] = {
+ &I032_450_VALUE,
+ NULL
+};
+static const AsterixField I032_450 = { FIXED, 4, 0, 0, &hf_032_450, I032_450_PARTS, { NULL } };
+static int hf_032_460 = -1;
+static int hf_032_460_OCT1 = -1;
+static const FieldPart I032_460_OCT1 = { 3, 1.0, FIELD_PART_HEX, &hf_032_460_OCT1, NULL };
+static int hf_032_460_OCT2 = -1;
+static const FieldPart I032_460_OCT2 = { 3, 1.0, FIELD_PART_HEX, &hf_032_460_OCT2, NULL };
+static int hf_032_460_OCT3 = -1;
+static const FieldPart I032_460_OCT3 = { 3, 1.0, FIELD_PART_HEX, &hf_032_460_OCT3, NULL };
+static int hf_032_460_OCT4 = -1;
+static const FieldPart I032_460_OCT4 = { 3, 1.0, FIELD_PART_HEX, &hf_032_460_OCT4, NULL };
+static const FieldPart *I032_460_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I032_460_OCT1,
+ &I032_460_OCT2,
+ &I032_460_OCT3,
+ &I032_460_OCT4,
+ NULL
+};
+static const AsterixField I032_460 = { REPETITIVE, 2, 1, 0, &hf_032_460, I032_460_PARTS, { NULL } };
+static int hf_032_480 = -1;
+static int hf_032_480_VALUE = -1;
+static const FieldPart I032_480_VALUE = { 16, 0.25, FIELD_PART_UFLOAT, &hf_032_480_VALUE, NULL };
+static const FieldPart *I032_480_PARTS[] = {
+ &I032_480_VALUE,
+ NULL
+};
+static const AsterixField I032_480 = { FIXED, 2, 0, 0, &hf_032_480, I032_480_PARTS, { NULL } };
+static int hf_032_490 = -1;
+static int hf_032_490_CEN = -1;
+static const FieldPart I032_490_CEN = { 8, 1.0, FIELD_PART_HEX, &hf_032_490_CEN, NULL };
+static int hf_032_490_POS = -1;
+static const FieldPart I032_490_POS = { 8, 1.0, FIELD_PART_HEX, &hf_032_490_POS, NULL };
+static const FieldPart *I032_490_PARTS[] = {
+ &I032_490_CEN,
+ &I032_490_POS,
+ NULL
+};
+static const AsterixField I032_490 = { FIXED, 2, 0, 0, &hf_032_490, I032_490_PARTS, { NULL } };
+static int hf_032_500 = -1;
+static int hf_032_500_IFI = -1;
+static int hf_032_500_IFI_TYP = -1;
+static const value_string valstr_032_500_IFI_TYP[] = {
+ { 0, "Plan Number" },
+ { 1, "Unit 1 internal flight number" },
+ { 2, "Unit 2 internal flight number" },
+ { 3, "Unit 3 internal flight number" },
+ { 0, NULL }
+};
+static const FieldPart I032_500_IFI_TYP = { 2, 1.0, FIELD_PART_UINT, &hf_032_500_IFI_TYP, NULL };
+static int hf_032_500_IFI_NBR = -1;
+static const FieldPart I032_500_IFI_NBR = { 27, 1.0, FIELD_PART_UINT, &hf_032_500_IFI_NBR, NULL };
+static const FieldPart *I032_500_IFI_PARTS[] = {
+ &I032_500_IFI_TYP,
+ &IXXX_3bit_spare,
+ &I032_500_IFI_NBR,
+ NULL
+};
+static const AsterixField I032_500_IFI = { FIXED, 4, 0, 0, &hf_032_500_IFI, I032_500_IFI_PARTS, { NULL } };
+static int hf_032_500_RVP = -1;
+static int hf_032_500_RVP_RVSM = -1;
+static const value_string valstr_032_500_RVP_RVSM[] = {
+ { 0, "Unknown" },
+ { 1, "Approved" },
+ { 2, "Exempt" },
+ { 3, "Not approved" },
+ { 0, NULL }
+};
+static const FieldPart I032_500_RVP_RVSM = { 2, 1.0, FIELD_PART_UINT, &hf_032_500_RVP_RVSM, NULL };
+static int hf_032_500_RVP_HPR = -1;
+static const value_string valstr_032_500_RVP_HPR[] = {
+ { 0, "Normal Priority Flight" },
+ { 1, "High Priority Flight" },
+ { 0, NULL }
+};
+static const FieldPart I032_500_RVP_HPR = { 1, 1.0, FIELD_PART_UINT, &hf_032_500_RVP_HPR, NULL };
+static const FieldPart *I032_500_RVP_PARTS[] = {
+ &IXXX_5bit_spare,
+ &I032_500_RVP_RVSM,
+ &I032_500_RVP_HPR,
+ NULL
+};
+static const AsterixField I032_500_RVP = { FIXED, 1, 0, 0, &hf_032_500_RVP, I032_500_RVP_PARTS, { NULL } };
+static int hf_032_500_RDS = -1;
+static int hf_032_500_RDS_NU1 = -1;
+static const FieldPart I032_500_RDS_NU1 = { 8, 1.0, FIELD_PART_ASCII, &hf_032_500_RDS_NU1, NULL };
+static int hf_032_500_RDS_NU2 = -1;
+static const FieldPart I032_500_RDS_NU2 = { 8, 1.0, FIELD_PART_ASCII, &hf_032_500_RDS_NU2, NULL };
+static int hf_032_500_RDS_LTR = -1;
+static const FieldPart I032_500_RDS_LTR = { 8, 1.0, FIELD_PART_ASCII, &hf_032_500_RDS_LTR, NULL };
+static const FieldPart *I032_500_RDS_PARTS[] = {
+ &I032_500_RDS_NU1,
+ &I032_500_RDS_NU2,
+ &I032_500_RDS_LTR,
+ NULL
+};
+static const AsterixField I032_500_RDS = { FIXED, 3, 0, 0, &hf_032_500_RDS, I032_500_RDS_PARTS, { NULL } };
+static int hf_032_500_TOD = -1;
+static int hf_032_500_TOD_TYP = -1;
+static const value_string valstr_032_500_TOD_TYP[] = {
+ { 0, "Scheduled Off-Block Time" },
+ { 1, "Estimated Off-Block Time" },
+ { 2, "Estimated Take-Off Time" },
+ { 3, "Actual Off-Block Time" },
+ { 4, "Predicted Time at Runway Hold" },
+ { 5, "Actual Time at Runway Hold" },
+ { 6, "Actual Line-Up Time" },
+ { 7, "Actual Take-Off Time" },
+ { 8, "Estimated Time of Arrival" },
+ { 9, "Predicted Landing Time" },
+ { 10, "Actual Landing Time" },
+ { 11, "Actual Time off Runway" },
+ { 12, "Predicted Time to Gate" },
+ { 13, "Actual On-Block Time" },
+ { 0, NULL }
+};
+static const FieldPart I032_500_TOD_TYP = { 5, 1.0, FIELD_PART_UINT, &hf_032_500_TOD_TYP, NULL };
+static int hf_032_500_TOD_DAY = -1;
+static const value_string valstr_032_500_TOD_DAY[] = {
+ { 0, "Today" },
+ { 1, "Yesterday" },
+ { 2, "Tomorrow" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I032_500_TOD_DAY = { 2, 1.0, FIELD_PART_UINT, &hf_032_500_TOD_DAY, NULL };
+static int hf_032_500_TOD_HOR = -1;
+static const FieldPart I032_500_TOD_HOR = { 5, 1.0, FIELD_PART_UINT, &hf_032_500_TOD_HOR, NULL };
+static int hf_032_500_TOD_MIN = -1;
+static const FieldPart I032_500_TOD_MIN = { 6, 1.0, FIELD_PART_UINT, &hf_032_500_TOD_MIN, NULL };
+static int hf_032_500_TOD_AVS = -1;
+static const value_string valstr_032_500_TOD_AVS[] = {
+ { 0, "Seconds available" },
+ { 1, "Seconds not available" },
+ { 0, NULL }
+};
+static const FieldPart I032_500_TOD_AVS = { 1, 1.0, FIELD_PART_UINT, &hf_032_500_TOD_AVS, NULL };
+static int hf_032_500_TOD_SEC = -1;
+static const FieldPart I032_500_TOD_SEC = { 6, 1.0, FIELD_PART_UINT, &hf_032_500_TOD_SEC, NULL };
+static const FieldPart *I032_500_TOD_PARTS[] = {
+ &I032_500_TOD_TYP,
+ &I032_500_TOD_DAY,
+ &IXXX_4bit_spare,
+ &I032_500_TOD_HOR,
+ &IXXX_2bit_spare,
+ &I032_500_TOD_MIN,
+ &I032_500_TOD_AVS,
+ &IXXX_1bit_spare,
+ &I032_500_TOD_SEC,
+ NULL
+};
+static const AsterixField I032_500_TOD = { REPETITIVE, 4, 1, 0, &hf_032_500_TOD, I032_500_TOD_PARTS, { NULL } };
+static int hf_032_500_AST = -1;
+static int hf_032_500_AST_VALUE = -1;
+static const FieldPart I032_500_AST_VALUE = { 48, 1.0, FIELD_PART_ASCII, &hf_032_500_AST_VALUE, NULL };
+static const FieldPart *I032_500_AST_PARTS[] = {
+ &I032_500_AST_VALUE,
+ NULL
+};
+static const AsterixField I032_500_AST = { FIXED, 6, 0, 0, &hf_032_500_AST, I032_500_AST_PARTS, { NULL } };
+static int hf_032_500_STS = -1;
+static int hf_032_500_STS_EMP = -1;
+static const value_string valstr_032_500_STS_EMP[] = {
+ { 0, "Empty" },
+ { 1, "Occupied" },
+ { 2, "Unknown" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I032_500_STS_EMP = { 2, 1.0, FIELD_PART_UINT, &hf_032_500_STS_EMP, NULL };
+static int hf_032_500_STS_AVL = -1;
+static const value_string valstr_032_500_STS_AVL[] = {
+ { 0, "Available" },
+ { 1, "Not available" },
+ { 2, "Unknown" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I032_500_STS_AVL = { 2, 1.0, FIELD_PART_UINT, &hf_032_500_STS_AVL, NULL };
+static const FieldPart *I032_500_STS_PARTS[] = {
+ &I032_500_STS_EMP,
+ &I032_500_STS_AVL,
+ &IXXX_4bit_spare,
+ NULL
+};
+static const AsterixField I032_500_STS = { FIXED, 1, 0, 0, &hf_032_500_STS, I032_500_STS_PARTS, { NULL } };
+static int hf_032_500_SID = -1;
+static int hf_032_500_SID_VALUE = -1;
+static const FieldPart I032_500_SID_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_032_500_SID_VALUE, NULL };
+static const FieldPart *I032_500_SID_PARTS[] = {
+ &I032_500_SID_VALUE,
+ NULL
+};
+static const AsterixField I032_500_SID = { FIXED, 7, 0, 0, &hf_032_500_SID, I032_500_SID_PARTS, { NULL } };
+static int hf_032_500_STAR = -1;
+static int hf_032_500_STAR_VALUE = -1;
+static const FieldPart I032_500_STAR_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_032_500_STAR_VALUE, NULL };
+static const FieldPart *I032_500_STAR_PARTS[] = {
+ &I032_500_STAR_VALUE,
+ NULL
+};
+static const AsterixField I032_500_STAR = { FIXED, 7, 0, 0, &hf_032_500_STAR, I032_500_STAR_PARTS, { NULL } };
+static const AsterixField I032_500 = { COMPOUND, 0, 0, 0, &hf_032_500, NULL, { &I032_500_IFI, &I032_500_RVP, &I032_500_RDS, &I032_500_TOD, &I032_500_AST, &I032_500_STS, &I032_500_SID, &I032_500_STAR, NULL } };
+static int hf_032_RE = -1;
+static const AsterixField I032_RE = { EXP, 0, 0, 1, &hf_032_RE, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I032_V1_1_uap[] = {
+ &I032_V1_1_010,
+ &I032_V1_1_015,
+ &I032_V1_1_018,
+ &I032_V1_1_035,
+ &I032_V1_1_020,
+ &I032_V1_1_040,
+ &I032_V1_1_050,
+ &I032_V1_1_060,
+ &I032_V1_1_400,
+ &I032_V1_1_410,
+ &I032_V1_1_420,
+ &I032_V1_1_440,
+ &I032_V1_1_450,
+ &I032_V1_1_480,
+ &I032_V1_1_490,
+ &I032_V1_1_430,
+ &I032_V1_1_435,
+ &I032_V1_1_460,
+ &I032_V1_1_500,
+ &IX_SPARE,
+ &I032_V1_1_RE,
+ NULL
+};
+static const AsterixField **I032_V1_1[] = {
+ I032_V1_1_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I032_uap[] = {
+ &I032_010,
+ &I032_015,
+ &I032_018,
+ &I032_035,
+ &I032_020,
+ &I032_040,
+ &I032_050,
+ &I032_060,
+ &I032_400,
+ &I032_410,
+ &I032_420,
+ &I032_440,
+ &I032_450,
+ &I032_480,
+ &I032_490,
+ &I032_430,
+ &I032_435,
+ &I032_460,
+ &I032_500,
+ &IX_SPARE,
+ &I032_RE,
+ NULL
+};
+static const AsterixField **I032[] = {
+ I032_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 034, edition 1.27 */
+static int hf_034_V1_27_000 = -1;
+static int hf_034_V1_27_000_VALUE = -1;
+static const value_string valstr_034_V1_27_000_VALUE[] = {
+ { 1, "North marker message" },
+ { 2, "Sector crossing message" },
+ { 3, "Geographical filtering message" },
+ { 4, "Jamming strobe message" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_034_V1_27_000_VALUE, NULL };
+static const FieldPart *I034_V1_27_000_PARTS[] = {
+ &I034_V1_27_000_VALUE,
+ NULL
+};
+static const AsterixField I034_V1_27_000 = { FIXED, 1, 0, 0, &hf_034_V1_27_000, I034_V1_27_000_PARTS, { NULL } };
+static int hf_034_V1_27_010 = -1;
+static int hf_034_V1_27_010_SAC = -1;
+static const FieldPart I034_V1_27_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_034_V1_27_010_SAC, NULL };
+static int hf_034_V1_27_010_SIC = -1;
+static const FieldPart I034_V1_27_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_034_V1_27_010_SIC, NULL };
+static const FieldPart *I034_V1_27_010_PARTS[] = {
+ &I034_V1_27_010_SAC,
+ &I034_V1_27_010_SIC,
+ NULL
+};
+static const AsterixField I034_V1_27_010 = { FIXED, 2, 0, 0, &hf_034_V1_27_010, I034_V1_27_010_PARTS, { NULL } };
+static int hf_034_V1_27_020 = -1;
+static int hf_034_V1_27_020_VALUE = -1;
+static const FieldPart I034_V1_27_020_VALUE = { 8, 1.40625, FIELD_PART_UFLOAT, &hf_034_V1_27_020_VALUE, NULL };
+static const FieldPart *I034_V1_27_020_PARTS[] = {
+ &I034_V1_27_020_VALUE,
+ NULL
+};
+static const AsterixField I034_V1_27_020 = { FIXED, 1, 0, 0, &hf_034_V1_27_020, I034_V1_27_020_PARTS, { NULL } };
+static int hf_034_V1_27_030 = -1;
+static int hf_034_V1_27_030_VALUE = -1;
+static const FieldPart I034_V1_27_030_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_034_V1_27_030_VALUE, NULL };
+static const FieldPart *I034_V1_27_030_PARTS[] = {
+ &I034_V1_27_030_VALUE,
+ NULL
+};
+static const AsterixField I034_V1_27_030 = { FIXED, 3, 0, 0, &hf_034_V1_27_030, I034_V1_27_030_PARTS, { NULL } };
+static int hf_034_V1_27_041 = -1;
+static int hf_034_V1_27_041_VALUE = -1;
+static const FieldPart I034_V1_27_041_VALUE = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_034_V1_27_041_VALUE, NULL };
+static const FieldPart *I034_V1_27_041_PARTS[] = {
+ &I034_V1_27_041_VALUE,
+ NULL
+};
+static const AsterixField I034_V1_27_041 = { FIXED, 2, 0, 0, &hf_034_V1_27_041, I034_V1_27_041_PARTS, { NULL } };
+static int hf_034_V1_27_050 = -1;
+static int hf_034_V1_27_050_COM = -1;
+static int hf_034_V1_27_050_COM_NOGO = -1;
+static const value_string valstr_034_V1_27_050_COM_NOGO[] = {
+ { 0, "System is released for operational use" },
+ { 1, "Operational use of System is inhibited, i.e. the data shall be discarded by an operational SDPS" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_050_COM_NOGO = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_27_050_COM_NOGO, NULL };
+static int hf_034_V1_27_050_COM_RDPC = -1;
+static const value_string valstr_034_V1_27_050_COM_RDPC[] = {
+ { 0, "RDPC-1 selected" },
+ { 1, "RDPC-2 selected" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_050_COM_RDPC = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_27_050_COM_RDPC, NULL };
+static int hf_034_V1_27_050_COM_RDPR = -1;
+static const value_string valstr_034_V1_27_050_COM_RDPR[] = {
+ { 0, "Default situation" },
+ { 1, "Reset of RDPC" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_050_COM_RDPR = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_27_050_COM_RDPR, NULL };
+static int hf_034_V1_27_050_COM_OVLRDP = -1;
+static const value_string valstr_034_V1_27_050_COM_OVLRDP[] = {
+ { 0, "Default, no overload" },
+ { 1, "Overload in RDP" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_050_COM_OVLRDP = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_27_050_COM_OVLRDP, NULL };
+static int hf_034_V1_27_050_COM_OVLXMT = -1;
+static const value_string valstr_034_V1_27_050_COM_OVLXMT[] = {
+ { 0, "Default, no overload" },
+ { 1, "Overload in transmission subsystem" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_050_COM_OVLXMT = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_27_050_COM_OVLXMT, NULL };
+static int hf_034_V1_27_050_COM_MSC = -1;
+static const value_string valstr_034_V1_27_050_COM_MSC[] = {
+ { 0, "Monitoring system connected" },
+ { 1, "Monitoring system disconnected" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_050_COM_MSC = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_27_050_COM_MSC, NULL };
+static int hf_034_V1_27_050_COM_TSV = -1;
+static const value_string valstr_034_V1_27_050_COM_TSV[] = {
+ { 0, "Valid" },
+ { 1, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_050_COM_TSV = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_27_050_COM_TSV, NULL };
+static const FieldPart *I034_V1_27_050_COM_PARTS[] = {
+ &I034_V1_27_050_COM_NOGO,
+ &I034_V1_27_050_COM_RDPC,
+ &I034_V1_27_050_COM_RDPR,
+ &I034_V1_27_050_COM_OVLRDP,
+ &I034_V1_27_050_COM_OVLXMT,
+ &I034_V1_27_050_COM_MSC,
+ &I034_V1_27_050_COM_TSV,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_27_050_COM = { FIXED, 1, 0, 0, &hf_034_V1_27_050_COM, I034_V1_27_050_COM_PARTS, { NULL } };
+static int hf_034_V1_27_050_PSR = -1;
+static int hf_034_V1_27_050_PSR_ANT = -1;
+static const value_string valstr_034_V1_27_050_PSR_ANT[] = {
+ { 0, "Antenna 1" },
+ { 1, "Antenna 2" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_050_PSR_ANT = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_27_050_PSR_ANT, NULL };
+static int hf_034_V1_27_050_PSR_CHAB = -1;
+static const value_string valstr_034_V1_27_050_PSR_CHAB[] = {
+ { 0, "No channel selected" },
+ { 1, "Channel A only selected" },
+ { 2, "Channel B only selected" },
+ { 3, "Diversity mode ; Channel A and B selected" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_050_PSR_CHAB = { 2, 1.0, FIELD_PART_UINT, &hf_034_V1_27_050_PSR_CHAB, NULL };
+static int hf_034_V1_27_050_PSR_OVL = -1;
+static const value_string valstr_034_V1_27_050_PSR_OVL[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_050_PSR_OVL = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_27_050_PSR_OVL, NULL };
+static int hf_034_V1_27_050_PSR_MSC = -1;
+static const value_string valstr_034_V1_27_050_PSR_MSC[] = {
+ { 0, "Monitoring system connected" },
+ { 1, "Monitoring system disconnected" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_050_PSR_MSC = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_27_050_PSR_MSC, NULL };
+static const FieldPart *I034_V1_27_050_PSR_PARTS[] = {
+ &I034_V1_27_050_PSR_ANT,
+ &I034_V1_27_050_PSR_CHAB,
+ &I034_V1_27_050_PSR_OVL,
+ &I034_V1_27_050_PSR_MSC,
+ &IXXX_3bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_27_050_PSR = { FIXED, 1, 0, 0, &hf_034_V1_27_050_PSR, I034_V1_27_050_PSR_PARTS, { NULL } };
+static int hf_034_V1_27_050_SSR = -1;
+static int hf_034_V1_27_050_SSR_ANT = -1;
+static const value_string valstr_034_V1_27_050_SSR_ANT[] = {
+ { 0, "Antenna 1" },
+ { 1, "Antenna 2" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_050_SSR_ANT = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_27_050_SSR_ANT, NULL };
+static int hf_034_V1_27_050_SSR_CHAB = -1;
+static const value_string valstr_034_V1_27_050_SSR_CHAB[] = {
+ { 0, "No channel selected" },
+ { 1, "Channel A only selected" },
+ { 2, "Channel B only selected" },
+ { 3, "Invalid combination" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_050_SSR_CHAB = { 2, 1.0, FIELD_PART_UINT, &hf_034_V1_27_050_SSR_CHAB, NULL };
+static int hf_034_V1_27_050_SSR_OVL = -1;
+static const value_string valstr_034_V1_27_050_SSR_OVL[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_050_SSR_OVL = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_27_050_SSR_OVL, NULL };
+static int hf_034_V1_27_050_SSR_MSC = -1;
+static const value_string valstr_034_V1_27_050_SSR_MSC[] = {
+ { 0, "Monitoring system connected" },
+ { 1, "Monitoring system disconnected" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_050_SSR_MSC = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_27_050_SSR_MSC, NULL };
+static const FieldPart *I034_V1_27_050_SSR_PARTS[] = {
+ &I034_V1_27_050_SSR_ANT,
+ &I034_V1_27_050_SSR_CHAB,
+ &I034_V1_27_050_SSR_OVL,
+ &I034_V1_27_050_SSR_MSC,
+ &IXXX_3bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_27_050_SSR = { FIXED, 1, 0, 0, &hf_034_V1_27_050_SSR, I034_V1_27_050_SSR_PARTS, { NULL } };
+static int hf_034_V1_27_050_MDS = -1;
+static int hf_034_V1_27_050_MDS_ANT = -1;
+static const value_string valstr_034_V1_27_050_MDS_ANT[] = {
+ { 0, "Antenna 1" },
+ { 1, "Antenna 2" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_050_MDS_ANT = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_27_050_MDS_ANT, NULL };
+static int hf_034_V1_27_050_MDS_CHAB = -1;
+static const value_string valstr_034_V1_27_050_MDS_CHAB[] = {
+ { 0, "No channel selected" },
+ { 1, "Channel A only selected" },
+ { 2, "Channel B only selected" },
+ { 3, "Illegal combination" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_050_MDS_CHAB = { 2, 1.0, FIELD_PART_UINT, &hf_034_V1_27_050_MDS_CHAB, NULL };
+static int hf_034_V1_27_050_MDS_OVLSUR = -1;
+static const value_string valstr_034_V1_27_050_MDS_OVLSUR[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_050_MDS_OVLSUR = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_27_050_MDS_OVLSUR, NULL };
+static int hf_034_V1_27_050_MDS_MSC = -1;
+static const value_string valstr_034_V1_27_050_MDS_MSC[] = {
+ { 0, "Monitoring system connected" },
+ { 1, "Monitoring system disconnected" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_050_MDS_MSC = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_27_050_MDS_MSC, NULL };
+static int hf_034_V1_27_050_MDS_SCF = -1;
+static const value_string valstr_034_V1_27_050_MDS_SCF[] = {
+ { 0, "Channel A in use" },
+ { 1, "Channel B in use" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_050_MDS_SCF = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_27_050_MDS_SCF, NULL };
+static int hf_034_V1_27_050_MDS_DLF = -1;
+static const value_string valstr_034_V1_27_050_MDS_DLF[] = {
+ { 0, "Channel A in use" },
+ { 1, "Channel B in use" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_050_MDS_DLF = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_27_050_MDS_DLF, NULL };
+static int hf_034_V1_27_050_MDS_OVLSCF = -1;
+static const value_string valstr_034_V1_27_050_MDS_OVLSCF[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_050_MDS_OVLSCF = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_27_050_MDS_OVLSCF, NULL };
+static int hf_034_V1_27_050_MDS_OVLDLF = -1;
+static const value_string valstr_034_V1_27_050_MDS_OVLDLF[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_050_MDS_OVLDLF = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_27_050_MDS_OVLDLF, NULL };
+static const FieldPart *I034_V1_27_050_MDS_PARTS[] = {
+ &I034_V1_27_050_MDS_ANT,
+ &I034_V1_27_050_MDS_CHAB,
+ &I034_V1_27_050_MDS_OVLSUR,
+ &I034_V1_27_050_MDS_MSC,
+ &I034_V1_27_050_MDS_SCF,
+ &I034_V1_27_050_MDS_DLF,
+ &I034_V1_27_050_MDS_OVLSCF,
+ &I034_V1_27_050_MDS_OVLDLF,
+ &IXXX_7bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_27_050_MDS = { FIXED, 2, 0, 0, &hf_034_V1_27_050_MDS, I034_V1_27_050_MDS_PARTS, { NULL } };
+static const AsterixField I034_V1_27_050 = { COMPOUND, 0, 0, 0, &hf_034_V1_27_050, NULL, { &I034_V1_27_050_COM, &IX_SPARE, &IX_SPARE, &I034_V1_27_050_PSR, &I034_V1_27_050_SSR, &I034_V1_27_050_MDS, NULL } };
+static int hf_034_V1_27_060 = -1;
+static int hf_034_V1_27_060_COM = -1;
+static int hf_034_V1_27_060_COM_REDRDP = -1;
+static const value_string valstr_034_V1_27_060_COM_REDRDP[] = {
+ { 0, "No reduction active" },
+ { 1, "Reduction step 1 active" },
+ { 2, "Reduction step 2 active" },
+ { 3, "Reduction step 3 active" },
+ { 4, "Reduction step 4 active" },
+ { 5, "Reduction step 5 active" },
+ { 6, "Reduction step 6 active" },
+ { 7, "Reduction step 7 active" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_060_COM_REDRDP = { 3, 1.0, FIELD_PART_UINT, &hf_034_V1_27_060_COM_REDRDP, NULL };
+static int hf_034_V1_27_060_COM_REDXMT = -1;
+static const value_string valstr_034_V1_27_060_COM_REDXMT[] = {
+ { 0, "No reduction active" },
+ { 1, "Reduction step 1 active" },
+ { 2, "Reduction step 2 active" },
+ { 3, "Reduction step 3 active" },
+ { 4, "Reduction step 4 active" },
+ { 5, "Reduction step 5 active" },
+ { 6, "Reduction step 6 active" },
+ { 7, "Reduction step 7 active" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_060_COM_REDXMT = { 3, 1.0, FIELD_PART_UINT, &hf_034_V1_27_060_COM_REDXMT, NULL };
+static const FieldPart *I034_V1_27_060_COM_PARTS[] = {
+ &IXXX_1bit_spare,
+ &I034_V1_27_060_COM_REDRDP,
+ &I034_V1_27_060_COM_REDXMT,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_27_060_COM = { FIXED, 1, 0, 0, &hf_034_V1_27_060_COM, I034_V1_27_060_COM_PARTS, { NULL } };
+static int hf_034_V1_27_060_PSR = -1;
+static int hf_034_V1_27_060_PSR_POL = -1;
+static const value_string valstr_034_V1_27_060_PSR_POL[] = {
+ { 0, "Linear polarization" },
+ { 1, "Circular polarization" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_060_PSR_POL = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_27_060_PSR_POL, NULL };
+static int hf_034_V1_27_060_PSR_REDRAD = -1;
+static const value_string valstr_034_V1_27_060_PSR_REDRAD[] = {
+ { 0, "No reduction active" },
+ { 1, "Reduction step 1 active" },
+ { 2, "Reduction step 2 active" },
+ { 3, "Reduction step 3 active" },
+ { 4, "Reduction step 4 active" },
+ { 5, "Reduction step 5 active" },
+ { 6, "Reduction step 6 active" },
+ { 7, "Reduction step 7 active" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_060_PSR_REDRAD = { 3, 1.0, FIELD_PART_UINT, &hf_034_V1_27_060_PSR_REDRAD, NULL };
+static int hf_034_V1_27_060_PSR_STC = -1;
+static const value_string valstr_034_V1_27_060_PSR_STC[] = {
+ { 0, "STC Map-1" },
+ { 1, "STC Map-2" },
+ { 2, "STC Map-3" },
+ { 3, "STC Map-4" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_060_PSR_STC = { 2, 1.0, FIELD_PART_UINT, &hf_034_V1_27_060_PSR_STC, NULL };
+static const FieldPart *I034_V1_27_060_PSR_PARTS[] = {
+ &I034_V1_27_060_PSR_POL,
+ &I034_V1_27_060_PSR_REDRAD,
+ &I034_V1_27_060_PSR_STC,
+ &IXXX_2bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_27_060_PSR = { FIXED, 1, 0, 0, &hf_034_V1_27_060_PSR, I034_V1_27_060_PSR_PARTS, { NULL } };
+static int hf_034_V1_27_060_SSR = -1;
+static int hf_034_V1_27_060_SSR_REDRAD = -1;
+static const value_string valstr_034_V1_27_060_SSR_REDRAD[] = {
+ { 0, "No reduction active" },
+ { 1, "Reduction step 1 active" },
+ { 2, "Reduction step 2 active" },
+ { 3, "Reduction step 3 active" },
+ { 4, "Reduction step 4 active" },
+ { 5, "Reduction step 5 active" },
+ { 6, "Reduction step 6 active" },
+ { 7, "Reduction step 7 active" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_060_SSR_REDRAD = { 3, 1.0, FIELD_PART_UINT, &hf_034_V1_27_060_SSR_REDRAD, NULL };
+static const FieldPart *I034_V1_27_060_SSR_PARTS[] = {
+ &I034_V1_27_060_SSR_REDRAD,
+ &IXXX_5bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_27_060_SSR = { FIXED, 1, 0, 0, &hf_034_V1_27_060_SSR, I034_V1_27_060_SSR_PARTS, { NULL } };
+static int hf_034_V1_27_060_MDS = -1;
+static int hf_034_V1_27_060_MDS_REDRAD = -1;
+static const value_string valstr_034_V1_27_060_MDS_REDRAD[] = {
+ { 0, "No reduction active" },
+ { 1, "Reduction step 1 active" },
+ { 2, "Reduction step 2 active" },
+ { 3, "Reduction step 3 active" },
+ { 4, "Reduction step 4 active" },
+ { 5, "Reduction step 5 active" },
+ { 6, "Reduction step 6 active" },
+ { 7, "Reduction step 7 active" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_060_MDS_REDRAD = { 3, 1.0, FIELD_PART_UINT, &hf_034_V1_27_060_MDS_REDRAD, NULL };
+static int hf_034_V1_27_060_MDS_CLU = -1;
+static const value_string valstr_034_V1_27_060_MDS_CLU[] = {
+ { 0, "Autonomous" },
+ { 1, "Not autonomous" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_060_MDS_CLU = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_27_060_MDS_CLU, NULL };
+static const FieldPart *I034_V1_27_060_MDS_PARTS[] = {
+ &I034_V1_27_060_MDS_REDRAD,
+ &I034_V1_27_060_MDS_CLU,
+ &IXXX_4bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_27_060_MDS = { FIXED, 1, 0, 0, &hf_034_V1_27_060_MDS, I034_V1_27_060_MDS_PARTS, { NULL } };
+static const AsterixField I034_V1_27_060 = { COMPOUND, 0, 0, 0, &hf_034_V1_27_060, NULL, { &I034_V1_27_060_COM, &IX_SPARE, &IX_SPARE, &I034_V1_27_060_PSR, &I034_V1_27_060_SSR, &I034_V1_27_060_MDS, NULL } };
+static int hf_034_V1_27_070 = -1;
+static int hf_034_V1_27_070_TYP = -1;
+static const value_string valstr_034_V1_27_070_TYP[] = {
+ { 0, "No detection (number of misses)" },
+ { 1, "Single PSR target reports" },
+ { 2, "Single SSR target reports (Non-Mode S)" },
+ { 3, "SSR+PSR target reports (Non-Mode S)" },
+ { 4, "Single All-Call target reports (Mode S)" },
+ { 5, "Single Roll-Call target reports (Mode S)" },
+ { 6, "All-Call + PSR (Mode S) target reports" },
+ { 7, "Roll-Call + PSR (Mode S) target reports" },
+ { 8, "Filter for Weather data" },
+ { 9, "Filter for Jamming Strobe" },
+ { 10, "Filter for PSR data" },
+ { 11, "Filter for SSR/Mode S data" },
+ { 12, "Filter for SSR/Mode S+PSR data" },
+ { 13, "Filter for Enhanced Surveillance data" },
+ { 14, "Filter for PSR+Enhanced Surveillance" },
+ { 15, "Filter for PSR+Enhanced Surveillance + SSR/Mode S data not in Area of Prime Interest" },
+ { 16, "Filter for PSR+Enhanced Surveillance + all SSR/Mode S data" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_070_TYP = { 5, 1.0, FIELD_PART_UINT, &hf_034_V1_27_070_TYP, NULL };
+static int hf_034_V1_27_070_COUNT = -1;
+static const FieldPart I034_V1_27_070_COUNT = { 11, 1.0, FIELD_PART_UINT, &hf_034_V1_27_070_COUNT, NULL };
+static const FieldPart *I034_V1_27_070_PARTS[] = {
+ &I034_V1_27_070_TYP,
+ &I034_V1_27_070_COUNT,
+ NULL
+};
+static const AsterixField I034_V1_27_070 = { REPETITIVE, 2, 1, 0, &hf_034_V1_27_070, I034_V1_27_070_PARTS, { NULL } };
+static int hf_034_V1_27_090 = -1;
+static int hf_034_V1_27_090_RNG = -1;
+static const FieldPart I034_V1_27_090_RNG = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_034_V1_27_090_RNG, NULL };
+static int hf_034_V1_27_090_AZM = -1;
+static const FieldPart I034_V1_27_090_AZM = { 8, 0.02197265625, FIELD_PART_FLOAT, &hf_034_V1_27_090_AZM, NULL };
+static const FieldPart *I034_V1_27_090_PARTS[] = {
+ &I034_V1_27_090_RNG,
+ &I034_V1_27_090_AZM,
+ NULL
+};
+static const AsterixField I034_V1_27_090 = { FIXED, 2, 0, 0, &hf_034_V1_27_090, I034_V1_27_090_PARTS, { NULL } };
+static int hf_034_V1_27_100 = -1;
+static int hf_034_V1_27_100_RHOST = -1;
+static const FieldPart I034_V1_27_100_RHOST = { 16, 0.00390625, FIELD_PART_UFLOAT, &hf_034_V1_27_100_RHOST, NULL };
+static int hf_034_V1_27_100_RHOEND = -1;
+static const FieldPart I034_V1_27_100_RHOEND = { 16, 0.00390625, FIELD_PART_UFLOAT, &hf_034_V1_27_100_RHOEND, NULL };
+static int hf_034_V1_27_100_THETAST = -1;
+static const FieldPart I034_V1_27_100_THETAST = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_034_V1_27_100_THETAST, NULL };
+static int hf_034_V1_27_100_THETAEND = -1;
+static const FieldPart I034_V1_27_100_THETAEND = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_034_V1_27_100_THETAEND, NULL };
+static const FieldPart *I034_V1_27_100_PARTS[] = {
+ &I034_V1_27_100_RHOST,
+ &I034_V1_27_100_RHOEND,
+ &I034_V1_27_100_THETAST,
+ &I034_V1_27_100_THETAEND,
+ NULL
+};
+static const AsterixField I034_V1_27_100 = { FIXED, 8, 0, 0, &hf_034_V1_27_100, I034_V1_27_100_PARTS, { NULL } };
+static int hf_034_V1_27_110 = -1;
+static int hf_034_V1_27_110_VALUE = -1;
+static const value_string valstr_034_V1_27_110_VALUE[] = {
+ { 0, "Invalid value" },
+ { 1, "Filter for Weather data" },
+ { 2, "Filter for Jamming Strobe" },
+ { 3, "Filter for PSR data" },
+ { 4, "Filter for SSR/Mode S data" },
+ { 5, "Filter for SSR/Mode S + PSR data" },
+ { 6, "Enhanced Surveillance data" },
+ { 7, "Filter for PSR+Enhanced Surveillance data" },
+ { 8, "Filter for PSR+Enhanced Surveillance + SSR/Mode S data not in Area of Prime Interest" },
+ { 9, "Filter for PSR+Enhanced Surveillance + all SSR/Mode S data" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_27_110_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_034_V1_27_110_VALUE, NULL };
+static const FieldPart *I034_V1_27_110_PARTS[] = {
+ &I034_V1_27_110_VALUE,
+ NULL
+};
+static const AsterixField I034_V1_27_110 = { FIXED, 1, 0, 0, &hf_034_V1_27_110, I034_V1_27_110_PARTS, { NULL } };
+static int hf_034_V1_27_120 = -1;
+static int hf_034_V1_27_120_HGT = -1;
+static const FieldPart I034_V1_27_120_HGT = { 16, 1.0, FIELD_PART_UFLOAT, &hf_034_V1_27_120_HGT, NULL };
+static int hf_034_V1_27_120_LAT = -1;
+static const FieldPart I034_V1_27_120_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_034_V1_27_120_LAT, NULL };
+static int hf_034_V1_27_120_LON = -1;
+static const FieldPart I034_V1_27_120_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_034_V1_27_120_LON, NULL };
+static const FieldPart *I034_V1_27_120_PARTS[] = {
+ &I034_V1_27_120_HGT,
+ &I034_V1_27_120_LAT,
+ &I034_V1_27_120_LON,
+ NULL
+};
+static const AsterixField I034_V1_27_120 = { FIXED, 8, 0, 0, &hf_034_V1_27_120, I034_V1_27_120_PARTS, { NULL } };
+static int hf_034_V1_27_RE = -1;
+static const AsterixField I034_V1_27_RE = { EXP, 0, 0, 1, &hf_034_V1_27_RE, NULL, { NULL } };
+static int hf_034_V1_27_SP = -1;
+static const AsterixField I034_V1_27_SP = { EXP, 0, 0, 1, &hf_034_V1_27_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I034_V1_27_uap[] = {
+ &I034_V1_27_010,
+ &I034_V1_27_000,
+ &I034_V1_27_030,
+ &I034_V1_27_020,
+ &I034_V1_27_041,
+ &I034_V1_27_050,
+ &I034_V1_27_060,
+ &I034_V1_27_070,
+ &I034_V1_27_100,
+ &I034_V1_27_110,
+ &I034_V1_27_120,
+ &I034_V1_27_090,
+ &I034_V1_27_RE,
+ &I034_V1_27_SP,
+ NULL
+};
+static const AsterixField **I034_V1_27[] = {
+ I034_V1_27_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 034, edition 1.28 */
+static int hf_034_V1_28_000 = -1;
+static int hf_034_V1_28_000_VALUE = -1;
+static const value_string valstr_034_V1_28_000_VALUE[] = {
+ { 1, "North marker message" },
+ { 2, "Sector crossing message" },
+ { 3, "Geographical filtering message" },
+ { 4, "Jamming strobe message" },
+ { 5, "Solar Storm Message" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_034_V1_28_000_VALUE, NULL };
+static const FieldPart *I034_V1_28_000_PARTS[] = {
+ &I034_V1_28_000_VALUE,
+ NULL
+};
+static const AsterixField I034_V1_28_000 = { FIXED, 1, 0, 0, &hf_034_V1_28_000, I034_V1_28_000_PARTS, { NULL } };
+static int hf_034_V1_28_010 = -1;
+static int hf_034_V1_28_010_SAC = -1;
+static const FieldPart I034_V1_28_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_034_V1_28_010_SAC, NULL };
+static int hf_034_V1_28_010_SIC = -1;
+static const FieldPart I034_V1_28_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_034_V1_28_010_SIC, NULL };
+static const FieldPart *I034_V1_28_010_PARTS[] = {
+ &I034_V1_28_010_SAC,
+ &I034_V1_28_010_SIC,
+ NULL
+};
+static const AsterixField I034_V1_28_010 = { FIXED, 2, 0, 0, &hf_034_V1_28_010, I034_V1_28_010_PARTS, { NULL } };
+static int hf_034_V1_28_020 = -1;
+static int hf_034_V1_28_020_VALUE = -1;
+static const FieldPart I034_V1_28_020_VALUE = { 8, 1.40625, FIELD_PART_UFLOAT, &hf_034_V1_28_020_VALUE, NULL };
+static const FieldPart *I034_V1_28_020_PARTS[] = {
+ &I034_V1_28_020_VALUE,
+ NULL
+};
+static const AsterixField I034_V1_28_020 = { FIXED, 1, 0, 0, &hf_034_V1_28_020, I034_V1_28_020_PARTS, { NULL } };
+static int hf_034_V1_28_030 = -1;
+static int hf_034_V1_28_030_VALUE = -1;
+static const FieldPart I034_V1_28_030_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_034_V1_28_030_VALUE, NULL };
+static const FieldPart *I034_V1_28_030_PARTS[] = {
+ &I034_V1_28_030_VALUE,
+ NULL
+};
+static const AsterixField I034_V1_28_030 = { FIXED, 3, 0, 0, &hf_034_V1_28_030, I034_V1_28_030_PARTS, { NULL } };
+static int hf_034_V1_28_041 = -1;
+static int hf_034_V1_28_041_VALUE = -1;
+static const FieldPart I034_V1_28_041_VALUE = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_034_V1_28_041_VALUE, NULL };
+static const FieldPart *I034_V1_28_041_PARTS[] = {
+ &I034_V1_28_041_VALUE,
+ NULL
+};
+static const AsterixField I034_V1_28_041 = { FIXED, 2, 0, 0, &hf_034_V1_28_041, I034_V1_28_041_PARTS, { NULL } };
+static int hf_034_V1_28_050 = -1;
+static int hf_034_V1_28_050_COM = -1;
+static int hf_034_V1_28_050_COM_NOGO = -1;
+static const value_string valstr_034_V1_28_050_COM_NOGO[] = {
+ { 0, "System is released for operational use" },
+ { 1, "Operational use of System is inhibited, i.e. the data shall be discarded by an operational SDPS" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_050_COM_NOGO = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_28_050_COM_NOGO, NULL };
+static int hf_034_V1_28_050_COM_RDPC = -1;
+static const value_string valstr_034_V1_28_050_COM_RDPC[] = {
+ { 0, "RDPC-1 selected" },
+ { 1, "RDPC-2 selected" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_050_COM_RDPC = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_28_050_COM_RDPC, NULL };
+static int hf_034_V1_28_050_COM_RDPR = -1;
+static const value_string valstr_034_V1_28_050_COM_RDPR[] = {
+ { 0, "Default situation" },
+ { 1, "Reset of RDPC" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_050_COM_RDPR = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_28_050_COM_RDPR, NULL };
+static int hf_034_V1_28_050_COM_OVLRDP = -1;
+static const value_string valstr_034_V1_28_050_COM_OVLRDP[] = {
+ { 0, "Default, no overload" },
+ { 1, "Overload in RDP" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_050_COM_OVLRDP = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_28_050_COM_OVLRDP, NULL };
+static int hf_034_V1_28_050_COM_OVLXMT = -1;
+static const value_string valstr_034_V1_28_050_COM_OVLXMT[] = {
+ { 0, "Default, no overload" },
+ { 1, "Overload in transmission subsystem" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_050_COM_OVLXMT = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_28_050_COM_OVLXMT, NULL };
+static int hf_034_V1_28_050_COM_MSC = -1;
+static const value_string valstr_034_V1_28_050_COM_MSC[] = {
+ { 0, "Monitoring system connected" },
+ { 1, "Monitoring system disconnected" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_050_COM_MSC = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_28_050_COM_MSC, NULL };
+static int hf_034_V1_28_050_COM_TSV = -1;
+static const value_string valstr_034_V1_28_050_COM_TSV[] = {
+ { 0, "Valid" },
+ { 1, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_050_COM_TSV = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_28_050_COM_TSV, NULL };
+static const FieldPart *I034_V1_28_050_COM_PARTS[] = {
+ &I034_V1_28_050_COM_NOGO,
+ &I034_V1_28_050_COM_RDPC,
+ &I034_V1_28_050_COM_RDPR,
+ &I034_V1_28_050_COM_OVLRDP,
+ &I034_V1_28_050_COM_OVLXMT,
+ &I034_V1_28_050_COM_MSC,
+ &I034_V1_28_050_COM_TSV,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_28_050_COM = { FIXED, 1, 0, 0, &hf_034_V1_28_050_COM, I034_V1_28_050_COM_PARTS, { NULL } };
+static int hf_034_V1_28_050_PSR = -1;
+static int hf_034_V1_28_050_PSR_ANT = -1;
+static const value_string valstr_034_V1_28_050_PSR_ANT[] = {
+ { 0, "Antenna 1" },
+ { 1, "Antenna 2" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_050_PSR_ANT = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_28_050_PSR_ANT, NULL };
+static int hf_034_V1_28_050_PSR_CHAB = -1;
+static const value_string valstr_034_V1_28_050_PSR_CHAB[] = {
+ { 0, "No channel selected" },
+ { 1, "Channel A only selected" },
+ { 2, "Channel B only selected" },
+ { 3, "Diversity mode ; Channel A and B selected" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_050_PSR_CHAB = { 2, 1.0, FIELD_PART_UINT, &hf_034_V1_28_050_PSR_CHAB, NULL };
+static int hf_034_V1_28_050_PSR_OVL = -1;
+static const value_string valstr_034_V1_28_050_PSR_OVL[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_050_PSR_OVL = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_28_050_PSR_OVL, NULL };
+static int hf_034_V1_28_050_PSR_MSC = -1;
+static const value_string valstr_034_V1_28_050_PSR_MSC[] = {
+ { 0, "Monitoring system connected" },
+ { 1, "Monitoring system disconnected" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_050_PSR_MSC = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_28_050_PSR_MSC, NULL };
+static const FieldPart *I034_V1_28_050_PSR_PARTS[] = {
+ &I034_V1_28_050_PSR_ANT,
+ &I034_V1_28_050_PSR_CHAB,
+ &I034_V1_28_050_PSR_OVL,
+ &I034_V1_28_050_PSR_MSC,
+ &IXXX_3bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_28_050_PSR = { FIXED, 1, 0, 0, &hf_034_V1_28_050_PSR, I034_V1_28_050_PSR_PARTS, { NULL } };
+static int hf_034_V1_28_050_SSR = -1;
+static int hf_034_V1_28_050_SSR_ANT = -1;
+static const value_string valstr_034_V1_28_050_SSR_ANT[] = {
+ { 0, "Antenna 1" },
+ { 1, "Antenna 2" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_050_SSR_ANT = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_28_050_SSR_ANT, NULL };
+static int hf_034_V1_28_050_SSR_CHAB = -1;
+static const value_string valstr_034_V1_28_050_SSR_CHAB[] = {
+ { 0, "No channel selected" },
+ { 1, "Channel A only selected" },
+ { 2, "Channel B only selected" },
+ { 3, "Invalid combination" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_050_SSR_CHAB = { 2, 1.0, FIELD_PART_UINT, &hf_034_V1_28_050_SSR_CHAB, NULL };
+static int hf_034_V1_28_050_SSR_OVL = -1;
+static const value_string valstr_034_V1_28_050_SSR_OVL[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_050_SSR_OVL = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_28_050_SSR_OVL, NULL };
+static int hf_034_V1_28_050_SSR_MSC = -1;
+static const value_string valstr_034_V1_28_050_SSR_MSC[] = {
+ { 0, "Monitoring system connected" },
+ { 1, "Monitoring system disconnected" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_050_SSR_MSC = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_28_050_SSR_MSC, NULL };
+static const FieldPart *I034_V1_28_050_SSR_PARTS[] = {
+ &I034_V1_28_050_SSR_ANT,
+ &I034_V1_28_050_SSR_CHAB,
+ &I034_V1_28_050_SSR_OVL,
+ &I034_V1_28_050_SSR_MSC,
+ &IXXX_3bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_28_050_SSR = { FIXED, 1, 0, 0, &hf_034_V1_28_050_SSR, I034_V1_28_050_SSR_PARTS, { NULL } };
+static int hf_034_V1_28_050_MDS = -1;
+static int hf_034_V1_28_050_MDS_ANT = -1;
+static const value_string valstr_034_V1_28_050_MDS_ANT[] = {
+ { 0, "Antenna 1" },
+ { 1, "Antenna 2" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_050_MDS_ANT = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_28_050_MDS_ANT, NULL };
+static int hf_034_V1_28_050_MDS_CHAB = -1;
+static const value_string valstr_034_V1_28_050_MDS_CHAB[] = {
+ { 0, "No channel selected" },
+ { 1, "Channel A only selected" },
+ { 2, "Channel B only selected" },
+ { 3, "Illegal combination" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_050_MDS_CHAB = { 2, 1.0, FIELD_PART_UINT, &hf_034_V1_28_050_MDS_CHAB, NULL };
+static int hf_034_V1_28_050_MDS_OVLSUR = -1;
+static const value_string valstr_034_V1_28_050_MDS_OVLSUR[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_050_MDS_OVLSUR = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_28_050_MDS_OVLSUR, NULL };
+static int hf_034_V1_28_050_MDS_MSC = -1;
+static const value_string valstr_034_V1_28_050_MDS_MSC[] = {
+ { 0, "Monitoring system connected" },
+ { 1, "Monitoring system disconnected" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_050_MDS_MSC = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_28_050_MDS_MSC, NULL };
+static int hf_034_V1_28_050_MDS_SCF = -1;
+static const value_string valstr_034_V1_28_050_MDS_SCF[] = {
+ { 0, "Channel A in use" },
+ { 1, "Channel B in use" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_050_MDS_SCF = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_28_050_MDS_SCF, NULL };
+static int hf_034_V1_28_050_MDS_DLF = -1;
+static const value_string valstr_034_V1_28_050_MDS_DLF[] = {
+ { 0, "Channel A in use" },
+ { 1, "Channel B in use" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_050_MDS_DLF = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_28_050_MDS_DLF, NULL };
+static int hf_034_V1_28_050_MDS_OVLSCF = -1;
+static const value_string valstr_034_V1_28_050_MDS_OVLSCF[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_050_MDS_OVLSCF = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_28_050_MDS_OVLSCF, NULL };
+static int hf_034_V1_28_050_MDS_OVLDLF = -1;
+static const value_string valstr_034_V1_28_050_MDS_OVLDLF[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_050_MDS_OVLDLF = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_28_050_MDS_OVLDLF, NULL };
+static const FieldPart *I034_V1_28_050_MDS_PARTS[] = {
+ &I034_V1_28_050_MDS_ANT,
+ &I034_V1_28_050_MDS_CHAB,
+ &I034_V1_28_050_MDS_OVLSUR,
+ &I034_V1_28_050_MDS_MSC,
+ &I034_V1_28_050_MDS_SCF,
+ &I034_V1_28_050_MDS_DLF,
+ &I034_V1_28_050_MDS_OVLSCF,
+ &I034_V1_28_050_MDS_OVLDLF,
+ &IXXX_7bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_28_050_MDS = { FIXED, 2, 0, 0, &hf_034_V1_28_050_MDS, I034_V1_28_050_MDS_PARTS, { NULL } };
+static const AsterixField I034_V1_28_050 = { COMPOUND, 0, 0, 0, &hf_034_V1_28_050, NULL, { &I034_V1_28_050_COM, &IX_SPARE, &IX_SPARE, &I034_V1_28_050_PSR, &I034_V1_28_050_SSR, &I034_V1_28_050_MDS, NULL } };
+static int hf_034_V1_28_060 = -1;
+static int hf_034_V1_28_060_COM = -1;
+static int hf_034_V1_28_060_COM_REDRDP = -1;
+static const value_string valstr_034_V1_28_060_COM_REDRDP[] = {
+ { 0, "No reduction active" },
+ { 1, "Reduction step 1 active" },
+ { 2, "Reduction step 2 active" },
+ { 3, "Reduction step 3 active" },
+ { 4, "Reduction step 4 active" },
+ { 5, "Reduction step 5 active" },
+ { 6, "Reduction step 6 active" },
+ { 7, "Reduction step 7 active" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_060_COM_REDRDP = { 3, 1.0, FIELD_PART_UINT, &hf_034_V1_28_060_COM_REDRDP, NULL };
+static int hf_034_V1_28_060_COM_REDXMT = -1;
+static const value_string valstr_034_V1_28_060_COM_REDXMT[] = {
+ { 0, "No reduction active" },
+ { 1, "Reduction step 1 active" },
+ { 2, "Reduction step 2 active" },
+ { 3, "Reduction step 3 active" },
+ { 4, "Reduction step 4 active" },
+ { 5, "Reduction step 5 active" },
+ { 6, "Reduction step 6 active" },
+ { 7, "Reduction step 7 active" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_060_COM_REDXMT = { 3, 1.0, FIELD_PART_UINT, &hf_034_V1_28_060_COM_REDXMT, NULL };
+static const FieldPart *I034_V1_28_060_COM_PARTS[] = {
+ &IXXX_1bit_spare,
+ &I034_V1_28_060_COM_REDRDP,
+ &I034_V1_28_060_COM_REDXMT,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_28_060_COM = { FIXED, 1, 0, 0, &hf_034_V1_28_060_COM, I034_V1_28_060_COM_PARTS, { NULL } };
+static int hf_034_V1_28_060_PSR = -1;
+static int hf_034_V1_28_060_PSR_POL = -1;
+static const value_string valstr_034_V1_28_060_PSR_POL[] = {
+ { 0, "Linear polarization" },
+ { 1, "Circular polarization" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_060_PSR_POL = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_28_060_PSR_POL, NULL };
+static int hf_034_V1_28_060_PSR_REDRAD = -1;
+static const value_string valstr_034_V1_28_060_PSR_REDRAD[] = {
+ { 0, "No reduction active" },
+ { 1, "Reduction step 1 active" },
+ { 2, "Reduction step 2 active" },
+ { 3, "Reduction step 3 active" },
+ { 4, "Reduction step 4 active" },
+ { 5, "Reduction step 5 active" },
+ { 6, "Reduction step 6 active" },
+ { 7, "Reduction step 7 active" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_060_PSR_REDRAD = { 3, 1.0, FIELD_PART_UINT, &hf_034_V1_28_060_PSR_REDRAD, NULL };
+static int hf_034_V1_28_060_PSR_STC = -1;
+static const value_string valstr_034_V1_28_060_PSR_STC[] = {
+ { 0, "STC Map-1" },
+ { 1, "STC Map-2" },
+ { 2, "STC Map-3" },
+ { 3, "STC Map-4" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_060_PSR_STC = { 2, 1.0, FIELD_PART_UINT, &hf_034_V1_28_060_PSR_STC, NULL };
+static const FieldPart *I034_V1_28_060_PSR_PARTS[] = {
+ &I034_V1_28_060_PSR_POL,
+ &I034_V1_28_060_PSR_REDRAD,
+ &I034_V1_28_060_PSR_STC,
+ &IXXX_2bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_28_060_PSR = { FIXED, 1, 0, 0, &hf_034_V1_28_060_PSR, I034_V1_28_060_PSR_PARTS, { NULL } };
+static int hf_034_V1_28_060_SSR = -1;
+static int hf_034_V1_28_060_SSR_REDRAD = -1;
+static const value_string valstr_034_V1_28_060_SSR_REDRAD[] = {
+ { 0, "No reduction active" },
+ { 1, "Reduction step 1 active" },
+ { 2, "Reduction step 2 active" },
+ { 3, "Reduction step 3 active" },
+ { 4, "Reduction step 4 active" },
+ { 5, "Reduction step 5 active" },
+ { 6, "Reduction step 6 active" },
+ { 7, "Reduction step 7 active" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_060_SSR_REDRAD = { 3, 1.0, FIELD_PART_UINT, &hf_034_V1_28_060_SSR_REDRAD, NULL };
+static const FieldPart *I034_V1_28_060_SSR_PARTS[] = {
+ &I034_V1_28_060_SSR_REDRAD,
+ &IXXX_5bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_28_060_SSR = { FIXED, 1, 0, 0, &hf_034_V1_28_060_SSR, I034_V1_28_060_SSR_PARTS, { NULL } };
+static int hf_034_V1_28_060_MDS = -1;
+static int hf_034_V1_28_060_MDS_REDRAD = -1;
+static const value_string valstr_034_V1_28_060_MDS_REDRAD[] = {
+ { 0, "No reduction active" },
+ { 1, "Reduction step 1 active" },
+ { 2, "Reduction step 2 active" },
+ { 3, "Reduction step 3 active" },
+ { 4, "Reduction step 4 active" },
+ { 5, "Reduction step 5 active" },
+ { 6, "Reduction step 6 active" },
+ { 7, "Reduction step 7 active" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_060_MDS_REDRAD = { 3, 1.0, FIELD_PART_UINT, &hf_034_V1_28_060_MDS_REDRAD, NULL };
+static int hf_034_V1_28_060_MDS_CLU = -1;
+static const value_string valstr_034_V1_28_060_MDS_CLU[] = {
+ { 0, "Autonomous" },
+ { 1, "Not autonomous" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_060_MDS_CLU = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_28_060_MDS_CLU, NULL };
+static const FieldPart *I034_V1_28_060_MDS_PARTS[] = {
+ &I034_V1_28_060_MDS_REDRAD,
+ &I034_V1_28_060_MDS_CLU,
+ &IXXX_4bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_28_060_MDS = { FIXED, 1, 0, 0, &hf_034_V1_28_060_MDS, I034_V1_28_060_MDS_PARTS, { NULL } };
+static const AsterixField I034_V1_28_060 = { COMPOUND, 0, 0, 0, &hf_034_V1_28_060, NULL, { &I034_V1_28_060_COM, &IX_SPARE, &IX_SPARE, &I034_V1_28_060_PSR, &I034_V1_28_060_SSR, &I034_V1_28_060_MDS, NULL } };
+static int hf_034_V1_28_070 = -1;
+static int hf_034_V1_28_070_TYP = -1;
+static const value_string valstr_034_V1_28_070_TYP[] = {
+ { 0, "No detection (number of misses)" },
+ { 1, "Single PSR target reports" },
+ { 2, "Single SSR target reports (Non-Mode S)" },
+ { 3, "SSR+PSR target reports (Non-Mode S)" },
+ { 4, "Single All-Call target reports (Mode S)" },
+ { 5, "Single Roll-Call target reports (Mode S)" },
+ { 6, "All-Call + PSR (Mode S) target reports" },
+ { 7, "Roll-Call + PSR (Mode S) target reports" },
+ { 8, "Filter for Weather data" },
+ { 9, "Filter for Jamming Strobe" },
+ { 10, "Filter for PSR data" },
+ { 11, "Filter for SSR/Mode S data" },
+ { 12, "Filter for SSR/Mode S+PSR data" },
+ { 13, "Filter for Enhanced Surveillance data" },
+ { 14, "Filter for PSR+Enhanced Surveillance" },
+ { 15, "Filter for PSR+Enhanced Surveillance + SSR/Mode S data not in Area of Prime Interest" },
+ { 16, "Filter for PSR+Enhanced Surveillance + all SSR/Mode S data" },
+ { 17, "Re-Interrogations (per sector)" },
+ { 18, "BDS Swap and wrong DF replies(per sector)" },
+ { 19, "Mode A/C FRUIT (per sector)" },
+ { 20, "Mode S FRUIT (per sector)" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_070_TYP = { 5, 1.0, FIELD_PART_UINT, &hf_034_V1_28_070_TYP, NULL };
+static int hf_034_V1_28_070_COUNT = -1;
+static const FieldPart I034_V1_28_070_COUNT = { 11, 1.0, FIELD_PART_UINT, &hf_034_V1_28_070_COUNT, NULL };
+static const FieldPart *I034_V1_28_070_PARTS[] = {
+ &I034_V1_28_070_TYP,
+ &I034_V1_28_070_COUNT,
+ NULL
+};
+static const AsterixField I034_V1_28_070 = { REPETITIVE, 2, 1, 0, &hf_034_V1_28_070, I034_V1_28_070_PARTS, { NULL } };
+static int hf_034_V1_28_090 = -1;
+static int hf_034_V1_28_090_RNG = -1;
+static const FieldPart I034_V1_28_090_RNG = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_034_V1_28_090_RNG, NULL };
+static int hf_034_V1_28_090_AZM = -1;
+static const FieldPart I034_V1_28_090_AZM = { 8, 0.02197265625, FIELD_PART_FLOAT, &hf_034_V1_28_090_AZM, NULL };
+static const FieldPart *I034_V1_28_090_PARTS[] = {
+ &I034_V1_28_090_RNG,
+ &I034_V1_28_090_AZM,
+ NULL
+};
+static const AsterixField I034_V1_28_090 = { FIXED, 2, 0, 0, &hf_034_V1_28_090, I034_V1_28_090_PARTS, { NULL } };
+static int hf_034_V1_28_100 = -1;
+static int hf_034_V1_28_100_RHOST = -1;
+static const FieldPart I034_V1_28_100_RHOST = { 16, 0.00390625, FIELD_PART_UFLOAT, &hf_034_V1_28_100_RHOST, NULL };
+static int hf_034_V1_28_100_RHOEND = -1;
+static const FieldPart I034_V1_28_100_RHOEND = { 16, 0.00390625, FIELD_PART_UFLOAT, &hf_034_V1_28_100_RHOEND, NULL };
+static int hf_034_V1_28_100_THETAST = -1;
+static const FieldPart I034_V1_28_100_THETAST = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_034_V1_28_100_THETAST, NULL };
+static int hf_034_V1_28_100_THETAEND = -1;
+static const FieldPart I034_V1_28_100_THETAEND = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_034_V1_28_100_THETAEND, NULL };
+static const FieldPart *I034_V1_28_100_PARTS[] = {
+ &I034_V1_28_100_RHOST,
+ &I034_V1_28_100_RHOEND,
+ &I034_V1_28_100_THETAST,
+ &I034_V1_28_100_THETAEND,
+ NULL
+};
+static const AsterixField I034_V1_28_100 = { FIXED, 8, 0, 0, &hf_034_V1_28_100, I034_V1_28_100_PARTS, { NULL } };
+static int hf_034_V1_28_110 = -1;
+static int hf_034_V1_28_110_VALUE = -1;
+static const value_string valstr_034_V1_28_110_VALUE[] = {
+ { 0, "Invalid value" },
+ { 1, "Filter for Weather data" },
+ { 2, "Filter for Jamming Strobe" },
+ { 3, "Filter for PSR data" },
+ { 4, "Filter for SSR/Mode S data" },
+ { 5, "Filter for SSR/Mode S + PSR data" },
+ { 6, "Enhanced Surveillance data" },
+ { 7, "Filter for PSR+Enhanced Surveillance data" },
+ { 8, "Filter for PSR+Enhanced Surveillance + SSR/Mode S data not in Area of Prime Interest" },
+ { 9, "Filter for PSR+Enhanced Surveillance + all SSR/Mode S data" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_28_110_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_034_V1_28_110_VALUE, NULL };
+static const FieldPart *I034_V1_28_110_PARTS[] = {
+ &I034_V1_28_110_VALUE,
+ NULL
+};
+static const AsterixField I034_V1_28_110 = { FIXED, 1, 0, 0, &hf_034_V1_28_110, I034_V1_28_110_PARTS, { NULL } };
+static int hf_034_V1_28_120 = -1;
+static int hf_034_V1_28_120_HGT = -1;
+static const FieldPart I034_V1_28_120_HGT = { 16, 1.0, FIELD_PART_UFLOAT, &hf_034_V1_28_120_HGT, NULL };
+static int hf_034_V1_28_120_LAT = -1;
+static const FieldPart I034_V1_28_120_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_034_V1_28_120_LAT, NULL };
+static int hf_034_V1_28_120_LON = -1;
+static const FieldPart I034_V1_28_120_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_034_V1_28_120_LON, NULL };
+static const FieldPart *I034_V1_28_120_PARTS[] = {
+ &I034_V1_28_120_HGT,
+ &I034_V1_28_120_LAT,
+ &I034_V1_28_120_LON,
+ NULL
+};
+static const AsterixField I034_V1_28_120 = { FIXED, 8, 0, 0, &hf_034_V1_28_120, I034_V1_28_120_PARTS, { NULL } };
+static int hf_034_V1_28_RE = -1;
+static const AsterixField I034_V1_28_RE = { EXP, 0, 0, 1, &hf_034_V1_28_RE, NULL, { NULL } };
+static int hf_034_V1_28_SP = -1;
+static const AsterixField I034_V1_28_SP = { EXP, 0, 0, 1, &hf_034_V1_28_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I034_V1_28_uap[] = {
+ &I034_V1_28_010,
+ &I034_V1_28_000,
+ &I034_V1_28_030,
+ &I034_V1_28_020,
+ &I034_V1_28_041,
+ &I034_V1_28_050,
+ &I034_V1_28_060,
+ &I034_V1_28_070,
+ &I034_V1_28_100,
+ &I034_V1_28_110,
+ &I034_V1_28_120,
+ &I034_V1_28_090,
+ &I034_V1_28_RE,
+ &I034_V1_28_SP,
+ NULL
+};
+static const AsterixField **I034_V1_28[] = {
+ I034_V1_28_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 034, edition 1.29 */
+static int hf_034_V1_29_000 = -1;
+static int hf_034_V1_29_000_VALUE = -1;
+static const value_string valstr_034_V1_29_000_VALUE[] = {
+ { 1, "North marker message" },
+ { 2, "Sector crossing message" },
+ { 3, "Geographical filtering message" },
+ { 4, "Jamming strobe message" },
+ { 5, "Solar Storm Message" },
+ { 6, "SSR Jamming Strobe Message" },
+ { 7, "Mode S Jamming Strobe Message" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_034_V1_29_000_VALUE, NULL };
+static const FieldPart *I034_V1_29_000_PARTS[] = {
+ &I034_V1_29_000_VALUE,
+ NULL
+};
+static const AsterixField I034_V1_29_000 = { FIXED, 1, 0, 0, &hf_034_V1_29_000, I034_V1_29_000_PARTS, { NULL } };
+static int hf_034_V1_29_010 = -1;
+static int hf_034_V1_29_010_SAC = -1;
+static const FieldPart I034_V1_29_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_034_V1_29_010_SAC, NULL };
+static int hf_034_V1_29_010_SIC = -1;
+static const FieldPart I034_V1_29_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_034_V1_29_010_SIC, NULL };
+static const FieldPart *I034_V1_29_010_PARTS[] = {
+ &I034_V1_29_010_SAC,
+ &I034_V1_29_010_SIC,
+ NULL
+};
+static const AsterixField I034_V1_29_010 = { FIXED, 2, 0, 0, &hf_034_V1_29_010, I034_V1_29_010_PARTS, { NULL } };
+static int hf_034_V1_29_020 = -1;
+static int hf_034_V1_29_020_VALUE = -1;
+static const FieldPart I034_V1_29_020_VALUE = { 8, 1.40625, FIELD_PART_UFLOAT, &hf_034_V1_29_020_VALUE, NULL };
+static const FieldPart *I034_V1_29_020_PARTS[] = {
+ &I034_V1_29_020_VALUE,
+ NULL
+};
+static const AsterixField I034_V1_29_020 = { FIXED, 1, 0, 0, &hf_034_V1_29_020, I034_V1_29_020_PARTS, { NULL } };
+static int hf_034_V1_29_030 = -1;
+static int hf_034_V1_29_030_VALUE = -1;
+static const FieldPart I034_V1_29_030_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_034_V1_29_030_VALUE, NULL };
+static const FieldPart *I034_V1_29_030_PARTS[] = {
+ &I034_V1_29_030_VALUE,
+ NULL
+};
+static const AsterixField I034_V1_29_030 = { FIXED, 3, 0, 0, &hf_034_V1_29_030, I034_V1_29_030_PARTS, { NULL } };
+static int hf_034_V1_29_041 = -1;
+static int hf_034_V1_29_041_VALUE = -1;
+static const FieldPart I034_V1_29_041_VALUE = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_034_V1_29_041_VALUE, NULL };
+static const FieldPart *I034_V1_29_041_PARTS[] = {
+ &I034_V1_29_041_VALUE,
+ NULL
+};
+static const AsterixField I034_V1_29_041 = { FIXED, 2, 0, 0, &hf_034_V1_29_041, I034_V1_29_041_PARTS, { NULL } };
+static int hf_034_V1_29_050 = -1;
+static int hf_034_V1_29_050_COM = -1;
+static int hf_034_V1_29_050_COM_NOGO = -1;
+static const value_string valstr_034_V1_29_050_COM_NOGO[] = {
+ { 0, "System is released for operational use" },
+ { 1, "Operational use of System is inhibited, i.e. the data shall be discarded by an operational SDPS" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_050_COM_NOGO = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_29_050_COM_NOGO, NULL };
+static int hf_034_V1_29_050_COM_RDPC = -1;
+static const value_string valstr_034_V1_29_050_COM_RDPC[] = {
+ { 0, "RDPC-1 selected" },
+ { 1, "RDPC-2 selected" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_050_COM_RDPC = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_29_050_COM_RDPC, NULL };
+static int hf_034_V1_29_050_COM_RDPR = -1;
+static const value_string valstr_034_V1_29_050_COM_RDPR[] = {
+ { 0, "Default situation" },
+ { 1, "Reset of RDPC" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_050_COM_RDPR = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_29_050_COM_RDPR, NULL };
+static int hf_034_V1_29_050_COM_OVLRDP = -1;
+static const value_string valstr_034_V1_29_050_COM_OVLRDP[] = {
+ { 0, "Default, no overload" },
+ { 1, "Overload in RDP" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_050_COM_OVLRDP = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_29_050_COM_OVLRDP, NULL };
+static int hf_034_V1_29_050_COM_OVLXMT = -1;
+static const value_string valstr_034_V1_29_050_COM_OVLXMT[] = {
+ { 0, "Default, no overload" },
+ { 1, "Overload in transmission subsystem" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_050_COM_OVLXMT = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_29_050_COM_OVLXMT, NULL };
+static int hf_034_V1_29_050_COM_MSC = -1;
+static const value_string valstr_034_V1_29_050_COM_MSC[] = {
+ { 0, "Monitoring system connected" },
+ { 1, "Monitoring system disconnected" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_050_COM_MSC = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_29_050_COM_MSC, NULL };
+static int hf_034_V1_29_050_COM_TSV = -1;
+static const value_string valstr_034_V1_29_050_COM_TSV[] = {
+ { 0, "Valid" },
+ { 1, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_050_COM_TSV = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_29_050_COM_TSV, NULL };
+static const FieldPart *I034_V1_29_050_COM_PARTS[] = {
+ &I034_V1_29_050_COM_NOGO,
+ &I034_V1_29_050_COM_RDPC,
+ &I034_V1_29_050_COM_RDPR,
+ &I034_V1_29_050_COM_OVLRDP,
+ &I034_V1_29_050_COM_OVLXMT,
+ &I034_V1_29_050_COM_MSC,
+ &I034_V1_29_050_COM_TSV,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_29_050_COM = { FIXED, 1, 0, 0, &hf_034_V1_29_050_COM, I034_V1_29_050_COM_PARTS, { NULL } };
+static int hf_034_V1_29_050_PSR = -1;
+static int hf_034_V1_29_050_PSR_ANT = -1;
+static const value_string valstr_034_V1_29_050_PSR_ANT[] = {
+ { 0, "Antenna 1" },
+ { 1, "Antenna 2" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_050_PSR_ANT = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_29_050_PSR_ANT, NULL };
+static int hf_034_V1_29_050_PSR_CHAB = -1;
+static const value_string valstr_034_V1_29_050_PSR_CHAB[] = {
+ { 0, "No channel selected" },
+ { 1, "Channel A only selected" },
+ { 2, "Channel B only selected" },
+ { 3, "Diversity mode ; Channel A and B selected" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_050_PSR_CHAB = { 2, 1.0, FIELD_PART_UINT, &hf_034_V1_29_050_PSR_CHAB, NULL };
+static int hf_034_V1_29_050_PSR_OVL = -1;
+static const value_string valstr_034_V1_29_050_PSR_OVL[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_050_PSR_OVL = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_29_050_PSR_OVL, NULL };
+static int hf_034_V1_29_050_PSR_MSC = -1;
+static const value_string valstr_034_V1_29_050_PSR_MSC[] = {
+ { 0, "Monitoring system connected" },
+ { 1, "Monitoring system disconnected" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_050_PSR_MSC = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_29_050_PSR_MSC, NULL };
+static const FieldPart *I034_V1_29_050_PSR_PARTS[] = {
+ &I034_V1_29_050_PSR_ANT,
+ &I034_V1_29_050_PSR_CHAB,
+ &I034_V1_29_050_PSR_OVL,
+ &I034_V1_29_050_PSR_MSC,
+ &IXXX_3bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_29_050_PSR = { FIXED, 1, 0, 0, &hf_034_V1_29_050_PSR, I034_V1_29_050_PSR_PARTS, { NULL } };
+static int hf_034_V1_29_050_SSR = -1;
+static int hf_034_V1_29_050_SSR_ANT = -1;
+static const value_string valstr_034_V1_29_050_SSR_ANT[] = {
+ { 0, "Antenna 1" },
+ { 1, "Antenna 2" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_050_SSR_ANT = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_29_050_SSR_ANT, NULL };
+static int hf_034_V1_29_050_SSR_CHAB = -1;
+static const value_string valstr_034_V1_29_050_SSR_CHAB[] = {
+ { 0, "No channel selected" },
+ { 1, "Channel A only selected" },
+ { 2, "Channel B only selected" },
+ { 3, "Invalid combination" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_050_SSR_CHAB = { 2, 1.0, FIELD_PART_UINT, &hf_034_V1_29_050_SSR_CHAB, NULL };
+static int hf_034_V1_29_050_SSR_OVL = -1;
+static const value_string valstr_034_V1_29_050_SSR_OVL[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_050_SSR_OVL = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_29_050_SSR_OVL, NULL };
+static int hf_034_V1_29_050_SSR_MSC = -1;
+static const value_string valstr_034_V1_29_050_SSR_MSC[] = {
+ { 0, "Monitoring system connected" },
+ { 1, "Monitoring system disconnected" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_050_SSR_MSC = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_29_050_SSR_MSC, NULL };
+static const FieldPart *I034_V1_29_050_SSR_PARTS[] = {
+ &I034_V1_29_050_SSR_ANT,
+ &I034_V1_29_050_SSR_CHAB,
+ &I034_V1_29_050_SSR_OVL,
+ &I034_V1_29_050_SSR_MSC,
+ &IXXX_3bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_29_050_SSR = { FIXED, 1, 0, 0, &hf_034_V1_29_050_SSR, I034_V1_29_050_SSR_PARTS, { NULL } };
+static int hf_034_V1_29_050_MDS = -1;
+static int hf_034_V1_29_050_MDS_ANT = -1;
+static const value_string valstr_034_V1_29_050_MDS_ANT[] = {
+ { 0, "Antenna 1" },
+ { 1, "Antenna 2" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_050_MDS_ANT = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_29_050_MDS_ANT, NULL };
+static int hf_034_V1_29_050_MDS_CHAB = -1;
+static const value_string valstr_034_V1_29_050_MDS_CHAB[] = {
+ { 0, "No channel selected" },
+ { 1, "Channel A only selected" },
+ { 2, "Channel B only selected" },
+ { 3, "Illegal combination" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_050_MDS_CHAB = { 2, 1.0, FIELD_PART_UINT, &hf_034_V1_29_050_MDS_CHAB, NULL };
+static int hf_034_V1_29_050_MDS_OVLSUR = -1;
+static const value_string valstr_034_V1_29_050_MDS_OVLSUR[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_050_MDS_OVLSUR = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_29_050_MDS_OVLSUR, NULL };
+static int hf_034_V1_29_050_MDS_MSC = -1;
+static const value_string valstr_034_V1_29_050_MDS_MSC[] = {
+ { 0, "Monitoring system connected" },
+ { 1, "Monitoring system disconnected" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_050_MDS_MSC = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_29_050_MDS_MSC, NULL };
+static int hf_034_V1_29_050_MDS_SCF = -1;
+static const value_string valstr_034_V1_29_050_MDS_SCF[] = {
+ { 0, "Channel A in use" },
+ { 1, "Channel B in use" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_050_MDS_SCF = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_29_050_MDS_SCF, NULL };
+static int hf_034_V1_29_050_MDS_DLF = -1;
+static const value_string valstr_034_V1_29_050_MDS_DLF[] = {
+ { 0, "Channel A in use" },
+ { 1, "Channel B in use" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_050_MDS_DLF = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_29_050_MDS_DLF, NULL };
+static int hf_034_V1_29_050_MDS_OVLSCF = -1;
+static const value_string valstr_034_V1_29_050_MDS_OVLSCF[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_050_MDS_OVLSCF = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_29_050_MDS_OVLSCF, NULL };
+static int hf_034_V1_29_050_MDS_OVLDLF = -1;
+static const value_string valstr_034_V1_29_050_MDS_OVLDLF[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_050_MDS_OVLDLF = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_29_050_MDS_OVLDLF, NULL };
+static const FieldPart *I034_V1_29_050_MDS_PARTS[] = {
+ &I034_V1_29_050_MDS_ANT,
+ &I034_V1_29_050_MDS_CHAB,
+ &I034_V1_29_050_MDS_OVLSUR,
+ &I034_V1_29_050_MDS_MSC,
+ &I034_V1_29_050_MDS_SCF,
+ &I034_V1_29_050_MDS_DLF,
+ &I034_V1_29_050_MDS_OVLSCF,
+ &I034_V1_29_050_MDS_OVLDLF,
+ &IXXX_7bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_29_050_MDS = { FIXED, 2, 0, 0, &hf_034_V1_29_050_MDS, I034_V1_29_050_MDS_PARTS, { NULL } };
+static const AsterixField I034_V1_29_050 = { COMPOUND, 0, 0, 0, &hf_034_V1_29_050, NULL, { &I034_V1_29_050_COM, &IX_SPARE, &IX_SPARE, &I034_V1_29_050_PSR, &I034_V1_29_050_SSR, &I034_V1_29_050_MDS, NULL } };
+static int hf_034_V1_29_060 = -1;
+static int hf_034_V1_29_060_COM = -1;
+static int hf_034_V1_29_060_COM_REDRDP = -1;
+static const value_string valstr_034_V1_29_060_COM_REDRDP[] = {
+ { 0, "No reduction active" },
+ { 1, "Reduction step 1 active" },
+ { 2, "Reduction step 2 active" },
+ { 3, "Reduction step 3 active" },
+ { 4, "Reduction step 4 active" },
+ { 5, "Reduction step 5 active" },
+ { 6, "Reduction step 6 active" },
+ { 7, "Reduction step 7 active" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_060_COM_REDRDP = { 3, 1.0, FIELD_PART_UINT, &hf_034_V1_29_060_COM_REDRDP, NULL };
+static int hf_034_V1_29_060_COM_REDXMT = -1;
+static const value_string valstr_034_V1_29_060_COM_REDXMT[] = {
+ { 0, "No reduction active" },
+ { 1, "Reduction step 1 active" },
+ { 2, "Reduction step 2 active" },
+ { 3, "Reduction step 3 active" },
+ { 4, "Reduction step 4 active" },
+ { 5, "Reduction step 5 active" },
+ { 6, "Reduction step 6 active" },
+ { 7, "Reduction step 7 active" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_060_COM_REDXMT = { 3, 1.0, FIELD_PART_UINT, &hf_034_V1_29_060_COM_REDXMT, NULL };
+static const FieldPart *I034_V1_29_060_COM_PARTS[] = {
+ &IXXX_1bit_spare,
+ &I034_V1_29_060_COM_REDRDP,
+ &I034_V1_29_060_COM_REDXMT,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_29_060_COM = { FIXED, 1, 0, 0, &hf_034_V1_29_060_COM, I034_V1_29_060_COM_PARTS, { NULL } };
+static int hf_034_V1_29_060_PSR = -1;
+static int hf_034_V1_29_060_PSR_POL = -1;
+static const value_string valstr_034_V1_29_060_PSR_POL[] = {
+ { 0, "Linear polarization" },
+ { 1, "Circular polarization" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_060_PSR_POL = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_29_060_PSR_POL, NULL };
+static int hf_034_V1_29_060_PSR_REDRAD = -1;
+static const value_string valstr_034_V1_29_060_PSR_REDRAD[] = {
+ { 0, "No reduction active" },
+ { 1, "Reduction step 1 active" },
+ { 2, "Reduction step 2 active" },
+ { 3, "Reduction step 3 active" },
+ { 4, "Reduction step 4 active" },
+ { 5, "Reduction step 5 active" },
+ { 6, "Reduction step 6 active" },
+ { 7, "Reduction step 7 active" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_060_PSR_REDRAD = { 3, 1.0, FIELD_PART_UINT, &hf_034_V1_29_060_PSR_REDRAD, NULL };
+static int hf_034_V1_29_060_PSR_STC = -1;
+static const value_string valstr_034_V1_29_060_PSR_STC[] = {
+ { 0, "STC Map-1" },
+ { 1, "STC Map-2" },
+ { 2, "STC Map-3" },
+ { 3, "STC Map-4" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_060_PSR_STC = { 2, 1.0, FIELD_PART_UINT, &hf_034_V1_29_060_PSR_STC, NULL };
+static const FieldPart *I034_V1_29_060_PSR_PARTS[] = {
+ &I034_V1_29_060_PSR_POL,
+ &I034_V1_29_060_PSR_REDRAD,
+ &I034_V1_29_060_PSR_STC,
+ &IXXX_2bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_29_060_PSR = { FIXED, 1, 0, 0, &hf_034_V1_29_060_PSR, I034_V1_29_060_PSR_PARTS, { NULL } };
+static int hf_034_V1_29_060_SSR = -1;
+static int hf_034_V1_29_060_SSR_REDRAD = -1;
+static const value_string valstr_034_V1_29_060_SSR_REDRAD[] = {
+ { 0, "No reduction active" },
+ { 1, "Reduction step 1 active" },
+ { 2, "Reduction step 2 active" },
+ { 3, "Reduction step 3 active" },
+ { 4, "Reduction step 4 active" },
+ { 5, "Reduction step 5 active" },
+ { 6, "Reduction step 6 active" },
+ { 7, "Reduction step 7 active" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_060_SSR_REDRAD = { 3, 1.0, FIELD_PART_UINT, &hf_034_V1_29_060_SSR_REDRAD, NULL };
+static const FieldPart *I034_V1_29_060_SSR_PARTS[] = {
+ &I034_V1_29_060_SSR_REDRAD,
+ &IXXX_5bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_29_060_SSR = { FIXED, 1, 0, 0, &hf_034_V1_29_060_SSR, I034_V1_29_060_SSR_PARTS, { NULL } };
+static int hf_034_V1_29_060_MDS = -1;
+static int hf_034_V1_29_060_MDS_REDRAD = -1;
+static const value_string valstr_034_V1_29_060_MDS_REDRAD[] = {
+ { 0, "No reduction active" },
+ { 1, "Reduction step 1 active" },
+ { 2, "Reduction step 2 active" },
+ { 3, "Reduction step 3 active" },
+ { 4, "Reduction step 4 active" },
+ { 5, "Reduction step 5 active" },
+ { 6, "Reduction step 6 active" },
+ { 7, "Reduction step 7 active" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_060_MDS_REDRAD = { 3, 1.0, FIELD_PART_UINT, &hf_034_V1_29_060_MDS_REDRAD, NULL };
+static int hf_034_V1_29_060_MDS_CLU = -1;
+static const value_string valstr_034_V1_29_060_MDS_CLU[] = {
+ { 0, "Autonomous" },
+ { 1, "Not autonomous" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_060_MDS_CLU = { 1, 1.0, FIELD_PART_UINT, &hf_034_V1_29_060_MDS_CLU, NULL };
+static const FieldPart *I034_V1_29_060_MDS_PARTS[] = {
+ &I034_V1_29_060_MDS_REDRAD,
+ &I034_V1_29_060_MDS_CLU,
+ &IXXX_4bit_spare,
+ NULL
+};
+static const AsterixField I034_V1_29_060_MDS = { FIXED, 1, 0, 0, &hf_034_V1_29_060_MDS, I034_V1_29_060_MDS_PARTS, { NULL } };
+static const AsterixField I034_V1_29_060 = { COMPOUND, 0, 0, 0, &hf_034_V1_29_060, NULL, { &I034_V1_29_060_COM, &IX_SPARE, &IX_SPARE, &I034_V1_29_060_PSR, &I034_V1_29_060_SSR, &I034_V1_29_060_MDS, NULL } };
+static int hf_034_V1_29_070 = -1;
+static int hf_034_V1_29_070_TYP = -1;
+static const value_string valstr_034_V1_29_070_TYP[] = {
+ { 0, "No detection (number of misses)" },
+ { 1, "Single PSR target reports" },
+ { 2, "Single SSR target reports (Non-Mode S)" },
+ { 3, "SSR+PSR target reports (Non-Mode S)" },
+ { 4, "Single All-Call target reports (Mode S)" },
+ { 5, "Single Roll-Call target reports (Mode S)" },
+ { 6, "All-Call + PSR (Mode S) target reports" },
+ { 7, "Roll-Call + PSR (Mode S) target reports" },
+ { 8, "Filter for Weather data" },
+ { 9, "Filter for Jamming Strobe" },
+ { 10, "Filter for PSR data" },
+ { 11, "Filter for SSR/Mode S data" },
+ { 12, "Filter for SSR/Mode S+PSR data" },
+ { 13, "Filter for Enhanced Surveillance data" },
+ { 14, "Filter for PSR+Enhanced Surveillance" },
+ { 15, "Filter for PSR+Enhanced Surveillance + SSR/Mode S data not in Area of Prime Interest" },
+ { 16, "Filter for PSR+Enhanced Surveillance + all SSR/Mode S data" },
+ { 17, "Re-Interrogations (per sector)" },
+ { 18, "BDS Swap and wrong DF replies(per sector)" },
+ { 19, "Mode A/C FRUIT (per sector)" },
+ { 20, "Mode S FRUIT (per sector)" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_070_TYP = { 5, 1.0, FIELD_PART_UINT, &hf_034_V1_29_070_TYP, NULL };
+static int hf_034_V1_29_070_COUNT = -1;
+static const FieldPart I034_V1_29_070_COUNT = { 11, 1.0, FIELD_PART_UINT, &hf_034_V1_29_070_COUNT, NULL };
+static const FieldPart *I034_V1_29_070_PARTS[] = {
+ &I034_V1_29_070_TYP,
+ &I034_V1_29_070_COUNT,
+ NULL
+};
+static const AsterixField I034_V1_29_070 = { REPETITIVE, 2, 1, 0, &hf_034_V1_29_070, I034_V1_29_070_PARTS, { NULL } };
+static int hf_034_V1_29_090 = -1;
+static int hf_034_V1_29_090_RNG = -1;
+static const FieldPart I034_V1_29_090_RNG = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_034_V1_29_090_RNG, NULL };
+static int hf_034_V1_29_090_AZM = -1;
+static const FieldPart I034_V1_29_090_AZM = { 8, 0.02197265625, FIELD_PART_FLOAT, &hf_034_V1_29_090_AZM, NULL };
+static const FieldPart *I034_V1_29_090_PARTS[] = {
+ &I034_V1_29_090_RNG,
+ &I034_V1_29_090_AZM,
+ NULL
+};
+static const AsterixField I034_V1_29_090 = { FIXED, 2, 0, 0, &hf_034_V1_29_090, I034_V1_29_090_PARTS, { NULL } };
+static int hf_034_V1_29_100 = -1;
+static int hf_034_V1_29_100_RHOST = -1;
+static const FieldPart I034_V1_29_100_RHOST = { 16, 0.00390625, FIELD_PART_UFLOAT, &hf_034_V1_29_100_RHOST, NULL };
+static int hf_034_V1_29_100_RHOEND = -1;
+static const FieldPart I034_V1_29_100_RHOEND = { 16, 0.00390625, FIELD_PART_UFLOAT, &hf_034_V1_29_100_RHOEND, NULL };
+static int hf_034_V1_29_100_THETAST = -1;
+static const FieldPart I034_V1_29_100_THETAST = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_034_V1_29_100_THETAST, NULL };
+static int hf_034_V1_29_100_THETAEND = -1;
+static const FieldPart I034_V1_29_100_THETAEND = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_034_V1_29_100_THETAEND, NULL };
+static const FieldPart *I034_V1_29_100_PARTS[] = {
+ &I034_V1_29_100_RHOST,
+ &I034_V1_29_100_RHOEND,
+ &I034_V1_29_100_THETAST,
+ &I034_V1_29_100_THETAEND,
+ NULL
+};
+static const AsterixField I034_V1_29_100 = { FIXED, 8, 0, 0, &hf_034_V1_29_100, I034_V1_29_100_PARTS, { NULL } };
+static int hf_034_V1_29_110 = -1;
+static int hf_034_V1_29_110_VALUE = -1;
+static const value_string valstr_034_V1_29_110_VALUE[] = {
+ { 0, "Invalid value" },
+ { 1, "Filter for Weather data" },
+ { 2, "Filter for Jamming Strobe" },
+ { 3, "Filter for PSR data" },
+ { 4, "Filter for SSR/Mode S data" },
+ { 5, "Filter for SSR/Mode S + PSR data" },
+ { 6, "Enhanced Surveillance data" },
+ { 7, "Filter for PSR+Enhanced Surveillance data" },
+ { 8, "Filter for PSR+Enhanced Surveillance + SSR/Mode S data not in Area of Prime Interest" },
+ { 9, "Filter for PSR+Enhanced Surveillance + all SSR/Mode S data" },
+ { 0, NULL }
+};
+static const FieldPart I034_V1_29_110_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_034_V1_29_110_VALUE, NULL };
+static const FieldPart *I034_V1_29_110_PARTS[] = {
+ &I034_V1_29_110_VALUE,
+ NULL
+};
+static const AsterixField I034_V1_29_110 = { FIXED, 1, 0, 0, &hf_034_V1_29_110, I034_V1_29_110_PARTS, { NULL } };
+static int hf_034_V1_29_120 = -1;
+static int hf_034_V1_29_120_HGT = -1;
+static const FieldPart I034_V1_29_120_HGT = { 16, 1.0, FIELD_PART_UFLOAT, &hf_034_V1_29_120_HGT, NULL };
+static int hf_034_V1_29_120_LAT = -1;
+static const FieldPart I034_V1_29_120_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_034_V1_29_120_LAT, NULL };
+static int hf_034_V1_29_120_LON = -1;
+static const FieldPart I034_V1_29_120_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_034_V1_29_120_LON, NULL };
+static const FieldPart *I034_V1_29_120_PARTS[] = {
+ &I034_V1_29_120_HGT,
+ &I034_V1_29_120_LAT,
+ &I034_V1_29_120_LON,
+ NULL
+};
+static const AsterixField I034_V1_29_120 = { FIXED, 8, 0, 0, &hf_034_V1_29_120, I034_V1_29_120_PARTS, { NULL } };
+static int hf_034_V1_29_RE = -1;
+static const AsterixField I034_V1_29_RE = { EXP, 0, 0, 1, &hf_034_V1_29_RE, NULL, { NULL } };
+static int hf_034_V1_29_SP = -1;
+static const AsterixField I034_V1_29_SP = { EXP, 0, 0, 1, &hf_034_V1_29_SP, NULL, { NULL } };
+
+/* Category 034, edition 1.29 (latest) */
+static int hf_034_000 = -1;
+static int hf_034_000_VALUE = -1;
+static const value_string valstr_034_000_VALUE[] = {
+ { 1, "North marker message" },
+ { 2, "Sector crossing message" },
+ { 3, "Geographical filtering message" },
+ { 4, "Jamming strobe message" },
+ { 5, "Solar Storm Message" },
+ { 6, "SSR Jamming Strobe Message" },
+ { 7, "Mode S Jamming Strobe Message" },
+ { 0, NULL }
+};
+static const FieldPart I034_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_034_000_VALUE, NULL };
+static const FieldPart *I034_000_PARTS[] = {
+ &I034_000_VALUE,
+ NULL
+};
+static const AsterixField I034_000 = { FIXED, 1, 0, 0, &hf_034_000, I034_000_PARTS, { NULL } };
+static int hf_034_010 = -1;
+static int hf_034_010_SAC = -1;
+static const FieldPart I034_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_034_010_SAC, NULL };
+static int hf_034_010_SIC = -1;
+static const FieldPart I034_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_034_010_SIC, NULL };
+static const FieldPart *I034_010_PARTS[] = {
+ &I034_010_SAC,
+ &I034_010_SIC,
+ NULL
+};
+static const AsterixField I034_010 = { FIXED, 2, 0, 0, &hf_034_010, I034_010_PARTS, { NULL } };
+static int hf_034_020 = -1;
+static int hf_034_020_VALUE = -1;
+static const FieldPart I034_020_VALUE = { 8, 1.40625, FIELD_PART_UFLOAT, &hf_034_020_VALUE, NULL };
+static const FieldPart *I034_020_PARTS[] = {
+ &I034_020_VALUE,
+ NULL
+};
+static const AsterixField I034_020 = { FIXED, 1, 0, 0, &hf_034_020, I034_020_PARTS, { NULL } };
+static int hf_034_030 = -1;
+static int hf_034_030_VALUE = -1;
+static const FieldPart I034_030_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_034_030_VALUE, NULL };
+static const FieldPart *I034_030_PARTS[] = {
+ &I034_030_VALUE,
+ NULL
+};
+static const AsterixField I034_030 = { FIXED, 3, 0, 0, &hf_034_030, I034_030_PARTS, { NULL } };
+static int hf_034_041 = -1;
+static int hf_034_041_VALUE = -1;
+static const FieldPart I034_041_VALUE = { 16, 0.0078125, FIELD_PART_UFLOAT, &hf_034_041_VALUE, NULL };
+static const FieldPart *I034_041_PARTS[] = {
+ &I034_041_VALUE,
+ NULL
+};
+static const AsterixField I034_041 = { FIXED, 2, 0, 0, &hf_034_041, I034_041_PARTS, { NULL } };
+static int hf_034_050 = -1;
+static int hf_034_050_COM = -1;
+static int hf_034_050_COM_NOGO = -1;
+static const value_string valstr_034_050_COM_NOGO[] = {
+ { 0, "System is released for operational use" },
+ { 1, "Operational use of System is inhibited, i.e. the data shall be discarded by an operational SDPS" },
+ { 0, NULL }
+};
+static const FieldPart I034_050_COM_NOGO = { 1, 1.0, FIELD_PART_UINT, &hf_034_050_COM_NOGO, NULL };
+static int hf_034_050_COM_RDPC = -1;
+static const value_string valstr_034_050_COM_RDPC[] = {
+ { 0, "RDPC-1 selected" },
+ { 1, "RDPC-2 selected" },
+ { 0, NULL }
+};
+static const FieldPart I034_050_COM_RDPC = { 1, 1.0, FIELD_PART_UINT, &hf_034_050_COM_RDPC, NULL };
+static int hf_034_050_COM_RDPR = -1;
+static const value_string valstr_034_050_COM_RDPR[] = {
+ { 0, "Default situation" },
+ { 1, "Reset of RDPC" },
+ { 0, NULL }
+};
+static const FieldPart I034_050_COM_RDPR = { 1, 1.0, FIELD_PART_UINT, &hf_034_050_COM_RDPR, NULL };
+static int hf_034_050_COM_OVLRDP = -1;
+static const value_string valstr_034_050_COM_OVLRDP[] = {
+ { 0, "Default, no overload" },
+ { 1, "Overload in RDP" },
+ { 0, NULL }
+};
+static const FieldPart I034_050_COM_OVLRDP = { 1, 1.0, FIELD_PART_UINT, &hf_034_050_COM_OVLRDP, NULL };
+static int hf_034_050_COM_OVLXMT = -1;
+static const value_string valstr_034_050_COM_OVLXMT[] = {
+ { 0, "Default, no overload" },
+ { 1, "Overload in transmission subsystem" },
+ { 0, NULL }
+};
+static const FieldPart I034_050_COM_OVLXMT = { 1, 1.0, FIELD_PART_UINT, &hf_034_050_COM_OVLXMT, NULL };
+static int hf_034_050_COM_MSC = -1;
+static const value_string valstr_034_050_COM_MSC[] = {
+ { 0, "Monitoring system connected" },
+ { 1, "Monitoring system disconnected" },
+ { 0, NULL }
+};
+static const FieldPart I034_050_COM_MSC = { 1, 1.0, FIELD_PART_UINT, &hf_034_050_COM_MSC, NULL };
+static int hf_034_050_COM_TSV = -1;
+static const value_string valstr_034_050_COM_TSV[] = {
+ { 0, "Valid" },
+ { 1, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I034_050_COM_TSV = { 1, 1.0, FIELD_PART_UINT, &hf_034_050_COM_TSV, NULL };
+static const FieldPart *I034_050_COM_PARTS[] = {
+ &I034_050_COM_NOGO,
+ &I034_050_COM_RDPC,
+ &I034_050_COM_RDPR,
+ &I034_050_COM_OVLRDP,
+ &I034_050_COM_OVLXMT,
+ &I034_050_COM_MSC,
+ &I034_050_COM_TSV,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I034_050_COM = { FIXED, 1, 0, 0, &hf_034_050_COM, I034_050_COM_PARTS, { NULL } };
+static int hf_034_050_PSR = -1;
+static int hf_034_050_PSR_ANT = -1;
+static const value_string valstr_034_050_PSR_ANT[] = {
+ { 0, "Antenna 1" },
+ { 1, "Antenna 2" },
+ { 0, NULL }
+};
+static const FieldPart I034_050_PSR_ANT = { 1, 1.0, FIELD_PART_UINT, &hf_034_050_PSR_ANT, NULL };
+static int hf_034_050_PSR_CHAB = -1;
+static const value_string valstr_034_050_PSR_CHAB[] = {
+ { 0, "No channel selected" },
+ { 1, "Channel A only selected" },
+ { 2, "Channel B only selected" },
+ { 3, "Diversity mode ; Channel A and B selected" },
+ { 0, NULL }
+};
+static const FieldPart I034_050_PSR_CHAB = { 2, 1.0, FIELD_PART_UINT, &hf_034_050_PSR_CHAB, NULL };
+static int hf_034_050_PSR_OVL = -1;
+static const value_string valstr_034_050_PSR_OVL[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I034_050_PSR_OVL = { 1, 1.0, FIELD_PART_UINT, &hf_034_050_PSR_OVL, NULL };
+static int hf_034_050_PSR_MSC = -1;
+static const value_string valstr_034_050_PSR_MSC[] = {
+ { 0, "Monitoring system connected" },
+ { 1, "Monitoring system disconnected" },
+ { 0, NULL }
+};
+static const FieldPart I034_050_PSR_MSC = { 1, 1.0, FIELD_PART_UINT, &hf_034_050_PSR_MSC, NULL };
+static const FieldPart *I034_050_PSR_PARTS[] = {
+ &I034_050_PSR_ANT,
+ &I034_050_PSR_CHAB,
+ &I034_050_PSR_OVL,
+ &I034_050_PSR_MSC,
+ &IXXX_3bit_spare,
+ NULL
+};
+static const AsterixField I034_050_PSR = { FIXED, 1, 0, 0, &hf_034_050_PSR, I034_050_PSR_PARTS, { NULL } };
+static int hf_034_050_SSR = -1;
+static int hf_034_050_SSR_ANT = -1;
+static const value_string valstr_034_050_SSR_ANT[] = {
+ { 0, "Antenna 1" },
+ { 1, "Antenna 2" },
+ { 0, NULL }
+};
+static const FieldPart I034_050_SSR_ANT = { 1, 1.0, FIELD_PART_UINT, &hf_034_050_SSR_ANT, NULL };
+static int hf_034_050_SSR_CHAB = -1;
+static const value_string valstr_034_050_SSR_CHAB[] = {
+ { 0, "No channel selected" },
+ { 1, "Channel A only selected" },
+ { 2, "Channel B only selected" },
+ { 3, "Invalid combination" },
+ { 0, NULL }
+};
+static const FieldPart I034_050_SSR_CHAB = { 2, 1.0, FIELD_PART_UINT, &hf_034_050_SSR_CHAB, NULL };
+static int hf_034_050_SSR_OVL = -1;
+static const value_string valstr_034_050_SSR_OVL[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I034_050_SSR_OVL = { 1, 1.0, FIELD_PART_UINT, &hf_034_050_SSR_OVL, NULL };
+static int hf_034_050_SSR_MSC = -1;
+static const value_string valstr_034_050_SSR_MSC[] = {
+ { 0, "Monitoring system connected" },
+ { 1, "Monitoring system disconnected" },
+ { 0, NULL }
+};
+static const FieldPart I034_050_SSR_MSC = { 1, 1.0, FIELD_PART_UINT, &hf_034_050_SSR_MSC, NULL };
+static const FieldPart *I034_050_SSR_PARTS[] = {
+ &I034_050_SSR_ANT,
+ &I034_050_SSR_CHAB,
+ &I034_050_SSR_OVL,
+ &I034_050_SSR_MSC,
+ &IXXX_3bit_spare,
+ NULL
+};
+static const AsterixField I034_050_SSR = { FIXED, 1, 0, 0, &hf_034_050_SSR, I034_050_SSR_PARTS, { NULL } };
+static int hf_034_050_MDS = -1;
+static int hf_034_050_MDS_ANT = -1;
+static const value_string valstr_034_050_MDS_ANT[] = {
+ { 0, "Antenna 1" },
+ { 1, "Antenna 2" },
+ { 0, NULL }
+};
+static const FieldPart I034_050_MDS_ANT = { 1, 1.0, FIELD_PART_UINT, &hf_034_050_MDS_ANT, NULL };
+static int hf_034_050_MDS_CHAB = -1;
+static const value_string valstr_034_050_MDS_CHAB[] = {
+ { 0, "No channel selected" },
+ { 1, "Channel A only selected" },
+ { 2, "Channel B only selected" },
+ { 3, "Illegal combination" },
+ { 0, NULL }
+};
+static const FieldPart I034_050_MDS_CHAB = { 2, 1.0, FIELD_PART_UINT, &hf_034_050_MDS_CHAB, NULL };
+static int hf_034_050_MDS_OVLSUR = -1;
+static const value_string valstr_034_050_MDS_OVLSUR[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I034_050_MDS_OVLSUR = { 1, 1.0, FIELD_PART_UINT, &hf_034_050_MDS_OVLSUR, NULL };
+static int hf_034_050_MDS_MSC = -1;
+static const value_string valstr_034_050_MDS_MSC[] = {
+ { 0, "Monitoring system connected" },
+ { 1, "Monitoring system disconnected" },
+ { 0, NULL }
+};
+static const FieldPart I034_050_MDS_MSC = { 1, 1.0, FIELD_PART_UINT, &hf_034_050_MDS_MSC, NULL };
+static int hf_034_050_MDS_SCF = -1;
+static const value_string valstr_034_050_MDS_SCF[] = {
+ { 0, "Channel A in use" },
+ { 1, "Channel B in use" },
+ { 0, NULL }
+};
+static const FieldPart I034_050_MDS_SCF = { 1, 1.0, FIELD_PART_UINT, &hf_034_050_MDS_SCF, NULL };
+static int hf_034_050_MDS_DLF = -1;
+static const value_string valstr_034_050_MDS_DLF[] = {
+ { 0, "Channel A in use" },
+ { 1, "Channel B in use" },
+ { 0, NULL }
+};
+static const FieldPart I034_050_MDS_DLF = { 1, 1.0, FIELD_PART_UINT, &hf_034_050_MDS_DLF, NULL };
+static int hf_034_050_MDS_OVLSCF = -1;
+static const value_string valstr_034_050_MDS_OVLSCF[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I034_050_MDS_OVLSCF = { 1, 1.0, FIELD_PART_UINT, &hf_034_050_MDS_OVLSCF, NULL };
+static int hf_034_050_MDS_OVLDLF = -1;
+static const value_string valstr_034_050_MDS_OVLDLF[] = {
+ { 0, "No overload" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I034_050_MDS_OVLDLF = { 1, 1.0, FIELD_PART_UINT, &hf_034_050_MDS_OVLDLF, NULL };
+static const FieldPart *I034_050_MDS_PARTS[] = {
+ &I034_050_MDS_ANT,
+ &I034_050_MDS_CHAB,
+ &I034_050_MDS_OVLSUR,
+ &I034_050_MDS_MSC,
+ &I034_050_MDS_SCF,
+ &I034_050_MDS_DLF,
+ &I034_050_MDS_OVLSCF,
+ &I034_050_MDS_OVLDLF,
+ &IXXX_7bit_spare,
+ NULL
+};
+static const AsterixField I034_050_MDS = { FIXED, 2, 0, 0, &hf_034_050_MDS, I034_050_MDS_PARTS, { NULL } };
+static const AsterixField I034_050 = { COMPOUND, 0, 0, 0, &hf_034_050, NULL, { &I034_050_COM, &IX_SPARE, &IX_SPARE, &I034_050_PSR, &I034_050_SSR, &I034_050_MDS, NULL } };
+static int hf_034_060 = -1;
+static int hf_034_060_COM = -1;
+static int hf_034_060_COM_REDRDP = -1;
+static const value_string valstr_034_060_COM_REDRDP[] = {
+ { 0, "No reduction active" },
+ { 1, "Reduction step 1 active" },
+ { 2, "Reduction step 2 active" },
+ { 3, "Reduction step 3 active" },
+ { 4, "Reduction step 4 active" },
+ { 5, "Reduction step 5 active" },
+ { 6, "Reduction step 6 active" },
+ { 7, "Reduction step 7 active" },
+ { 0, NULL }
+};
+static const FieldPart I034_060_COM_REDRDP = { 3, 1.0, FIELD_PART_UINT, &hf_034_060_COM_REDRDP, NULL };
+static int hf_034_060_COM_REDXMT = -1;
+static const value_string valstr_034_060_COM_REDXMT[] = {
+ { 0, "No reduction active" },
+ { 1, "Reduction step 1 active" },
+ { 2, "Reduction step 2 active" },
+ { 3, "Reduction step 3 active" },
+ { 4, "Reduction step 4 active" },
+ { 5, "Reduction step 5 active" },
+ { 6, "Reduction step 6 active" },
+ { 7, "Reduction step 7 active" },
+ { 0, NULL }
+};
+static const FieldPart I034_060_COM_REDXMT = { 3, 1.0, FIELD_PART_UINT, &hf_034_060_COM_REDXMT, NULL };
+static const FieldPart *I034_060_COM_PARTS[] = {
+ &IXXX_1bit_spare,
+ &I034_060_COM_REDRDP,
+ &I034_060_COM_REDXMT,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I034_060_COM = { FIXED, 1, 0, 0, &hf_034_060_COM, I034_060_COM_PARTS, { NULL } };
+static int hf_034_060_PSR = -1;
+static int hf_034_060_PSR_POL = -1;
+static const value_string valstr_034_060_PSR_POL[] = {
+ { 0, "Linear polarization" },
+ { 1, "Circular polarization" },
+ { 0, NULL }
+};
+static const FieldPart I034_060_PSR_POL = { 1, 1.0, FIELD_PART_UINT, &hf_034_060_PSR_POL, NULL };
+static int hf_034_060_PSR_REDRAD = -1;
+static const value_string valstr_034_060_PSR_REDRAD[] = {
+ { 0, "No reduction active" },
+ { 1, "Reduction step 1 active" },
+ { 2, "Reduction step 2 active" },
+ { 3, "Reduction step 3 active" },
+ { 4, "Reduction step 4 active" },
+ { 5, "Reduction step 5 active" },
+ { 6, "Reduction step 6 active" },
+ { 7, "Reduction step 7 active" },
+ { 0, NULL }
+};
+static const FieldPart I034_060_PSR_REDRAD = { 3, 1.0, FIELD_PART_UINT, &hf_034_060_PSR_REDRAD, NULL };
+static int hf_034_060_PSR_STC = -1;
+static const value_string valstr_034_060_PSR_STC[] = {
+ { 0, "STC Map-1" },
+ { 1, "STC Map-2" },
+ { 2, "STC Map-3" },
+ { 3, "STC Map-4" },
+ { 0, NULL }
+};
+static const FieldPart I034_060_PSR_STC = { 2, 1.0, FIELD_PART_UINT, &hf_034_060_PSR_STC, NULL };
+static const FieldPart *I034_060_PSR_PARTS[] = {
+ &I034_060_PSR_POL,
+ &I034_060_PSR_REDRAD,
+ &I034_060_PSR_STC,
+ &IXXX_2bit_spare,
+ NULL
+};
+static const AsterixField I034_060_PSR = { FIXED, 1, 0, 0, &hf_034_060_PSR, I034_060_PSR_PARTS, { NULL } };
+static int hf_034_060_SSR = -1;
+static int hf_034_060_SSR_REDRAD = -1;
+static const value_string valstr_034_060_SSR_REDRAD[] = {
+ { 0, "No reduction active" },
+ { 1, "Reduction step 1 active" },
+ { 2, "Reduction step 2 active" },
+ { 3, "Reduction step 3 active" },
+ { 4, "Reduction step 4 active" },
+ { 5, "Reduction step 5 active" },
+ { 6, "Reduction step 6 active" },
+ { 7, "Reduction step 7 active" },
+ { 0, NULL }
+};
+static const FieldPart I034_060_SSR_REDRAD = { 3, 1.0, FIELD_PART_UINT, &hf_034_060_SSR_REDRAD, NULL };
+static const FieldPart *I034_060_SSR_PARTS[] = {
+ &I034_060_SSR_REDRAD,
+ &IXXX_5bit_spare,
+ NULL
+};
+static const AsterixField I034_060_SSR = { FIXED, 1, 0, 0, &hf_034_060_SSR, I034_060_SSR_PARTS, { NULL } };
+static int hf_034_060_MDS = -1;
+static int hf_034_060_MDS_REDRAD = -1;
+static const value_string valstr_034_060_MDS_REDRAD[] = {
+ { 0, "No reduction active" },
+ { 1, "Reduction step 1 active" },
+ { 2, "Reduction step 2 active" },
+ { 3, "Reduction step 3 active" },
+ { 4, "Reduction step 4 active" },
+ { 5, "Reduction step 5 active" },
+ { 6, "Reduction step 6 active" },
+ { 7, "Reduction step 7 active" },
+ { 0, NULL }
+};
+static const FieldPart I034_060_MDS_REDRAD = { 3, 1.0, FIELD_PART_UINT, &hf_034_060_MDS_REDRAD, NULL };
+static int hf_034_060_MDS_CLU = -1;
+static const value_string valstr_034_060_MDS_CLU[] = {
+ { 0, "Autonomous" },
+ { 1, "Not autonomous" },
+ { 0, NULL }
+};
+static const FieldPart I034_060_MDS_CLU = { 1, 1.0, FIELD_PART_UINT, &hf_034_060_MDS_CLU, NULL };
+static const FieldPart *I034_060_MDS_PARTS[] = {
+ &I034_060_MDS_REDRAD,
+ &I034_060_MDS_CLU,
+ &IXXX_4bit_spare,
+ NULL
+};
+static const AsterixField I034_060_MDS = { FIXED, 1, 0, 0, &hf_034_060_MDS, I034_060_MDS_PARTS, { NULL } };
+static const AsterixField I034_060 = { COMPOUND, 0, 0, 0, &hf_034_060, NULL, { &I034_060_COM, &IX_SPARE, &IX_SPARE, &I034_060_PSR, &I034_060_SSR, &I034_060_MDS, NULL } };
+static int hf_034_070 = -1;
+static int hf_034_070_TYP = -1;
+static const value_string valstr_034_070_TYP[] = {
+ { 0, "No detection (number of misses)" },
+ { 1, "Single PSR target reports" },
+ { 2, "Single SSR target reports (Non-Mode S)" },
+ { 3, "SSR+PSR target reports (Non-Mode S)" },
+ { 4, "Single All-Call target reports (Mode S)" },
+ { 5, "Single Roll-Call target reports (Mode S)" },
+ { 6, "All-Call + PSR (Mode S) target reports" },
+ { 7, "Roll-Call + PSR (Mode S) target reports" },
+ { 8, "Filter for Weather data" },
+ { 9, "Filter for Jamming Strobe" },
+ { 10, "Filter for PSR data" },
+ { 11, "Filter for SSR/Mode S data" },
+ { 12, "Filter for SSR/Mode S+PSR data" },
+ { 13, "Filter for Enhanced Surveillance data" },
+ { 14, "Filter for PSR+Enhanced Surveillance" },
+ { 15, "Filter for PSR+Enhanced Surveillance + SSR/Mode S data not in Area of Prime Interest" },
+ { 16, "Filter for PSR+Enhanced Surveillance + all SSR/Mode S data" },
+ { 17, "Re-Interrogations (per sector)" },
+ { 18, "BDS Swap and wrong DF replies(per sector)" },
+ { 19, "Mode A/C FRUIT (per sector)" },
+ { 20, "Mode S FRUIT (per sector)" },
+ { 0, NULL }
+};
+static const FieldPart I034_070_TYP = { 5, 1.0, FIELD_PART_UINT, &hf_034_070_TYP, NULL };
+static int hf_034_070_COUNT = -1;
+static const FieldPart I034_070_COUNT = { 11, 1.0, FIELD_PART_UINT, &hf_034_070_COUNT, NULL };
+static const FieldPart *I034_070_PARTS[] = {
+ &I034_070_TYP,
+ &I034_070_COUNT,
+ NULL
+};
+static const AsterixField I034_070 = { REPETITIVE, 2, 1, 0, &hf_034_070, I034_070_PARTS, { NULL } };
+static int hf_034_090 = -1;
+static int hf_034_090_RNG = -1;
+static const FieldPart I034_090_RNG = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_034_090_RNG, NULL };
+static int hf_034_090_AZM = -1;
+static const FieldPart I034_090_AZM = { 8, 0.02197265625, FIELD_PART_FLOAT, &hf_034_090_AZM, NULL };
+static const FieldPart *I034_090_PARTS[] = {
+ &I034_090_RNG,
+ &I034_090_AZM,
+ NULL
+};
+static const AsterixField I034_090 = { FIXED, 2, 0, 0, &hf_034_090, I034_090_PARTS, { NULL } };
+static int hf_034_100 = -1;
+static int hf_034_100_RHOST = -1;
+static const FieldPart I034_100_RHOST = { 16, 0.00390625, FIELD_PART_UFLOAT, &hf_034_100_RHOST, NULL };
+static int hf_034_100_RHOEND = -1;
+static const FieldPart I034_100_RHOEND = { 16, 0.00390625, FIELD_PART_UFLOAT, &hf_034_100_RHOEND, NULL };
+static int hf_034_100_THETAST = -1;
+static const FieldPart I034_100_THETAST = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_034_100_THETAST, NULL };
+static int hf_034_100_THETAEND = -1;
+static const FieldPart I034_100_THETAEND = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_034_100_THETAEND, NULL };
+static const FieldPart *I034_100_PARTS[] = {
+ &I034_100_RHOST,
+ &I034_100_RHOEND,
+ &I034_100_THETAST,
+ &I034_100_THETAEND,
+ NULL
+};
+static const AsterixField I034_100 = { FIXED, 8, 0, 0, &hf_034_100, I034_100_PARTS, { NULL } };
+static int hf_034_110 = -1;
+static int hf_034_110_VALUE = -1;
+static const value_string valstr_034_110_VALUE[] = {
+ { 0, "Invalid value" },
+ { 1, "Filter for Weather data" },
+ { 2, "Filter for Jamming Strobe" },
+ { 3, "Filter for PSR data" },
+ { 4, "Filter for SSR/Mode S data" },
+ { 5, "Filter for SSR/Mode S + PSR data" },
+ { 6, "Enhanced Surveillance data" },
+ { 7, "Filter for PSR+Enhanced Surveillance data" },
+ { 8, "Filter for PSR+Enhanced Surveillance + SSR/Mode S data not in Area of Prime Interest" },
+ { 9, "Filter for PSR+Enhanced Surveillance + all SSR/Mode S data" },
+ { 0, NULL }
+};
+static const FieldPart I034_110_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_034_110_VALUE, NULL };
+static const FieldPart *I034_110_PARTS[] = {
+ &I034_110_VALUE,
+ NULL
+};
+static const AsterixField I034_110 = { FIXED, 1, 0, 0, &hf_034_110, I034_110_PARTS, { NULL } };
+static int hf_034_120 = -1;
+static int hf_034_120_HGT = -1;
+static const FieldPart I034_120_HGT = { 16, 1.0, FIELD_PART_UFLOAT, &hf_034_120_HGT, NULL };
+static int hf_034_120_LAT = -1;
+static const FieldPart I034_120_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_034_120_LAT, NULL };
+static int hf_034_120_LON = -1;
+static const FieldPart I034_120_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_034_120_LON, NULL };
+static const FieldPart *I034_120_PARTS[] = {
+ &I034_120_HGT,
+ &I034_120_LAT,
+ &I034_120_LON,
+ NULL
+};
+static const AsterixField I034_120 = { FIXED, 8, 0, 0, &hf_034_120, I034_120_PARTS, { NULL } };
+static int hf_034_RE = -1;
+static const AsterixField I034_RE = { EXP, 0, 0, 1, &hf_034_RE, NULL, { NULL } };
+static int hf_034_SP = -1;
+static const AsterixField I034_SP = { EXP, 0, 0, 1, &hf_034_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I034_V1_29_uap[] = {
+ &I034_V1_29_010,
+ &I034_V1_29_000,
+ &I034_V1_29_030,
+ &I034_V1_29_020,
+ &I034_V1_29_041,
+ &I034_V1_29_050,
+ &I034_V1_29_060,
+ &I034_V1_29_070,
+ &I034_V1_29_100,
+ &I034_V1_29_110,
+ &I034_V1_29_120,
+ &I034_V1_29_090,
+ &I034_V1_29_RE,
+ &I034_V1_29_SP,
+ NULL
+};
+static const AsterixField **I034_V1_29[] = {
+ I034_V1_29_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I034_uap[] = {
+ &I034_010,
+ &I034_000,
+ &I034_030,
+ &I034_020,
+ &I034_041,
+ &I034_050,
+ &I034_060,
+ &I034_070,
+ &I034_100,
+ &I034_110,
+ &I034_120,
+ &I034_090,
+ &I034_RE,
+ &I034_SP,
+ NULL
+};
+static const AsterixField **I034[] = {
+ I034_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 048, edition 1.27 */
+static int hf_048_V1_27_010 = -1;
+static int hf_048_V1_27_010_SAC = -1;
+static const FieldPart I048_V1_27_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_048_V1_27_010_SAC, NULL };
+static int hf_048_V1_27_010_SIC = -1;
+static const FieldPart I048_V1_27_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_048_V1_27_010_SIC, NULL };
+static const FieldPart *I048_V1_27_010_PARTS[] = {
+ &I048_V1_27_010_SAC,
+ &I048_V1_27_010_SIC,
+ NULL
+};
+static const AsterixField I048_V1_27_010 = { FIXED, 2, 0, 0, &hf_048_V1_27_010, I048_V1_27_010_PARTS, { NULL } };
+static int hf_048_V1_27_020 = -1;
+static int hf_048_V1_27_020_TYP = -1;
+static const value_string valstr_048_V1_27_020_TYP[] = {
+ { 0, "No detection" },
+ { 1, "Single PSR detection" },
+ { 2, "Single SSR detection" },
+ { 3, "SSR + PSR detection" },
+ { 4, "Single ModeS All-Call" },
+ { 5, "Single ModeS Roll-Call" },
+ { 6, "ModeS All-Call + PSR" },
+ { 7, "ModeS Roll-Call +PSR" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_020_TYP = { 3, 1.0, FIELD_PART_UINT, &hf_048_V1_27_020_TYP, NULL };
+static int hf_048_V1_27_020_SIM = -1;
+static const value_string valstr_048_V1_27_020_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_020_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_020_SIM, NULL };
+static int hf_048_V1_27_020_RDP = -1;
+static const value_string valstr_048_V1_27_020_RDP[] = {
+ { 0, "Report from RDP Chain 1" },
+ { 1, "Report from RDP Chain 2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_020_RDP = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_020_RDP, NULL };
+static int hf_048_V1_27_020_SPI = -1;
+static const value_string valstr_048_V1_27_020_SPI[] = {
+ { 0, "Absence of SPI" },
+ { 1, "Special Position Identification" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_020_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_020_SPI, NULL };
+static int hf_048_V1_27_020_RAB = -1;
+static const value_string valstr_048_V1_27_020_RAB[] = {
+ { 0, "Report from aircraft transponder" },
+ { 1, "Report from field monitor (fixed transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_020_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_020_RAB, NULL };
+static int hf_048_V1_27_020_TST = -1;
+static const value_string valstr_048_V1_27_020_TST[] = {
+ { 0, "Real target report" },
+ { 1, "Test target report" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_020_TST = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_020_TST, NULL };
+static int hf_048_V1_27_020_ERR = -1;
+static const value_string valstr_048_V1_27_020_ERR[] = {
+ { 0, "No Extended Range" },
+ { 1, "Extended Range present" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_020_ERR = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_020_ERR, NULL };
+static int hf_048_V1_27_020_XPP = -1;
+static const value_string valstr_048_V1_27_020_XPP[] = {
+ { 0, "No X-Pulse present" },
+ { 1, "X-Pulse present" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_020_XPP = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_020_XPP, NULL };
+static int hf_048_V1_27_020_ME = -1;
+static const value_string valstr_048_V1_27_020_ME[] = {
+ { 0, "No military emergency" },
+ { 1, "Military emergency" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_020_ME = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_020_ME, NULL };
+static int hf_048_V1_27_020_MI = -1;
+static const value_string valstr_048_V1_27_020_MI[] = {
+ { 0, "No military identification" },
+ { 1, "Military identification" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_020_MI = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_020_MI, NULL };
+static int hf_048_V1_27_020_FOEFRI = -1;
+static const value_string valstr_048_V1_27_020_FOEFRI[] = {
+ { 0, "No Mode 4 interrogation" },
+ { 1, "Friendly target" },
+ { 2, "Unknown target" },
+ { 3, "No reply" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_020_FOEFRI = { 2, 1.0, FIELD_PART_UINT, &hf_048_V1_27_020_FOEFRI, NULL };
+static const FieldPart *I048_V1_27_020_PARTS[] = {
+ &I048_V1_27_020_TYP,
+ &I048_V1_27_020_SIM,
+ &I048_V1_27_020_RDP,
+ &I048_V1_27_020_SPI,
+ &I048_V1_27_020_RAB,
+ &IXXX_FX,
+ &I048_V1_27_020_TST,
+ &I048_V1_27_020_ERR,
+ &I048_V1_27_020_XPP,
+ &I048_V1_27_020_ME,
+ &I048_V1_27_020_MI,
+ &I048_V1_27_020_FOEFRI,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I048_V1_27_020 = { FX, 1, 0, 0, &hf_048_V1_27_020, I048_V1_27_020_PARTS, { NULL } };
+static int hf_048_V1_27_030 = -1;
+static int hf_048_V1_27_030_Subitem = -1;
+static const value_string valstr_048_V1_27_030_Subitem[] = {
+ { 0, "Not defined; never used" },
+ { 1, "Multipath Reply (Reflection)" },
+ { 2, "Reply due to sidelobe interrogation/reception" },
+ { 3, "Split plot" },
+ { 4, "Second time around reply" },
+ { 5, "Angel" },
+ { 6, "Slow moving target correlated with road infrastructure (terrestrial vehicle)" },
+ { 7, "Fixed PSR plot" },
+ { 8, "Slow PSR target" },
+ { 9, "Low quality PSR plot" },
+ { 10, "Phantom SSR plot" },
+ { 11, "Non-Matching Mode-3/A Code" },
+ { 12, "Mode C code / Mode S altitude code abnormal value compared to the track" },
+ { 13, "Target in Clutter Area" },
+ { 14, "Maximum Doppler Response in Zero Filter" },
+ { 15, "Transponder anomaly detected" },
+ { 16, "Duplicated or Illegal Mode S Aircraft Address" },
+ { 17, "Mode S error correction applied" },
+ { 18, "Undecodable Mode C code / Mode S altitude code" },
+ { 19, "Birds" },
+ { 20, "Flock of Birds" },
+ { 21, "Mode-1 was present in original reply" },
+ { 22, "Mode-2 was present in original reply" },
+ { 23, "Plot potentially caused by Wind Turbine" },
+ { 24, "Helicopter" },
+ { 25, "Maximum number of re-interrogations reached (surveillance information)" },
+ { 26, "Maximum number of re-interrogations reached (BDS Extractions)" },
+ { 27, "BDS Overlay Incoherence" },
+ { 28, "Potential BDS Swap Detected" },
+ { 29, "Track Update in the Zenithal Gap" },
+ { 30, "Mode S Track re-acquired" },
+ { 31, "Duplicated Mode 5 Pair NO/PIN detected" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_030_Subitem = { 7, 1.0, FIELD_PART_UINT, &hf_048_V1_27_030_Subitem, NULL };
+static const FieldPart *I048_V1_27_030_PARTS[] = {
+ &I048_V1_27_030_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I048_V1_27_030 = { FX, 1, 0, 0, &hf_048_V1_27_030, I048_V1_27_030_PARTS, { NULL } };
+static int hf_048_V1_27_040 = -1;
+static int hf_048_V1_27_040_RHO = -1;
+static const FieldPart I048_V1_27_040_RHO = { 16, 0.00390625, FIELD_PART_UFLOAT, &hf_048_V1_27_040_RHO, NULL };
+static int hf_048_V1_27_040_THETA = -1;
+static const FieldPart I048_V1_27_040_THETA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_048_V1_27_040_THETA, NULL };
+static const FieldPart *I048_V1_27_040_PARTS[] = {
+ &I048_V1_27_040_RHO,
+ &I048_V1_27_040_THETA,
+ NULL
+};
+static const AsterixField I048_V1_27_040 = { FIXED, 4, 0, 0, &hf_048_V1_27_040, I048_V1_27_040_PARTS, { NULL } };
+static int hf_048_V1_27_042 = -1;
+static int hf_048_V1_27_042_X = -1;
+static const FieldPart I048_V1_27_042_X = { 16, 0.0078125, FIELD_PART_FLOAT, &hf_048_V1_27_042_X, NULL };
+static int hf_048_V1_27_042_Y = -1;
+static const FieldPart I048_V1_27_042_Y = { 16, 0.0078125, FIELD_PART_FLOAT, &hf_048_V1_27_042_Y, NULL };
+static const FieldPart *I048_V1_27_042_PARTS[] = {
+ &I048_V1_27_042_X,
+ &I048_V1_27_042_Y,
+ NULL
+};
+static const AsterixField I048_V1_27_042 = { FIXED, 4, 0, 0, &hf_048_V1_27_042, I048_V1_27_042_PARTS, { NULL } };
+static int hf_048_V1_27_050 = -1;
+static int hf_048_V1_27_050_V = -1;
+static const value_string valstr_048_V1_27_050_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_050_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_050_V, NULL };
+static int hf_048_V1_27_050_G = -1;
+static const value_string valstr_048_V1_27_050_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_050_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_050_G, NULL };
+static int hf_048_V1_27_050_L = -1;
+static const value_string valstr_048_V1_27_050_L[] = {
+ { 0, "Mode-2 code as derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-2 code as provided by a local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_050_L = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_050_L, NULL };
+static int hf_048_V1_27_050_MODE2 = -1;
+static const FieldPart I048_V1_27_050_MODE2 = { 12, 1.0, FIELD_PART_SQUAWK, &hf_048_V1_27_050_MODE2, NULL };
+static const FieldPart *I048_V1_27_050_PARTS[] = {
+ &I048_V1_27_050_V,
+ &I048_V1_27_050_G,
+ &I048_V1_27_050_L,
+ &IXXX_1bit_spare,
+ &I048_V1_27_050_MODE2,
+ NULL
+};
+static const AsterixField I048_V1_27_050 = { FIXED, 2, 0, 0, &hf_048_V1_27_050, I048_V1_27_050_PARTS, { NULL } };
+static int hf_048_V1_27_055 = -1;
+static int hf_048_V1_27_055_V = -1;
+static const value_string valstr_048_V1_27_055_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_055_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_055_V, NULL };
+static int hf_048_V1_27_055_G = -1;
+static const value_string valstr_048_V1_27_055_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_055_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_055_G, NULL };
+static int hf_048_V1_27_055_L = -1;
+static const value_string valstr_048_V1_27_055_L[] = {
+ { 0, "Mode-1 code as derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-1 code as provided by a local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_055_L = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_055_L, NULL };
+static int hf_048_V1_27_055_MODE1 = -1;
+static const FieldPart I048_V1_27_055_MODE1 = { 5, 1.0, FIELD_PART_HEX, &hf_048_V1_27_055_MODE1, NULL };
+static const FieldPart *I048_V1_27_055_PARTS[] = {
+ &I048_V1_27_055_V,
+ &I048_V1_27_055_G,
+ &I048_V1_27_055_L,
+ &I048_V1_27_055_MODE1,
+ NULL
+};
+static const AsterixField I048_V1_27_055 = { FIXED, 1, 0, 0, &hf_048_V1_27_055, I048_V1_27_055_PARTS, { NULL } };
+static int hf_048_V1_27_060 = -1;
+static int hf_048_V1_27_060_QA4 = -1;
+static const value_string valstr_048_V1_27_060_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_060_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_060_QA4, NULL };
+static int hf_048_V1_27_060_QA2 = -1;
+static const value_string valstr_048_V1_27_060_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_060_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_060_QA2, NULL };
+static int hf_048_V1_27_060_QA1 = -1;
+static const value_string valstr_048_V1_27_060_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_060_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_060_QA1, NULL };
+static int hf_048_V1_27_060_QB4 = -1;
+static const value_string valstr_048_V1_27_060_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_060_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_060_QB4, NULL };
+static int hf_048_V1_27_060_QB2 = -1;
+static const value_string valstr_048_V1_27_060_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_060_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_060_QB2, NULL };
+static int hf_048_V1_27_060_QB1 = -1;
+static const value_string valstr_048_V1_27_060_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_060_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_060_QB1, NULL };
+static int hf_048_V1_27_060_QC4 = -1;
+static const value_string valstr_048_V1_27_060_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_060_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_060_QC4, NULL };
+static int hf_048_V1_27_060_QC2 = -1;
+static const value_string valstr_048_V1_27_060_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_060_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_060_QC2, NULL };
+static int hf_048_V1_27_060_QC1 = -1;
+static const value_string valstr_048_V1_27_060_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_060_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_060_QC1, NULL };
+static int hf_048_V1_27_060_QD4 = -1;
+static const value_string valstr_048_V1_27_060_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_060_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_060_QD4, NULL };
+static int hf_048_V1_27_060_QD2 = -1;
+static const value_string valstr_048_V1_27_060_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_060_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_060_QD2, NULL };
+static int hf_048_V1_27_060_QD1 = -1;
+static const value_string valstr_048_V1_27_060_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_060_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_060_QD1, NULL };
+static const FieldPart *I048_V1_27_060_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I048_V1_27_060_QA4,
+ &I048_V1_27_060_QA2,
+ &I048_V1_27_060_QA1,
+ &I048_V1_27_060_QB4,
+ &I048_V1_27_060_QB2,
+ &I048_V1_27_060_QB1,
+ &I048_V1_27_060_QC4,
+ &I048_V1_27_060_QC2,
+ &I048_V1_27_060_QC1,
+ &I048_V1_27_060_QD4,
+ &I048_V1_27_060_QD2,
+ &I048_V1_27_060_QD1,
+ NULL
+};
+static const AsterixField I048_V1_27_060 = { FIXED, 2, 0, 0, &hf_048_V1_27_060, I048_V1_27_060_PARTS, { NULL } };
+static int hf_048_V1_27_065 = -1;
+static int hf_048_V1_27_065_QA4 = -1;
+static const value_string valstr_048_V1_27_065_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_065_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_065_QA4, NULL };
+static int hf_048_V1_27_065_QA2 = -1;
+static const value_string valstr_048_V1_27_065_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_065_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_065_QA2, NULL };
+static int hf_048_V1_27_065_QA1 = -1;
+static const value_string valstr_048_V1_27_065_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_065_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_065_QA1, NULL };
+static int hf_048_V1_27_065_QB2 = -1;
+static const value_string valstr_048_V1_27_065_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_065_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_065_QB2, NULL };
+static int hf_048_V1_27_065_QB1 = -1;
+static const value_string valstr_048_V1_27_065_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_065_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_065_QB1, NULL };
+static const FieldPart *I048_V1_27_065_PARTS[] = {
+ &IXXX_3bit_spare,
+ &I048_V1_27_065_QA4,
+ &I048_V1_27_065_QA2,
+ &I048_V1_27_065_QA1,
+ &I048_V1_27_065_QB2,
+ &I048_V1_27_065_QB1,
+ NULL
+};
+static const AsterixField I048_V1_27_065 = { FIXED, 1, 0, 0, &hf_048_V1_27_065, I048_V1_27_065_PARTS, { NULL } };
+static int hf_048_V1_27_070 = -1;
+static int hf_048_V1_27_070_V = -1;
+static const value_string valstr_048_V1_27_070_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_070_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_070_V, NULL };
+static int hf_048_V1_27_070_G = -1;
+static const value_string valstr_048_V1_27_070_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_070_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_070_G, NULL };
+static int hf_048_V1_27_070_L = -1;
+static const value_string valstr_048_V1_27_070_L[] = {
+ { 0, "Mode-3/A code derived from the reply of the transponder" },
+ { 1, "Mode-3/A code not extracted during the last scan" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_070_L = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_070_L, NULL };
+static int hf_048_V1_27_070_MODE3A = -1;
+static const FieldPart I048_V1_27_070_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_048_V1_27_070_MODE3A, NULL };
+static const FieldPart *I048_V1_27_070_PARTS[] = {
+ &I048_V1_27_070_V,
+ &I048_V1_27_070_G,
+ &I048_V1_27_070_L,
+ &IXXX_1bit_spare,
+ &I048_V1_27_070_MODE3A,
+ NULL
+};
+static const AsterixField I048_V1_27_070 = { FIXED, 2, 0, 0, &hf_048_V1_27_070, I048_V1_27_070_PARTS, { NULL } };
+static int hf_048_V1_27_080 = -1;
+static int hf_048_V1_27_080_QA4 = -1;
+static const value_string valstr_048_V1_27_080_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_080_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_080_QA4, NULL };
+static int hf_048_V1_27_080_QA2 = -1;
+static const value_string valstr_048_V1_27_080_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_080_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_080_QA2, NULL };
+static int hf_048_V1_27_080_QA1 = -1;
+static const value_string valstr_048_V1_27_080_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_080_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_080_QA1, NULL };
+static int hf_048_V1_27_080_QB4 = -1;
+static const value_string valstr_048_V1_27_080_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_080_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_080_QB4, NULL };
+static int hf_048_V1_27_080_QB2 = -1;
+static const value_string valstr_048_V1_27_080_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_080_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_080_QB2, NULL };
+static int hf_048_V1_27_080_QB1 = -1;
+static const value_string valstr_048_V1_27_080_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_080_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_080_QB1, NULL };
+static int hf_048_V1_27_080_QC4 = -1;
+static const value_string valstr_048_V1_27_080_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_080_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_080_QC4, NULL };
+static int hf_048_V1_27_080_QC2 = -1;
+static const value_string valstr_048_V1_27_080_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_080_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_080_QC2, NULL };
+static int hf_048_V1_27_080_QC1 = -1;
+static const value_string valstr_048_V1_27_080_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_080_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_080_QC1, NULL };
+static int hf_048_V1_27_080_QD4 = -1;
+static const value_string valstr_048_V1_27_080_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_080_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_080_QD4, NULL };
+static int hf_048_V1_27_080_QD2 = -1;
+static const value_string valstr_048_V1_27_080_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_080_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_080_QD2, NULL };
+static int hf_048_V1_27_080_QD1 = -1;
+static const value_string valstr_048_V1_27_080_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_080_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_080_QD1, NULL };
+static const FieldPart *I048_V1_27_080_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I048_V1_27_080_QA4,
+ &I048_V1_27_080_QA2,
+ &I048_V1_27_080_QA1,
+ &I048_V1_27_080_QB4,
+ &I048_V1_27_080_QB2,
+ &I048_V1_27_080_QB1,
+ &I048_V1_27_080_QC4,
+ &I048_V1_27_080_QC2,
+ &I048_V1_27_080_QC1,
+ &I048_V1_27_080_QD4,
+ &I048_V1_27_080_QD2,
+ &I048_V1_27_080_QD1,
+ NULL
+};
+static const AsterixField I048_V1_27_080 = { FIXED, 2, 0, 0, &hf_048_V1_27_080, I048_V1_27_080_PARTS, { NULL } };
+static int hf_048_V1_27_090 = -1;
+static int hf_048_V1_27_090_V = -1;
+static const value_string valstr_048_V1_27_090_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_090_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_090_V, NULL };
+static int hf_048_V1_27_090_G = -1;
+static const value_string valstr_048_V1_27_090_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_090_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_090_G, NULL };
+static int hf_048_V1_27_090_FL = -1;
+static const FieldPart I048_V1_27_090_FL = { 14, 0.25, FIELD_PART_UFLOAT, &hf_048_V1_27_090_FL, NULL };
+static const FieldPart *I048_V1_27_090_PARTS[] = {
+ &I048_V1_27_090_V,
+ &I048_V1_27_090_G,
+ &I048_V1_27_090_FL,
+ NULL
+};
+static const AsterixField I048_V1_27_090 = { FIXED, 2, 0, 0, &hf_048_V1_27_090, I048_V1_27_090_PARTS, { NULL } };
+static int hf_048_V1_27_100 = -1;
+static int hf_048_V1_27_100_V = -1;
+static const value_string valstr_048_V1_27_100_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_100_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_100_V, NULL };
+static int hf_048_V1_27_100_G = -1;
+static const value_string valstr_048_V1_27_100_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_100_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_100_G, NULL };
+static int hf_048_V1_27_100_MODEC = -1;
+static const FieldPart I048_V1_27_100_MODEC = { 12, 1.0, FIELD_PART_HEX, &hf_048_V1_27_100_MODEC, NULL };
+static int hf_048_V1_27_100_QC1 = -1;
+static const value_string valstr_048_V1_27_100_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_100_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_100_QC1, NULL };
+static int hf_048_V1_27_100_QA1 = -1;
+static const value_string valstr_048_V1_27_100_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_100_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_100_QA1, NULL };
+static int hf_048_V1_27_100_QC2 = -1;
+static const value_string valstr_048_V1_27_100_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_100_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_100_QC2, NULL };
+static int hf_048_V1_27_100_QA2 = -1;
+static const value_string valstr_048_V1_27_100_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_100_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_100_QA2, NULL };
+static int hf_048_V1_27_100_QC4 = -1;
+static const value_string valstr_048_V1_27_100_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_100_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_100_QC4, NULL };
+static int hf_048_V1_27_100_QA4 = -1;
+static const value_string valstr_048_V1_27_100_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_100_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_100_QA4, NULL };
+static int hf_048_V1_27_100_QB1 = -1;
+static const value_string valstr_048_V1_27_100_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_100_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_100_QB1, NULL };
+static int hf_048_V1_27_100_QD1 = -1;
+static const value_string valstr_048_V1_27_100_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_100_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_100_QD1, NULL };
+static int hf_048_V1_27_100_QB2 = -1;
+static const value_string valstr_048_V1_27_100_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_100_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_100_QB2, NULL };
+static int hf_048_V1_27_100_QD2 = -1;
+static const value_string valstr_048_V1_27_100_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_100_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_100_QD2, NULL };
+static int hf_048_V1_27_100_QB4 = -1;
+static const value_string valstr_048_V1_27_100_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_100_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_100_QB4, NULL };
+static int hf_048_V1_27_100_QD4 = -1;
+static const value_string valstr_048_V1_27_100_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_100_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_100_QD4, NULL };
+static const FieldPart *I048_V1_27_100_PARTS[] = {
+ &I048_V1_27_100_V,
+ &I048_V1_27_100_G,
+ &IXXX_2bit_spare,
+ &I048_V1_27_100_MODEC,
+ &IXXX_4bit_spare,
+ &I048_V1_27_100_QC1,
+ &I048_V1_27_100_QA1,
+ &I048_V1_27_100_QC2,
+ &I048_V1_27_100_QA2,
+ &I048_V1_27_100_QC4,
+ &I048_V1_27_100_QA4,
+ &I048_V1_27_100_QB1,
+ &I048_V1_27_100_QD1,
+ &I048_V1_27_100_QB2,
+ &I048_V1_27_100_QD2,
+ &I048_V1_27_100_QB4,
+ &I048_V1_27_100_QD4,
+ NULL
+};
+static const AsterixField I048_V1_27_100 = { FIXED, 4, 0, 0, &hf_048_V1_27_100, I048_V1_27_100_PARTS, { NULL } };
+static int hf_048_V1_27_110 = -1;
+static int hf_048_V1_27_110_3DH = -1;
+static const FieldPart I048_V1_27_110_3DH = { 14, 25.0, FIELD_PART_FLOAT, &hf_048_V1_27_110_3DH, NULL };
+static const FieldPart *I048_V1_27_110_PARTS[] = {
+ &IXXX_2bit_spare,
+ &I048_V1_27_110_3DH,
+ NULL
+};
+static const AsterixField I048_V1_27_110 = { FIXED, 2, 0, 0, &hf_048_V1_27_110, I048_V1_27_110_PARTS, { NULL } };
+static int hf_048_V1_27_120 = -1;
+static int hf_048_V1_27_120_CAL = -1;
+static int hf_048_V1_27_120_CAL_D = -1;
+static const value_string valstr_048_V1_27_120_CAL_D[] = {
+ { 0, "Doppler speed is valid" },
+ { 1, "Doppler speed is doubtful" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_120_CAL_D = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_120_CAL_D, NULL };
+static int hf_048_V1_27_120_CAL_CAL = -1;
+static const FieldPart I048_V1_27_120_CAL_CAL = { 10, 1.0, FIELD_PART_FLOAT, &hf_048_V1_27_120_CAL_CAL, NULL };
+static const FieldPart *I048_V1_27_120_CAL_PARTS[] = {
+ &I048_V1_27_120_CAL_D,
+ &IXXX_5bit_spare,
+ &I048_V1_27_120_CAL_CAL,
+ NULL
+};
+static const AsterixField I048_V1_27_120_CAL = { FIXED, 2, 0, 0, &hf_048_V1_27_120_CAL, I048_V1_27_120_CAL_PARTS, { NULL } };
+static int hf_048_V1_27_120_RDS = -1;
+static int hf_048_V1_27_120_RDS_DOP = -1;
+static const FieldPart I048_V1_27_120_RDS_DOP = { 16, 1.0, FIELD_PART_UFLOAT, &hf_048_V1_27_120_RDS_DOP, NULL };
+static int hf_048_V1_27_120_RDS_AMB = -1;
+static const FieldPart I048_V1_27_120_RDS_AMB = { 16, 1.0, FIELD_PART_UFLOAT, &hf_048_V1_27_120_RDS_AMB, NULL };
+static int hf_048_V1_27_120_RDS_FRQ = -1;
+static const FieldPart I048_V1_27_120_RDS_FRQ = { 16, 1.0, FIELD_PART_UFLOAT, &hf_048_V1_27_120_RDS_FRQ, NULL };
+static const FieldPart *I048_V1_27_120_RDS_PARTS[] = {
+ &I048_V1_27_120_RDS_DOP,
+ &I048_V1_27_120_RDS_AMB,
+ &I048_V1_27_120_RDS_FRQ,
+ NULL
+};
+static const AsterixField I048_V1_27_120_RDS = { REPETITIVE, 6, 1, 0, &hf_048_V1_27_120_RDS, I048_V1_27_120_RDS_PARTS, { NULL } };
+static const AsterixField I048_V1_27_120 = { COMPOUND, 0, 0, 0, &hf_048_V1_27_120, NULL, { &I048_V1_27_120_CAL, &I048_V1_27_120_RDS, NULL } };
+static int hf_048_V1_27_130 = -1;
+static int hf_048_V1_27_130_SRL = -1;
+static int hf_048_V1_27_130_SRL_VALUE = -1;
+static const FieldPart I048_V1_27_130_SRL_VALUE = { 8, 0.0439453125, FIELD_PART_UFLOAT, &hf_048_V1_27_130_SRL_VALUE, NULL };
+static const FieldPart *I048_V1_27_130_SRL_PARTS[] = {
+ &I048_V1_27_130_SRL_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_27_130_SRL = { FIXED, 1, 0, 0, &hf_048_V1_27_130_SRL, I048_V1_27_130_SRL_PARTS, { NULL } };
+static int hf_048_V1_27_130_SRR = -1;
+static int hf_048_V1_27_130_SRR_VALUE = -1;
+static const FieldPart I048_V1_27_130_SRR_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_048_V1_27_130_SRR_VALUE, NULL };
+static const FieldPart *I048_V1_27_130_SRR_PARTS[] = {
+ &I048_V1_27_130_SRR_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_27_130_SRR = { FIXED, 1, 0, 0, &hf_048_V1_27_130_SRR, I048_V1_27_130_SRR_PARTS, { NULL } };
+static int hf_048_V1_27_130_SAM = -1;
+static int hf_048_V1_27_130_SAM_VALUE = -1;
+static const FieldPart I048_V1_27_130_SAM_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_048_V1_27_130_SAM_VALUE, NULL };
+static const FieldPart *I048_V1_27_130_SAM_PARTS[] = {
+ &I048_V1_27_130_SAM_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_27_130_SAM = { FIXED, 1, 0, 0, &hf_048_V1_27_130_SAM, I048_V1_27_130_SAM_PARTS, { NULL } };
+static int hf_048_V1_27_130_PRL = -1;
+static int hf_048_V1_27_130_PRL_VALUE = -1;
+static const FieldPart I048_V1_27_130_PRL_VALUE = { 8, 0.0439453125, FIELD_PART_UFLOAT, &hf_048_V1_27_130_PRL_VALUE, NULL };
+static const FieldPart *I048_V1_27_130_PRL_PARTS[] = {
+ &I048_V1_27_130_PRL_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_27_130_PRL = { FIXED, 1, 0, 0, &hf_048_V1_27_130_PRL, I048_V1_27_130_PRL_PARTS, { NULL } };
+static int hf_048_V1_27_130_PAM = -1;
+static int hf_048_V1_27_130_PAM_VALUE = -1;
+static const FieldPart I048_V1_27_130_PAM_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_048_V1_27_130_PAM_VALUE, NULL };
+static const FieldPart *I048_V1_27_130_PAM_PARTS[] = {
+ &I048_V1_27_130_PAM_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_27_130_PAM = { FIXED, 1, 0, 0, &hf_048_V1_27_130_PAM, I048_V1_27_130_PAM_PARTS, { NULL } };
+static int hf_048_V1_27_130_RPD = -1;
+static int hf_048_V1_27_130_RPD_VALUE = -1;
+static const FieldPart I048_V1_27_130_RPD_VALUE = { 8, 0.00390625, FIELD_PART_FLOAT, &hf_048_V1_27_130_RPD_VALUE, NULL };
+static const FieldPart *I048_V1_27_130_RPD_PARTS[] = {
+ &I048_V1_27_130_RPD_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_27_130_RPD = { FIXED, 1, 0, 0, &hf_048_V1_27_130_RPD, I048_V1_27_130_RPD_PARTS, { NULL } };
+static int hf_048_V1_27_130_APD = -1;
+static int hf_048_V1_27_130_APD_VALUE = -1;
+static const FieldPart I048_V1_27_130_APD_VALUE = { 8, 0.02197265625, FIELD_PART_FLOAT, &hf_048_V1_27_130_APD_VALUE, NULL };
+static const FieldPart *I048_V1_27_130_APD_PARTS[] = {
+ &I048_V1_27_130_APD_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_27_130_APD = { FIXED, 1, 0, 0, &hf_048_V1_27_130_APD, I048_V1_27_130_APD_PARTS, { NULL } };
+static const AsterixField I048_V1_27_130 = { COMPOUND, 0, 0, 0, &hf_048_V1_27_130, NULL, { &I048_V1_27_130_SRL, &I048_V1_27_130_SRR, &I048_V1_27_130_SAM, &I048_V1_27_130_PRL, &I048_V1_27_130_PAM, &I048_V1_27_130_RPD, &I048_V1_27_130_APD, NULL } };
+static int hf_048_V1_27_140 = -1;
+static int hf_048_V1_27_140_VALUE = -1;
+static const FieldPart I048_V1_27_140_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_048_V1_27_140_VALUE, NULL };
+static const FieldPart *I048_V1_27_140_PARTS[] = {
+ &I048_V1_27_140_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_27_140 = { FIXED, 3, 0, 0, &hf_048_V1_27_140, I048_V1_27_140_PARTS, { NULL } };
+static int hf_048_V1_27_161 = -1;
+static int hf_048_V1_27_161_TRN = -1;
+static const FieldPart I048_V1_27_161_TRN = { 12, 1.0, FIELD_PART_HEX, &hf_048_V1_27_161_TRN, NULL };
+static const FieldPart *I048_V1_27_161_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I048_V1_27_161_TRN,
+ NULL
+};
+static const AsterixField I048_V1_27_161 = { FIXED, 2, 0, 0, &hf_048_V1_27_161, I048_V1_27_161_PARTS, { NULL } };
+static int hf_048_V1_27_170 = -1;
+static int hf_048_V1_27_170_CNF = -1;
+static const value_string valstr_048_V1_27_170_CNF[] = {
+ { 0, "Confirmed Track" },
+ { 1, "Tentative Track" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_170_CNF = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_170_CNF, NULL };
+static int hf_048_V1_27_170_RAD = -1;
+static const value_string valstr_048_V1_27_170_RAD[] = {
+ { 0, "Combined Track" },
+ { 1, "PSR Track" },
+ { 2, "SSR/Mode S Track" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_170_RAD = { 2, 1.0, FIELD_PART_UINT, &hf_048_V1_27_170_RAD, NULL };
+static int hf_048_V1_27_170_DOU = -1;
+static const value_string valstr_048_V1_27_170_DOU[] = {
+ { 0, "Normal confidence" },
+ { 1, "Low confidence in plot to track association" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_170_DOU = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_170_DOU, NULL };
+static int hf_048_V1_27_170_MAH = -1;
+static const value_string valstr_048_V1_27_170_MAH[] = {
+ { 0, "No horizontal man.sensed" },
+ { 1, "Horizontal man. sensed" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_170_MAH = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_170_MAH, NULL };
+static int hf_048_V1_27_170_CDM = -1;
+static const value_string valstr_048_V1_27_170_CDM[] = {
+ { 0, "Maintaining" },
+ { 1, "Climbing" },
+ { 2, "Descending" },
+ { 3, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_170_CDM = { 2, 1.0, FIELD_PART_UINT, &hf_048_V1_27_170_CDM, NULL };
+static int hf_048_V1_27_170_TRE = -1;
+static const value_string valstr_048_V1_27_170_TRE[] = {
+ { 0, "Track still alive" },
+ { 1, "End of track lifetime(last report for this track)" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_170_TRE = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_170_TRE, NULL };
+static int hf_048_V1_27_170_GHO = -1;
+static const value_string valstr_048_V1_27_170_GHO[] = {
+ { 0, "True target track" },
+ { 1, "Ghost target track" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_170_GHO = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_170_GHO, NULL };
+static int hf_048_V1_27_170_SUP = -1;
+static const value_string valstr_048_V1_27_170_SUP[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_170_SUP = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_170_SUP, NULL };
+static int hf_048_V1_27_170_TCC = -1;
+static const value_string valstr_048_V1_27_170_TCC[] = {
+ { 0, "Tracking performed in so-called \'Radar Plane\', i.e. neither slant range correction nor stereographical projection was applied" },
+ { 1, "Slant range correction and a suitable projection technique are used to track in a 2D.reference plane, tangential to the earth model at the Radar Site co-ordinates" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_170_TCC = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_170_TCC, NULL };
+static const FieldPart *I048_V1_27_170_PARTS[] = {
+ &I048_V1_27_170_CNF,
+ &I048_V1_27_170_RAD,
+ &I048_V1_27_170_DOU,
+ &I048_V1_27_170_MAH,
+ &I048_V1_27_170_CDM,
+ &IXXX_FX,
+ &I048_V1_27_170_TRE,
+ &I048_V1_27_170_GHO,
+ &I048_V1_27_170_SUP,
+ &I048_V1_27_170_TCC,
+ &IXXX_3bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I048_V1_27_170 = { FX, 1, 0, 0, &hf_048_V1_27_170, I048_V1_27_170_PARTS, { NULL } };
+static int hf_048_V1_27_200 = -1;
+static int hf_048_V1_27_200_GSP = -1;
+static const FieldPart I048_V1_27_200_GSP = { 16, 0.00006103515625, FIELD_PART_UFLOAT, &hf_048_V1_27_200_GSP, NULL };
+static int hf_048_V1_27_200_HDG = -1;
+static const FieldPart I048_V1_27_200_HDG = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_048_V1_27_200_HDG, NULL };
+static const FieldPart *I048_V1_27_200_PARTS[] = {
+ &I048_V1_27_200_GSP,
+ &I048_V1_27_200_HDG,
+ NULL
+};
+static const AsterixField I048_V1_27_200 = { FIXED, 4, 0, 0, &hf_048_V1_27_200, I048_V1_27_200_PARTS, { NULL } };
+static int hf_048_V1_27_210 = -1;
+static int hf_048_V1_27_210_SIGX = -1;
+static const FieldPart I048_V1_27_210_SIGX = { 8, 0.0078125, FIELD_PART_UFLOAT, &hf_048_V1_27_210_SIGX, NULL };
+static int hf_048_V1_27_210_SIGY = -1;
+static const FieldPart I048_V1_27_210_SIGY = { 8, 0.0078125, FIELD_PART_UFLOAT, &hf_048_V1_27_210_SIGY, NULL };
+static int hf_048_V1_27_210_SIGV = -1;
+static const FieldPart I048_V1_27_210_SIGV = { 8, 0.00006103515625, FIELD_PART_UFLOAT, &hf_048_V1_27_210_SIGV, NULL };
+static int hf_048_V1_27_210_SIGH = -1;
+static const FieldPart I048_V1_27_210_SIGH = { 8, 0.087890625, FIELD_PART_UFLOAT, &hf_048_V1_27_210_SIGH, NULL };
+static const FieldPart *I048_V1_27_210_PARTS[] = {
+ &I048_V1_27_210_SIGX,
+ &I048_V1_27_210_SIGY,
+ &I048_V1_27_210_SIGV,
+ &I048_V1_27_210_SIGH,
+ NULL
+};
+static const AsterixField I048_V1_27_210 = { FIXED, 4, 0, 0, &hf_048_V1_27_210, I048_V1_27_210_PARTS, { NULL } };
+static int hf_048_V1_27_220 = -1;
+static int hf_048_V1_27_220_VALUE = -1;
+static const FieldPart I048_V1_27_220_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_048_V1_27_220_VALUE, NULL };
+static const FieldPart *I048_V1_27_220_PARTS[] = {
+ &I048_V1_27_220_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_27_220 = { FIXED, 3, 0, 0, &hf_048_V1_27_220, I048_V1_27_220_PARTS, { NULL } };
+static int hf_048_V1_27_230 = -1;
+static int hf_048_V1_27_230_COM = -1;
+static const value_string valstr_048_V1_27_230_COM[] = {
+ { 0, "No communications capability (surveillance only)" },
+ { 1, "Comm. A and Comm. B capability" },
+ { 2, "Comm. A, Comm. B and Uplink ELM" },
+ { 3, "Comm. A, Comm. B, Uplink ELM and Downlink ELM" },
+ { 4, "Level 5 Transponder capability" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_230_COM = { 3, 1.0, FIELD_PART_UINT, &hf_048_V1_27_230_COM, NULL };
+static int hf_048_V1_27_230_STAT = -1;
+static const value_string valstr_048_V1_27_230_STAT[] = {
+ { 0, "No alert, no SPI, aircraft airborne" },
+ { 1, "No alert, no SPI, aircraft on ground" },
+ { 2, "Alert, no SPI, aircraft airborne" },
+ { 3, "Alert, no SPI, aircraft on ground" },
+ { 4, "Alert, SPI, aircraft airborne or on ground" },
+ { 5, "No alert, SPI, aircraft airborne or on ground" },
+ { 7, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_230_STAT = { 3, 1.0, FIELD_PART_UINT, &hf_048_V1_27_230_STAT, NULL };
+static int hf_048_V1_27_230_SI = -1;
+static const value_string valstr_048_V1_27_230_SI[] = {
+ { 0, "SI-Code Capable" },
+ { 1, "II-Code Capable" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_230_SI = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_230_SI, NULL };
+static int hf_048_V1_27_230_MSSC = -1;
+static const value_string valstr_048_V1_27_230_MSSC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_230_MSSC = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_230_MSSC, NULL };
+static int hf_048_V1_27_230_ARC = -1;
+static const value_string valstr_048_V1_27_230_ARC[] = {
+ { 0, "100 ft resolution" },
+ { 1, "25 ft resolution" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_230_ARC = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_230_ARC, NULL };
+static int hf_048_V1_27_230_AIC = -1;
+static const value_string valstr_048_V1_27_230_AIC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_27_230_AIC = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_27_230_AIC, NULL };
+static int hf_048_V1_27_230_B1A = -1;
+static const FieldPart I048_V1_27_230_B1A = { 1, 1.0, FIELD_PART_HEX, &hf_048_V1_27_230_B1A, NULL };
+static int hf_048_V1_27_230_B1B = -1;
+static const FieldPart I048_V1_27_230_B1B = { 4, 1.0, FIELD_PART_HEX, &hf_048_V1_27_230_B1B, NULL };
+static const FieldPart *I048_V1_27_230_PARTS[] = {
+ &I048_V1_27_230_COM,
+ &I048_V1_27_230_STAT,
+ &I048_V1_27_230_SI,
+ &IXXX_1bit_spare,
+ &I048_V1_27_230_MSSC,
+ &I048_V1_27_230_ARC,
+ &I048_V1_27_230_AIC,
+ &I048_V1_27_230_B1A,
+ &I048_V1_27_230_B1B,
+ NULL
+};
+static const AsterixField I048_V1_27_230 = { FIXED, 2, 0, 0, &hf_048_V1_27_230, I048_V1_27_230_PARTS, { NULL } };
+static int hf_048_V1_27_240 = -1;
+static int hf_048_V1_27_240_VALUE = -1;
+static const FieldPart I048_V1_27_240_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_048_V1_27_240_VALUE, NULL };
+static const FieldPart *I048_V1_27_240_PARTS[] = {
+ &I048_V1_27_240_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_27_240 = { FIXED, 6, 0, 0, &hf_048_V1_27_240, I048_V1_27_240_PARTS, { NULL } };
+static int hf_048_V1_27_250 = -1;
+static int hf_048_V1_27_250_MBDATA = -1;
+static const FieldPart I048_V1_27_250_MBDATA = { 56, 1.0, FIELD_PART_HEX, &hf_048_V1_27_250_MBDATA, NULL };
+static int hf_048_V1_27_250_BDS1 = -1;
+static const FieldPart I048_V1_27_250_BDS1 = { 4, 1.0, FIELD_PART_HEX, &hf_048_V1_27_250_BDS1, NULL };
+static int hf_048_V1_27_250_BDS2 = -1;
+static const FieldPart I048_V1_27_250_BDS2 = { 4, 1.0, FIELD_PART_HEX, &hf_048_V1_27_250_BDS2, NULL };
+static const FieldPart *I048_V1_27_250_PARTS[] = {
+ &I048_V1_27_250_MBDATA,
+ &I048_V1_27_250_BDS1,
+ &I048_V1_27_250_BDS2,
+ NULL
+};
+static const AsterixField I048_V1_27_250 = { REPETITIVE, 8, 1, 0, &hf_048_V1_27_250, I048_V1_27_250_PARTS, { NULL } };
+static int hf_048_V1_27_260 = -1;
+static int hf_048_V1_27_260_VALUE = -1;
+static const FieldPart I048_V1_27_260_VALUE = { 56, 1.0, FIELD_PART_HEX, &hf_048_V1_27_260_VALUE, NULL };
+static const FieldPart *I048_V1_27_260_PARTS[] = {
+ &I048_V1_27_260_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_27_260 = { FIXED, 7, 0, 0, &hf_048_V1_27_260, I048_V1_27_260_PARTS, { NULL } };
+static int hf_048_V1_27_RE = -1;
+static const AsterixField I048_V1_27_RE = { EXP, 0, 0, 1, &hf_048_V1_27_RE, NULL, { NULL } };
+static int hf_048_V1_27_SP = -1;
+static const AsterixField I048_V1_27_SP = { EXP, 0, 0, 1, &hf_048_V1_27_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I048_V1_27_uap[] = {
+ &I048_V1_27_010,
+ &I048_V1_27_140,
+ &I048_V1_27_020,
+ &I048_V1_27_040,
+ &I048_V1_27_070,
+ &I048_V1_27_090,
+ &I048_V1_27_130,
+ &I048_V1_27_220,
+ &I048_V1_27_240,
+ &I048_V1_27_250,
+ &I048_V1_27_161,
+ &I048_V1_27_042,
+ &I048_V1_27_200,
+ &I048_V1_27_170,
+ &I048_V1_27_210,
+ &I048_V1_27_030,
+ &I048_V1_27_080,
+ &I048_V1_27_100,
+ &I048_V1_27_110,
+ &I048_V1_27_120,
+ &I048_V1_27_230,
+ &I048_V1_27_260,
+ &I048_V1_27_055,
+ &I048_V1_27_050,
+ &I048_V1_27_065,
+ &I048_V1_27_060,
+ &I048_V1_27_SP,
+ &I048_V1_27_RE,
+ NULL
+};
+static const AsterixField **I048_V1_27[] = {
+ I048_V1_27_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 048, edition 1.28 */
+static int hf_048_V1_28_010 = -1;
+static int hf_048_V1_28_010_SAC = -1;
+static const FieldPart I048_V1_28_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_048_V1_28_010_SAC, NULL };
+static int hf_048_V1_28_010_SIC = -1;
+static const FieldPart I048_V1_28_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_048_V1_28_010_SIC, NULL };
+static const FieldPart *I048_V1_28_010_PARTS[] = {
+ &I048_V1_28_010_SAC,
+ &I048_V1_28_010_SIC,
+ NULL
+};
+static const AsterixField I048_V1_28_010 = { FIXED, 2, 0, 0, &hf_048_V1_28_010, I048_V1_28_010_PARTS, { NULL } };
+static int hf_048_V1_28_020 = -1;
+static int hf_048_V1_28_020_TYP = -1;
+static const value_string valstr_048_V1_28_020_TYP[] = {
+ { 0, "No detection" },
+ { 1, "Single PSR detection" },
+ { 2, "Single SSR detection" },
+ { 3, "SSR + PSR detection" },
+ { 4, "Single ModeS All-Call" },
+ { 5, "Single ModeS Roll-Call" },
+ { 6, "ModeS All-Call + PSR" },
+ { 7, "ModeS Roll-Call +PSR" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_020_TYP = { 3, 1.0, FIELD_PART_UINT, &hf_048_V1_28_020_TYP, NULL };
+static int hf_048_V1_28_020_SIM = -1;
+static const value_string valstr_048_V1_28_020_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_020_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_020_SIM, NULL };
+static int hf_048_V1_28_020_RDP = -1;
+static const value_string valstr_048_V1_28_020_RDP[] = {
+ { 0, "Report from RDP Chain 1" },
+ { 1, "Report from RDP Chain 2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_020_RDP = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_020_RDP, NULL };
+static int hf_048_V1_28_020_SPI = -1;
+static const value_string valstr_048_V1_28_020_SPI[] = {
+ { 0, "Absence of SPI" },
+ { 1, "Special Position Identification" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_020_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_020_SPI, NULL };
+static int hf_048_V1_28_020_RAB = -1;
+static const value_string valstr_048_V1_28_020_RAB[] = {
+ { 0, "Report from aircraft transponder" },
+ { 1, "Report from field monitor (fixed transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_020_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_020_RAB, NULL };
+static int hf_048_V1_28_020_TST = -1;
+static const value_string valstr_048_V1_28_020_TST[] = {
+ { 0, "Real target report" },
+ { 1, "Test target report" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_020_TST = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_020_TST, NULL };
+static int hf_048_V1_28_020_ERR = -1;
+static const value_string valstr_048_V1_28_020_ERR[] = {
+ { 0, "No Extended Range" },
+ { 1, "Extended Range present" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_020_ERR = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_020_ERR, NULL };
+static int hf_048_V1_28_020_XPP = -1;
+static const value_string valstr_048_V1_28_020_XPP[] = {
+ { 0, "No X-Pulse present" },
+ { 1, "X-Pulse present" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_020_XPP = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_020_XPP, NULL };
+static int hf_048_V1_28_020_ME = -1;
+static const value_string valstr_048_V1_28_020_ME[] = {
+ { 0, "No military emergency" },
+ { 1, "Military emergency" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_020_ME = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_020_ME, NULL };
+static int hf_048_V1_28_020_MI = -1;
+static const value_string valstr_048_V1_28_020_MI[] = {
+ { 0, "No military identification" },
+ { 1, "Military identification" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_020_MI = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_020_MI, NULL };
+static int hf_048_V1_28_020_FOEFRI = -1;
+static const value_string valstr_048_V1_28_020_FOEFRI[] = {
+ { 0, "No Mode 4 interrogation" },
+ { 1, "Friendly target" },
+ { 2, "Unknown target" },
+ { 3, "No reply" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_020_FOEFRI = { 2, 1.0, FIELD_PART_UINT, &hf_048_V1_28_020_FOEFRI, NULL };
+static const FieldPart *I048_V1_28_020_PARTS[] = {
+ &I048_V1_28_020_TYP,
+ &I048_V1_28_020_SIM,
+ &I048_V1_28_020_RDP,
+ &I048_V1_28_020_SPI,
+ &I048_V1_28_020_RAB,
+ &IXXX_FX,
+ &I048_V1_28_020_TST,
+ &I048_V1_28_020_ERR,
+ &I048_V1_28_020_XPP,
+ &I048_V1_28_020_ME,
+ &I048_V1_28_020_MI,
+ &I048_V1_28_020_FOEFRI,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I048_V1_28_020 = { FX, 1, 0, 0, &hf_048_V1_28_020, I048_V1_28_020_PARTS, { NULL } };
+static int hf_048_V1_28_030 = -1;
+static int hf_048_V1_28_030_Subitem = -1;
+static const value_string valstr_048_V1_28_030_Subitem[] = {
+ { 0, "Not defined; never used" },
+ { 1, "Multipath Reply (Reflection)" },
+ { 2, "Reply due to sidelobe interrogation/reception" },
+ { 3, "Split plot" },
+ { 4, "Second time around reply" },
+ { 5, "Angel" },
+ { 6, "Slow moving target correlated with road infrastructure (terrestrial vehicle)" },
+ { 7, "Fixed PSR plot" },
+ { 8, "Slow PSR target" },
+ { 9, "Low quality PSR plot" },
+ { 10, "Phantom SSR plot" },
+ { 11, "Non-Matching Mode-3/A Code" },
+ { 12, "Mode C code / Mode S altitude code abnormal value compared to the track" },
+ { 13, "Target in Clutter Area" },
+ { 14, "Maximum Doppler Response in Zero Filter" },
+ { 15, "Transponder anomaly detected" },
+ { 16, "Duplicated or Illegal Mode S Aircraft Address" },
+ { 17, "Mode S error correction applied" },
+ { 18, "Undecodable Mode C code / Mode S altitude code" },
+ { 19, "Birds" },
+ { 20, "Flock of Birds" },
+ { 21, "Mode-1 was present in original reply" },
+ { 22, "Mode-2 was present in original reply" },
+ { 23, "Plot potentially caused by Wind Turbine" },
+ { 24, "Helicopter" },
+ { 25, "Maximum number of re-interrogations reached (surveillance information)" },
+ { 26, "Maximum number of re-interrogations reached (BDS Extractions)" },
+ { 27, "BDS Overlay Incoherence" },
+ { 28, "Potential BDS Swap Detected" },
+ { 29, "Track Update in the Zenithal Gap" },
+ { 30, "Mode S Track re-acquired" },
+ { 31, "Duplicated Mode 5 Pair NO/PIN detected" },
+ { 32, "Wrong DF reply format detected" },
+ { 33, "Transponder anomaly (MS XPD replies with Mode A/C to Mode A/C-only all-call)" },
+ { 34, "Transponder anomaly (SI capability report wrong)" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_030_Subitem = { 7, 1.0, FIELD_PART_UINT, &hf_048_V1_28_030_Subitem, NULL };
+static const FieldPart *I048_V1_28_030_PARTS[] = {
+ &I048_V1_28_030_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I048_V1_28_030 = { FX, 1, 0, 0, &hf_048_V1_28_030, I048_V1_28_030_PARTS, { NULL } };
+static int hf_048_V1_28_040 = -1;
+static int hf_048_V1_28_040_RHO = -1;
+static const FieldPart I048_V1_28_040_RHO = { 16, 0.00390625, FIELD_PART_UFLOAT, &hf_048_V1_28_040_RHO, NULL };
+static int hf_048_V1_28_040_THETA = -1;
+static const FieldPart I048_V1_28_040_THETA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_048_V1_28_040_THETA, NULL };
+static const FieldPart *I048_V1_28_040_PARTS[] = {
+ &I048_V1_28_040_RHO,
+ &I048_V1_28_040_THETA,
+ NULL
+};
+static const AsterixField I048_V1_28_040 = { FIXED, 4, 0, 0, &hf_048_V1_28_040, I048_V1_28_040_PARTS, { NULL } };
+static int hf_048_V1_28_042 = -1;
+static int hf_048_V1_28_042_X = -1;
+static const FieldPart I048_V1_28_042_X = { 16, 0.0078125, FIELD_PART_FLOAT, &hf_048_V1_28_042_X, NULL };
+static int hf_048_V1_28_042_Y = -1;
+static const FieldPart I048_V1_28_042_Y = { 16, 0.0078125, FIELD_PART_FLOAT, &hf_048_V1_28_042_Y, NULL };
+static const FieldPart *I048_V1_28_042_PARTS[] = {
+ &I048_V1_28_042_X,
+ &I048_V1_28_042_Y,
+ NULL
+};
+static const AsterixField I048_V1_28_042 = { FIXED, 4, 0, 0, &hf_048_V1_28_042, I048_V1_28_042_PARTS, { NULL } };
+static int hf_048_V1_28_050 = -1;
+static int hf_048_V1_28_050_V = -1;
+static const value_string valstr_048_V1_28_050_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_050_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_050_V, NULL };
+static int hf_048_V1_28_050_G = -1;
+static const value_string valstr_048_V1_28_050_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_050_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_050_G, NULL };
+static int hf_048_V1_28_050_L = -1;
+static const value_string valstr_048_V1_28_050_L[] = {
+ { 0, "Mode-2 code as derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-2 code as provided by a local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_050_L = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_050_L, NULL };
+static int hf_048_V1_28_050_MODE2 = -1;
+static const FieldPart I048_V1_28_050_MODE2 = { 12, 1.0, FIELD_PART_SQUAWK, &hf_048_V1_28_050_MODE2, NULL };
+static const FieldPart *I048_V1_28_050_PARTS[] = {
+ &I048_V1_28_050_V,
+ &I048_V1_28_050_G,
+ &I048_V1_28_050_L,
+ &IXXX_1bit_spare,
+ &I048_V1_28_050_MODE2,
+ NULL
+};
+static const AsterixField I048_V1_28_050 = { FIXED, 2, 0, 0, &hf_048_V1_28_050, I048_V1_28_050_PARTS, { NULL } };
+static int hf_048_V1_28_055 = -1;
+static int hf_048_V1_28_055_V = -1;
+static const value_string valstr_048_V1_28_055_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_055_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_055_V, NULL };
+static int hf_048_V1_28_055_G = -1;
+static const value_string valstr_048_V1_28_055_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_055_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_055_G, NULL };
+static int hf_048_V1_28_055_L = -1;
+static const value_string valstr_048_V1_28_055_L[] = {
+ { 0, "Mode-1 code as derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-1 code as provided by a local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_055_L = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_055_L, NULL };
+static int hf_048_V1_28_055_MODE1 = -1;
+static const FieldPart I048_V1_28_055_MODE1 = { 5, 1.0, FIELD_PART_HEX, &hf_048_V1_28_055_MODE1, NULL };
+static const FieldPart *I048_V1_28_055_PARTS[] = {
+ &I048_V1_28_055_V,
+ &I048_V1_28_055_G,
+ &I048_V1_28_055_L,
+ &I048_V1_28_055_MODE1,
+ NULL
+};
+static const AsterixField I048_V1_28_055 = { FIXED, 1, 0, 0, &hf_048_V1_28_055, I048_V1_28_055_PARTS, { NULL } };
+static int hf_048_V1_28_060 = -1;
+static int hf_048_V1_28_060_QA4 = -1;
+static const value_string valstr_048_V1_28_060_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_060_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_060_QA4, NULL };
+static int hf_048_V1_28_060_QA2 = -1;
+static const value_string valstr_048_V1_28_060_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_060_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_060_QA2, NULL };
+static int hf_048_V1_28_060_QA1 = -1;
+static const value_string valstr_048_V1_28_060_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_060_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_060_QA1, NULL };
+static int hf_048_V1_28_060_QB4 = -1;
+static const value_string valstr_048_V1_28_060_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_060_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_060_QB4, NULL };
+static int hf_048_V1_28_060_QB2 = -1;
+static const value_string valstr_048_V1_28_060_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_060_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_060_QB2, NULL };
+static int hf_048_V1_28_060_QB1 = -1;
+static const value_string valstr_048_V1_28_060_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_060_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_060_QB1, NULL };
+static int hf_048_V1_28_060_QC4 = -1;
+static const value_string valstr_048_V1_28_060_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_060_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_060_QC4, NULL };
+static int hf_048_V1_28_060_QC2 = -1;
+static const value_string valstr_048_V1_28_060_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_060_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_060_QC2, NULL };
+static int hf_048_V1_28_060_QC1 = -1;
+static const value_string valstr_048_V1_28_060_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_060_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_060_QC1, NULL };
+static int hf_048_V1_28_060_QD4 = -1;
+static const value_string valstr_048_V1_28_060_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_060_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_060_QD4, NULL };
+static int hf_048_V1_28_060_QD2 = -1;
+static const value_string valstr_048_V1_28_060_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_060_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_060_QD2, NULL };
+static int hf_048_V1_28_060_QD1 = -1;
+static const value_string valstr_048_V1_28_060_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_060_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_060_QD1, NULL };
+static const FieldPart *I048_V1_28_060_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I048_V1_28_060_QA4,
+ &I048_V1_28_060_QA2,
+ &I048_V1_28_060_QA1,
+ &I048_V1_28_060_QB4,
+ &I048_V1_28_060_QB2,
+ &I048_V1_28_060_QB1,
+ &I048_V1_28_060_QC4,
+ &I048_V1_28_060_QC2,
+ &I048_V1_28_060_QC1,
+ &I048_V1_28_060_QD4,
+ &I048_V1_28_060_QD2,
+ &I048_V1_28_060_QD1,
+ NULL
+};
+static const AsterixField I048_V1_28_060 = { FIXED, 2, 0, 0, &hf_048_V1_28_060, I048_V1_28_060_PARTS, { NULL } };
+static int hf_048_V1_28_065 = -1;
+static int hf_048_V1_28_065_QA4 = -1;
+static const value_string valstr_048_V1_28_065_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_065_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_065_QA4, NULL };
+static int hf_048_V1_28_065_QA2 = -1;
+static const value_string valstr_048_V1_28_065_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_065_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_065_QA2, NULL };
+static int hf_048_V1_28_065_QA1 = -1;
+static const value_string valstr_048_V1_28_065_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_065_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_065_QA1, NULL };
+static int hf_048_V1_28_065_QB2 = -1;
+static const value_string valstr_048_V1_28_065_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_065_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_065_QB2, NULL };
+static int hf_048_V1_28_065_QB1 = -1;
+static const value_string valstr_048_V1_28_065_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_065_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_065_QB1, NULL };
+static const FieldPart *I048_V1_28_065_PARTS[] = {
+ &IXXX_3bit_spare,
+ &I048_V1_28_065_QA4,
+ &I048_V1_28_065_QA2,
+ &I048_V1_28_065_QA1,
+ &I048_V1_28_065_QB2,
+ &I048_V1_28_065_QB1,
+ NULL
+};
+static const AsterixField I048_V1_28_065 = { FIXED, 1, 0, 0, &hf_048_V1_28_065, I048_V1_28_065_PARTS, { NULL } };
+static int hf_048_V1_28_070 = -1;
+static int hf_048_V1_28_070_V = -1;
+static const value_string valstr_048_V1_28_070_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_070_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_070_V, NULL };
+static int hf_048_V1_28_070_G = -1;
+static const value_string valstr_048_V1_28_070_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_070_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_070_G, NULL };
+static int hf_048_V1_28_070_L = -1;
+static const value_string valstr_048_V1_28_070_L[] = {
+ { 0, "Mode-3/A code derived from the reply of the transponder" },
+ { 1, "Mode-3/A code not extracted during the last scan" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_070_L = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_070_L, NULL };
+static int hf_048_V1_28_070_MODE3A = -1;
+static const FieldPart I048_V1_28_070_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_048_V1_28_070_MODE3A, NULL };
+static const FieldPart *I048_V1_28_070_PARTS[] = {
+ &I048_V1_28_070_V,
+ &I048_V1_28_070_G,
+ &I048_V1_28_070_L,
+ &IXXX_1bit_spare,
+ &I048_V1_28_070_MODE3A,
+ NULL
+};
+static const AsterixField I048_V1_28_070 = { FIXED, 2, 0, 0, &hf_048_V1_28_070, I048_V1_28_070_PARTS, { NULL } };
+static int hf_048_V1_28_080 = -1;
+static int hf_048_V1_28_080_QA4 = -1;
+static const value_string valstr_048_V1_28_080_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_080_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_080_QA4, NULL };
+static int hf_048_V1_28_080_QA2 = -1;
+static const value_string valstr_048_V1_28_080_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_080_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_080_QA2, NULL };
+static int hf_048_V1_28_080_QA1 = -1;
+static const value_string valstr_048_V1_28_080_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_080_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_080_QA1, NULL };
+static int hf_048_V1_28_080_QB4 = -1;
+static const value_string valstr_048_V1_28_080_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_080_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_080_QB4, NULL };
+static int hf_048_V1_28_080_QB2 = -1;
+static const value_string valstr_048_V1_28_080_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_080_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_080_QB2, NULL };
+static int hf_048_V1_28_080_QB1 = -1;
+static const value_string valstr_048_V1_28_080_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_080_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_080_QB1, NULL };
+static int hf_048_V1_28_080_QC4 = -1;
+static const value_string valstr_048_V1_28_080_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_080_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_080_QC4, NULL };
+static int hf_048_V1_28_080_QC2 = -1;
+static const value_string valstr_048_V1_28_080_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_080_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_080_QC2, NULL };
+static int hf_048_V1_28_080_QC1 = -1;
+static const value_string valstr_048_V1_28_080_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_080_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_080_QC1, NULL };
+static int hf_048_V1_28_080_QD4 = -1;
+static const value_string valstr_048_V1_28_080_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_080_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_080_QD4, NULL };
+static int hf_048_V1_28_080_QD2 = -1;
+static const value_string valstr_048_V1_28_080_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_080_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_080_QD2, NULL };
+static int hf_048_V1_28_080_QD1 = -1;
+static const value_string valstr_048_V1_28_080_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_080_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_080_QD1, NULL };
+static const FieldPart *I048_V1_28_080_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I048_V1_28_080_QA4,
+ &I048_V1_28_080_QA2,
+ &I048_V1_28_080_QA1,
+ &I048_V1_28_080_QB4,
+ &I048_V1_28_080_QB2,
+ &I048_V1_28_080_QB1,
+ &I048_V1_28_080_QC4,
+ &I048_V1_28_080_QC2,
+ &I048_V1_28_080_QC1,
+ &I048_V1_28_080_QD4,
+ &I048_V1_28_080_QD2,
+ &I048_V1_28_080_QD1,
+ NULL
+};
+static const AsterixField I048_V1_28_080 = { FIXED, 2, 0, 0, &hf_048_V1_28_080, I048_V1_28_080_PARTS, { NULL } };
+static int hf_048_V1_28_090 = -1;
+static int hf_048_V1_28_090_V = -1;
+static const value_string valstr_048_V1_28_090_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_090_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_090_V, NULL };
+static int hf_048_V1_28_090_G = -1;
+static const value_string valstr_048_V1_28_090_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_090_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_090_G, NULL };
+static int hf_048_V1_28_090_FL = -1;
+static const FieldPart I048_V1_28_090_FL = { 14, 0.25, FIELD_PART_UFLOAT, &hf_048_V1_28_090_FL, NULL };
+static const FieldPart *I048_V1_28_090_PARTS[] = {
+ &I048_V1_28_090_V,
+ &I048_V1_28_090_G,
+ &I048_V1_28_090_FL,
+ NULL
+};
+static const AsterixField I048_V1_28_090 = { FIXED, 2, 0, 0, &hf_048_V1_28_090, I048_V1_28_090_PARTS, { NULL } };
+static int hf_048_V1_28_100 = -1;
+static int hf_048_V1_28_100_V = -1;
+static const value_string valstr_048_V1_28_100_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_100_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_100_V, NULL };
+static int hf_048_V1_28_100_G = -1;
+static const value_string valstr_048_V1_28_100_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_100_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_100_G, NULL };
+static int hf_048_V1_28_100_MODEC = -1;
+static const FieldPart I048_V1_28_100_MODEC = { 12, 1.0, FIELD_PART_HEX, &hf_048_V1_28_100_MODEC, NULL };
+static int hf_048_V1_28_100_QC1 = -1;
+static const value_string valstr_048_V1_28_100_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_100_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_100_QC1, NULL };
+static int hf_048_V1_28_100_QA1 = -1;
+static const value_string valstr_048_V1_28_100_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_100_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_100_QA1, NULL };
+static int hf_048_V1_28_100_QC2 = -1;
+static const value_string valstr_048_V1_28_100_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_100_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_100_QC2, NULL };
+static int hf_048_V1_28_100_QA2 = -1;
+static const value_string valstr_048_V1_28_100_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_100_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_100_QA2, NULL };
+static int hf_048_V1_28_100_QC4 = -1;
+static const value_string valstr_048_V1_28_100_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_100_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_100_QC4, NULL };
+static int hf_048_V1_28_100_QA4 = -1;
+static const value_string valstr_048_V1_28_100_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_100_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_100_QA4, NULL };
+static int hf_048_V1_28_100_QB1 = -1;
+static const value_string valstr_048_V1_28_100_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_100_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_100_QB1, NULL };
+static int hf_048_V1_28_100_QD1 = -1;
+static const value_string valstr_048_V1_28_100_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_100_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_100_QD1, NULL };
+static int hf_048_V1_28_100_QB2 = -1;
+static const value_string valstr_048_V1_28_100_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_100_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_100_QB2, NULL };
+static int hf_048_V1_28_100_QD2 = -1;
+static const value_string valstr_048_V1_28_100_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_100_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_100_QD2, NULL };
+static int hf_048_V1_28_100_QB4 = -1;
+static const value_string valstr_048_V1_28_100_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_100_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_100_QB4, NULL };
+static int hf_048_V1_28_100_QD4 = -1;
+static const value_string valstr_048_V1_28_100_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_100_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_100_QD4, NULL };
+static const FieldPart *I048_V1_28_100_PARTS[] = {
+ &I048_V1_28_100_V,
+ &I048_V1_28_100_G,
+ &IXXX_2bit_spare,
+ &I048_V1_28_100_MODEC,
+ &IXXX_4bit_spare,
+ &I048_V1_28_100_QC1,
+ &I048_V1_28_100_QA1,
+ &I048_V1_28_100_QC2,
+ &I048_V1_28_100_QA2,
+ &I048_V1_28_100_QC4,
+ &I048_V1_28_100_QA4,
+ &I048_V1_28_100_QB1,
+ &I048_V1_28_100_QD1,
+ &I048_V1_28_100_QB2,
+ &I048_V1_28_100_QD2,
+ &I048_V1_28_100_QB4,
+ &I048_V1_28_100_QD4,
+ NULL
+};
+static const AsterixField I048_V1_28_100 = { FIXED, 4, 0, 0, &hf_048_V1_28_100, I048_V1_28_100_PARTS, { NULL } };
+static int hf_048_V1_28_110 = -1;
+static int hf_048_V1_28_110_3DH = -1;
+static const FieldPart I048_V1_28_110_3DH = { 14, 25.0, FIELD_PART_FLOAT, &hf_048_V1_28_110_3DH, NULL };
+static const FieldPart *I048_V1_28_110_PARTS[] = {
+ &IXXX_2bit_spare,
+ &I048_V1_28_110_3DH,
+ NULL
+};
+static const AsterixField I048_V1_28_110 = { FIXED, 2, 0, 0, &hf_048_V1_28_110, I048_V1_28_110_PARTS, { NULL } };
+static int hf_048_V1_28_120 = -1;
+static int hf_048_V1_28_120_CAL = -1;
+static int hf_048_V1_28_120_CAL_D = -1;
+static const value_string valstr_048_V1_28_120_CAL_D[] = {
+ { 0, "Doppler speed is valid" },
+ { 1, "Doppler speed is doubtful" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_120_CAL_D = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_120_CAL_D, NULL };
+static int hf_048_V1_28_120_CAL_CAL = -1;
+static const FieldPart I048_V1_28_120_CAL_CAL = { 10, 1.0, FIELD_PART_FLOAT, &hf_048_V1_28_120_CAL_CAL, NULL };
+static const FieldPart *I048_V1_28_120_CAL_PARTS[] = {
+ &I048_V1_28_120_CAL_D,
+ &IXXX_5bit_spare,
+ &I048_V1_28_120_CAL_CAL,
+ NULL
+};
+static const AsterixField I048_V1_28_120_CAL = { FIXED, 2, 0, 0, &hf_048_V1_28_120_CAL, I048_V1_28_120_CAL_PARTS, { NULL } };
+static int hf_048_V1_28_120_RDS = -1;
+static int hf_048_V1_28_120_RDS_DOP = -1;
+static const FieldPart I048_V1_28_120_RDS_DOP = { 16, 1.0, FIELD_PART_UFLOAT, &hf_048_V1_28_120_RDS_DOP, NULL };
+static int hf_048_V1_28_120_RDS_AMB = -1;
+static const FieldPart I048_V1_28_120_RDS_AMB = { 16, 1.0, FIELD_PART_UFLOAT, &hf_048_V1_28_120_RDS_AMB, NULL };
+static int hf_048_V1_28_120_RDS_FRQ = -1;
+static const FieldPart I048_V1_28_120_RDS_FRQ = { 16, 1.0, FIELD_PART_UFLOAT, &hf_048_V1_28_120_RDS_FRQ, NULL };
+static const FieldPart *I048_V1_28_120_RDS_PARTS[] = {
+ &I048_V1_28_120_RDS_DOP,
+ &I048_V1_28_120_RDS_AMB,
+ &I048_V1_28_120_RDS_FRQ,
+ NULL
+};
+static const AsterixField I048_V1_28_120_RDS = { REPETITIVE, 6, 1, 0, &hf_048_V1_28_120_RDS, I048_V1_28_120_RDS_PARTS, { NULL } };
+static const AsterixField I048_V1_28_120 = { COMPOUND, 0, 0, 0, &hf_048_V1_28_120, NULL, { &I048_V1_28_120_CAL, &I048_V1_28_120_RDS, NULL } };
+static int hf_048_V1_28_130 = -1;
+static int hf_048_V1_28_130_SRL = -1;
+static int hf_048_V1_28_130_SRL_VALUE = -1;
+static const FieldPart I048_V1_28_130_SRL_VALUE = { 8, 0.0439453125, FIELD_PART_UFLOAT, &hf_048_V1_28_130_SRL_VALUE, NULL };
+static const FieldPart *I048_V1_28_130_SRL_PARTS[] = {
+ &I048_V1_28_130_SRL_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_28_130_SRL = { FIXED, 1, 0, 0, &hf_048_V1_28_130_SRL, I048_V1_28_130_SRL_PARTS, { NULL } };
+static int hf_048_V1_28_130_SRR = -1;
+static int hf_048_V1_28_130_SRR_VALUE = -1;
+static const FieldPart I048_V1_28_130_SRR_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_048_V1_28_130_SRR_VALUE, NULL };
+static const FieldPart *I048_V1_28_130_SRR_PARTS[] = {
+ &I048_V1_28_130_SRR_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_28_130_SRR = { FIXED, 1, 0, 0, &hf_048_V1_28_130_SRR, I048_V1_28_130_SRR_PARTS, { NULL } };
+static int hf_048_V1_28_130_SAM = -1;
+static int hf_048_V1_28_130_SAM_VALUE = -1;
+static const FieldPart I048_V1_28_130_SAM_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_048_V1_28_130_SAM_VALUE, NULL };
+static const FieldPart *I048_V1_28_130_SAM_PARTS[] = {
+ &I048_V1_28_130_SAM_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_28_130_SAM = { FIXED, 1, 0, 0, &hf_048_V1_28_130_SAM, I048_V1_28_130_SAM_PARTS, { NULL } };
+static int hf_048_V1_28_130_PRL = -1;
+static int hf_048_V1_28_130_PRL_VALUE = -1;
+static const FieldPart I048_V1_28_130_PRL_VALUE = { 8, 0.0439453125, FIELD_PART_UFLOAT, &hf_048_V1_28_130_PRL_VALUE, NULL };
+static const FieldPart *I048_V1_28_130_PRL_PARTS[] = {
+ &I048_V1_28_130_PRL_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_28_130_PRL = { FIXED, 1, 0, 0, &hf_048_V1_28_130_PRL, I048_V1_28_130_PRL_PARTS, { NULL } };
+static int hf_048_V1_28_130_PAM = -1;
+static int hf_048_V1_28_130_PAM_VALUE = -1;
+static const FieldPart I048_V1_28_130_PAM_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_048_V1_28_130_PAM_VALUE, NULL };
+static const FieldPart *I048_V1_28_130_PAM_PARTS[] = {
+ &I048_V1_28_130_PAM_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_28_130_PAM = { FIXED, 1, 0, 0, &hf_048_V1_28_130_PAM, I048_V1_28_130_PAM_PARTS, { NULL } };
+static int hf_048_V1_28_130_RPD = -1;
+static int hf_048_V1_28_130_RPD_VALUE = -1;
+static const FieldPart I048_V1_28_130_RPD_VALUE = { 8, 0.00390625, FIELD_PART_FLOAT, &hf_048_V1_28_130_RPD_VALUE, NULL };
+static const FieldPart *I048_V1_28_130_RPD_PARTS[] = {
+ &I048_V1_28_130_RPD_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_28_130_RPD = { FIXED, 1, 0, 0, &hf_048_V1_28_130_RPD, I048_V1_28_130_RPD_PARTS, { NULL } };
+static int hf_048_V1_28_130_APD = -1;
+static int hf_048_V1_28_130_APD_VALUE = -1;
+static const FieldPart I048_V1_28_130_APD_VALUE = { 8, 0.02197265625, FIELD_PART_FLOAT, &hf_048_V1_28_130_APD_VALUE, NULL };
+static const FieldPart *I048_V1_28_130_APD_PARTS[] = {
+ &I048_V1_28_130_APD_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_28_130_APD = { FIXED, 1, 0, 0, &hf_048_V1_28_130_APD, I048_V1_28_130_APD_PARTS, { NULL } };
+static const AsterixField I048_V1_28_130 = { COMPOUND, 0, 0, 0, &hf_048_V1_28_130, NULL, { &I048_V1_28_130_SRL, &I048_V1_28_130_SRR, &I048_V1_28_130_SAM, &I048_V1_28_130_PRL, &I048_V1_28_130_PAM, &I048_V1_28_130_RPD, &I048_V1_28_130_APD, NULL } };
+static int hf_048_V1_28_140 = -1;
+static int hf_048_V1_28_140_VALUE = -1;
+static const FieldPart I048_V1_28_140_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_048_V1_28_140_VALUE, NULL };
+static const FieldPart *I048_V1_28_140_PARTS[] = {
+ &I048_V1_28_140_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_28_140 = { FIXED, 3, 0, 0, &hf_048_V1_28_140, I048_V1_28_140_PARTS, { NULL } };
+static int hf_048_V1_28_161 = -1;
+static int hf_048_V1_28_161_TRN = -1;
+static const FieldPart I048_V1_28_161_TRN = { 12, 1.0, FIELD_PART_HEX, &hf_048_V1_28_161_TRN, NULL };
+static const FieldPart *I048_V1_28_161_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I048_V1_28_161_TRN,
+ NULL
+};
+static const AsterixField I048_V1_28_161 = { FIXED, 2, 0, 0, &hf_048_V1_28_161, I048_V1_28_161_PARTS, { NULL } };
+static int hf_048_V1_28_170 = -1;
+static int hf_048_V1_28_170_CNF = -1;
+static const value_string valstr_048_V1_28_170_CNF[] = {
+ { 0, "Confirmed Track" },
+ { 1, "Tentative Track" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_170_CNF = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_170_CNF, NULL };
+static int hf_048_V1_28_170_RAD = -1;
+static const value_string valstr_048_V1_28_170_RAD[] = {
+ { 0, "Combined Track" },
+ { 1, "PSR Track" },
+ { 2, "SSR/Mode S Track" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_170_RAD = { 2, 1.0, FIELD_PART_UINT, &hf_048_V1_28_170_RAD, NULL };
+static int hf_048_V1_28_170_DOU = -1;
+static const value_string valstr_048_V1_28_170_DOU[] = {
+ { 0, "Normal confidence" },
+ { 1, "Low confidence in plot to track association" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_170_DOU = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_170_DOU, NULL };
+static int hf_048_V1_28_170_MAH = -1;
+static const value_string valstr_048_V1_28_170_MAH[] = {
+ { 0, "No horizontal man.sensed" },
+ { 1, "Horizontal man. sensed" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_170_MAH = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_170_MAH, NULL };
+static int hf_048_V1_28_170_CDM = -1;
+static const value_string valstr_048_V1_28_170_CDM[] = {
+ { 0, "Maintaining" },
+ { 1, "Climbing" },
+ { 2, "Descending" },
+ { 3, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_170_CDM = { 2, 1.0, FIELD_PART_UINT, &hf_048_V1_28_170_CDM, NULL };
+static int hf_048_V1_28_170_TRE = -1;
+static const value_string valstr_048_V1_28_170_TRE[] = {
+ { 0, "Track still alive" },
+ { 1, "End of track lifetime(last report for this track)" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_170_TRE = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_170_TRE, NULL };
+static int hf_048_V1_28_170_GHO = -1;
+static const value_string valstr_048_V1_28_170_GHO[] = {
+ { 0, "True target track" },
+ { 1, "Ghost target track" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_170_GHO = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_170_GHO, NULL };
+static int hf_048_V1_28_170_SUP = -1;
+static const value_string valstr_048_V1_28_170_SUP[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_170_SUP = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_170_SUP, NULL };
+static int hf_048_V1_28_170_TCC = -1;
+static const value_string valstr_048_V1_28_170_TCC[] = {
+ { 0, "Tracking performed in so-called \'Radar Plane\', i.e. neither slant range correction nor stereographical projection was applied" },
+ { 1, "Slant range correction and a suitable projection technique are used to track in a 2D.reference plane, tangential to the earth model at the Radar Site co-ordinates" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_170_TCC = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_170_TCC, NULL };
+static const FieldPart *I048_V1_28_170_PARTS[] = {
+ &I048_V1_28_170_CNF,
+ &I048_V1_28_170_RAD,
+ &I048_V1_28_170_DOU,
+ &I048_V1_28_170_MAH,
+ &I048_V1_28_170_CDM,
+ &IXXX_FX,
+ &I048_V1_28_170_TRE,
+ &I048_V1_28_170_GHO,
+ &I048_V1_28_170_SUP,
+ &I048_V1_28_170_TCC,
+ &IXXX_3bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I048_V1_28_170 = { FX, 1, 0, 0, &hf_048_V1_28_170, I048_V1_28_170_PARTS, { NULL } };
+static int hf_048_V1_28_200 = -1;
+static int hf_048_V1_28_200_GSP = -1;
+static const FieldPart I048_V1_28_200_GSP = { 16, 0.00006103515625, FIELD_PART_UFLOAT, &hf_048_V1_28_200_GSP, NULL };
+static int hf_048_V1_28_200_HDG = -1;
+static const FieldPart I048_V1_28_200_HDG = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_048_V1_28_200_HDG, NULL };
+static const FieldPart *I048_V1_28_200_PARTS[] = {
+ &I048_V1_28_200_GSP,
+ &I048_V1_28_200_HDG,
+ NULL
+};
+static const AsterixField I048_V1_28_200 = { FIXED, 4, 0, 0, &hf_048_V1_28_200, I048_V1_28_200_PARTS, { NULL } };
+static int hf_048_V1_28_210 = -1;
+static int hf_048_V1_28_210_SIGX = -1;
+static const FieldPart I048_V1_28_210_SIGX = { 8, 0.0078125, FIELD_PART_UFLOAT, &hf_048_V1_28_210_SIGX, NULL };
+static int hf_048_V1_28_210_SIGY = -1;
+static const FieldPart I048_V1_28_210_SIGY = { 8, 0.0078125, FIELD_PART_UFLOAT, &hf_048_V1_28_210_SIGY, NULL };
+static int hf_048_V1_28_210_SIGV = -1;
+static const FieldPart I048_V1_28_210_SIGV = { 8, 0.00006103515625, FIELD_PART_UFLOAT, &hf_048_V1_28_210_SIGV, NULL };
+static int hf_048_V1_28_210_SIGH = -1;
+static const FieldPart I048_V1_28_210_SIGH = { 8, 0.087890625, FIELD_PART_UFLOAT, &hf_048_V1_28_210_SIGH, NULL };
+static const FieldPart *I048_V1_28_210_PARTS[] = {
+ &I048_V1_28_210_SIGX,
+ &I048_V1_28_210_SIGY,
+ &I048_V1_28_210_SIGV,
+ &I048_V1_28_210_SIGH,
+ NULL
+};
+static const AsterixField I048_V1_28_210 = { FIXED, 4, 0, 0, &hf_048_V1_28_210, I048_V1_28_210_PARTS, { NULL } };
+static int hf_048_V1_28_220 = -1;
+static int hf_048_V1_28_220_VALUE = -1;
+static const FieldPart I048_V1_28_220_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_048_V1_28_220_VALUE, NULL };
+static const FieldPart *I048_V1_28_220_PARTS[] = {
+ &I048_V1_28_220_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_28_220 = { FIXED, 3, 0, 0, &hf_048_V1_28_220, I048_V1_28_220_PARTS, { NULL } };
+static int hf_048_V1_28_230 = -1;
+static int hf_048_V1_28_230_COM = -1;
+static const value_string valstr_048_V1_28_230_COM[] = {
+ { 0, "No communications capability (surveillance only)" },
+ { 1, "Comm. A and Comm. B capability" },
+ { 2, "Comm. A, Comm. B and Uplink ELM" },
+ { 3, "Comm. A, Comm. B, Uplink ELM and Downlink ELM" },
+ { 4, "Level 5 Transponder capability" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_230_COM = { 3, 1.0, FIELD_PART_UINT, &hf_048_V1_28_230_COM, NULL };
+static int hf_048_V1_28_230_STAT = -1;
+static const value_string valstr_048_V1_28_230_STAT[] = {
+ { 0, "No alert, no SPI, aircraft airborne" },
+ { 1, "No alert, no SPI, aircraft on ground" },
+ { 2, "Alert, no SPI, aircraft airborne" },
+ { 3, "Alert, no SPI, aircraft on ground" },
+ { 4, "Alert, SPI, aircraft airborne or on ground" },
+ { 5, "No alert, SPI, aircraft airborne or on ground" },
+ { 7, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_230_STAT = { 3, 1.0, FIELD_PART_UINT, &hf_048_V1_28_230_STAT, NULL };
+static int hf_048_V1_28_230_SI = -1;
+static const value_string valstr_048_V1_28_230_SI[] = {
+ { 0, "SI-Code Capable" },
+ { 1, "II-Code Capable" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_230_SI = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_230_SI, NULL };
+static int hf_048_V1_28_230_MSSC = -1;
+static const value_string valstr_048_V1_28_230_MSSC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_230_MSSC = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_230_MSSC, NULL };
+static int hf_048_V1_28_230_ARC = -1;
+static const value_string valstr_048_V1_28_230_ARC[] = {
+ { 0, "100 ft resolution" },
+ { 1, "25 ft resolution" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_230_ARC = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_230_ARC, NULL };
+static int hf_048_V1_28_230_AIC = -1;
+static const value_string valstr_048_V1_28_230_AIC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_28_230_AIC = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_28_230_AIC, NULL };
+static int hf_048_V1_28_230_B1A = -1;
+static const FieldPart I048_V1_28_230_B1A = { 1, 1.0, FIELD_PART_HEX, &hf_048_V1_28_230_B1A, NULL };
+static int hf_048_V1_28_230_B1B = -1;
+static const FieldPart I048_V1_28_230_B1B = { 4, 1.0, FIELD_PART_HEX, &hf_048_V1_28_230_B1B, NULL };
+static const FieldPart *I048_V1_28_230_PARTS[] = {
+ &I048_V1_28_230_COM,
+ &I048_V1_28_230_STAT,
+ &I048_V1_28_230_SI,
+ &IXXX_1bit_spare,
+ &I048_V1_28_230_MSSC,
+ &I048_V1_28_230_ARC,
+ &I048_V1_28_230_AIC,
+ &I048_V1_28_230_B1A,
+ &I048_V1_28_230_B1B,
+ NULL
+};
+static const AsterixField I048_V1_28_230 = { FIXED, 2, 0, 0, &hf_048_V1_28_230, I048_V1_28_230_PARTS, { NULL } };
+static int hf_048_V1_28_240 = -1;
+static int hf_048_V1_28_240_VALUE = -1;
+static const FieldPart I048_V1_28_240_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_048_V1_28_240_VALUE, NULL };
+static const FieldPart *I048_V1_28_240_PARTS[] = {
+ &I048_V1_28_240_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_28_240 = { FIXED, 6, 0, 0, &hf_048_V1_28_240, I048_V1_28_240_PARTS, { NULL } };
+static int hf_048_V1_28_250 = -1;
+static int hf_048_V1_28_250_MBDATA = -1;
+static const FieldPart I048_V1_28_250_MBDATA = { 56, 1.0, FIELD_PART_HEX, &hf_048_V1_28_250_MBDATA, NULL };
+static int hf_048_V1_28_250_BDS1 = -1;
+static const FieldPart I048_V1_28_250_BDS1 = { 4, 1.0, FIELD_PART_HEX, &hf_048_V1_28_250_BDS1, NULL };
+static int hf_048_V1_28_250_BDS2 = -1;
+static const FieldPart I048_V1_28_250_BDS2 = { 4, 1.0, FIELD_PART_HEX, &hf_048_V1_28_250_BDS2, NULL };
+static const FieldPart *I048_V1_28_250_PARTS[] = {
+ &I048_V1_28_250_MBDATA,
+ &I048_V1_28_250_BDS1,
+ &I048_V1_28_250_BDS2,
+ NULL
+};
+static const AsterixField I048_V1_28_250 = { REPETITIVE, 8, 1, 0, &hf_048_V1_28_250, I048_V1_28_250_PARTS, { NULL } };
+static int hf_048_V1_28_260 = -1;
+static int hf_048_V1_28_260_VALUE = -1;
+static const FieldPart I048_V1_28_260_VALUE = { 56, 1.0, FIELD_PART_HEX, &hf_048_V1_28_260_VALUE, NULL };
+static const FieldPart *I048_V1_28_260_PARTS[] = {
+ &I048_V1_28_260_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_28_260 = { FIXED, 7, 0, 0, &hf_048_V1_28_260, I048_V1_28_260_PARTS, { NULL } };
+static int hf_048_V1_28_RE = -1;
+static const AsterixField I048_V1_28_RE = { EXP, 0, 0, 1, &hf_048_V1_28_RE, NULL, { NULL } };
+static int hf_048_V1_28_SP = -1;
+static const AsterixField I048_V1_28_SP = { EXP, 0, 0, 1, &hf_048_V1_28_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I048_V1_28_uap[] = {
+ &I048_V1_28_010,
+ &I048_V1_28_140,
+ &I048_V1_28_020,
+ &I048_V1_28_040,
+ &I048_V1_28_070,
+ &I048_V1_28_090,
+ &I048_V1_28_130,
+ &I048_V1_28_220,
+ &I048_V1_28_240,
+ &I048_V1_28_250,
+ &I048_V1_28_161,
+ &I048_V1_28_042,
+ &I048_V1_28_200,
+ &I048_V1_28_170,
+ &I048_V1_28_210,
+ &I048_V1_28_030,
+ &I048_V1_28_080,
+ &I048_V1_28_100,
+ &I048_V1_28_110,
+ &I048_V1_28_120,
+ &I048_V1_28_230,
+ &I048_V1_28_260,
+ &I048_V1_28_055,
+ &I048_V1_28_050,
+ &I048_V1_28_065,
+ &I048_V1_28_060,
+ &I048_V1_28_SP,
+ &I048_V1_28_RE,
+ NULL
+};
+static const AsterixField **I048_V1_28[] = {
+ I048_V1_28_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 048, edition 1.29 */
+static int hf_048_V1_29_010 = -1;
+static int hf_048_V1_29_010_SAC = -1;
+static const FieldPart I048_V1_29_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_048_V1_29_010_SAC, NULL };
+static int hf_048_V1_29_010_SIC = -1;
+static const FieldPart I048_V1_29_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_048_V1_29_010_SIC, NULL };
+static const FieldPart *I048_V1_29_010_PARTS[] = {
+ &I048_V1_29_010_SAC,
+ &I048_V1_29_010_SIC,
+ NULL
+};
+static const AsterixField I048_V1_29_010 = { FIXED, 2, 0, 0, &hf_048_V1_29_010, I048_V1_29_010_PARTS, { NULL } };
+static int hf_048_V1_29_020 = -1;
+static int hf_048_V1_29_020_TYP = -1;
+static const value_string valstr_048_V1_29_020_TYP[] = {
+ { 0, "No detection" },
+ { 1, "Single PSR detection" },
+ { 2, "Single SSR detection" },
+ { 3, "SSR + PSR detection" },
+ { 4, "Single ModeS All-Call" },
+ { 5, "Single ModeS Roll-Call" },
+ { 6, "ModeS All-Call + PSR" },
+ { 7, "ModeS Roll-Call +PSR" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_020_TYP = { 3, 1.0, FIELD_PART_UINT, &hf_048_V1_29_020_TYP, NULL };
+static int hf_048_V1_29_020_SIM = -1;
+static const value_string valstr_048_V1_29_020_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_020_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_020_SIM, NULL };
+static int hf_048_V1_29_020_RDP = -1;
+static const value_string valstr_048_V1_29_020_RDP[] = {
+ { 0, "Report from RDP Chain 1" },
+ { 1, "Report from RDP Chain 2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_020_RDP = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_020_RDP, NULL };
+static int hf_048_V1_29_020_SPI = -1;
+static const value_string valstr_048_V1_29_020_SPI[] = {
+ { 0, "Absence of SPI" },
+ { 1, "Special Position Identification" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_020_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_020_SPI, NULL };
+static int hf_048_V1_29_020_RAB = -1;
+static const value_string valstr_048_V1_29_020_RAB[] = {
+ { 0, "Report from aircraft transponder" },
+ { 1, "Report from field monitor (fixed transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_020_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_020_RAB, NULL };
+static int hf_048_V1_29_020_TST = -1;
+static const value_string valstr_048_V1_29_020_TST[] = {
+ { 0, "Real target report" },
+ { 1, "Test target report" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_020_TST = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_020_TST, NULL };
+static int hf_048_V1_29_020_ERR = -1;
+static const value_string valstr_048_V1_29_020_ERR[] = {
+ { 0, "No Extended Range" },
+ { 1, "Extended Range present" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_020_ERR = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_020_ERR, NULL };
+static int hf_048_V1_29_020_XPP = -1;
+static const value_string valstr_048_V1_29_020_XPP[] = {
+ { 0, "No X-Pulse present" },
+ { 1, "X-Pulse present" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_020_XPP = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_020_XPP, NULL };
+static int hf_048_V1_29_020_ME = -1;
+static const value_string valstr_048_V1_29_020_ME[] = {
+ { 0, "No military emergency" },
+ { 1, "Military emergency" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_020_ME = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_020_ME, NULL };
+static int hf_048_V1_29_020_MI = -1;
+static const value_string valstr_048_V1_29_020_MI[] = {
+ { 0, "No military identification" },
+ { 1, "Military identification" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_020_MI = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_020_MI, NULL };
+static int hf_048_V1_29_020_FOEFRI = -1;
+static const value_string valstr_048_V1_29_020_FOEFRI[] = {
+ { 0, "No Mode 4 interrogation" },
+ { 1, "Friendly target" },
+ { 2, "Unknown target" },
+ { 3, "No reply" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_020_FOEFRI = { 2, 1.0, FIELD_PART_UINT, &hf_048_V1_29_020_FOEFRI, NULL };
+static const FieldPart *I048_V1_29_020_PARTS[] = {
+ &I048_V1_29_020_TYP,
+ &I048_V1_29_020_SIM,
+ &I048_V1_29_020_RDP,
+ &I048_V1_29_020_SPI,
+ &I048_V1_29_020_RAB,
+ &IXXX_FX,
+ &I048_V1_29_020_TST,
+ &I048_V1_29_020_ERR,
+ &I048_V1_29_020_XPP,
+ &I048_V1_29_020_ME,
+ &I048_V1_29_020_MI,
+ &I048_V1_29_020_FOEFRI,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I048_V1_29_020 = { FX, 1, 0, 0, &hf_048_V1_29_020, I048_V1_29_020_PARTS, { NULL } };
+static int hf_048_V1_29_030 = -1;
+static int hf_048_V1_29_030_Subitem = -1;
+static const value_string valstr_048_V1_29_030_Subitem[] = {
+ { 0, "Not defined; never used" },
+ { 1, "Multipath Reply (Reflection)" },
+ { 2, "Reply due to sidelobe interrogation/reception" },
+ { 3, "Split plot" },
+ { 4, "Second time around reply" },
+ { 5, "Angel" },
+ { 6, "Slow moving target correlated with road infrastructure (terrestrial vehicle)" },
+ { 7, "Fixed PSR plot" },
+ { 8, "Slow PSR target" },
+ { 9, "Low quality PSR plot" },
+ { 10, "Phantom SSR plot" },
+ { 11, "Non-Matching Mode-3/A Code" },
+ { 12, "Mode C code / Mode S altitude code abnormal value compared to the track" },
+ { 13, "Target in Clutter Area" },
+ { 14, "Maximum Doppler Response in Zero Filter" },
+ { 15, "Transponder anomaly detected" },
+ { 16, "Duplicated or Illegal Mode S Aircraft Address" },
+ { 17, "Mode S error correction applied" },
+ { 18, "Undecodable Mode C code / Mode S altitude code" },
+ { 19, "Birds" },
+ { 20, "Flock of Birds" },
+ { 21, "Mode-1 was present in original reply" },
+ { 22, "Mode-2 was present in original reply" },
+ { 23, "Plot potentially caused by Wind Turbine" },
+ { 24, "Helicopter" },
+ { 25, "Maximum number of re-interrogations reached (surveillance information)" },
+ { 26, "Maximum number of re-interrogations reached (BDS Extractions)" },
+ { 27, "BDS Overlay Incoherence" },
+ { 28, "Potential BDS Swap Detected" },
+ { 29, "Track Update in the Zenithal Gap" },
+ { 30, "Mode S Track re-acquired" },
+ { 31, "Duplicated Mode 5 Pair NO/PIN detected" },
+ { 32, "Wrong DF reply format detected" },
+ { 33, "Transponder anomaly (MS XPD replies with Mode A/C to Mode A/C-only all-call)" },
+ { 34, "Transponder anomaly (SI capability report wrong)" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_030_Subitem = { 7, 1.0, FIELD_PART_UINT, &hf_048_V1_29_030_Subitem, NULL };
+static const FieldPart *I048_V1_29_030_PARTS[] = {
+ &I048_V1_29_030_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I048_V1_29_030 = { FX, 1, 0, 0, &hf_048_V1_29_030, I048_V1_29_030_PARTS, { NULL } };
+static int hf_048_V1_29_040 = -1;
+static int hf_048_V1_29_040_RHO = -1;
+static const FieldPart I048_V1_29_040_RHO = { 16, 0.00390625, FIELD_PART_UFLOAT, &hf_048_V1_29_040_RHO, NULL };
+static int hf_048_V1_29_040_THETA = -1;
+static const FieldPart I048_V1_29_040_THETA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_048_V1_29_040_THETA, NULL };
+static const FieldPart *I048_V1_29_040_PARTS[] = {
+ &I048_V1_29_040_RHO,
+ &I048_V1_29_040_THETA,
+ NULL
+};
+static const AsterixField I048_V1_29_040 = { FIXED, 4, 0, 0, &hf_048_V1_29_040, I048_V1_29_040_PARTS, { NULL } };
+static int hf_048_V1_29_042 = -1;
+static int hf_048_V1_29_042_X = -1;
+static const FieldPart I048_V1_29_042_X = { 16, 0.0078125, FIELD_PART_FLOAT, &hf_048_V1_29_042_X, NULL };
+static int hf_048_V1_29_042_Y = -1;
+static const FieldPart I048_V1_29_042_Y = { 16, 0.0078125, FIELD_PART_FLOAT, &hf_048_V1_29_042_Y, NULL };
+static const FieldPart *I048_V1_29_042_PARTS[] = {
+ &I048_V1_29_042_X,
+ &I048_V1_29_042_Y,
+ NULL
+};
+static const AsterixField I048_V1_29_042 = { FIXED, 4, 0, 0, &hf_048_V1_29_042, I048_V1_29_042_PARTS, { NULL } };
+static int hf_048_V1_29_050 = -1;
+static int hf_048_V1_29_050_V = -1;
+static const value_string valstr_048_V1_29_050_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_050_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_050_V, NULL };
+static int hf_048_V1_29_050_G = -1;
+static const value_string valstr_048_V1_29_050_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_050_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_050_G, NULL };
+static int hf_048_V1_29_050_L = -1;
+static const value_string valstr_048_V1_29_050_L[] = {
+ { 0, "Mode-2 code as derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-2 code as provided by a local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_050_L = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_050_L, NULL };
+static int hf_048_V1_29_050_MODE2 = -1;
+static const FieldPart I048_V1_29_050_MODE2 = { 12, 1.0, FIELD_PART_SQUAWK, &hf_048_V1_29_050_MODE2, NULL };
+static const FieldPart *I048_V1_29_050_PARTS[] = {
+ &I048_V1_29_050_V,
+ &I048_V1_29_050_G,
+ &I048_V1_29_050_L,
+ &IXXX_1bit_spare,
+ &I048_V1_29_050_MODE2,
+ NULL
+};
+static const AsterixField I048_V1_29_050 = { FIXED, 2, 0, 0, &hf_048_V1_29_050, I048_V1_29_050_PARTS, { NULL } };
+static int hf_048_V1_29_055 = -1;
+static int hf_048_V1_29_055_V = -1;
+static const value_string valstr_048_V1_29_055_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_055_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_055_V, NULL };
+static int hf_048_V1_29_055_G = -1;
+static const value_string valstr_048_V1_29_055_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_055_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_055_G, NULL };
+static int hf_048_V1_29_055_L = -1;
+static const value_string valstr_048_V1_29_055_L[] = {
+ { 0, "Mode-1 code as derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-1 code as provided by a local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_055_L = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_055_L, NULL };
+static int hf_048_V1_29_055_MODE1 = -1;
+static const FieldPart I048_V1_29_055_MODE1 = { 5, 1.0, FIELD_PART_HEX, &hf_048_V1_29_055_MODE1, NULL };
+static const FieldPart *I048_V1_29_055_PARTS[] = {
+ &I048_V1_29_055_V,
+ &I048_V1_29_055_G,
+ &I048_V1_29_055_L,
+ &I048_V1_29_055_MODE1,
+ NULL
+};
+static const AsterixField I048_V1_29_055 = { FIXED, 1, 0, 0, &hf_048_V1_29_055, I048_V1_29_055_PARTS, { NULL } };
+static int hf_048_V1_29_060 = -1;
+static int hf_048_V1_29_060_QA4 = -1;
+static const value_string valstr_048_V1_29_060_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_060_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_060_QA4, NULL };
+static int hf_048_V1_29_060_QA2 = -1;
+static const value_string valstr_048_V1_29_060_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_060_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_060_QA2, NULL };
+static int hf_048_V1_29_060_QA1 = -1;
+static const value_string valstr_048_V1_29_060_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_060_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_060_QA1, NULL };
+static int hf_048_V1_29_060_QB4 = -1;
+static const value_string valstr_048_V1_29_060_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_060_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_060_QB4, NULL };
+static int hf_048_V1_29_060_QB2 = -1;
+static const value_string valstr_048_V1_29_060_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_060_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_060_QB2, NULL };
+static int hf_048_V1_29_060_QB1 = -1;
+static const value_string valstr_048_V1_29_060_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_060_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_060_QB1, NULL };
+static int hf_048_V1_29_060_QC4 = -1;
+static const value_string valstr_048_V1_29_060_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_060_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_060_QC4, NULL };
+static int hf_048_V1_29_060_QC2 = -1;
+static const value_string valstr_048_V1_29_060_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_060_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_060_QC2, NULL };
+static int hf_048_V1_29_060_QC1 = -1;
+static const value_string valstr_048_V1_29_060_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_060_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_060_QC1, NULL };
+static int hf_048_V1_29_060_QD4 = -1;
+static const value_string valstr_048_V1_29_060_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_060_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_060_QD4, NULL };
+static int hf_048_V1_29_060_QD2 = -1;
+static const value_string valstr_048_V1_29_060_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_060_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_060_QD2, NULL };
+static int hf_048_V1_29_060_QD1 = -1;
+static const value_string valstr_048_V1_29_060_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_060_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_060_QD1, NULL };
+static const FieldPart *I048_V1_29_060_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I048_V1_29_060_QA4,
+ &I048_V1_29_060_QA2,
+ &I048_V1_29_060_QA1,
+ &I048_V1_29_060_QB4,
+ &I048_V1_29_060_QB2,
+ &I048_V1_29_060_QB1,
+ &I048_V1_29_060_QC4,
+ &I048_V1_29_060_QC2,
+ &I048_V1_29_060_QC1,
+ &I048_V1_29_060_QD4,
+ &I048_V1_29_060_QD2,
+ &I048_V1_29_060_QD1,
+ NULL
+};
+static const AsterixField I048_V1_29_060 = { FIXED, 2, 0, 0, &hf_048_V1_29_060, I048_V1_29_060_PARTS, { NULL } };
+static int hf_048_V1_29_065 = -1;
+static int hf_048_V1_29_065_QA4 = -1;
+static const value_string valstr_048_V1_29_065_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_065_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_065_QA4, NULL };
+static int hf_048_V1_29_065_QA2 = -1;
+static const value_string valstr_048_V1_29_065_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_065_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_065_QA2, NULL };
+static int hf_048_V1_29_065_QA1 = -1;
+static const value_string valstr_048_V1_29_065_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_065_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_065_QA1, NULL };
+static int hf_048_V1_29_065_QB2 = -1;
+static const value_string valstr_048_V1_29_065_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_065_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_065_QB2, NULL };
+static int hf_048_V1_29_065_QB1 = -1;
+static const value_string valstr_048_V1_29_065_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_065_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_065_QB1, NULL };
+static const FieldPart *I048_V1_29_065_PARTS[] = {
+ &IXXX_3bit_spare,
+ &I048_V1_29_065_QA4,
+ &I048_V1_29_065_QA2,
+ &I048_V1_29_065_QA1,
+ &I048_V1_29_065_QB2,
+ &I048_V1_29_065_QB1,
+ NULL
+};
+static const AsterixField I048_V1_29_065 = { FIXED, 1, 0, 0, &hf_048_V1_29_065, I048_V1_29_065_PARTS, { NULL } };
+static int hf_048_V1_29_070 = -1;
+static int hf_048_V1_29_070_V = -1;
+static const value_string valstr_048_V1_29_070_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_070_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_070_V, NULL };
+static int hf_048_V1_29_070_G = -1;
+static const value_string valstr_048_V1_29_070_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_070_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_070_G, NULL };
+static int hf_048_V1_29_070_L = -1;
+static const value_string valstr_048_V1_29_070_L[] = {
+ { 0, "Mode-3/A code derived from the reply of the transponder" },
+ { 1, "Mode-3/A code not extracted during the last scan" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_070_L = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_070_L, NULL };
+static int hf_048_V1_29_070_MODE3A = -1;
+static const FieldPart I048_V1_29_070_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_048_V1_29_070_MODE3A, NULL };
+static const FieldPart *I048_V1_29_070_PARTS[] = {
+ &I048_V1_29_070_V,
+ &I048_V1_29_070_G,
+ &I048_V1_29_070_L,
+ &IXXX_1bit_spare,
+ &I048_V1_29_070_MODE3A,
+ NULL
+};
+static const AsterixField I048_V1_29_070 = { FIXED, 2, 0, 0, &hf_048_V1_29_070, I048_V1_29_070_PARTS, { NULL } };
+static int hf_048_V1_29_080 = -1;
+static int hf_048_V1_29_080_QA4 = -1;
+static const value_string valstr_048_V1_29_080_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_080_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_080_QA4, NULL };
+static int hf_048_V1_29_080_QA2 = -1;
+static const value_string valstr_048_V1_29_080_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_080_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_080_QA2, NULL };
+static int hf_048_V1_29_080_QA1 = -1;
+static const value_string valstr_048_V1_29_080_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_080_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_080_QA1, NULL };
+static int hf_048_V1_29_080_QB4 = -1;
+static const value_string valstr_048_V1_29_080_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_080_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_080_QB4, NULL };
+static int hf_048_V1_29_080_QB2 = -1;
+static const value_string valstr_048_V1_29_080_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_080_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_080_QB2, NULL };
+static int hf_048_V1_29_080_QB1 = -1;
+static const value_string valstr_048_V1_29_080_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_080_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_080_QB1, NULL };
+static int hf_048_V1_29_080_QC4 = -1;
+static const value_string valstr_048_V1_29_080_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_080_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_080_QC4, NULL };
+static int hf_048_V1_29_080_QC2 = -1;
+static const value_string valstr_048_V1_29_080_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_080_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_080_QC2, NULL };
+static int hf_048_V1_29_080_QC1 = -1;
+static const value_string valstr_048_V1_29_080_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_080_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_080_QC1, NULL };
+static int hf_048_V1_29_080_QD4 = -1;
+static const value_string valstr_048_V1_29_080_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_080_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_080_QD4, NULL };
+static int hf_048_V1_29_080_QD2 = -1;
+static const value_string valstr_048_V1_29_080_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_080_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_080_QD2, NULL };
+static int hf_048_V1_29_080_QD1 = -1;
+static const value_string valstr_048_V1_29_080_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_080_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_080_QD1, NULL };
+static const FieldPart *I048_V1_29_080_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I048_V1_29_080_QA4,
+ &I048_V1_29_080_QA2,
+ &I048_V1_29_080_QA1,
+ &I048_V1_29_080_QB4,
+ &I048_V1_29_080_QB2,
+ &I048_V1_29_080_QB1,
+ &I048_V1_29_080_QC4,
+ &I048_V1_29_080_QC2,
+ &I048_V1_29_080_QC1,
+ &I048_V1_29_080_QD4,
+ &I048_V1_29_080_QD2,
+ &I048_V1_29_080_QD1,
+ NULL
+};
+static const AsterixField I048_V1_29_080 = { FIXED, 2, 0, 0, &hf_048_V1_29_080, I048_V1_29_080_PARTS, { NULL } };
+static int hf_048_V1_29_090 = -1;
+static int hf_048_V1_29_090_V = -1;
+static const value_string valstr_048_V1_29_090_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_090_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_090_V, NULL };
+static int hf_048_V1_29_090_G = -1;
+static const value_string valstr_048_V1_29_090_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_090_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_090_G, NULL };
+static int hf_048_V1_29_090_FL = -1;
+static const FieldPart I048_V1_29_090_FL = { 14, 0.25, FIELD_PART_UFLOAT, &hf_048_V1_29_090_FL, NULL };
+static const FieldPart *I048_V1_29_090_PARTS[] = {
+ &I048_V1_29_090_V,
+ &I048_V1_29_090_G,
+ &I048_V1_29_090_FL,
+ NULL
+};
+static const AsterixField I048_V1_29_090 = { FIXED, 2, 0, 0, &hf_048_V1_29_090, I048_V1_29_090_PARTS, { NULL } };
+static int hf_048_V1_29_100 = -1;
+static int hf_048_V1_29_100_V = -1;
+static const value_string valstr_048_V1_29_100_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_100_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_100_V, NULL };
+static int hf_048_V1_29_100_G = -1;
+static const value_string valstr_048_V1_29_100_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_100_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_100_G, NULL };
+static int hf_048_V1_29_100_MODEC = -1;
+static const FieldPart I048_V1_29_100_MODEC = { 12, 1.0, FIELD_PART_HEX, &hf_048_V1_29_100_MODEC, NULL };
+static int hf_048_V1_29_100_QC1 = -1;
+static const value_string valstr_048_V1_29_100_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_100_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_100_QC1, NULL };
+static int hf_048_V1_29_100_QA1 = -1;
+static const value_string valstr_048_V1_29_100_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_100_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_100_QA1, NULL };
+static int hf_048_V1_29_100_QC2 = -1;
+static const value_string valstr_048_V1_29_100_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_100_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_100_QC2, NULL };
+static int hf_048_V1_29_100_QA2 = -1;
+static const value_string valstr_048_V1_29_100_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_100_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_100_QA2, NULL };
+static int hf_048_V1_29_100_QC4 = -1;
+static const value_string valstr_048_V1_29_100_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_100_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_100_QC4, NULL };
+static int hf_048_V1_29_100_QA4 = -1;
+static const value_string valstr_048_V1_29_100_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_100_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_100_QA4, NULL };
+static int hf_048_V1_29_100_QB1 = -1;
+static const value_string valstr_048_V1_29_100_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_100_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_100_QB1, NULL };
+static int hf_048_V1_29_100_QD1 = -1;
+static const value_string valstr_048_V1_29_100_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_100_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_100_QD1, NULL };
+static int hf_048_V1_29_100_QB2 = -1;
+static const value_string valstr_048_V1_29_100_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_100_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_100_QB2, NULL };
+static int hf_048_V1_29_100_QD2 = -1;
+static const value_string valstr_048_V1_29_100_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_100_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_100_QD2, NULL };
+static int hf_048_V1_29_100_QB4 = -1;
+static const value_string valstr_048_V1_29_100_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_100_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_100_QB4, NULL };
+static int hf_048_V1_29_100_QD4 = -1;
+static const value_string valstr_048_V1_29_100_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_100_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_100_QD4, NULL };
+static const FieldPart *I048_V1_29_100_PARTS[] = {
+ &I048_V1_29_100_V,
+ &I048_V1_29_100_G,
+ &IXXX_2bit_spare,
+ &I048_V1_29_100_MODEC,
+ &IXXX_4bit_spare,
+ &I048_V1_29_100_QC1,
+ &I048_V1_29_100_QA1,
+ &I048_V1_29_100_QC2,
+ &I048_V1_29_100_QA2,
+ &I048_V1_29_100_QC4,
+ &I048_V1_29_100_QA4,
+ &I048_V1_29_100_QB1,
+ &I048_V1_29_100_QD1,
+ &I048_V1_29_100_QB2,
+ &I048_V1_29_100_QD2,
+ &I048_V1_29_100_QB4,
+ &I048_V1_29_100_QD4,
+ NULL
+};
+static const AsterixField I048_V1_29_100 = { FIXED, 4, 0, 0, &hf_048_V1_29_100, I048_V1_29_100_PARTS, { NULL } };
+static int hf_048_V1_29_110 = -1;
+static int hf_048_V1_29_110_3DH = -1;
+static const FieldPart I048_V1_29_110_3DH = { 14, 25.0, FIELD_PART_FLOAT, &hf_048_V1_29_110_3DH, NULL };
+static const FieldPart *I048_V1_29_110_PARTS[] = {
+ &IXXX_2bit_spare,
+ &I048_V1_29_110_3DH,
+ NULL
+};
+static const AsterixField I048_V1_29_110 = { FIXED, 2, 0, 0, &hf_048_V1_29_110, I048_V1_29_110_PARTS, { NULL } };
+static int hf_048_V1_29_120 = -1;
+static int hf_048_V1_29_120_CAL = -1;
+static int hf_048_V1_29_120_CAL_D = -1;
+static const value_string valstr_048_V1_29_120_CAL_D[] = {
+ { 0, "Doppler speed is valid" },
+ { 1, "Doppler speed is doubtful" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_120_CAL_D = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_120_CAL_D, NULL };
+static int hf_048_V1_29_120_CAL_CAL = -1;
+static const FieldPart I048_V1_29_120_CAL_CAL = { 10, 1.0, FIELD_PART_FLOAT, &hf_048_V1_29_120_CAL_CAL, NULL };
+static const FieldPart *I048_V1_29_120_CAL_PARTS[] = {
+ &I048_V1_29_120_CAL_D,
+ &IXXX_5bit_spare,
+ &I048_V1_29_120_CAL_CAL,
+ NULL
+};
+static const AsterixField I048_V1_29_120_CAL = { FIXED, 2, 0, 0, &hf_048_V1_29_120_CAL, I048_V1_29_120_CAL_PARTS, { NULL } };
+static int hf_048_V1_29_120_RDS = -1;
+static int hf_048_V1_29_120_RDS_DOP = -1;
+static const FieldPart I048_V1_29_120_RDS_DOP = { 16, 1.0, FIELD_PART_UFLOAT, &hf_048_V1_29_120_RDS_DOP, NULL };
+static int hf_048_V1_29_120_RDS_AMB = -1;
+static const FieldPart I048_V1_29_120_RDS_AMB = { 16, 1.0, FIELD_PART_UFLOAT, &hf_048_V1_29_120_RDS_AMB, NULL };
+static int hf_048_V1_29_120_RDS_FRQ = -1;
+static const FieldPart I048_V1_29_120_RDS_FRQ = { 16, 1.0, FIELD_PART_UFLOAT, &hf_048_V1_29_120_RDS_FRQ, NULL };
+static const FieldPart *I048_V1_29_120_RDS_PARTS[] = {
+ &I048_V1_29_120_RDS_DOP,
+ &I048_V1_29_120_RDS_AMB,
+ &I048_V1_29_120_RDS_FRQ,
+ NULL
+};
+static const AsterixField I048_V1_29_120_RDS = { REPETITIVE, 6, 1, 0, &hf_048_V1_29_120_RDS, I048_V1_29_120_RDS_PARTS, { NULL } };
+static const AsterixField I048_V1_29_120 = { COMPOUND, 0, 0, 0, &hf_048_V1_29_120, NULL, { &I048_V1_29_120_CAL, &I048_V1_29_120_RDS, NULL } };
+static int hf_048_V1_29_130 = -1;
+static int hf_048_V1_29_130_SRL = -1;
+static int hf_048_V1_29_130_SRL_VALUE = -1;
+static const FieldPart I048_V1_29_130_SRL_VALUE = { 8, 0.0439453125, FIELD_PART_UFLOAT, &hf_048_V1_29_130_SRL_VALUE, NULL };
+static const FieldPart *I048_V1_29_130_SRL_PARTS[] = {
+ &I048_V1_29_130_SRL_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_29_130_SRL = { FIXED, 1, 0, 0, &hf_048_V1_29_130_SRL, I048_V1_29_130_SRL_PARTS, { NULL } };
+static int hf_048_V1_29_130_SRR = -1;
+static int hf_048_V1_29_130_SRR_VALUE = -1;
+static const FieldPart I048_V1_29_130_SRR_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_048_V1_29_130_SRR_VALUE, NULL };
+static const FieldPart *I048_V1_29_130_SRR_PARTS[] = {
+ &I048_V1_29_130_SRR_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_29_130_SRR = { FIXED, 1, 0, 0, &hf_048_V1_29_130_SRR, I048_V1_29_130_SRR_PARTS, { NULL } };
+static int hf_048_V1_29_130_SAM = -1;
+static int hf_048_V1_29_130_SAM_VALUE = -1;
+static const FieldPart I048_V1_29_130_SAM_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_048_V1_29_130_SAM_VALUE, NULL };
+static const FieldPart *I048_V1_29_130_SAM_PARTS[] = {
+ &I048_V1_29_130_SAM_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_29_130_SAM = { FIXED, 1, 0, 0, &hf_048_V1_29_130_SAM, I048_V1_29_130_SAM_PARTS, { NULL } };
+static int hf_048_V1_29_130_PRL = -1;
+static int hf_048_V1_29_130_PRL_VALUE = -1;
+static const FieldPart I048_V1_29_130_PRL_VALUE = { 8, 0.0439453125, FIELD_PART_UFLOAT, &hf_048_V1_29_130_PRL_VALUE, NULL };
+static const FieldPart *I048_V1_29_130_PRL_PARTS[] = {
+ &I048_V1_29_130_PRL_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_29_130_PRL = { FIXED, 1, 0, 0, &hf_048_V1_29_130_PRL, I048_V1_29_130_PRL_PARTS, { NULL } };
+static int hf_048_V1_29_130_PAM = -1;
+static int hf_048_V1_29_130_PAM_VALUE = -1;
+static const FieldPart I048_V1_29_130_PAM_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_048_V1_29_130_PAM_VALUE, NULL };
+static const FieldPart *I048_V1_29_130_PAM_PARTS[] = {
+ &I048_V1_29_130_PAM_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_29_130_PAM = { FIXED, 1, 0, 0, &hf_048_V1_29_130_PAM, I048_V1_29_130_PAM_PARTS, { NULL } };
+static int hf_048_V1_29_130_RPD = -1;
+static int hf_048_V1_29_130_RPD_VALUE = -1;
+static const FieldPart I048_V1_29_130_RPD_VALUE = { 8, 0.00390625, FIELD_PART_FLOAT, &hf_048_V1_29_130_RPD_VALUE, NULL };
+static const FieldPart *I048_V1_29_130_RPD_PARTS[] = {
+ &I048_V1_29_130_RPD_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_29_130_RPD = { FIXED, 1, 0, 0, &hf_048_V1_29_130_RPD, I048_V1_29_130_RPD_PARTS, { NULL } };
+static int hf_048_V1_29_130_APD = -1;
+static int hf_048_V1_29_130_APD_VALUE = -1;
+static const FieldPart I048_V1_29_130_APD_VALUE = { 8, 0.02197265625, FIELD_PART_FLOAT, &hf_048_V1_29_130_APD_VALUE, NULL };
+static const FieldPart *I048_V1_29_130_APD_PARTS[] = {
+ &I048_V1_29_130_APD_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_29_130_APD = { FIXED, 1, 0, 0, &hf_048_V1_29_130_APD, I048_V1_29_130_APD_PARTS, { NULL } };
+static const AsterixField I048_V1_29_130 = { COMPOUND, 0, 0, 0, &hf_048_V1_29_130, NULL, { &I048_V1_29_130_SRL, &I048_V1_29_130_SRR, &I048_V1_29_130_SAM, &I048_V1_29_130_PRL, &I048_V1_29_130_PAM, &I048_V1_29_130_RPD, &I048_V1_29_130_APD, NULL } };
+static int hf_048_V1_29_140 = -1;
+static int hf_048_V1_29_140_VALUE = -1;
+static const FieldPart I048_V1_29_140_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_048_V1_29_140_VALUE, NULL };
+static const FieldPart *I048_V1_29_140_PARTS[] = {
+ &I048_V1_29_140_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_29_140 = { FIXED, 3, 0, 0, &hf_048_V1_29_140, I048_V1_29_140_PARTS, { NULL } };
+static int hf_048_V1_29_161 = -1;
+static int hf_048_V1_29_161_TRN = -1;
+static const FieldPart I048_V1_29_161_TRN = { 12, 1.0, FIELD_PART_HEX, &hf_048_V1_29_161_TRN, NULL };
+static const FieldPart *I048_V1_29_161_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I048_V1_29_161_TRN,
+ NULL
+};
+static const AsterixField I048_V1_29_161 = { FIXED, 2, 0, 0, &hf_048_V1_29_161, I048_V1_29_161_PARTS, { NULL } };
+static int hf_048_V1_29_170 = -1;
+static int hf_048_V1_29_170_CNF = -1;
+static const value_string valstr_048_V1_29_170_CNF[] = {
+ { 0, "Confirmed Track" },
+ { 1, "Tentative Track" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_170_CNF = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_170_CNF, NULL };
+static int hf_048_V1_29_170_RAD = -1;
+static const value_string valstr_048_V1_29_170_RAD[] = {
+ { 0, "Combined Track" },
+ { 1, "PSR Track" },
+ { 2, "SSR/Mode S Track" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_170_RAD = { 2, 1.0, FIELD_PART_UINT, &hf_048_V1_29_170_RAD, NULL };
+static int hf_048_V1_29_170_DOU = -1;
+static const value_string valstr_048_V1_29_170_DOU[] = {
+ { 0, "Normal confidence" },
+ { 1, "Low confidence in plot to track association" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_170_DOU = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_170_DOU, NULL };
+static int hf_048_V1_29_170_MAH = -1;
+static const value_string valstr_048_V1_29_170_MAH[] = {
+ { 0, "No horizontal man.sensed" },
+ { 1, "Horizontal man. sensed" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_170_MAH = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_170_MAH, NULL };
+static int hf_048_V1_29_170_CDM = -1;
+static const value_string valstr_048_V1_29_170_CDM[] = {
+ { 0, "Maintaining" },
+ { 1, "Climbing" },
+ { 2, "Descending" },
+ { 3, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_170_CDM = { 2, 1.0, FIELD_PART_UINT, &hf_048_V1_29_170_CDM, NULL };
+static int hf_048_V1_29_170_TRE = -1;
+static const value_string valstr_048_V1_29_170_TRE[] = {
+ { 0, "Track still alive" },
+ { 1, "End of track lifetime(last report for this track)" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_170_TRE = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_170_TRE, NULL };
+static int hf_048_V1_29_170_GHO = -1;
+static const value_string valstr_048_V1_29_170_GHO[] = {
+ { 0, "True target track" },
+ { 1, "Ghost target track" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_170_GHO = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_170_GHO, NULL };
+static int hf_048_V1_29_170_SUP = -1;
+static const value_string valstr_048_V1_29_170_SUP[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_170_SUP = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_170_SUP, NULL };
+static int hf_048_V1_29_170_TCC = -1;
+static const value_string valstr_048_V1_29_170_TCC[] = {
+ { 0, "Tracking performed in so-called \'Radar Plane\', i.e. neither slant range correction nor stereographical projection was applied" },
+ { 1, "Slant range correction and a suitable projection technique are used to track in a 2D.reference plane, tangential to the earth model at the Radar Site co-ordinates" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_170_TCC = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_170_TCC, NULL };
+static const FieldPart *I048_V1_29_170_PARTS[] = {
+ &I048_V1_29_170_CNF,
+ &I048_V1_29_170_RAD,
+ &I048_V1_29_170_DOU,
+ &I048_V1_29_170_MAH,
+ &I048_V1_29_170_CDM,
+ &IXXX_FX,
+ &I048_V1_29_170_TRE,
+ &I048_V1_29_170_GHO,
+ &I048_V1_29_170_SUP,
+ &I048_V1_29_170_TCC,
+ &IXXX_3bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I048_V1_29_170 = { FX, 1, 0, 0, &hf_048_V1_29_170, I048_V1_29_170_PARTS, { NULL } };
+static int hf_048_V1_29_200 = -1;
+static int hf_048_V1_29_200_GSP = -1;
+static const FieldPart I048_V1_29_200_GSP = { 16, 0.00006103515625, FIELD_PART_UFLOAT, &hf_048_V1_29_200_GSP, NULL };
+static int hf_048_V1_29_200_HDG = -1;
+static const FieldPart I048_V1_29_200_HDG = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_048_V1_29_200_HDG, NULL };
+static const FieldPart *I048_V1_29_200_PARTS[] = {
+ &I048_V1_29_200_GSP,
+ &I048_V1_29_200_HDG,
+ NULL
+};
+static const AsterixField I048_V1_29_200 = { FIXED, 4, 0, 0, &hf_048_V1_29_200, I048_V1_29_200_PARTS, { NULL } };
+static int hf_048_V1_29_210 = -1;
+static int hf_048_V1_29_210_SIGX = -1;
+static const FieldPart I048_V1_29_210_SIGX = { 8, 0.0078125, FIELD_PART_UFLOAT, &hf_048_V1_29_210_SIGX, NULL };
+static int hf_048_V1_29_210_SIGY = -1;
+static const FieldPart I048_V1_29_210_SIGY = { 8, 0.0078125, FIELD_PART_UFLOAT, &hf_048_V1_29_210_SIGY, NULL };
+static int hf_048_V1_29_210_SIGV = -1;
+static const FieldPart I048_V1_29_210_SIGV = { 8, 0.00006103515625, FIELD_PART_UFLOAT, &hf_048_V1_29_210_SIGV, NULL };
+static int hf_048_V1_29_210_SIGH = -1;
+static const FieldPart I048_V1_29_210_SIGH = { 8, 0.087890625, FIELD_PART_UFLOAT, &hf_048_V1_29_210_SIGH, NULL };
+static const FieldPart *I048_V1_29_210_PARTS[] = {
+ &I048_V1_29_210_SIGX,
+ &I048_V1_29_210_SIGY,
+ &I048_V1_29_210_SIGV,
+ &I048_V1_29_210_SIGH,
+ NULL
+};
+static const AsterixField I048_V1_29_210 = { FIXED, 4, 0, 0, &hf_048_V1_29_210, I048_V1_29_210_PARTS, { NULL } };
+static int hf_048_V1_29_220 = -1;
+static int hf_048_V1_29_220_VALUE = -1;
+static const FieldPart I048_V1_29_220_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_048_V1_29_220_VALUE, NULL };
+static const FieldPart *I048_V1_29_220_PARTS[] = {
+ &I048_V1_29_220_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_29_220 = { FIXED, 3, 0, 0, &hf_048_V1_29_220, I048_V1_29_220_PARTS, { NULL } };
+static int hf_048_V1_29_230 = -1;
+static int hf_048_V1_29_230_COM = -1;
+static const value_string valstr_048_V1_29_230_COM[] = {
+ { 0, "No communications capability (surveillance only)" },
+ { 1, "Comm. A and Comm. B capability" },
+ { 2, "Comm. A, Comm. B and Uplink ELM" },
+ { 3, "Comm. A, Comm. B, Uplink ELM and Downlink ELM" },
+ { 4, "Level 5 Transponder capability" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_230_COM = { 3, 1.0, FIELD_PART_UINT, &hf_048_V1_29_230_COM, NULL };
+static int hf_048_V1_29_230_STAT = -1;
+static const value_string valstr_048_V1_29_230_STAT[] = {
+ { 0, "No alert, no SPI, aircraft airborne" },
+ { 1, "No alert, no SPI, aircraft on ground" },
+ { 2, "Alert, no SPI, aircraft airborne" },
+ { 3, "Alert, no SPI, aircraft on ground" },
+ { 4, "Alert, SPI, aircraft airborne or on ground" },
+ { 5, "No alert, SPI, aircraft airborne or on ground" },
+ { 7, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_230_STAT = { 3, 1.0, FIELD_PART_UINT, &hf_048_V1_29_230_STAT, NULL };
+static int hf_048_V1_29_230_SI = -1;
+static const value_string valstr_048_V1_29_230_SI[] = {
+ { 0, "SI-Code Capable" },
+ { 1, "II-Code Capable" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_230_SI = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_230_SI, NULL };
+static int hf_048_V1_29_230_MSSC = -1;
+static const value_string valstr_048_V1_29_230_MSSC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_230_MSSC = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_230_MSSC, NULL };
+static int hf_048_V1_29_230_ARC = -1;
+static const value_string valstr_048_V1_29_230_ARC[] = {
+ { 0, "100 ft resolution" },
+ { 1, "25 ft resolution" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_230_ARC = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_230_ARC, NULL };
+static int hf_048_V1_29_230_AIC = -1;
+static const value_string valstr_048_V1_29_230_AIC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_29_230_AIC = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_29_230_AIC, NULL };
+static int hf_048_V1_29_230_B1A = -1;
+static const FieldPart I048_V1_29_230_B1A = { 1, 1.0, FIELD_PART_HEX, &hf_048_V1_29_230_B1A, NULL };
+static int hf_048_V1_29_230_B1B = -1;
+static const FieldPart I048_V1_29_230_B1B = { 4, 1.0, FIELD_PART_HEX, &hf_048_V1_29_230_B1B, NULL };
+static const FieldPart *I048_V1_29_230_PARTS[] = {
+ &I048_V1_29_230_COM,
+ &I048_V1_29_230_STAT,
+ &I048_V1_29_230_SI,
+ &IXXX_1bit_spare,
+ &I048_V1_29_230_MSSC,
+ &I048_V1_29_230_ARC,
+ &I048_V1_29_230_AIC,
+ &I048_V1_29_230_B1A,
+ &I048_V1_29_230_B1B,
+ NULL
+};
+static const AsterixField I048_V1_29_230 = { FIXED, 2, 0, 0, &hf_048_V1_29_230, I048_V1_29_230_PARTS, { NULL } };
+static int hf_048_V1_29_240 = -1;
+static int hf_048_V1_29_240_VALUE = -1;
+static const FieldPart I048_V1_29_240_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_048_V1_29_240_VALUE, NULL };
+static const FieldPart *I048_V1_29_240_PARTS[] = {
+ &I048_V1_29_240_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_29_240 = { FIXED, 6, 0, 0, &hf_048_V1_29_240, I048_V1_29_240_PARTS, { NULL } };
+static int hf_048_V1_29_250 = -1;
+static int hf_048_V1_29_250_MBDATA = -1;
+static const FieldPart I048_V1_29_250_MBDATA = { 56, 1.0, FIELD_PART_HEX, &hf_048_V1_29_250_MBDATA, NULL };
+static int hf_048_V1_29_250_BDS1 = -1;
+static const FieldPart I048_V1_29_250_BDS1 = { 4, 1.0, FIELD_PART_HEX, &hf_048_V1_29_250_BDS1, NULL };
+static int hf_048_V1_29_250_BDS2 = -1;
+static const FieldPart I048_V1_29_250_BDS2 = { 4, 1.0, FIELD_PART_HEX, &hf_048_V1_29_250_BDS2, NULL };
+static const FieldPart *I048_V1_29_250_PARTS[] = {
+ &I048_V1_29_250_MBDATA,
+ &I048_V1_29_250_BDS1,
+ &I048_V1_29_250_BDS2,
+ NULL
+};
+static const AsterixField I048_V1_29_250 = { REPETITIVE, 8, 1, 0, &hf_048_V1_29_250, I048_V1_29_250_PARTS, { NULL } };
+static int hf_048_V1_29_260 = -1;
+static int hf_048_V1_29_260_VALUE = -1;
+static const FieldPart I048_V1_29_260_VALUE = { 56, 1.0, FIELD_PART_HEX, &hf_048_V1_29_260_VALUE, NULL };
+static const FieldPart *I048_V1_29_260_PARTS[] = {
+ &I048_V1_29_260_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_29_260 = { FIXED, 7, 0, 0, &hf_048_V1_29_260, I048_V1_29_260_PARTS, { NULL } };
+static int hf_048_V1_29_RE = -1;
+static const AsterixField I048_V1_29_RE = { EXP, 0, 0, 1, &hf_048_V1_29_RE, NULL, { NULL } };
+static int hf_048_V1_29_SP = -1;
+static const AsterixField I048_V1_29_SP = { EXP, 0, 0, 1, &hf_048_V1_29_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I048_V1_29_uap[] = {
+ &I048_V1_29_010,
+ &I048_V1_29_140,
+ &I048_V1_29_020,
+ &I048_V1_29_040,
+ &I048_V1_29_070,
+ &I048_V1_29_090,
+ &I048_V1_29_130,
+ &I048_V1_29_220,
+ &I048_V1_29_240,
+ &I048_V1_29_250,
+ &I048_V1_29_161,
+ &I048_V1_29_042,
+ &I048_V1_29_200,
+ &I048_V1_29_170,
+ &I048_V1_29_210,
+ &I048_V1_29_030,
+ &I048_V1_29_080,
+ &I048_V1_29_100,
+ &I048_V1_29_110,
+ &I048_V1_29_120,
+ &I048_V1_29_230,
+ &I048_V1_29_260,
+ &I048_V1_29_055,
+ &I048_V1_29_050,
+ &I048_V1_29_065,
+ &I048_V1_29_060,
+ &I048_V1_29_SP,
+ &I048_V1_29_RE,
+ NULL
+};
+static const AsterixField **I048_V1_29[] = {
+ I048_V1_29_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 048, edition 1.30 */
+static int hf_048_V1_30_010 = -1;
+static int hf_048_V1_30_010_SAC = -1;
+static const FieldPart I048_V1_30_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_048_V1_30_010_SAC, NULL };
+static int hf_048_V1_30_010_SIC = -1;
+static const FieldPart I048_V1_30_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_048_V1_30_010_SIC, NULL };
+static const FieldPart *I048_V1_30_010_PARTS[] = {
+ &I048_V1_30_010_SAC,
+ &I048_V1_30_010_SIC,
+ NULL
+};
+static const AsterixField I048_V1_30_010 = { FIXED, 2, 0, 0, &hf_048_V1_30_010, I048_V1_30_010_PARTS, { NULL } };
+static int hf_048_V1_30_020 = -1;
+static int hf_048_V1_30_020_TYP = -1;
+static const value_string valstr_048_V1_30_020_TYP[] = {
+ { 0, "No detection" },
+ { 1, "Single PSR detection" },
+ { 2, "Single SSR detection" },
+ { 3, "SSR + PSR detection" },
+ { 4, "Single ModeS All-Call" },
+ { 5, "Single ModeS Roll-Call" },
+ { 6, "ModeS All-Call + PSR" },
+ { 7, "ModeS Roll-Call +PSR" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_020_TYP = { 3, 1.0, FIELD_PART_UINT, &hf_048_V1_30_020_TYP, NULL };
+static int hf_048_V1_30_020_SIM = -1;
+static const value_string valstr_048_V1_30_020_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_020_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_020_SIM, NULL };
+static int hf_048_V1_30_020_RDP = -1;
+static const value_string valstr_048_V1_30_020_RDP[] = {
+ { 0, "Report from RDP Chain 1" },
+ { 1, "Report from RDP Chain 2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_020_RDP = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_020_RDP, NULL };
+static int hf_048_V1_30_020_SPI = -1;
+static const value_string valstr_048_V1_30_020_SPI[] = {
+ { 0, "Absence of SPI" },
+ { 1, "Special Position Identification" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_020_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_020_SPI, NULL };
+static int hf_048_V1_30_020_RAB = -1;
+static const value_string valstr_048_V1_30_020_RAB[] = {
+ { 0, "Report from aircraft transponder" },
+ { 1, "Report from field monitor (fixed transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_020_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_020_RAB, NULL };
+static int hf_048_V1_30_020_TST = -1;
+static const value_string valstr_048_V1_30_020_TST[] = {
+ { 0, "Real target report" },
+ { 1, "Test target report" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_020_TST = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_020_TST, NULL };
+static int hf_048_V1_30_020_ERR = -1;
+static const value_string valstr_048_V1_30_020_ERR[] = {
+ { 0, "No Extended Range" },
+ { 1, "Extended Range present" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_020_ERR = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_020_ERR, NULL };
+static int hf_048_V1_30_020_XPP = -1;
+static const value_string valstr_048_V1_30_020_XPP[] = {
+ { 0, "No X-Pulse present" },
+ { 1, "X-Pulse present" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_020_XPP = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_020_XPP, NULL };
+static int hf_048_V1_30_020_ME = -1;
+static const value_string valstr_048_V1_30_020_ME[] = {
+ { 0, "No military emergency" },
+ { 1, "Military emergency" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_020_ME = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_020_ME, NULL };
+static int hf_048_V1_30_020_MI = -1;
+static const value_string valstr_048_V1_30_020_MI[] = {
+ { 0, "No military identification" },
+ { 1, "Military identification" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_020_MI = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_020_MI, NULL };
+static int hf_048_V1_30_020_FOEFRI = -1;
+static const value_string valstr_048_V1_30_020_FOEFRI[] = {
+ { 0, "No Mode 4 interrogation" },
+ { 1, "Friendly target" },
+ { 2, "Unknown target" },
+ { 3, "No reply" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_020_FOEFRI = { 2, 1.0, FIELD_PART_UINT, &hf_048_V1_30_020_FOEFRI, NULL };
+static const FieldPart *I048_V1_30_020_PARTS[] = {
+ &I048_V1_30_020_TYP,
+ &I048_V1_30_020_SIM,
+ &I048_V1_30_020_RDP,
+ &I048_V1_30_020_SPI,
+ &I048_V1_30_020_RAB,
+ &IXXX_FX,
+ &I048_V1_30_020_TST,
+ &I048_V1_30_020_ERR,
+ &I048_V1_30_020_XPP,
+ &I048_V1_30_020_ME,
+ &I048_V1_30_020_MI,
+ &I048_V1_30_020_FOEFRI,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I048_V1_30_020 = { FX, 1, 0, 0, &hf_048_V1_30_020, I048_V1_30_020_PARTS, { NULL } };
+static int hf_048_V1_30_030 = -1;
+static int hf_048_V1_30_030_Subitem = -1;
+static const value_string valstr_048_V1_30_030_Subitem[] = {
+ { 0, "Not defined; never used" },
+ { 1, "Multipath Reply (Reflection)" },
+ { 2, "Reply due to sidelobe interrogation/reception" },
+ { 3, "Split plot" },
+ { 4, "Second time around reply" },
+ { 5, "Angel" },
+ { 6, "Slow moving target correlated with road infrastructure (terrestrial vehicle)" },
+ { 7, "Fixed PSR plot" },
+ { 8, "Slow PSR target" },
+ { 9, "Low quality PSR plot" },
+ { 10, "Phantom SSR plot" },
+ { 11, "Non-Matching Mode-3/A Code" },
+ { 12, "Mode C code / Mode S altitude code abnormal value compared to the track" },
+ { 13, "Target in Clutter Area" },
+ { 14, "Maximum Doppler Response in Zero Filter" },
+ { 15, "Transponder anomaly detected" },
+ { 16, "Duplicated or Illegal Mode S Aircraft Address" },
+ { 17, "Mode S error correction applied" },
+ { 18, "Undecodable Mode C code / Mode S altitude code" },
+ { 19, "Birds" },
+ { 20, "Flock of Birds" },
+ { 21, "Mode-1 was present in original reply" },
+ { 22, "Mode-2 was present in original reply" },
+ { 23, "Plot potentially caused by Wind Turbine" },
+ { 24, "Helicopter" },
+ { 25, "Maximum number of re-interrogations reached (surveillance information)" },
+ { 26, "Maximum number of re-interrogations reached (BDS Extractions)" },
+ { 27, "BDS Overlay Incoherence" },
+ { 28, "Potential BDS Swap Detected" },
+ { 29, "Track Update in the Zenithal Gap" },
+ { 30, "Mode S Track re-acquired" },
+ { 31, "Duplicated Mode 5 Pair NO/PIN detected" },
+ { 32, "Wrong DF reply format detected" },
+ { 33, "Transponder anomaly (MS XPD replies with Mode A/C to Mode A/C-only all-call)" },
+ { 34, "Transponder anomaly (SI capability report wrong)" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_030_Subitem = { 7, 1.0, FIELD_PART_UINT, &hf_048_V1_30_030_Subitem, NULL };
+static const FieldPart *I048_V1_30_030_PARTS[] = {
+ &I048_V1_30_030_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I048_V1_30_030 = { FX, 1, 0, 0, &hf_048_V1_30_030, I048_V1_30_030_PARTS, { NULL } };
+static int hf_048_V1_30_040 = -1;
+static int hf_048_V1_30_040_RHO = -1;
+static const FieldPart I048_V1_30_040_RHO = { 16, 0.00390625, FIELD_PART_UFLOAT, &hf_048_V1_30_040_RHO, NULL };
+static int hf_048_V1_30_040_THETA = -1;
+static const FieldPart I048_V1_30_040_THETA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_048_V1_30_040_THETA, NULL };
+static const FieldPart *I048_V1_30_040_PARTS[] = {
+ &I048_V1_30_040_RHO,
+ &I048_V1_30_040_THETA,
+ NULL
+};
+static const AsterixField I048_V1_30_040 = { FIXED, 4, 0, 0, &hf_048_V1_30_040, I048_V1_30_040_PARTS, { NULL } };
+static int hf_048_V1_30_042 = -1;
+static int hf_048_V1_30_042_X = -1;
+static const FieldPart I048_V1_30_042_X = { 16, 0.0078125, FIELD_PART_FLOAT, &hf_048_V1_30_042_X, NULL };
+static int hf_048_V1_30_042_Y = -1;
+static const FieldPart I048_V1_30_042_Y = { 16, 0.0078125, FIELD_PART_FLOAT, &hf_048_V1_30_042_Y, NULL };
+static const FieldPart *I048_V1_30_042_PARTS[] = {
+ &I048_V1_30_042_X,
+ &I048_V1_30_042_Y,
+ NULL
+};
+static const AsterixField I048_V1_30_042 = { FIXED, 4, 0, 0, &hf_048_V1_30_042, I048_V1_30_042_PARTS, { NULL } };
+static int hf_048_V1_30_050 = -1;
+static int hf_048_V1_30_050_V = -1;
+static const value_string valstr_048_V1_30_050_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_050_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_050_V, NULL };
+static int hf_048_V1_30_050_G = -1;
+static const value_string valstr_048_V1_30_050_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_050_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_050_G, NULL };
+static int hf_048_V1_30_050_L = -1;
+static const value_string valstr_048_V1_30_050_L[] = {
+ { 0, "Mode-2 code as derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-2 code as provided by a local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_050_L = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_050_L, NULL };
+static int hf_048_V1_30_050_MODE2 = -1;
+static const FieldPart I048_V1_30_050_MODE2 = { 12, 1.0, FIELD_PART_SQUAWK, &hf_048_V1_30_050_MODE2, NULL };
+static const FieldPart *I048_V1_30_050_PARTS[] = {
+ &I048_V1_30_050_V,
+ &I048_V1_30_050_G,
+ &I048_V1_30_050_L,
+ &IXXX_1bit_spare,
+ &I048_V1_30_050_MODE2,
+ NULL
+};
+static const AsterixField I048_V1_30_050 = { FIXED, 2, 0, 0, &hf_048_V1_30_050, I048_V1_30_050_PARTS, { NULL } };
+static int hf_048_V1_30_055 = -1;
+static int hf_048_V1_30_055_V = -1;
+static const value_string valstr_048_V1_30_055_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_055_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_055_V, NULL };
+static int hf_048_V1_30_055_G = -1;
+static const value_string valstr_048_V1_30_055_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_055_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_055_G, NULL };
+static int hf_048_V1_30_055_L = -1;
+static const value_string valstr_048_V1_30_055_L[] = {
+ { 0, "Mode-1 code as derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-1 code as provided by a local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_055_L = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_055_L, NULL };
+static int hf_048_V1_30_055_MODE1 = -1;
+static const FieldPart I048_V1_30_055_MODE1 = { 5, 1.0, FIELD_PART_HEX, &hf_048_V1_30_055_MODE1, NULL };
+static const FieldPart *I048_V1_30_055_PARTS[] = {
+ &I048_V1_30_055_V,
+ &I048_V1_30_055_G,
+ &I048_V1_30_055_L,
+ &I048_V1_30_055_MODE1,
+ NULL
+};
+static const AsterixField I048_V1_30_055 = { FIXED, 1, 0, 0, &hf_048_V1_30_055, I048_V1_30_055_PARTS, { NULL } };
+static int hf_048_V1_30_060 = -1;
+static int hf_048_V1_30_060_QA4 = -1;
+static const value_string valstr_048_V1_30_060_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_060_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_060_QA4, NULL };
+static int hf_048_V1_30_060_QA2 = -1;
+static const value_string valstr_048_V1_30_060_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_060_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_060_QA2, NULL };
+static int hf_048_V1_30_060_QA1 = -1;
+static const value_string valstr_048_V1_30_060_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_060_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_060_QA1, NULL };
+static int hf_048_V1_30_060_QB4 = -1;
+static const value_string valstr_048_V1_30_060_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_060_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_060_QB4, NULL };
+static int hf_048_V1_30_060_QB2 = -1;
+static const value_string valstr_048_V1_30_060_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_060_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_060_QB2, NULL };
+static int hf_048_V1_30_060_QB1 = -1;
+static const value_string valstr_048_V1_30_060_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_060_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_060_QB1, NULL };
+static int hf_048_V1_30_060_QC4 = -1;
+static const value_string valstr_048_V1_30_060_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_060_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_060_QC4, NULL };
+static int hf_048_V1_30_060_QC2 = -1;
+static const value_string valstr_048_V1_30_060_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_060_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_060_QC2, NULL };
+static int hf_048_V1_30_060_QC1 = -1;
+static const value_string valstr_048_V1_30_060_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_060_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_060_QC1, NULL };
+static int hf_048_V1_30_060_QD4 = -1;
+static const value_string valstr_048_V1_30_060_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_060_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_060_QD4, NULL };
+static int hf_048_V1_30_060_QD2 = -1;
+static const value_string valstr_048_V1_30_060_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_060_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_060_QD2, NULL };
+static int hf_048_V1_30_060_QD1 = -1;
+static const value_string valstr_048_V1_30_060_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_060_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_060_QD1, NULL };
+static const FieldPart *I048_V1_30_060_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I048_V1_30_060_QA4,
+ &I048_V1_30_060_QA2,
+ &I048_V1_30_060_QA1,
+ &I048_V1_30_060_QB4,
+ &I048_V1_30_060_QB2,
+ &I048_V1_30_060_QB1,
+ &I048_V1_30_060_QC4,
+ &I048_V1_30_060_QC2,
+ &I048_V1_30_060_QC1,
+ &I048_V1_30_060_QD4,
+ &I048_V1_30_060_QD2,
+ &I048_V1_30_060_QD1,
+ NULL
+};
+static const AsterixField I048_V1_30_060 = { FIXED, 2, 0, 0, &hf_048_V1_30_060, I048_V1_30_060_PARTS, { NULL } };
+static int hf_048_V1_30_065 = -1;
+static int hf_048_V1_30_065_QA4 = -1;
+static const value_string valstr_048_V1_30_065_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_065_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_065_QA4, NULL };
+static int hf_048_V1_30_065_QA2 = -1;
+static const value_string valstr_048_V1_30_065_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_065_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_065_QA2, NULL };
+static int hf_048_V1_30_065_QA1 = -1;
+static const value_string valstr_048_V1_30_065_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_065_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_065_QA1, NULL };
+static int hf_048_V1_30_065_QB2 = -1;
+static const value_string valstr_048_V1_30_065_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_065_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_065_QB2, NULL };
+static int hf_048_V1_30_065_QB1 = -1;
+static const value_string valstr_048_V1_30_065_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_065_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_065_QB1, NULL };
+static const FieldPart *I048_V1_30_065_PARTS[] = {
+ &IXXX_3bit_spare,
+ &I048_V1_30_065_QA4,
+ &I048_V1_30_065_QA2,
+ &I048_V1_30_065_QA1,
+ &I048_V1_30_065_QB2,
+ &I048_V1_30_065_QB1,
+ NULL
+};
+static const AsterixField I048_V1_30_065 = { FIXED, 1, 0, 0, &hf_048_V1_30_065, I048_V1_30_065_PARTS, { NULL } };
+static int hf_048_V1_30_070 = -1;
+static int hf_048_V1_30_070_V = -1;
+static const value_string valstr_048_V1_30_070_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_070_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_070_V, NULL };
+static int hf_048_V1_30_070_G = -1;
+static const value_string valstr_048_V1_30_070_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_070_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_070_G, NULL };
+static int hf_048_V1_30_070_L = -1;
+static const value_string valstr_048_V1_30_070_L[] = {
+ { 0, "Mode-3/A code derived from the reply of the transponder" },
+ { 1, "Mode-3/A code not extracted during the last scan" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_070_L = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_070_L, NULL };
+static int hf_048_V1_30_070_MODE3A = -1;
+static const FieldPart I048_V1_30_070_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_048_V1_30_070_MODE3A, NULL };
+static const FieldPart *I048_V1_30_070_PARTS[] = {
+ &I048_V1_30_070_V,
+ &I048_V1_30_070_G,
+ &I048_V1_30_070_L,
+ &IXXX_1bit_spare,
+ &I048_V1_30_070_MODE3A,
+ NULL
+};
+static const AsterixField I048_V1_30_070 = { FIXED, 2, 0, 0, &hf_048_V1_30_070, I048_V1_30_070_PARTS, { NULL } };
+static int hf_048_V1_30_080 = -1;
+static int hf_048_V1_30_080_QA4 = -1;
+static const value_string valstr_048_V1_30_080_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_080_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_080_QA4, NULL };
+static int hf_048_V1_30_080_QA2 = -1;
+static const value_string valstr_048_V1_30_080_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_080_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_080_QA2, NULL };
+static int hf_048_V1_30_080_QA1 = -1;
+static const value_string valstr_048_V1_30_080_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_080_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_080_QA1, NULL };
+static int hf_048_V1_30_080_QB4 = -1;
+static const value_string valstr_048_V1_30_080_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_080_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_080_QB4, NULL };
+static int hf_048_V1_30_080_QB2 = -1;
+static const value_string valstr_048_V1_30_080_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_080_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_080_QB2, NULL };
+static int hf_048_V1_30_080_QB1 = -1;
+static const value_string valstr_048_V1_30_080_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_080_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_080_QB1, NULL };
+static int hf_048_V1_30_080_QC4 = -1;
+static const value_string valstr_048_V1_30_080_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_080_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_080_QC4, NULL };
+static int hf_048_V1_30_080_QC2 = -1;
+static const value_string valstr_048_V1_30_080_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_080_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_080_QC2, NULL };
+static int hf_048_V1_30_080_QC1 = -1;
+static const value_string valstr_048_V1_30_080_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_080_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_080_QC1, NULL };
+static int hf_048_V1_30_080_QD4 = -1;
+static const value_string valstr_048_V1_30_080_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_080_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_080_QD4, NULL };
+static int hf_048_V1_30_080_QD2 = -1;
+static const value_string valstr_048_V1_30_080_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_080_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_080_QD2, NULL };
+static int hf_048_V1_30_080_QD1 = -1;
+static const value_string valstr_048_V1_30_080_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_080_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_080_QD1, NULL };
+static const FieldPart *I048_V1_30_080_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I048_V1_30_080_QA4,
+ &I048_V1_30_080_QA2,
+ &I048_V1_30_080_QA1,
+ &I048_V1_30_080_QB4,
+ &I048_V1_30_080_QB2,
+ &I048_V1_30_080_QB1,
+ &I048_V1_30_080_QC4,
+ &I048_V1_30_080_QC2,
+ &I048_V1_30_080_QC1,
+ &I048_V1_30_080_QD4,
+ &I048_V1_30_080_QD2,
+ &I048_V1_30_080_QD1,
+ NULL
+};
+static const AsterixField I048_V1_30_080 = { FIXED, 2, 0, 0, &hf_048_V1_30_080, I048_V1_30_080_PARTS, { NULL } };
+static int hf_048_V1_30_090 = -1;
+static int hf_048_V1_30_090_V = -1;
+static const value_string valstr_048_V1_30_090_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_090_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_090_V, NULL };
+static int hf_048_V1_30_090_G = -1;
+static const value_string valstr_048_V1_30_090_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_090_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_090_G, NULL };
+static int hf_048_V1_30_090_FL = -1;
+static const FieldPart I048_V1_30_090_FL = { 14, 0.25, FIELD_PART_UFLOAT, &hf_048_V1_30_090_FL, NULL };
+static const FieldPart *I048_V1_30_090_PARTS[] = {
+ &I048_V1_30_090_V,
+ &I048_V1_30_090_G,
+ &I048_V1_30_090_FL,
+ NULL
+};
+static const AsterixField I048_V1_30_090 = { FIXED, 2, 0, 0, &hf_048_V1_30_090, I048_V1_30_090_PARTS, { NULL } };
+static int hf_048_V1_30_100 = -1;
+static int hf_048_V1_30_100_V = -1;
+static const value_string valstr_048_V1_30_100_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_100_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_100_V, NULL };
+static int hf_048_V1_30_100_G = -1;
+static const value_string valstr_048_V1_30_100_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_100_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_100_G, NULL };
+static int hf_048_V1_30_100_MODEC = -1;
+static const FieldPart I048_V1_30_100_MODEC = { 12, 1.0, FIELD_PART_HEX, &hf_048_V1_30_100_MODEC, NULL };
+static int hf_048_V1_30_100_QC1 = -1;
+static const value_string valstr_048_V1_30_100_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_100_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_100_QC1, NULL };
+static int hf_048_V1_30_100_QA1 = -1;
+static const value_string valstr_048_V1_30_100_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_100_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_100_QA1, NULL };
+static int hf_048_V1_30_100_QC2 = -1;
+static const value_string valstr_048_V1_30_100_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_100_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_100_QC2, NULL };
+static int hf_048_V1_30_100_QA2 = -1;
+static const value_string valstr_048_V1_30_100_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_100_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_100_QA2, NULL };
+static int hf_048_V1_30_100_QC4 = -1;
+static const value_string valstr_048_V1_30_100_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_100_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_100_QC4, NULL };
+static int hf_048_V1_30_100_QA4 = -1;
+static const value_string valstr_048_V1_30_100_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_100_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_100_QA4, NULL };
+static int hf_048_V1_30_100_QB1 = -1;
+static const value_string valstr_048_V1_30_100_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_100_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_100_QB1, NULL };
+static int hf_048_V1_30_100_QD1 = -1;
+static const value_string valstr_048_V1_30_100_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_100_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_100_QD1, NULL };
+static int hf_048_V1_30_100_QB2 = -1;
+static const value_string valstr_048_V1_30_100_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_100_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_100_QB2, NULL };
+static int hf_048_V1_30_100_QD2 = -1;
+static const value_string valstr_048_V1_30_100_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_100_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_100_QD2, NULL };
+static int hf_048_V1_30_100_QB4 = -1;
+static const value_string valstr_048_V1_30_100_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_100_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_100_QB4, NULL };
+static int hf_048_V1_30_100_QD4 = -1;
+static const value_string valstr_048_V1_30_100_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_100_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_100_QD4, NULL };
+static const FieldPart *I048_V1_30_100_PARTS[] = {
+ &I048_V1_30_100_V,
+ &I048_V1_30_100_G,
+ &IXXX_2bit_spare,
+ &I048_V1_30_100_MODEC,
+ &IXXX_4bit_spare,
+ &I048_V1_30_100_QC1,
+ &I048_V1_30_100_QA1,
+ &I048_V1_30_100_QC2,
+ &I048_V1_30_100_QA2,
+ &I048_V1_30_100_QC4,
+ &I048_V1_30_100_QA4,
+ &I048_V1_30_100_QB1,
+ &I048_V1_30_100_QD1,
+ &I048_V1_30_100_QB2,
+ &I048_V1_30_100_QD2,
+ &I048_V1_30_100_QB4,
+ &I048_V1_30_100_QD4,
+ NULL
+};
+static const AsterixField I048_V1_30_100 = { FIXED, 4, 0, 0, &hf_048_V1_30_100, I048_V1_30_100_PARTS, { NULL } };
+static int hf_048_V1_30_110 = -1;
+static int hf_048_V1_30_110_3DH = -1;
+static const FieldPart I048_V1_30_110_3DH = { 14, 25.0, FIELD_PART_FLOAT, &hf_048_V1_30_110_3DH, NULL };
+static const FieldPart *I048_V1_30_110_PARTS[] = {
+ &IXXX_2bit_spare,
+ &I048_V1_30_110_3DH,
+ NULL
+};
+static const AsterixField I048_V1_30_110 = { FIXED, 2, 0, 0, &hf_048_V1_30_110, I048_V1_30_110_PARTS, { NULL } };
+static int hf_048_V1_30_120 = -1;
+static int hf_048_V1_30_120_CAL = -1;
+static int hf_048_V1_30_120_CAL_D = -1;
+static const value_string valstr_048_V1_30_120_CAL_D[] = {
+ { 0, "Doppler speed is valid" },
+ { 1, "Doppler speed is doubtful" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_120_CAL_D = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_120_CAL_D, NULL };
+static int hf_048_V1_30_120_CAL_CAL = -1;
+static const FieldPart I048_V1_30_120_CAL_CAL = { 10, 1.0, FIELD_PART_FLOAT, &hf_048_V1_30_120_CAL_CAL, NULL };
+static const FieldPart *I048_V1_30_120_CAL_PARTS[] = {
+ &I048_V1_30_120_CAL_D,
+ &IXXX_5bit_spare,
+ &I048_V1_30_120_CAL_CAL,
+ NULL
+};
+static const AsterixField I048_V1_30_120_CAL = { FIXED, 2, 0, 0, &hf_048_V1_30_120_CAL, I048_V1_30_120_CAL_PARTS, { NULL } };
+static int hf_048_V1_30_120_RDS = -1;
+static int hf_048_V1_30_120_RDS_DOP = -1;
+static const FieldPart I048_V1_30_120_RDS_DOP = { 16, 1.0, FIELD_PART_UFLOAT, &hf_048_V1_30_120_RDS_DOP, NULL };
+static int hf_048_V1_30_120_RDS_AMB = -1;
+static const FieldPart I048_V1_30_120_RDS_AMB = { 16, 1.0, FIELD_PART_UFLOAT, &hf_048_V1_30_120_RDS_AMB, NULL };
+static int hf_048_V1_30_120_RDS_FRQ = -1;
+static const FieldPart I048_V1_30_120_RDS_FRQ = { 16, 1.0, FIELD_PART_UFLOAT, &hf_048_V1_30_120_RDS_FRQ, NULL };
+static const FieldPart *I048_V1_30_120_RDS_PARTS[] = {
+ &I048_V1_30_120_RDS_DOP,
+ &I048_V1_30_120_RDS_AMB,
+ &I048_V1_30_120_RDS_FRQ,
+ NULL
+};
+static const AsterixField I048_V1_30_120_RDS = { REPETITIVE, 6, 1, 0, &hf_048_V1_30_120_RDS, I048_V1_30_120_RDS_PARTS, { NULL } };
+static const AsterixField I048_V1_30_120 = { COMPOUND, 0, 0, 0, &hf_048_V1_30_120, NULL, { &I048_V1_30_120_CAL, &I048_V1_30_120_RDS, NULL } };
+static int hf_048_V1_30_130 = -1;
+static int hf_048_V1_30_130_SRL = -1;
+static int hf_048_V1_30_130_SRL_VALUE = -1;
+static const FieldPart I048_V1_30_130_SRL_VALUE = { 8, 0.0439453125, FIELD_PART_UFLOAT, &hf_048_V1_30_130_SRL_VALUE, NULL };
+static const FieldPart *I048_V1_30_130_SRL_PARTS[] = {
+ &I048_V1_30_130_SRL_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_30_130_SRL = { FIXED, 1, 0, 0, &hf_048_V1_30_130_SRL, I048_V1_30_130_SRL_PARTS, { NULL } };
+static int hf_048_V1_30_130_SRR = -1;
+static int hf_048_V1_30_130_SRR_VALUE = -1;
+static const FieldPart I048_V1_30_130_SRR_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_048_V1_30_130_SRR_VALUE, NULL };
+static const FieldPart *I048_V1_30_130_SRR_PARTS[] = {
+ &I048_V1_30_130_SRR_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_30_130_SRR = { FIXED, 1, 0, 0, &hf_048_V1_30_130_SRR, I048_V1_30_130_SRR_PARTS, { NULL } };
+static int hf_048_V1_30_130_SAM = -1;
+static int hf_048_V1_30_130_SAM_VALUE = -1;
+static const FieldPart I048_V1_30_130_SAM_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_048_V1_30_130_SAM_VALUE, NULL };
+static const FieldPart *I048_V1_30_130_SAM_PARTS[] = {
+ &I048_V1_30_130_SAM_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_30_130_SAM = { FIXED, 1, 0, 0, &hf_048_V1_30_130_SAM, I048_V1_30_130_SAM_PARTS, { NULL } };
+static int hf_048_V1_30_130_PRL = -1;
+static int hf_048_V1_30_130_PRL_VALUE = -1;
+static const FieldPart I048_V1_30_130_PRL_VALUE = { 8, 0.0439453125, FIELD_PART_UFLOAT, &hf_048_V1_30_130_PRL_VALUE, NULL };
+static const FieldPart *I048_V1_30_130_PRL_PARTS[] = {
+ &I048_V1_30_130_PRL_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_30_130_PRL = { FIXED, 1, 0, 0, &hf_048_V1_30_130_PRL, I048_V1_30_130_PRL_PARTS, { NULL } };
+static int hf_048_V1_30_130_PAM = -1;
+static int hf_048_V1_30_130_PAM_VALUE = -1;
+static const FieldPart I048_V1_30_130_PAM_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_048_V1_30_130_PAM_VALUE, NULL };
+static const FieldPart *I048_V1_30_130_PAM_PARTS[] = {
+ &I048_V1_30_130_PAM_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_30_130_PAM = { FIXED, 1, 0, 0, &hf_048_V1_30_130_PAM, I048_V1_30_130_PAM_PARTS, { NULL } };
+static int hf_048_V1_30_130_RPD = -1;
+static int hf_048_V1_30_130_RPD_VALUE = -1;
+static const FieldPart I048_V1_30_130_RPD_VALUE = { 8, 0.00390625, FIELD_PART_FLOAT, &hf_048_V1_30_130_RPD_VALUE, NULL };
+static const FieldPart *I048_V1_30_130_RPD_PARTS[] = {
+ &I048_V1_30_130_RPD_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_30_130_RPD = { FIXED, 1, 0, 0, &hf_048_V1_30_130_RPD, I048_V1_30_130_RPD_PARTS, { NULL } };
+static int hf_048_V1_30_130_APD = -1;
+static int hf_048_V1_30_130_APD_VALUE = -1;
+static const FieldPart I048_V1_30_130_APD_VALUE = { 8, 0.02197265625, FIELD_PART_FLOAT, &hf_048_V1_30_130_APD_VALUE, NULL };
+static const FieldPart *I048_V1_30_130_APD_PARTS[] = {
+ &I048_V1_30_130_APD_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_30_130_APD = { FIXED, 1, 0, 0, &hf_048_V1_30_130_APD, I048_V1_30_130_APD_PARTS, { NULL } };
+static const AsterixField I048_V1_30_130 = { COMPOUND, 0, 0, 0, &hf_048_V1_30_130, NULL, { &I048_V1_30_130_SRL, &I048_V1_30_130_SRR, &I048_V1_30_130_SAM, &I048_V1_30_130_PRL, &I048_V1_30_130_PAM, &I048_V1_30_130_RPD, &I048_V1_30_130_APD, NULL } };
+static int hf_048_V1_30_140 = -1;
+static int hf_048_V1_30_140_VALUE = -1;
+static const FieldPart I048_V1_30_140_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_048_V1_30_140_VALUE, NULL };
+static const FieldPart *I048_V1_30_140_PARTS[] = {
+ &I048_V1_30_140_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_30_140 = { FIXED, 3, 0, 0, &hf_048_V1_30_140, I048_V1_30_140_PARTS, { NULL } };
+static int hf_048_V1_30_161 = -1;
+static int hf_048_V1_30_161_TRN = -1;
+static const FieldPart I048_V1_30_161_TRN = { 12, 1.0, FIELD_PART_HEX, &hf_048_V1_30_161_TRN, NULL };
+static const FieldPart *I048_V1_30_161_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I048_V1_30_161_TRN,
+ NULL
+};
+static const AsterixField I048_V1_30_161 = { FIXED, 2, 0, 0, &hf_048_V1_30_161, I048_V1_30_161_PARTS, { NULL } };
+static int hf_048_V1_30_170 = -1;
+static int hf_048_V1_30_170_CNF = -1;
+static const value_string valstr_048_V1_30_170_CNF[] = {
+ { 0, "Confirmed Track" },
+ { 1, "Tentative Track" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_170_CNF = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_170_CNF, NULL };
+static int hf_048_V1_30_170_RAD = -1;
+static const value_string valstr_048_V1_30_170_RAD[] = {
+ { 0, "Combined Track" },
+ { 1, "PSR Track" },
+ { 2, "SSR/Mode S Track" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_170_RAD = { 2, 1.0, FIELD_PART_UINT, &hf_048_V1_30_170_RAD, NULL };
+static int hf_048_V1_30_170_DOU = -1;
+static const value_string valstr_048_V1_30_170_DOU[] = {
+ { 0, "Normal confidence" },
+ { 1, "Low confidence in plot to track association" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_170_DOU = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_170_DOU, NULL };
+static int hf_048_V1_30_170_MAH = -1;
+static const value_string valstr_048_V1_30_170_MAH[] = {
+ { 0, "No horizontal man.sensed" },
+ { 1, "Horizontal man. sensed" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_170_MAH = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_170_MAH, NULL };
+static int hf_048_V1_30_170_CDM = -1;
+static const value_string valstr_048_V1_30_170_CDM[] = {
+ { 0, "Maintaining" },
+ { 1, "Climbing" },
+ { 2, "Descending" },
+ { 3, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_170_CDM = { 2, 1.0, FIELD_PART_UINT, &hf_048_V1_30_170_CDM, NULL };
+static int hf_048_V1_30_170_TRE = -1;
+static const value_string valstr_048_V1_30_170_TRE[] = {
+ { 0, "Track still alive" },
+ { 1, "End of track lifetime(last report for this track)" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_170_TRE = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_170_TRE, NULL };
+static int hf_048_V1_30_170_GHO = -1;
+static const value_string valstr_048_V1_30_170_GHO[] = {
+ { 0, "True target track" },
+ { 1, "Ghost target track" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_170_GHO = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_170_GHO, NULL };
+static int hf_048_V1_30_170_SUP = -1;
+static const value_string valstr_048_V1_30_170_SUP[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_170_SUP = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_170_SUP, NULL };
+static int hf_048_V1_30_170_TCC = -1;
+static const value_string valstr_048_V1_30_170_TCC[] = {
+ { 0, "Tracking performed in so-called \'Radar Plane\', i.e. neither slant range correction nor stereographical projection was applied" },
+ { 1, "Slant range correction and a suitable projection technique are used to track in a 2D.reference plane, tangential to the earth model at the Radar Site co-ordinates" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_170_TCC = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_170_TCC, NULL };
+static const FieldPart *I048_V1_30_170_PARTS[] = {
+ &I048_V1_30_170_CNF,
+ &I048_V1_30_170_RAD,
+ &I048_V1_30_170_DOU,
+ &I048_V1_30_170_MAH,
+ &I048_V1_30_170_CDM,
+ &IXXX_FX,
+ &I048_V1_30_170_TRE,
+ &I048_V1_30_170_GHO,
+ &I048_V1_30_170_SUP,
+ &I048_V1_30_170_TCC,
+ &IXXX_3bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I048_V1_30_170 = { FX, 1, 0, 0, &hf_048_V1_30_170, I048_V1_30_170_PARTS, { NULL } };
+static int hf_048_V1_30_200 = -1;
+static int hf_048_V1_30_200_GSP = -1;
+static const FieldPart I048_V1_30_200_GSP = { 16, 0.00006103515625, FIELD_PART_UFLOAT, &hf_048_V1_30_200_GSP, NULL };
+static int hf_048_V1_30_200_HDG = -1;
+static const FieldPart I048_V1_30_200_HDG = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_048_V1_30_200_HDG, NULL };
+static const FieldPart *I048_V1_30_200_PARTS[] = {
+ &I048_V1_30_200_GSP,
+ &I048_V1_30_200_HDG,
+ NULL
+};
+static const AsterixField I048_V1_30_200 = { FIXED, 4, 0, 0, &hf_048_V1_30_200, I048_V1_30_200_PARTS, { NULL } };
+static int hf_048_V1_30_210 = -1;
+static int hf_048_V1_30_210_SIGX = -1;
+static const FieldPart I048_V1_30_210_SIGX = { 8, 0.0078125, FIELD_PART_UFLOAT, &hf_048_V1_30_210_SIGX, NULL };
+static int hf_048_V1_30_210_SIGY = -1;
+static const FieldPart I048_V1_30_210_SIGY = { 8, 0.0078125, FIELD_PART_UFLOAT, &hf_048_V1_30_210_SIGY, NULL };
+static int hf_048_V1_30_210_SIGV = -1;
+static const FieldPart I048_V1_30_210_SIGV = { 8, 0.00006103515625, FIELD_PART_UFLOAT, &hf_048_V1_30_210_SIGV, NULL };
+static int hf_048_V1_30_210_SIGH = -1;
+static const FieldPart I048_V1_30_210_SIGH = { 8, 0.087890625, FIELD_PART_UFLOAT, &hf_048_V1_30_210_SIGH, NULL };
+static const FieldPart *I048_V1_30_210_PARTS[] = {
+ &I048_V1_30_210_SIGX,
+ &I048_V1_30_210_SIGY,
+ &I048_V1_30_210_SIGV,
+ &I048_V1_30_210_SIGH,
+ NULL
+};
+static const AsterixField I048_V1_30_210 = { FIXED, 4, 0, 0, &hf_048_V1_30_210, I048_V1_30_210_PARTS, { NULL } };
+static int hf_048_V1_30_220 = -1;
+static int hf_048_V1_30_220_VALUE = -1;
+static const FieldPart I048_V1_30_220_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_048_V1_30_220_VALUE, NULL };
+static const FieldPart *I048_V1_30_220_PARTS[] = {
+ &I048_V1_30_220_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_30_220 = { FIXED, 3, 0, 0, &hf_048_V1_30_220, I048_V1_30_220_PARTS, { NULL } };
+static int hf_048_V1_30_230 = -1;
+static int hf_048_V1_30_230_COM = -1;
+static const value_string valstr_048_V1_30_230_COM[] = {
+ { 0, "No communications capability (surveillance only)" },
+ { 1, "Comm. A and Comm. B capability" },
+ { 2, "Comm. A, Comm. B and Uplink ELM" },
+ { 3, "Comm. A, Comm. B, Uplink ELM and Downlink ELM" },
+ { 4, "Level 5 Transponder capability" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_230_COM = { 3, 1.0, FIELD_PART_UINT, &hf_048_V1_30_230_COM, NULL };
+static int hf_048_V1_30_230_STAT = -1;
+static const value_string valstr_048_V1_30_230_STAT[] = {
+ { 0, "No alert, no SPI, aircraft airborne" },
+ { 1, "No alert, no SPI, aircraft on ground" },
+ { 2, "Alert, no SPI, aircraft airborne" },
+ { 3, "Alert, no SPI, aircraft on ground" },
+ { 4, "Alert, SPI, aircraft airborne or on ground" },
+ { 5, "No alert, SPI, aircraft airborne or on ground" },
+ { 7, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_230_STAT = { 3, 1.0, FIELD_PART_UINT, &hf_048_V1_30_230_STAT, NULL };
+static int hf_048_V1_30_230_SI = -1;
+static const value_string valstr_048_V1_30_230_SI[] = {
+ { 0, "SI-Code Capable" },
+ { 1, "II-Code Capable" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_230_SI = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_230_SI, NULL };
+static int hf_048_V1_30_230_MSSC = -1;
+static const value_string valstr_048_V1_30_230_MSSC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_230_MSSC = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_230_MSSC, NULL };
+static int hf_048_V1_30_230_ARC = -1;
+static const value_string valstr_048_V1_30_230_ARC[] = {
+ { 0, "100 ft resolution" },
+ { 1, "25 ft resolution" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_230_ARC = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_230_ARC, NULL };
+static int hf_048_V1_30_230_AIC = -1;
+static const value_string valstr_048_V1_30_230_AIC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_30_230_AIC = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_30_230_AIC, NULL };
+static int hf_048_V1_30_230_B1A = -1;
+static const FieldPart I048_V1_30_230_B1A = { 1, 1.0, FIELD_PART_HEX, &hf_048_V1_30_230_B1A, NULL };
+static int hf_048_V1_30_230_B1B = -1;
+static const FieldPart I048_V1_30_230_B1B = { 4, 1.0, FIELD_PART_HEX, &hf_048_V1_30_230_B1B, NULL };
+static const FieldPart *I048_V1_30_230_PARTS[] = {
+ &I048_V1_30_230_COM,
+ &I048_V1_30_230_STAT,
+ &I048_V1_30_230_SI,
+ &IXXX_1bit_spare,
+ &I048_V1_30_230_MSSC,
+ &I048_V1_30_230_ARC,
+ &I048_V1_30_230_AIC,
+ &I048_V1_30_230_B1A,
+ &I048_V1_30_230_B1B,
+ NULL
+};
+static const AsterixField I048_V1_30_230 = { FIXED, 2, 0, 0, &hf_048_V1_30_230, I048_V1_30_230_PARTS, { NULL } };
+static int hf_048_V1_30_240 = -1;
+static int hf_048_V1_30_240_VALUE = -1;
+static const FieldPart I048_V1_30_240_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_048_V1_30_240_VALUE, NULL };
+static const FieldPart *I048_V1_30_240_PARTS[] = {
+ &I048_V1_30_240_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_30_240 = { FIXED, 6, 0, 0, &hf_048_V1_30_240, I048_V1_30_240_PARTS, { NULL } };
+static int hf_048_V1_30_250 = -1;
+static int hf_048_V1_30_250_MBDATA = -1;
+static const FieldPart I048_V1_30_250_MBDATA = { 56, 1.0, FIELD_PART_HEX, &hf_048_V1_30_250_MBDATA, NULL };
+static int hf_048_V1_30_250_BDS1 = -1;
+static const FieldPart I048_V1_30_250_BDS1 = { 4, 1.0, FIELD_PART_HEX, &hf_048_V1_30_250_BDS1, NULL };
+static int hf_048_V1_30_250_BDS2 = -1;
+static const FieldPart I048_V1_30_250_BDS2 = { 4, 1.0, FIELD_PART_HEX, &hf_048_V1_30_250_BDS2, NULL };
+static const FieldPart *I048_V1_30_250_PARTS[] = {
+ &I048_V1_30_250_MBDATA,
+ &I048_V1_30_250_BDS1,
+ &I048_V1_30_250_BDS2,
+ NULL
+};
+static const AsterixField I048_V1_30_250 = { REPETITIVE, 8, 1, 0, &hf_048_V1_30_250, I048_V1_30_250_PARTS, { NULL } };
+static int hf_048_V1_30_260 = -1;
+static int hf_048_V1_30_260_VALUE = -1;
+static const FieldPart I048_V1_30_260_VALUE = { 56, 1.0, FIELD_PART_HEX, &hf_048_V1_30_260_VALUE, NULL };
+static const FieldPart *I048_V1_30_260_PARTS[] = {
+ &I048_V1_30_260_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_30_260 = { FIXED, 7, 0, 0, &hf_048_V1_30_260, I048_V1_30_260_PARTS, { NULL } };
+static int hf_048_V1_30_RE = -1;
+static const AsterixField I048_V1_30_RE = { EXP, 0, 0, 1, &hf_048_V1_30_RE, NULL, { NULL } };
+static int hf_048_V1_30_SP = -1;
+static const AsterixField I048_V1_30_SP = { EXP, 0, 0, 1, &hf_048_V1_30_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I048_V1_30_uap[] = {
+ &I048_V1_30_010,
+ &I048_V1_30_140,
+ &I048_V1_30_020,
+ &I048_V1_30_040,
+ &I048_V1_30_070,
+ &I048_V1_30_090,
+ &I048_V1_30_130,
+ &I048_V1_30_220,
+ &I048_V1_30_240,
+ &I048_V1_30_250,
+ &I048_V1_30_161,
+ &I048_V1_30_042,
+ &I048_V1_30_200,
+ &I048_V1_30_170,
+ &I048_V1_30_210,
+ &I048_V1_30_030,
+ &I048_V1_30_080,
+ &I048_V1_30_100,
+ &I048_V1_30_110,
+ &I048_V1_30_120,
+ &I048_V1_30_230,
+ &I048_V1_30_260,
+ &I048_V1_30_055,
+ &I048_V1_30_050,
+ &I048_V1_30_065,
+ &I048_V1_30_060,
+ &I048_V1_30_SP,
+ &I048_V1_30_RE,
+ NULL
+};
+static const AsterixField **I048_V1_30[] = {
+ I048_V1_30_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 048, edition 1.31 */
+static int hf_048_V1_31_010 = -1;
+static int hf_048_V1_31_010_SAC = -1;
+static const FieldPart I048_V1_31_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_048_V1_31_010_SAC, NULL };
+static int hf_048_V1_31_010_SIC = -1;
+static const FieldPart I048_V1_31_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_048_V1_31_010_SIC, NULL };
+static const FieldPart *I048_V1_31_010_PARTS[] = {
+ &I048_V1_31_010_SAC,
+ &I048_V1_31_010_SIC,
+ NULL
+};
+static const AsterixField I048_V1_31_010 = { FIXED, 2, 0, 0, &hf_048_V1_31_010, I048_V1_31_010_PARTS, { NULL } };
+static int hf_048_V1_31_020 = -1;
+static int hf_048_V1_31_020_TYP = -1;
+static const value_string valstr_048_V1_31_020_TYP[] = {
+ { 0, "No detection" },
+ { 1, "Single PSR detection" },
+ { 2, "Single SSR detection" },
+ { 3, "SSR + PSR detection" },
+ { 4, "Single ModeS All-Call" },
+ { 5, "Single ModeS Roll-Call" },
+ { 6, "ModeS All-Call + PSR" },
+ { 7, "ModeS Roll-Call +PSR" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_020_TYP = { 3, 1.0, FIELD_PART_UINT, &hf_048_V1_31_020_TYP, NULL };
+static int hf_048_V1_31_020_SIM = -1;
+static const value_string valstr_048_V1_31_020_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_020_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_020_SIM, NULL };
+static int hf_048_V1_31_020_RDP = -1;
+static const value_string valstr_048_V1_31_020_RDP[] = {
+ { 0, "Report from RDP Chain 1" },
+ { 1, "Report from RDP Chain 2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_020_RDP = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_020_RDP, NULL };
+static int hf_048_V1_31_020_SPI = -1;
+static const value_string valstr_048_V1_31_020_SPI[] = {
+ { 0, "Absence of SPI" },
+ { 1, "Special Position Identification" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_020_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_020_SPI, NULL };
+static int hf_048_V1_31_020_RAB = -1;
+static const value_string valstr_048_V1_31_020_RAB[] = {
+ { 0, "Report from aircraft transponder" },
+ { 1, "Report from field monitor (fixed transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_020_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_020_RAB, NULL };
+static int hf_048_V1_31_020_TST = -1;
+static const value_string valstr_048_V1_31_020_TST[] = {
+ { 0, "Real target report" },
+ { 1, "Test target report" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_020_TST = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_020_TST, NULL };
+static int hf_048_V1_31_020_ERR = -1;
+static const value_string valstr_048_V1_31_020_ERR[] = {
+ { 0, "No Extended Range" },
+ { 1, "Extended Range present" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_020_ERR = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_020_ERR, NULL };
+static int hf_048_V1_31_020_XPP = -1;
+static const value_string valstr_048_V1_31_020_XPP[] = {
+ { 0, "No X-Pulse present" },
+ { 1, "X-Pulse present" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_020_XPP = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_020_XPP, NULL };
+static int hf_048_V1_31_020_ME = -1;
+static const value_string valstr_048_V1_31_020_ME[] = {
+ { 0, "No military emergency" },
+ { 1, "Military emergency" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_020_ME = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_020_ME, NULL };
+static int hf_048_V1_31_020_MI = -1;
+static const value_string valstr_048_V1_31_020_MI[] = {
+ { 0, "No military identification" },
+ { 1, "Military identification" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_020_MI = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_020_MI, NULL };
+static int hf_048_V1_31_020_FOEFRI = -1;
+static const value_string valstr_048_V1_31_020_FOEFRI[] = {
+ { 0, "No Mode 4 interrogation" },
+ { 1, "Friendly target" },
+ { 2, "Unknown target" },
+ { 3, "No reply" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_020_FOEFRI = { 2, 1.0, FIELD_PART_UINT, &hf_048_V1_31_020_FOEFRI, NULL };
+static int hf_048_V1_31_020_ADSB = -1;
+static const FieldPart I048_V1_31_020_ADSB = { 2, 1.0, FIELD_PART_HEX, &hf_048_V1_31_020_ADSB, NULL };
+static int hf_048_V1_31_020_SCN = -1;
+static const FieldPart I048_V1_31_020_SCN = { 2, 1.0, FIELD_PART_HEX, &hf_048_V1_31_020_SCN, NULL };
+static int hf_048_V1_31_020_PAI = -1;
+static const FieldPart I048_V1_31_020_PAI = { 2, 1.0, FIELD_PART_HEX, &hf_048_V1_31_020_PAI, NULL };
+static const FieldPart *I048_V1_31_020_PARTS[] = {
+ &I048_V1_31_020_TYP,
+ &I048_V1_31_020_SIM,
+ &I048_V1_31_020_RDP,
+ &I048_V1_31_020_SPI,
+ &I048_V1_31_020_RAB,
+ &IXXX_FX,
+ &I048_V1_31_020_TST,
+ &I048_V1_31_020_ERR,
+ &I048_V1_31_020_XPP,
+ &I048_V1_31_020_ME,
+ &I048_V1_31_020_MI,
+ &I048_V1_31_020_FOEFRI,
+ &IXXX_FX,
+ &I048_V1_31_020_ADSB,
+ &I048_V1_31_020_SCN,
+ &I048_V1_31_020_PAI,
+ &IXXX_1bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I048_V1_31_020 = { FX, 1, 0, 0, &hf_048_V1_31_020, I048_V1_31_020_PARTS, { NULL } };
+static int hf_048_V1_31_030 = -1;
+static int hf_048_V1_31_030_Subitem = -1;
+static const value_string valstr_048_V1_31_030_Subitem[] = {
+ { 0, "Not defined; never used" },
+ { 1, "Multipath Reply (Reflection)" },
+ { 2, "Reply due to sidelobe interrogation/reception" },
+ { 3, "Split plot" },
+ { 4, "Second time around reply" },
+ { 5, "Angel" },
+ { 6, "Slow moving target correlated with road infrastructure (terrestrial vehicle)" },
+ { 7, "Fixed PSR plot" },
+ { 8, "Slow PSR target" },
+ { 9, "Low quality PSR plot" },
+ { 10, "Phantom SSR plot" },
+ { 11, "Non-Matching Mode-3/A Code" },
+ { 12, "Mode C code / Mode S altitude code abnormal value compared to the track" },
+ { 13, "Target in Clutter Area" },
+ { 14, "Maximum Doppler Response in Zero Filter" },
+ { 15, "Transponder anomaly detected" },
+ { 16, "Duplicated or Illegal Mode S Aircraft Address" },
+ { 17, "Mode S error correction applied" },
+ { 18, "Undecodable Mode C code / Mode S altitude code" },
+ { 19, "Birds" },
+ { 20, "Flock of Birds" },
+ { 21, "Mode-1 was present in original reply" },
+ { 22, "Mode-2 was present in original reply" },
+ { 23, "Plot potentially caused by Wind Turbine" },
+ { 24, "Helicopter" },
+ { 25, "Maximum number of re-interrogations reached (surveillance information)" },
+ { 26, "Maximum number of re-interrogations reached (BDS Extractions)" },
+ { 27, "BDS Overlay Incoherence" },
+ { 28, "Potential BDS Swap Detected" },
+ { 29, "Track Update in the Zenithal Gap" },
+ { 30, "Mode S Track re-acquired" },
+ { 31, "Duplicated Mode 5 Pair NO/PIN detected" },
+ { 32, "Wrong DF reply format detected" },
+ { 33, "Transponder anomaly (MS XPD replies with Mode A/C to Mode A/C-only all-call)" },
+ { 34, "Transponder anomaly (SI capability report wrong)" },
+ { 35, "Potential IC Conflict" },
+ { 36, "IC Conflict detection possible-no conflict currently detected" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_030_Subitem = { 7, 1.0, FIELD_PART_UINT, &hf_048_V1_31_030_Subitem, NULL };
+static const FieldPart *I048_V1_31_030_PARTS[] = {
+ &I048_V1_31_030_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I048_V1_31_030 = { FX, 1, 0, 0, &hf_048_V1_31_030, I048_V1_31_030_PARTS, { NULL } };
+static int hf_048_V1_31_040 = -1;
+static int hf_048_V1_31_040_RHO = -1;
+static const FieldPart I048_V1_31_040_RHO = { 16, 0.00390625, FIELD_PART_UFLOAT, &hf_048_V1_31_040_RHO, NULL };
+static int hf_048_V1_31_040_THETA = -1;
+static const FieldPart I048_V1_31_040_THETA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_048_V1_31_040_THETA, NULL };
+static const FieldPart *I048_V1_31_040_PARTS[] = {
+ &I048_V1_31_040_RHO,
+ &I048_V1_31_040_THETA,
+ NULL
+};
+static const AsterixField I048_V1_31_040 = { FIXED, 4, 0, 0, &hf_048_V1_31_040, I048_V1_31_040_PARTS, { NULL } };
+static int hf_048_V1_31_042 = -1;
+static int hf_048_V1_31_042_X = -1;
+static const FieldPart I048_V1_31_042_X = { 16, 0.0078125, FIELD_PART_FLOAT, &hf_048_V1_31_042_X, NULL };
+static int hf_048_V1_31_042_Y = -1;
+static const FieldPart I048_V1_31_042_Y = { 16, 0.0078125, FIELD_PART_FLOAT, &hf_048_V1_31_042_Y, NULL };
+static const FieldPart *I048_V1_31_042_PARTS[] = {
+ &I048_V1_31_042_X,
+ &I048_V1_31_042_Y,
+ NULL
+};
+static const AsterixField I048_V1_31_042 = { FIXED, 4, 0, 0, &hf_048_V1_31_042, I048_V1_31_042_PARTS, { NULL } };
+static int hf_048_V1_31_050 = -1;
+static int hf_048_V1_31_050_V = -1;
+static const value_string valstr_048_V1_31_050_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_050_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_050_V, NULL };
+static int hf_048_V1_31_050_G = -1;
+static const value_string valstr_048_V1_31_050_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_050_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_050_G, NULL };
+static int hf_048_V1_31_050_L = -1;
+static const value_string valstr_048_V1_31_050_L[] = {
+ { 0, "Mode-2 code as derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-2 code as provided by a local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_050_L = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_050_L, NULL };
+static int hf_048_V1_31_050_MODE2 = -1;
+static const FieldPart I048_V1_31_050_MODE2 = { 12, 1.0, FIELD_PART_SQUAWK, &hf_048_V1_31_050_MODE2, NULL };
+static const FieldPart *I048_V1_31_050_PARTS[] = {
+ &I048_V1_31_050_V,
+ &I048_V1_31_050_G,
+ &I048_V1_31_050_L,
+ &IXXX_1bit_spare,
+ &I048_V1_31_050_MODE2,
+ NULL
+};
+static const AsterixField I048_V1_31_050 = { FIXED, 2, 0, 0, &hf_048_V1_31_050, I048_V1_31_050_PARTS, { NULL } };
+static int hf_048_V1_31_055 = -1;
+static int hf_048_V1_31_055_V = -1;
+static const value_string valstr_048_V1_31_055_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_055_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_055_V, NULL };
+static int hf_048_V1_31_055_G = -1;
+static const value_string valstr_048_V1_31_055_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_055_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_055_G, NULL };
+static int hf_048_V1_31_055_L = -1;
+static const value_string valstr_048_V1_31_055_L[] = {
+ { 0, "Mode-1 code as derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-1 code as provided by a local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_055_L = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_055_L, NULL };
+static int hf_048_V1_31_055_MODE1 = -1;
+static const FieldPart I048_V1_31_055_MODE1 = { 5, 1.0, FIELD_PART_HEX, &hf_048_V1_31_055_MODE1, NULL };
+static const FieldPart *I048_V1_31_055_PARTS[] = {
+ &I048_V1_31_055_V,
+ &I048_V1_31_055_G,
+ &I048_V1_31_055_L,
+ &I048_V1_31_055_MODE1,
+ NULL
+};
+static const AsterixField I048_V1_31_055 = { FIXED, 1, 0, 0, &hf_048_V1_31_055, I048_V1_31_055_PARTS, { NULL } };
+static int hf_048_V1_31_060 = -1;
+static int hf_048_V1_31_060_QA4 = -1;
+static const value_string valstr_048_V1_31_060_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_060_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_060_QA4, NULL };
+static int hf_048_V1_31_060_QA2 = -1;
+static const value_string valstr_048_V1_31_060_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_060_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_060_QA2, NULL };
+static int hf_048_V1_31_060_QA1 = -1;
+static const value_string valstr_048_V1_31_060_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_060_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_060_QA1, NULL };
+static int hf_048_V1_31_060_QB4 = -1;
+static const value_string valstr_048_V1_31_060_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_060_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_060_QB4, NULL };
+static int hf_048_V1_31_060_QB2 = -1;
+static const value_string valstr_048_V1_31_060_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_060_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_060_QB2, NULL };
+static int hf_048_V1_31_060_QB1 = -1;
+static const value_string valstr_048_V1_31_060_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_060_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_060_QB1, NULL };
+static int hf_048_V1_31_060_QC4 = -1;
+static const value_string valstr_048_V1_31_060_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_060_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_060_QC4, NULL };
+static int hf_048_V1_31_060_QC2 = -1;
+static const value_string valstr_048_V1_31_060_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_060_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_060_QC2, NULL };
+static int hf_048_V1_31_060_QC1 = -1;
+static const value_string valstr_048_V1_31_060_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_060_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_060_QC1, NULL };
+static int hf_048_V1_31_060_QD4 = -1;
+static const value_string valstr_048_V1_31_060_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_060_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_060_QD4, NULL };
+static int hf_048_V1_31_060_QD2 = -1;
+static const value_string valstr_048_V1_31_060_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_060_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_060_QD2, NULL };
+static int hf_048_V1_31_060_QD1 = -1;
+static const value_string valstr_048_V1_31_060_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_060_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_060_QD1, NULL };
+static const FieldPart *I048_V1_31_060_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I048_V1_31_060_QA4,
+ &I048_V1_31_060_QA2,
+ &I048_V1_31_060_QA1,
+ &I048_V1_31_060_QB4,
+ &I048_V1_31_060_QB2,
+ &I048_V1_31_060_QB1,
+ &I048_V1_31_060_QC4,
+ &I048_V1_31_060_QC2,
+ &I048_V1_31_060_QC1,
+ &I048_V1_31_060_QD4,
+ &I048_V1_31_060_QD2,
+ &I048_V1_31_060_QD1,
+ NULL
+};
+static const AsterixField I048_V1_31_060 = { FIXED, 2, 0, 0, &hf_048_V1_31_060, I048_V1_31_060_PARTS, { NULL } };
+static int hf_048_V1_31_065 = -1;
+static int hf_048_V1_31_065_QA4 = -1;
+static const value_string valstr_048_V1_31_065_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_065_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_065_QA4, NULL };
+static int hf_048_V1_31_065_QA2 = -1;
+static const value_string valstr_048_V1_31_065_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_065_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_065_QA2, NULL };
+static int hf_048_V1_31_065_QA1 = -1;
+static const value_string valstr_048_V1_31_065_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_065_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_065_QA1, NULL };
+static int hf_048_V1_31_065_QB2 = -1;
+static const value_string valstr_048_V1_31_065_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_065_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_065_QB2, NULL };
+static int hf_048_V1_31_065_QB1 = -1;
+static const value_string valstr_048_V1_31_065_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_065_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_065_QB1, NULL };
+static const FieldPart *I048_V1_31_065_PARTS[] = {
+ &IXXX_3bit_spare,
+ &I048_V1_31_065_QA4,
+ &I048_V1_31_065_QA2,
+ &I048_V1_31_065_QA1,
+ &I048_V1_31_065_QB2,
+ &I048_V1_31_065_QB1,
+ NULL
+};
+static const AsterixField I048_V1_31_065 = { FIXED, 1, 0, 0, &hf_048_V1_31_065, I048_V1_31_065_PARTS, { NULL } };
+static int hf_048_V1_31_070 = -1;
+static int hf_048_V1_31_070_V = -1;
+static const value_string valstr_048_V1_31_070_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_070_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_070_V, NULL };
+static int hf_048_V1_31_070_G = -1;
+static const value_string valstr_048_V1_31_070_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_070_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_070_G, NULL };
+static int hf_048_V1_31_070_L = -1;
+static const value_string valstr_048_V1_31_070_L[] = {
+ { 0, "Mode-3/A code derived from the reply of the transponder" },
+ { 1, "Mode-3/A code not extracted during the last scan" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_070_L = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_070_L, NULL };
+static int hf_048_V1_31_070_MODE3A = -1;
+static const FieldPart I048_V1_31_070_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_048_V1_31_070_MODE3A, NULL };
+static const FieldPart *I048_V1_31_070_PARTS[] = {
+ &I048_V1_31_070_V,
+ &I048_V1_31_070_G,
+ &I048_V1_31_070_L,
+ &IXXX_1bit_spare,
+ &I048_V1_31_070_MODE3A,
+ NULL
+};
+static const AsterixField I048_V1_31_070 = { FIXED, 2, 0, 0, &hf_048_V1_31_070, I048_V1_31_070_PARTS, { NULL } };
+static int hf_048_V1_31_080 = -1;
+static int hf_048_V1_31_080_QA4 = -1;
+static const value_string valstr_048_V1_31_080_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_080_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_080_QA4, NULL };
+static int hf_048_V1_31_080_QA2 = -1;
+static const value_string valstr_048_V1_31_080_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_080_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_080_QA2, NULL };
+static int hf_048_V1_31_080_QA1 = -1;
+static const value_string valstr_048_V1_31_080_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_080_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_080_QA1, NULL };
+static int hf_048_V1_31_080_QB4 = -1;
+static const value_string valstr_048_V1_31_080_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_080_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_080_QB4, NULL };
+static int hf_048_V1_31_080_QB2 = -1;
+static const value_string valstr_048_V1_31_080_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_080_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_080_QB2, NULL };
+static int hf_048_V1_31_080_QB1 = -1;
+static const value_string valstr_048_V1_31_080_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_080_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_080_QB1, NULL };
+static int hf_048_V1_31_080_QC4 = -1;
+static const value_string valstr_048_V1_31_080_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_080_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_080_QC4, NULL };
+static int hf_048_V1_31_080_QC2 = -1;
+static const value_string valstr_048_V1_31_080_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_080_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_080_QC2, NULL };
+static int hf_048_V1_31_080_QC1 = -1;
+static const value_string valstr_048_V1_31_080_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_080_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_080_QC1, NULL };
+static int hf_048_V1_31_080_QD4 = -1;
+static const value_string valstr_048_V1_31_080_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_080_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_080_QD4, NULL };
+static int hf_048_V1_31_080_QD2 = -1;
+static const value_string valstr_048_V1_31_080_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_080_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_080_QD2, NULL };
+static int hf_048_V1_31_080_QD1 = -1;
+static const value_string valstr_048_V1_31_080_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_080_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_080_QD1, NULL };
+static const FieldPart *I048_V1_31_080_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I048_V1_31_080_QA4,
+ &I048_V1_31_080_QA2,
+ &I048_V1_31_080_QA1,
+ &I048_V1_31_080_QB4,
+ &I048_V1_31_080_QB2,
+ &I048_V1_31_080_QB1,
+ &I048_V1_31_080_QC4,
+ &I048_V1_31_080_QC2,
+ &I048_V1_31_080_QC1,
+ &I048_V1_31_080_QD4,
+ &I048_V1_31_080_QD2,
+ &I048_V1_31_080_QD1,
+ NULL
+};
+static const AsterixField I048_V1_31_080 = { FIXED, 2, 0, 0, &hf_048_V1_31_080, I048_V1_31_080_PARTS, { NULL } };
+static int hf_048_V1_31_090 = -1;
+static int hf_048_V1_31_090_V = -1;
+static const value_string valstr_048_V1_31_090_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_090_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_090_V, NULL };
+static int hf_048_V1_31_090_G = -1;
+static const value_string valstr_048_V1_31_090_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_090_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_090_G, NULL };
+static int hf_048_V1_31_090_FL = -1;
+static const FieldPart I048_V1_31_090_FL = { 14, 0.25, FIELD_PART_UFLOAT, &hf_048_V1_31_090_FL, NULL };
+static const FieldPart *I048_V1_31_090_PARTS[] = {
+ &I048_V1_31_090_V,
+ &I048_V1_31_090_G,
+ &I048_V1_31_090_FL,
+ NULL
+};
+static const AsterixField I048_V1_31_090 = { FIXED, 2, 0, 0, &hf_048_V1_31_090, I048_V1_31_090_PARTS, { NULL } };
+static int hf_048_V1_31_100 = -1;
+static int hf_048_V1_31_100_V = -1;
+static const value_string valstr_048_V1_31_100_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_100_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_100_V, NULL };
+static int hf_048_V1_31_100_G = -1;
+static const value_string valstr_048_V1_31_100_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_100_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_100_G, NULL };
+static int hf_048_V1_31_100_MODEC = -1;
+static const FieldPart I048_V1_31_100_MODEC = { 12, 1.0, FIELD_PART_HEX, &hf_048_V1_31_100_MODEC, NULL };
+static int hf_048_V1_31_100_QC1 = -1;
+static const value_string valstr_048_V1_31_100_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_100_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_100_QC1, NULL };
+static int hf_048_V1_31_100_QA1 = -1;
+static const value_string valstr_048_V1_31_100_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_100_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_100_QA1, NULL };
+static int hf_048_V1_31_100_QC2 = -1;
+static const value_string valstr_048_V1_31_100_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_100_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_100_QC2, NULL };
+static int hf_048_V1_31_100_QA2 = -1;
+static const value_string valstr_048_V1_31_100_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_100_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_100_QA2, NULL };
+static int hf_048_V1_31_100_QC4 = -1;
+static const value_string valstr_048_V1_31_100_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_100_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_100_QC4, NULL };
+static int hf_048_V1_31_100_QA4 = -1;
+static const value_string valstr_048_V1_31_100_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_100_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_100_QA4, NULL };
+static int hf_048_V1_31_100_QB1 = -1;
+static const value_string valstr_048_V1_31_100_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_100_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_100_QB1, NULL };
+static int hf_048_V1_31_100_QD1 = -1;
+static const value_string valstr_048_V1_31_100_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_100_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_100_QD1, NULL };
+static int hf_048_V1_31_100_QB2 = -1;
+static const value_string valstr_048_V1_31_100_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_100_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_100_QB2, NULL };
+static int hf_048_V1_31_100_QD2 = -1;
+static const value_string valstr_048_V1_31_100_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_100_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_100_QD2, NULL };
+static int hf_048_V1_31_100_QB4 = -1;
+static const value_string valstr_048_V1_31_100_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_100_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_100_QB4, NULL };
+static int hf_048_V1_31_100_QD4 = -1;
+static const value_string valstr_048_V1_31_100_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_100_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_100_QD4, NULL };
+static const FieldPart *I048_V1_31_100_PARTS[] = {
+ &I048_V1_31_100_V,
+ &I048_V1_31_100_G,
+ &IXXX_2bit_spare,
+ &I048_V1_31_100_MODEC,
+ &IXXX_4bit_spare,
+ &I048_V1_31_100_QC1,
+ &I048_V1_31_100_QA1,
+ &I048_V1_31_100_QC2,
+ &I048_V1_31_100_QA2,
+ &I048_V1_31_100_QC4,
+ &I048_V1_31_100_QA4,
+ &I048_V1_31_100_QB1,
+ &I048_V1_31_100_QD1,
+ &I048_V1_31_100_QB2,
+ &I048_V1_31_100_QD2,
+ &I048_V1_31_100_QB4,
+ &I048_V1_31_100_QD4,
+ NULL
+};
+static const AsterixField I048_V1_31_100 = { FIXED, 4, 0, 0, &hf_048_V1_31_100, I048_V1_31_100_PARTS, { NULL } };
+static int hf_048_V1_31_110 = -1;
+static int hf_048_V1_31_110_3DH = -1;
+static const FieldPart I048_V1_31_110_3DH = { 14, 25.0, FIELD_PART_FLOAT, &hf_048_V1_31_110_3DH, NULL };
+static const FieldPart *I048_V1_31_110_PARTS[] = {
+ &IXXX_2bit_spare,
+ &I048_V1_31_110_3DH,
+ NULL
+};
+static const AsterixField I048_V1_31_110 = { FIXED, 2, 0, 0, &hf_048_V1_31_110, I048_V1_31_110_PARTS, { NULL } };
+static int hf_048_V1_31_120 = -1;
+static int hf_048_V1_31_120_CAL = -1;
+static int hf_048_V1_31_120_CAL_D = -1;
+static const value_string valstr_048_V1_31_120_CAL_D[] = {
+ { 0, "Doppler speed is valid" },
+ { 1, "Doppler speed is doubtful" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_120_CAL_D = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_120_CAL_D, NULL };
+static int hf_048_V1_31_120_CAL_CAL = -1;
+static const FieldPart I048_V1_31_120_CAL_CAL = { 10, 1.0, FIELD_PART_FLOAT, &hf_048_V1_31_120_CAL_CAL, NULL };
+static const FieldPart *I048_V1_31_120_CAL_PARTS[] = {
+ &I048_V1_31_120_CAL_D,
+ &IXXX_5bit_spare,
+ &I048_V1_31_120_CAL_CAL,
+ NULL
+};
+static const AsterixField I048_V1_31_120_CAL = { FIXED, 2, 0, 0, &hf_048_V1_31_120_CAL, I048_V1_31_120_CAL_PARTS, { NULL } };
+static int hf_048_V1_31_120_RDS = -1;
+static int hf_048_V1_31_120_RDS_DOP = -1;
+static const FieldPart I048_V1_31_120_RDS_DOP = { 16, 1.0, FIELD_PART_UFLOAT, &hf_048_V1_31_120_RDS_DOP, NULL };
+static int hf_048_V1_31_120_RDS_AMB = -1;
+static const FieldPart I048_V1_31_120_RDS_AMB = { 16, 1.0, FIELD_PART_UFLOAT, &hf_048_V1_31_120_RDS_AMB, NULL };
+static int hf_048_V1_31_120_RDS_FRQ = -1;
+static const FieldPart I048_V1_31_120_RDS_FRQ = { 16, 1.0, FIELD_PART_UFLOAT, &hf_048_V1_31_120_RDS_FRQ, NULL };
+static const FieldPart *I048_V1_31_120_RDS_PARTS[] = {
+ &I048_V1_31_120_RDS_DOP,
+ &I048_V1_31_120_RDS_AMB,
+ &I048_V1_31_120_RDS_FRQ,
+ NULL
+};
+static const AsterixField I048_V1_31_120_RDS = { REPETITIVE, 6, 1, 0, &hf_048_V1_31_120_RDS, I048_V1_31_120_RDS_PARTS, { NULL } };
+static const AsterixField I048_V1_31_120 = { COMPOUND, 0, 0, 0, &hf_048_V1_31_120, NULL, { &I048_V1_31_120_CAL, &I048_V1_31_120_RDS, NULL } };
+static int hf_048_V1_31_130 = -1;
+static int hf_048_V1_31_130_SRL = -1;
+static int hf_048_V1_31_130_SRL_VALUE = -1;
+static const FieldPart I048_V1_31_130_SRL_VALUE = { 8, 0.0439453125, FIELD_PART_UFLOAT, &hf_048_V1_31_130_SRL_VALUE, NULL };
+static const FieldPart *I048_V1_31_130_SRL_PARTS[] = {
+ &I048_V1_31_130_SRL_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_31_130_SRL = { FIXED, 1, 0, 0, &hf_048_V1_31_130_SRL, I048_V1_31_130_SRL_PARTS, { NULL } };
+static int hf_048_V1_31_130_SRR = -1;
+static int hf_048_V1_31_130_SRR_VALUE = -1;
+static const FieldPart I048_V1_31_130_SRR_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_048_V1_31_130_SRR_VALUE, NULL };
+static const FieldPart *I048_V1_31_130_SRR_PARTS[] = {
+ &I048_V1_31_130_SRR_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_31_130_SRR = { FIXED, 1, 0, 0, &hf_048_V1_31_130_SRR, I048_V1_31_130_SRR_PARTS, { NULL } };
+static int hf_048_V1_31_130_SAM = -1;
+static int hf_048_V1_31_130_SAM_VALUE = -1;
+static const FieldPart I048_V1_31_130_SAM_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_048_V1_31_130_SAM_VALUE, NULL };
+static const FieldPart *I048_V1_31_130_SAM_PARTS[] = {
+ &I048_V1_31_130_SAM_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_31_130_SAM = { FIXED, 1, 0, 0, &hf_048_V1_31_130_SAM, I048_V1_31_130_SAM_PARTS, { NULL } };
+static int hf_048_V1_31_130_PRL = -1;
+static int hf_048_V1_31_130_PRL_VALUE = -1;
+static const FieldPart I048_V1_31_130_PRL_VALUE = { 8, 0.0439453125, FIELD_PART_UFLOAT, &hf_048_V1_31_130_PRL_VALUE, NULL };
+static const FieldPart *I048_V1_31_130_PRL_PARTS[] = {
+ &I048_V1_31_130_PRL_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_31_130_PRL = { FIXED, 1, 0, 0, &hf_048_V1_31_130_PRL, I048_V1_31_130_PRL_PARTS, { NULL } };
+static int hf_048_V1_31_130_PAM = -1;
+static int hf_048_V1_31_130_PAM_VALUE = -1;
+static const FieldPart I048_V1_31_130_PAM_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_048_V1_31_130_PAM_VALUE, NULL };
+static const FieldPart *I048_V1_31_130_PAM_PARTS[] = {
+ &I048_V1_31_130_PAM_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_31_130_PAM = { FIXED, 1, 0, 0, &hf_048_V1_31_130_PAM, I048_V1_31_130_PAM_PARTS, { NULL } };
+static int hf_048_V1_31_130_RPD = -1;
+static int hf_048_V1_31_130_RPD_VALUE = -1;
+static const FieldPart I048_V1_31_130_RPD_VALUE = { 8, 0.00390625, FIELD_PART_FLOAT, &hf_048_V1_31_130_RPD_VALUE, NULL };
+static const FieldPart *I048_V1_31_130_RPD_PARTS[] = {
+ &I048_V1_31_130_RPD_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_31_130_RPD = { FIXED, 1, 0, 0, &hf_048_V1_31_130_RPD, I048_V1_31_130_RPD_PARTS, { NULL } };
+static int hf_048_V1_31_130_APD = -1;
+static int hf_048_V1_31_130_APD_VALUE = -1;
+static const FieldPart I048_V1_31_130_APD_VALUE = { 8, 0.02197265625, FIELD_PART_FLOAT, &hf_048_V1_31_130_APD_VALUE, NULL };
+static const FieldPart *I048_V1_31_130_APD_PARTS[] = {
+ &I048_V1_31_130_APD_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_31_130_APD = { FIXED, 1, 0, 0, &hf_048_V1_31_130_APD, I048_V1_31_130_APD_PARTS, { NULL } };
+static const AsterixField I048_V1_31_130 = { COMPOUND, 0, 0, 0, &hf_048_V1_31_130, NULL, { &I048_V1_31_130_SRL, &I048_V1_31_130_SRR, &I048_V1_31_130_SAM, &I048_V1_31_130_PRL, &I048_V1_31_130_PAM, &I048_V1_31_130_RPD, &I048_V1_31_130_APD, NULL } };
+static int hf_048_V1_31_140 = -1;
+static int hf_048_V1_31_140_VALUE = -1;
+static const FieldPart I048_V1_31_140_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_048_V1_31_140_VALUE, NULL };
+static const FieldPart *I048_V1_31_140_PARTS[] = {
+ &I048_V1_31_140_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_31_140 = { FIXED, 3, 0, 0, &hf_048_V1_31_140, I048_V1_31_140_PARTS, { NULL } };
+static int hf_048_V1_31_161 = -1;
+static int hf_048_V1_31_161_TRN = -1;
+static const FieldPart I048_V1_31_161_TRN = { 12, 1.0, FIELD_PART_HEX, &hf_048_V1_31_161_TRN, NULL };
+static const FieldPart *I048_V1_31_161_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I048_V1_31_161_TRN,
+ NULL
+};
+static const AsterixField I048_V1_31_161 = { FIXED, 2, 0, 0, &hf_048_V1_31_161, I048_V1_31_161_PARTS, { NULL } };
+static int hf_048_V1_31_170 = -1;
+static int hf_048_V1_31_170_CNF = -1;
+static const value_string valstr_048_V1_31_170_CNF[] = {
+ { 0, "Confirmed Track" },
+ { 1, "Tentative Track" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_170_CNF = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_170_CNF, NULL };
+static int hf_048_V1_31_170_RAD = -1;
+static const value_string valstr_048_V1_31_170_RAD[] = {
+ { 0, "Combined Track" },
+ { 1, "PSR Track" },
+ { 2, "SSR/Mode S Track" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_170_RAD = { 2, 1.0, FIELD_PART_UINT, &hf_048_V1_31_170_RAD, NULL };
+static int hf_048_V1_31_170_DOU = -1;
+static const value_string valstr_048_V1_31_170_DOU[] = {
+ { 0, "Normal confidence" },
+ { 1, "Low confidence in plot to track association" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_170_DOU = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_170_DOU, NULL };
+static int hf_048_V1_31_170_MAH = -1;
+static const value_string valstr_048_V1_31_170_MAH[] = {
+ { 0, "No horizontal man.sensed" },
+ { 1, "Horizontal man. sensed" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_170_MAH = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_170_MAH, NULL };
+static int hf_048_V1_31_170_CDM = -1;
+static const value_string valstr_048_V1_31_170_CDM[] = {
+ { 0, "Maintaining" },
+ { 1, "Climbing" },
+ { 2, "Descending" },
+ { 3, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_170_CDM = { 2, 1.0, FIELD_PART_UINT, &hf_048_V1_31_170_CDM, NULL };
+static int hf_048_V1_31_170_TRE = -1;
+static const value_string valstr_048_V1_31_170_TRE[] = {
+ { 0, "Track still alive" },
+ { 1, "End of track lifetime(last report for this track)" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_170_TRE = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_170_TRE, NULL };
+static int hf_048_V1_31_170_GHO = -1;
+static const value_string valstr_048_V1_31_170_GHO[] = {
+ { 0, "True target track" },
+ { 1, "Ghost target track" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_170_GHO = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_170_GHO, NULL };
+static int hf_048_V1_31_170_SUP = -1;
+static const value_string valstr_048_V1_31_170_SUP[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_170_SUP = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_170_SUP, NULL };
+static int hf_048_V1_31_170_TCC = -1;
+static const value_string valstr_048_V1_31_170_TCC[] = {
+ { 0, "Tracking performed in so-called \'Radar Plane\', i.e. neither slant range correction nor stereographical projection was applied" },
+ { 1, "Slant range correction and a suitable projection technique are used to track in a 2D.reference plane, tangential to the earth model at the Radar Site co-ordinates" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_170_TCC = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_170_TCC, NULL };
+static const FieldPart *I048_V1_31_170_PARTS[] = {
+ &I048_V1_31_170_CNF,
+ &I048_V1_31_170_RAD,
+ &I048_V1_31_170_DOU,
+ &I048_V1_31_170_MAH,
+ &I048_V1_31_170_CDM,
+ &IXXX_FX,
+ &I048_V1_31_170_TRE,
+ &I048_V1_31_170_GHO,
+ &I048_V1_31_170_SUP,
+ &I048_V1_31_170_TCC,
+ &IXXX_3bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I048_V1_31_170 = { FX, 1, 0, 0, &hf_048_V1_31_170, I048_V1_31_170_PARTS, { NULL } };
+static int hf_048_V1_31_200 = -1;
+static int hf_048_V1_31_200_GSP = -1;
+static const FieldPart I048_V1_31_200_GSP = { 16, 0.00006103515625, FIELD_PART_UFLOAT, &hf_048_V1_31_200_GSP, NULL };
+static int hf_048_V1_31_200_HDG = -1;
+static const FieldPart I048_V1_31_200_HDG = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_048_V1_31_200_HDG, NULL };
+static const FieldPart *I048_V1_31_200_PARTS[] = {
+ &I048_V1_31_200_GSP,
+ &I048_V1_31_200_HDG,
+ NULL
+};
+static const AsterixField I048_V1_31_200 = { FIXED, 4, 0, 0, &hf_048_V1_31_200, I048_V1_31_200_PARTS, { NULL } };
+static int hf_048_V1_31_210 = -1;
+static int hf_048_V1_31_210_SIGX = -1;
+static const FieldPart I048_V1_31_210_SIGX = { 8, 0.0078125, FIELD_PART_UFLOAT, &hf_048_V1_31_210_SIGX, NULL };
+static int hf_048_V1_31_210_SIGY = -1;
+static const FieldPart I048_V1_31_210_SIGY = { 8, 0.0078125, FIELD_PART_UFLOAT, &hf_048_V1_31_210_SIGY, NULL };
+static int hf_048_V1_31_210_SIGV = -1;
+static const FieldPart I048_V1_31_210_SIGV = { 8, 0.00006103515625, FIELD_PART_UFLOAT, &hf_048_V1_31_210_SIGV, NULL };
+static int hf_048_V1_31_210_SIGH = -1;
+static const FieldPart I048_V1_31_210_SIGH = { 8, 0.087890625, FIELD_PART_UFLOAT, &hf_048_V1_31_210_SIGH, NULL };
+static const FieldPart *I048_V1_31_210_PARTS[] = {
+ &I048_V1_31_210_SIGX,
+ &I048_V1_31_210_SIGY,
+ &I048_V1_31_210_SIGV,
+ &I048_V1_31_210_SIGH,
+ NULL
+};
+static const AsterixField I048_V1_31_210 = { FIXED, 4, 0, 0, &hf_048_V1_31_210, I048_V1_31_210_PARTS, { NULL } };
+static int hf_048_V1_31_220 = -1;
+static int hf_048_V1_31_220_VALUE = -1;
+static const FieldPart I048_V1_31_220_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_048_V1_31_220_VALUE, NULL };
+static const FieldPart *I048_V1_31_220_PARTS[] = {
+ &I048_V1_31_220_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_31_220 = { FIXED, 3, 0, 0, &hf_048_V1_31_220, I048_V1_31_220_PARTS, { NULL } };
+static int hf_048_V1_31_230 = -1;
+static int hf_048_V1_31_230_COM = -1;
+static const value_string valstr_048_V1_31_230_COM[] = {
+ { 0, "No communications capability (surveillance only)" },
+ { 1, "Comm. A and Comm. B capability" },
+ { 2, "Comm. A, Comm. B and Uplink ELM" },
+ { 3, "Comm. A, Comm. B, Uplink ELM and Downlink ELM" },
+ { 4, "Level 5 Transponder capability" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_230_COM = { 3, 1.0, FIELD_PART_UINT, &hf_048_V1_31_230_COM, NULL };
+static int hf_048_V1_31_230_STAT = -1;
+static const value_string valstr_048_V1_31_230_STAT[] = {
+ { 0, "No alert, no SPI, aircraft airborne" },
+ { 1, "No alert, no SPI, aircraft on ground" },
+ { 2, "Alert, no SPI, aircraft airborne" },
+ { 3, "Alert, no SPI, aircraft on ground" },
+ { 4, "Alert, SPI, aircraft airborne or on ground" },
+ { 5, "No alert, SPI, aircraft airborne or on ground" },
+ { 7, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_230_STAT = { 3, 1.0, FIELD_PART_UINT, &hf_048_V1_31_230_STAT, NULL };
+static int hf_048_V1_31_230_SI = -1;
+static const value_string valstr_048_V1_31_230_SI[] = {
+ { 0, "SI-Code Capable" },
+ { 1, "II-Code Capable" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_230_SI = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_230_SI, NULL };
+static int hf_048_V1_31_230_MSSC = -1;
+static const value_string valstr_048_V1_31_230_MSSC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_230_MSSC = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_230_MSSC, NULL };
+static int hf_048_V1_31_230_ARC = -1;
+static const value_string valstr_048_V1_31_230_ARC[] = {
+ { 0, "100 ft resolution" },
+ { 1, "25 ft resolution" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_230_ARC = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_230_ARC, NULL };
+static int hf_048_V1_31_230_AIC = -1;
+static const value_string valstr_048_V1_31_230_AIC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I048_V1_31_230_AIC = { 1, 1.0, FIELD_PART_UINT, &hf_048_V1_31_230_AIC, NULL };
+static int hf_048_V1_31_230_B1A = -1;
+static const FieldPart I048_V1_31_230_B1A = { 1, 1.0, FIELD_PART_HEX, &hf_048_V1_31_230_B1A, NULL };
+static int hf_048_V1_31_230_B1B = -1;
+static const FieldPart I048_V1_31_230_B1B = { 4, 1.0, FIELD_PART_HEX, &hf_048_V1_31_230_B1B, NULL };
+static const FieldPart *I048_V1_31_230_PARTS[] = {
+ &I048_V1_31_230_COM,
+ &I048_V1_31_230_STAT,
+ &I048_V1_31_230_SI,
+ &IXXX_1bit_spare,
+ &I048_V1_31_230_MSSC,
+ &I048_V1_31_230_ARC,
+ &I048_V1_31_230_AIC,
+ &I048_V1_31_230_B1A,
+ &I048_V1_31_230_B1B,
+ NULL
+};
+static const AsterixField I048_V1_31_230 = { FIXED, 2, 0, 0, &hf_048_V1_31_230, I048_V1_31_230_PARTS, { NULL } };
+static int hf_048_V1_31_240 = -1;
+static int hf_048_V1_31_240_VALUE = -1;
+static const FieldPart I048_V1_31_240_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_048_V1_31_240_VALUE, NULL };
+static const FieldPart *I048_V1_31_240_PARTS[] = {
+ &I048_V1_31_240_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_31_240 = { FIXED, 6, 0, 0, &hf_048_V1_31_240, I048_V1_31_240_PARTS, { NULL } };
+static int hf_048_V1_31_250 = -1;
+static int hf_048_V1_31_250_MBDATA = -1;
+static const FieldPart I048_V1_31_250_MBDATA = { 56, 1.0, FIELD_PART_HEX, &hf_048_V1_31_250_MBDATA, NULL };
+static int hf_048_V1_31_250_BDS1 = -1;
+static const FieldPart I048_V1_31_250_BDS1 = { 4, 1.0, FIELD_PART_HEX, &hf_048_V1_31_250_BDS1, NULL };
+static int hf_048_V1_31_250_BDS2 = -1;
+static const FieldPart I048_V1_31_250_BDS2 = { 4, 1.0, FIELD_PART_HEX, &hf_048_V1_31_250_BDS2, NULL };
+static const FieldPart *I048_V1_31_250_PARTS[] = {
+ &I048_V1_31_250_MBDATA,
+ &I048_V1_31_250_BDS1,
+ &I048_V1_31_250_BDS2,
+ NULL
+};
+static const AsterixField I048_V1_31_250 = { REPETITIVE, 8, 1, 0, &hf_048_V1_31_250, I048_V1_31_250_PARTS, { NULL } };
+static int hf_048_V1_31_260 = -1;
+static int hf_048_V1_31_260_VALUE = -1;
+static const FieldPart I048_V1_31_260_VALUE = { 56, 1.0, FIELD_PART_HEX, &hf_048_V1_31_260_VALUE, NULL };
+static const FieldPart *I048_V1_31_260_PARTS[] = {
+ &I048_V1_31_260_VALUE,
+ NULL
+};
+static const AsterixField I048_V1_31_260 = { FIXED, 7, 0, 0, &hf_048_V1_31_260, I048_V1_31_260_PARTS, { NULL } };
+static int hf_048_V1_31_RE = -1;
+static const AsterixField I048_V1_31_RE = { EXP, 0, 0, 1, &hf_048_V1_31_RE, NULL, { NULL } };
+static int hf_048_V1_31_SP = -1;
+static const AsterixField I048_V1_31_SP = { EXP, 0, 0, 1, &hf_048_V1_31_SP, NULL, { NULL } };
+
+/* Category 048, edition 1.31 (latest) */
+static int hf_048_010 = -1;
+static int hf_048_010_SAC = -1;
+static const FieldPart I048_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_048_010_SAC, NULL };
+static int hf_048_010_SIC = -1;
+static const FieldPart I048_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_048_010_SIC, NULL };
+static const FieldPart *I048_010_PARTS[] = {
+ &I048_010_SAC,
+ &I048_010_SIC,
+ NULL
+};
+static const AsterixField I048_010 = { FIXED, 2, 0, 0, &hf_048_010, I048_010_PARTS, { NULL } };
+static int hf_048_020 = -1;
+static int hf_048_020_TYP = -1;
+static const value_string valstr_048_020_TYP[] = {
+ { 0, "No detection" },
+ { 1, "Single PSR detection" },
+ { 2, "Single SSR detection" },
+ { 3, "SSR + PSR detection" },
+ { 4, "Single ModeS All-Call" },
+ { 5, "Single ModeS Roll-Call" },
+ { 6, "ModeS All-Call + PSR" },
+ { 7, "ModeS Roll-Call +PSR" },
+ { 0, NULL }
+};
+static const FieldPart I048_020_TYP = { 3, 1.0, FIELD_PART_UINT, &hf_048_020_TYP, NULL };
+static int hf_048_020_SIM = -1;
+static const value_string valstr_048_020_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I048_020_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_048_020_SIM, NULL };
+static int hf_048_020_RDP = -1;
+static const value_string valstr_048_020_RDP[] = {
+ { 0, "Report from RDP Chain 1" },
+ { 1, "Report from RDP Chain 2" },
+ { 0, NULL }
+};
+static const FieldPart I048_020_RDP = { 1, 1.0, FIELD_PART_UINT, &hf_048_020_RDP, NULL };
+static int hf_048_020_SPI = -1;
+static const value_string valstr_048_020_SPI[] = {
+ { 0, "Absence of SPI" },
+ { 1, "Special Position Identification" },
+ { 0, NULL }
+};
+static const FieldPart I048_020_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_048_020_SPI, NULL };
+static int hf_048_020_RAB = -1;
+static const value_string valstr_048_020_RAB[] = {
+ { 0, "Report from aircraft transponder" },
+ { 1, "Report from field monitor (fixed transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I048_020_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_048_020_RAB, NULL };
+static int hf_048_020_TST = -1;
+static const value_string valstr_048_020_TST[] = {
+ { 0, "Real target report" },
+ { 1, "Test target report" },
+ { 0, NULL }
+};
+static const FieldPart I048_020_TST = { 1, 1.0, FIELD_PART_UINT, &hf_048_020_TST, NULL };
+static int hf_048_020_ERR = -1;
+static const value_string valstr_048_020_ERR[] = {
+ { 0, "No Extended Range" },
+ { 1, "Extended Range present" },
+ { 0, NULL }
+};
+static const FieldPart I048_020_ERR = { 1, 1.0, FIELD_PART_UINT, &hf_048_020_ERR, NULL };
+static int hf_048_020_XPP = -1;
+static const value_string valstr_048_020_XPP[] = {
+ { 0, "No X-Pulse present" },
+ { 1, "X-Pulse present" },
+ { 0, NULL }
+};
+static const FieldPart I048_020_XPP = { 1, 1.0, FIELD_PART_UINT, &hf_048_020_XPP, NULL };
+static int hf_048_020_ME = -1;
+static const value_string valstr_048_020_ME[] = {
+ { 0, "No military emergency" },
+ { 1, "Military emergency" },
+ { 0, NULL }
+};
+static const FieldPart I048_020_ME = { 1, 1.0, FIELD_PART_UINT, &hf_048_020_ME, NULL };
+static int hf_048_020_MI = -1;
+static const value_string valstr_048_020_MI[] = {
+ { 0, "No military identification" },
+ { 1, "Military identification" },
+ { 0, NULL }
+};
+static const FieldPart I048_020_MI = { 1, 1.0, FIELD_PART_UINT, &hf_048_020_MI, NULL };
+static int hf_048_020_FOEFRI = -1;
+static const value_string valstr_048_020_FOEFRI[] = {
+ { 0, "No Mode 4 interrogation" },
+ { 1, "Friendly target" },
+ { 2, "Unknown target" },
+ { 3, "No reply" },
+ { 0, NULL }
+};
+static const FieldPart I048_020_FOEFRI = { 2, 1.0, FIELD_PART_UINT, &hf_048_020_FOEFRI, NULL };
+static int hf_048_020_ADSB = -1;
+static const FieldPart I048_020_ADSB = { 2, 1.0, FIELD_PART_HEX, &hf_048_020_ADSB, NULL };
+static int hf_048_020_SCN = -1;
+static const FieldPart I048_020_SCN = { 2, 1.0, FIELD_PART_HEX, &hf_048_020_SCN, NULL };
+static int hf_048_020_PAI = -1;
+static const FieldPart I048_020_PAI = { 2, 1.0, FIELD_PART_HEX, &hf_048_020_PAI, NULL };
+static const FieldPart *I048_020_PARTS[] = {
+ &I048_020_TYP,
+ &I048_020_SIM,
+ &I048_020_RDP,
+ &I048_020_SPI,
+ &I048_020_RAB,
+ &IXXX_FX,
+ &I048_020_TST,
+ &I048_020_ERR,
+ &I048_020_XPP,
+ &I048_020_ME,
+ &I048_020_MI,
+ &I048_020_FOEFRI,
+ &IXXX_FX,
+ &I048_020_ADSB,
+ &I048_020_SCN,
+ &I048_020_PAI,
+ &IXXX_1bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I048_020 = { FX, 1, 0, 0, &hf_048_020, I048_020_PARTS, { NULL } };
+static int hf_048_030 = -1;
+static int hf_048_030_Subitem = -1;
+static const value_string valstr_048_030_Subitem[] = {
+ { 0, "Not defined; never used" },
+ { 1, "Multipath Reply (Reflection)" },
+ { 2, "Reply due to sidelobe interrogation/reception" },
+ { 3, "Split plot" },
+ { 4, "Second time around reply" },
+ { 5, "Angel" },
+ { 6, "Slow moving target correlated with road infrastructure (terrestrial vehicle)" },
+ { 7, "Fixed PSR plot" },
+ { 8, "Slow PSR target" },
+ { 9, "Low quality PSR plot" },
+ { 10, "Phantom SSR plot" },
+ { 11, "Non-Matching Mode-3/A Code" },
+ { 12, "Mode C code / Mode S altitude code abnormal value compared to the track" },
+ { 13, "Target in Clutter Area" },
+ { 14, "Maximum Doppler Response in Zero Filter" },
+ { 15, "Transponder anomaly detected" },
+ { 16, "Duplicated or Illegal Mode S Aircraft Address" },
+ { 17, "Mode S error correction applied" },
+ { 18, "Undecodable Mode C code / Mode S altitude code" },
+ { 19, "Birds" },
+ { 20, "Flock of Birds" },
+ { 21, "Mode-1 was present in original reply" },
+ { 22, "Mode-2 was present in original reply" },
+ { 23, "Plot potentially caused by Wind Turbine" },
+ { 24, "Helicopter" },
+ { 25, "Maximum number of re-interrogations reached (surveillance information)" },
+ { 26, "Maximum number of re-interrogations reached (BDS Extractions)" },
+ { 27, "BDS Overlay Incoherence" },
+ { 28, "Potential BDS Swap Detected" },
+ { 29, "Track Update in the Zenithal Gap" },
+ { 30, "Mode S Track re-acquired" },
+ { 31, "Duplicated Mode 5 Pair NO/PIN detected" },
+ { 32, "Wrong DF reply format detected" },
+ { 33, "Transponder anomaly (MS XPD replies with Mode A/C to Mode A/C-only all-call)" },
+ { 34, "Transponder anomaly (SI capability report wrong)" },
+ { 35, "Potential IC Conflict" },
+ { 36, "IC Conflict detection possible-no conflict currently detected" },
+ { 0, NULL }
+};
+static const FieldPart I048_030_Subitem = { 7, 1.0, FIELD_PART_UINT, &hf_048_030_Subitem, NULL };
+static const FieldPart *I048_030_PARTS[] = {
+ &I048_030_Subitem,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I048_030 = { FX, 1, 0, 0, &hf_048_030, I048_030_PARTS, { NULL } };
+static int hf_048_040 = -1;
+static int hf_048_040_RHO = -1;
+static const FieldPart I048_040_RHO = { 16, 0.00390625, FIELD_PART_UFLOAT, &hf_048_040_RHO, NULL };
+static int hf_048_040_THETA = -1;
+static const FieldPart I048_040_THETA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_048_040_THETA, NULL };
+static const FieldPart *I048_040_PARTS[] = {
+ &I048_040_RHO,
+ &I048_040_THETA,
+ NULL
+};
+static const AsterixField I048_040 = { FIXED, 4, 0, 0, &hf_048_040, I048_040_PARTS, { NULL } };
+static int hf_048_042 = -1;
+static int hf_048_042_X = -1;
+static const FieldPart I048_042_X = { 16, 0.0078125, FIELD_PART_FLOAT, &hf_048_042_X, NULL };
+static int hf_048_042_Y = -1;
+static const FieldPart I048_042_Y = { 16, 0.0078125, FIELD_PART_FLOAT, &hf_048_042_Y, NULL };
+static const FieldPart *I048_042_PARTS[] = {
+ &I048_042_X,
+ &I048_042_Y,
+ NULL
+};
+static const AsterixField I048_042 = { FIXED, 4, 0, 0, &hf_048_042, I048_042_PARTS, { NULL } };
+static int hf_048_050 = -1;
+static int hf_048_050_V = -1;
+static const value_string valstr_048_050_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_050_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_050_V, NULL };
+static int hf_048_050_G = -1;
+static const value_string valstr_048_050_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_050_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_050_G, NULL };
+static int hf_048_050_L = -1;
+static const value_string valstr_048_050_L[] = {
+ { 0, "Mode-2 code as derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-2 code as provided by a local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I048_050_L = { 1, 1.0, FIELD_PART_UINT, &hf_048_050_L, NULL };
+static int hf_048_050_MODE2 = -1;
+static const FieldPart I048_050_MODE2 = { 12, 1.0, FIELD_PART_SQUAWK, &hf_048_050_MODE2, NULL };
+static const FieldPart *I048_050_PARTS[] = {
+ &I048_050_V,
+ &I048_050_G,
+ &I048_050_L,
+ &IXXX_1bit_spare,
+ &I048_050_MODE2,
+ NULL
+};
+static const AsterixField I048_050 = { FIXED, 2, 0, 0, &hf_048_050, I048_050_PARTS, { NULL } };
+static int hf_048_055 = -1;
+static int hf_048_055_V = -1;
+static const value_string valstr_048_055_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_055_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_055_V, NULL };
+static int hf_048_055_G = -1;
+static const value_string valstr_048_055_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_055_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_055_G, NULL };
+static int hf_048_055_L = -1;
+static const value_string valstr_048_055_L[] = {
+ { 0, "Mode-1 code as derived from the reply of the transponder" },
+ { 1, "Smoothed Mode-1 code as provided by a local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I048_055_L = { 1, 1.0, FIELD_PART_UINT, &hf_048_055_L, NULL };
+static int hf_048_055_MODE1 = -1;
+static const FieldPart I048_055_MODE1 = { 5, 1.0, FIELD_PART_HEX, &hf_048_055_MODE1, NULL };
+static const FieldPart *I048_055_PARTS[] = {
+ &I048_055_V,
+ &I048_055_G,
+ &I048_055_L,
+ &I048_055_MODE1,
+ NULL
+};
+static const AsterixField I048_055 = { FIXED, 1, 0, 0, &hf_048_055, I048_055_PARTS, { NULL } };
+static int hf_048_060 = -1;
+static int hf_048_060_QA4 = -1;
+static const value_string valstr_048_060_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_060_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_060_QA4, NULL };
+static int hf_048_060_QA2 = -1;
+static const value_string valstr_048_060_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_060_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_060_QA2, NULL };
+static int hf_048_060_QA1 = -1;
+static const value_string valstr_048_060_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_060_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_060_QA1, NULL };
+static int hf_048_060_QB4 = -1;
+static const value_string valstr_048_060_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I048_060_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_060_QB4, NULL };
+static int hf_048_060_QB2 = -1;
+static const value_string valstr_048_060_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_060_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_060_QB2, NULL };
+static int hf_048_060_QB1 = -1;
+static const value_string valstr_048_060_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_060_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_060_QB1, NULL };
+static int hf_048_060_QC4 = -1;
+static const value_string valstr_048_060_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I048_060_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_060_QC4, NULL };
+static int hf_048_060_QC2 = -1;
+static const value_string valstr_048_060_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I048_060_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_060_QC2, NULL };
+static int hf_048_060_QC1 = -1;
+static const value_string valstr_048_060_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I048_060_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_060_QC1, NULL };
+static int hf_048_060_QD4 = -1;
+static const value_string valstr_048_060_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I048_060_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_060_QD4, NULL };
+static int hf_048_060_QD2 = -1;
+static const value_string valstr_048_060_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I048_060_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_060_QD2, NULL };
+static int hf_048_060_QD1 = -1;
+static const value_string valstr_048_060_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I048_060_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_060_QD1, NULL };
+static const FieldPart *I048_060_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I048_060_QA4,
+ &I048_060_QA2,
+ &I048_060_QA1,
+ &I048_060_QB4,
+ &I048_060_QB2,
+ &I048_060_QB1,
+ &I048_060_QC4,
+ &I048_060_QC2,
+ &I048_060_QC1,
+ &I048_060_QD4,
+ &I048_060_QD2,
+ &I048_060_QD1,
+ NULL
+};
+static const AsterixField I048_060 = { FIXED, 2, 0, 0, &hf_048_060, I048_060_PARTS, { NULL } };
+static int hf_048_065 = -1;
+static int hf_048_065_QA4 = -1;
+static const value_string valstr_048_065_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_065_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_065_QA4, NULL };
+static int hf_048_065_QA2 = -1;
+static const value_string valstr_048_065_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_065_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_065_QA2, NULL };
+static int hf_048_065_QA1 = -1;
+static const value_string valstr_048_065_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_065_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_065_QA1, NULL };
+static int hf_048_065_QB2 = -1;
+static const value_string valstr_048_065_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_065_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_065_QB2, NULL };
+static int hf_048_065_QB1 = -1;
+static const value_string valstr_048_065_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_065_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_065_QB1, NULL };
+static const FieldPart *I048_065_PARTS[] = {
+ &IXXX_3bit_spare,
+ &I048_065_QA4,
+ &I048_065_QA2,
+ &I048_065_QA1,
+ &I048_065_QB2,
+ &I048_065_QB1,
+ NULL
+};
+static const AsterixField I048_065 = { FIXED, 1, 0, 0, &hf_048_065, I048_065_PARTS, { NULL } };
+static int hf_048_070 = -1;
+static int hf_048_070_V = -1;
+static const value_string valstr_048_070_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_070_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_070_V, NULL };
+static int hf_048_070_G = -1;
+static const value_string valstr_048_070_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_070_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_070_G, NULL };
+static int hf_048_070_L = -1;
+static const value_string valstr_048_070_L[] = {
+ { 0, "Mode-3/A code derived from the reply of the transponder" },
+ { 1, "Mode-3/A code not extracted during the last scan" },
+ { 0, NULL }
+};
+static const FieldPart I048_070_L = { 1, 1.0, FIELD_PART_UINT, &hf_048_070_L, NULL };
+static int hf_048_070_MODE3A = -1;
+static const FieldPart I048_070_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_048_070_MODE3A, NULL };
+static const FieldPart *I048_070_PARTS[] = {
+ &I048_070_V,
+ &I048_070_G,
+ &I048_070_L,
+ &IXXX_1bit_spare,
+ &I048_070_MODE3A,
+ NULL
+};
+static const AsterixField I048_070 = { FIXED, 2, 0, 0, &hf_048_070, I048_070_PARTS, { NULL } };
+static int hf_048_080 = -1;
+static int hf_048_080_QA4 = -1;
+static const value_string valstr_048_080_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_080_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_080_QA4, NULL };
+static int hf_048_080_QA2 = -1;
+static const value_string valstr_048_080_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_080_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_080_QA2, NULL };
+static int hf_048_080_QA1 = -1;
+static const value_string valstr_048_080_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_080_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_080_QA1, NULL };
+static int hf_048_080_QB4 = -1;
+static const value_string valstr_048_080_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I048_080_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_080_QB4, NULL };
+static int hf_048_080_QB2 = -1;
+static const value_string valstr_048_080_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_080_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_080_QB2, NULL };
+static int hf_048_080_QB1 = -1;
+static const value_string valstr_048_080_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_080_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_080_QB1, NULL };
+static int hf_048_080_QC4 = -1;
+static const value_string valstr_048_080_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I048_080_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_080_QC4, NULL };
+static int hf_048_080_QC2 = -1;
+static const value_string valstr_048_080_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I048_080_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_080_QC2, NULL };
+static int hf_048_080_QC1 = -1;
+static const value_string valstr_048_080_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I048_080_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_080_QC1, NULL };
+static int hf_048_080_QD4 = -1;
+static const value_string valstr_048_080_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I048_080_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_080_QD4, NULL };
+static int hf_048_080_QD2 = -1;
+static const value_string valstr_048_080_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I048_080_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_080_QD2, NULL };
+static int hf_048_080_QD1 = -1;
+static const value_string valstr_048_080_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I048_080_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_080_QD1, NULL };
+static const FieldPart *I048_080_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I048_080_QA4,
+ &I048_080_QA2,
+ &I048_080_QA1,
+ &I048_080_QB4,
+ &I048_080_QB2,
+ &I048_080_QB1,
+ &I048_080_QC4,
+ &I048_080_QC2,
+ &I048_080_QC1,
+ &I048_080_QD4,
+ &I048_080_QD2,
+ &I048_080_QD1,
+ NULL
+};
+static const AsterixField I048_080 = { FIXED, 2, 0, 0, &hf_048_080, I048_080_PARTS, { NULL } };
+static int hf_048_090 = -1;
+static int hf_048_090_V = -1;
+static const value_string valstr_048_090_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_090_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_090_V, NULL };
+static int hf_048_090_G = -1;
+static const value_string valstr_048_090_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_090_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_090_G, NULL };
+static int hf_048_090_FL = -1;
+static const FieldPart I048_090_FL = { 14, 0.25, FIELD_PART_UFLOAT, &hf_048_090_FL, NULL };
+static const FieldPart *I048_090_PARTS[] = {
+ &I048_090_V,
+ &I048_090_G,
+ &I048_090_FL,
+ NULL
+};
+static const AsterixField I048_090 = { FIXED, 2, 0, 0, &hf_048_090, I048_090_PARTS, { NULL } };
+static int hf_048_100 = -1;
+static int hf_048_100_V = -1;
+static const value_string valstr_048_100_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I048_100_V = { 1, 1.0, FIELD_PART_UINT, &hf_048_100_V, NULL };
+static int hf_048_100_G = -1;
+static const value_string valstr_048_100_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I048_100_G = { 1, 1.0, FIELD_PART_UINT, &hf_048_100_G, NULL };
+static int hf_048_100_MODEC = -1;
+static const FieldPart I048_100_MODEC = { 12, 1.0, FIELD_PART_HEX, &hf_048_100_MODEC, NULL };
+static int hf_048_100_QC1 = -1;
+static const value_string valstr_048_100_QC1[] = {
+ { 0, "High quality pulse C1" },
+ { 1, "Low quality pulse C1" },
+ { 0, NULL }
+};
+static const FieldPart I048_100_QC1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_100_QC1, NULL };
+static int hf_048_100_QA1 = -1;
+static const value_string valstr_048_100_QA1[] = {
+ { 0, "High quality pulse A1" },
+ { 1, "Low quality pulse A1" },
+ { 0, NULL }
+};
+static const FieldPart I048_100_QA1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_100_QA1, NULL };
+static int hf_048_100_QC2 = -1;
+static const value_string valstr_048_100_QC2[] = {
+ { 0, "High quality pulse C2" },
+ { 1, "Low quality pulse C2" },
+ { 0, NULL }
+};
+static const FieldPart I048_100_QC2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_100_QC2, NULL };
+static int hf_048_100_QA2 = -1;
+static const value_string valstr_048_100_QA2[] = {
+ { 0, "High quality pulse A2" },
+ { 1, "Low quality pulse A2" },
+ { 0, NULL }
+};
+static const FieldPart I048_100_QA2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_100_QA2, NULL };
+static int hf_048_100_QC4 = -1;
+static const value_string valstr_048_100_QC4[] = {
+ { 0, "High quality pulse C4" },
+ { 1, "Low quality pulse C4" },
+ { 0, NULL }
+};
+static const FieldPart I048_100_QC4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_100_QC4, NULL };
+static int hf_048_100_QA4 = -1;
+static const value_string valstr_048_100_QA4[] = {
+ { 0, "High quality pulse A4" },
+ { 1, "Low quality pulse A4" },
+ { 0, NULL }
+};
+static const FieldPart I048_100_QA4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_100_QA4, NULL };
+static int hf_048_100_QB1 = -1;
+static const value_string valstr_048_100_QB1[] = {
+ { 0, "High quality pulse B1" },
+ { 1, "Low quality pulse B1" },
+ { 0, NULL }
+};
+static const FieldPart I048_100_QB1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_100_QB1, NULL };
+static int hf_048_100_QD1 = -1;
+static const value_string valstr_048_100_QD1[] = {
+ { 0, "High quality pulse D1" },
+ { 1, "Low quality pulse D1" },
+ { 0, NULL }
+};
+static const FieldPart I048_100_QD1 = { 1, 1.0, FIELD_PART_UINT, &hf_048_100_QD1, NULL };
+static int hf_048_100_QB2 = -1;
+static const value_string valstr_048_100_QB2[] = {
+ { 0, "High quality pulse B2" },
+ { 1, "Low quality pulse B2" },
+ { 0, NULL }
+};
+static const FieldPart I048_100_QB2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_100_QB2, NULL };
+static int hf_048_100_QD2 = -1;
+static const value_string valstr_048_100_QD2[] = {
+ { 0, "High quality pulse D2" },
+ { 1, "Low quality pulse D2" },
+ { 0, NULL }
+};
+static const FieldPart I048_100_QD2 = { 1, 1.0, FIELD_PART_UINT, &hf_048_100_QD2, NULL };
+static int hf_048_100_QB4 = -1;
+static const value_string valstr_048_100_QB4[] = {
+ { 0, "High quality pulse B4" },
+ { 1, "Low quality pulse B4" },
+ { 0, NULL }
+};
+static const FieldPart I048_100_QB4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_100_QB4, NULL };
+static int hf_048_100_QD4 = -1;
+static const value_string valstr_048_100_QD4[] = {
+ { 0, "High quality pulse D4" },
+ { 1, "Low quality pulse D4" },
+ { 0, NULL }
+};
+static const FieldPart I048_100_QD4 = { 1, 1.0, FIELD_PART_UINT, &hf_048_100_QD4, NULL };
+static const FieldPart *I048_100_PARTS[] = {
+ &I048_100_V,
+ &I048_100_G,
+ &IXXX_2bit_spare,
+ &I048_100_MODEC,
+ &IXXX_4bit_spare,
+ &I048_100_QC1,
+ &I048_100_QA1,
+ &I048_100_QC2,
+ &I048_100_QA2,
+ &I048_100_QC4,
+ &I048_100_QA4,
+ &I048_100_QB1,
+ &I048_100_QD1,
+ &I048_100_QB2,
+ &I048_100_QD2,
+ &I048_100_QB4,
+ &I048_100_QD4,
+ NULL
+};
+static const AsterixField I048_100 = { FIXED, 4, 0, 0, &hf_048_100, I048_100_PARTS, { NULL } };
+static int hf_048_110 = -1;
+static int hf_048_110_3DH = -1;
+static const FieldPart I048_110_3DH = { 14, 25.0, FIELD_PART_FLOAT, &hf_048_110_3DH, NULL };
+static const FieldPart *I048_110_PARTS[] = {
+ &IXXX_2bit_spare,
+ &I048_110_3DH,
+ NULL
+};
+static const AsterixField I048_110 = { FIXED, 2, 0, 0, &hf_048_110, I048_110_PARTS, { NULL } };
+static int hf_048_120 = -1;
+static int hf_048_120_CAL = -1;
+static int hf_048_120_CAL_D = -1;
+static const value_string valstr_048_120_CAL_D[] = {
+ { 0, "Doppler speed is valid" },
+ { 1, "Doppler speed is doubtful" },
+ { 0, NULL }
+};
+static const FieldPart I048_120_CAL_D = { 1, 1.0, FIELD_PART_UINT, &hf_048_120_CAL_D, NULL };
+static int hf_048_120_CAL_CAL = -1;
+static const FieldPart I048_120_CAL_CAL = { 10, 1.0, FIELD_PART_FLOAT, &hf_048_120_CAL_CAL, NULL };
+static const FieldPart *I048_120_CAL_PARTS[] = {
+ &I048_120_CAL_D,
+ &IXXX_5bit_spare,
+ &I048_120_CAL_CAL,
+ NULL
+};
+static const AsterixField I048_120_CAL = { FIXED, 2, 0, 0, &hf_048_120_CAL, I048_120_CAL_PARTS, { NULL } };
+static int hf_048_120_RDS = -1;
+static int hf_048_120_RDS_DOP = -1;
+static const FieldPart I048_120_RDS_DOP = { 16, 1.0, FIELD_PART_UFLOAT, &hf_048_120_RDS_DOP, NULL };
+static int hf_048_120_RDS_AMB = -1;
+static const FieldPart I048_120_RDS_AMB = { 16, 1.0, FIELD_PART_UFLOAT, &hf_048_120_RDS_AMB, NULL };
+static int hf_048_120_RDS_FRQ = -1;
+static const FieldPart I048_120_RDS_FRQ = { 16, 1.0, FIELD_PART_UFLOAT, &hf_048_120_RDS_FRQ, NULL };
+static const FieldPart *I048_120_RDS_PARTS[] = {
+ &I048_120_RDS_DOP,
+ &I048_120_RDS_AMB,
+ &I048_120_RDS_FRQ,
+ NULL
+};
+static const AsterixField I048_120_RDS = { REPETITIVE, 6, 1, 0, &hf_048_120_RDS, I048_120_RDS_PARTS, { NULL } };
+static const AsterixField I048_120 = { COMPOUND, 0, 0, 0, &hf_048_120, NULL, { &I048_120_CAL, &I048_120_RDS, NULL } };
+static int hf_048_130 = -1;
+static int hf_048_130_SRL = -1;
+static int hf_048_130_SRL_VALUE = -1;
+static const FieldPart I048_130_SRL_VALUE = { 8, 0.0439453125, FIELD_PART_UFLOAT, &hf_048_130_SRL_VALUE, NULL };
+static const FieldPart *I048_130_SRL_PARTS[] = {
+ &I048_130_SRL_VALUE,
+ NULL
+};
+static const AsterixField I048_130_SRL = { FIXED, 1, 0, 0, &hf_048_130_SRL, I048_130_SRL_PARTS, { NULL } };
+static int hf_048_130_SRR = -1;
+static int hf_048_130_SRR_VALUE = -1;
+static const FieldPart I048_130_SRR_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_048_130_SRR_VALUE, NULL };
+static const FieldPart *I048_130_SRR_PARTS[] = {
+ &I048_130_SRR_VALUE,
+ NULL
+};
+static const AsterixField I048_130_SRR = { FIXED, 1, 0, 0, &hf_048_130_SRR, I048_130_SRR_PARTS, { NULL } };
+static int hf_048_130_SAM = -1;
+static int hf_048_130_SAM_VALUE = -1;
+static const FieldPart I048_130_SAM_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_048_130_SAM_VALUE, NULL };
+static const FieldPart *I048_130_SAM_PARTS[] = {
+ &I048_130_SAM_VALUE,
+ NULL
+};
+static const AsterixField I048_130_SAM = { FIXED, 1, 0, 0, &hf_048_130_SAM, I048_130_SAM_PARTS, { NULL } };
+static int hf_048_130_PRL = -1;
+static int hf_048_130_PRL_VALUE = -1;
+static const FieldPart I048_130_PRL_VALUE = { 8, 0.0439453125, FIELD_PART_UFLOAT, &hf_048_130_PRL_VALUE, NULL };
+static const FieldPart *I048_130_PRL_PARTS[] = {
+ &I048_130_PRL_VALUE,
+ NULL
+};
+static const AsterixField I048_130_PRL = { FIXED, 1, 0, 0, &hf_048_130_PRL, I048_130_PRL_PARTS, { NULL } };
+static int hf_048_130_PAM = -1;
+static int hf_048_130_PAM_VALUE = -1;
+static const FieldPart I048_130_PAM_VALUE = { 8, 1.0, FIELD_PART_FLOAT, &hf_048_130_PAM_VALUE, NULL };
+static const FieldPart *I048_130_PAM_PARTS[] = {
+ &I048_130_PAM_VALUE,
+ NULL
+};
+static const AsterixField I048_130_PAM = { FIXED, 1, 0, 0, &hf_048_130_PAM, I048_130_PAM_PARTS, { NULL } };
+static int hf_048_130_RPD = -1;
+static int hf_048_130_RPD_VALUE = -1;
+static const FieldPart I048_130_RPD_VALUE = { 8, 0.00390625, FIELD_PART_FLOAT, &hf_048_130_RPD_VALUE, NULL };
+static const FieldPart *I048_130_RPD_PARTS[] = {
+ &I048_130_RPD_VALUE,
+ NULL
+};
+static const AsterixField I048_130_RPD = { FIXED, 1, 0, 0, &hf_048_130_RPD, I048_130_RPD_PARTS, { NULL } };
+static int hf_048_130_APD = -1;
+static int hf_048_130_APD_VALUE = -1;
+static const FieldPart I048_130_APD_VALUE = { 8, 0.02197265625, FIELD_PART_FLOAT, &hf_048_130_APD_VALUE, NULL };
+static const FieldPart *I048_130_APD_PARTS[] = {
+ &I048_130_APD_VALUE,
+ NULL
+};
+static const AsterixField I048_130_APD = { FIXED, 1, 0, 0, &hf_048_130_APD, I048_130_APD_PARTS, { NULL } };
+static const AsterixField I048_130 = { COMPOUND, 0, 0, 0, &hf_048_130, NULL, { &I048_130_SRL, &I048_130_SRR, &I048_130_SAM, &I048_130_PRL, &I048_130_PAM, &I048_130_RPD, &I048_130_APD, NULL } };
+static int hf_048_140 = -1;
+static int hf_048_140_VALUE = -1;
+static const FieldPart I048_140_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_048_140_VALUE, NULL };
+static const FieldPart *I048_140_PARTS[] = {
+ &I048_140_VALUE,
+ NULL
+};
+static const AsterixField I048_140 = { FIXED, 3, 0, 0, &hf_048_140, I048_140_PARTS, { NULL } };
+static int hf_048_161 = -1;
+static int hf_048_161_TRN = -1;
+static const FieldPart I048_161_TRN = { 12, 1.0, FIELD_PART_HEX, &hf_048_161_TRN, NULL };
+static const FieldPart *I048_161_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I048_161_TRN,
+ NULL
+};
+static const AsterixField I048_161 = { FIXED, 2, 0, 0, &hf_048_161, I048_161_PARTS, { NULL } };
+static int hf_048_170 = -1;
+static int hf_048_170_CNF = -1;
+static const value_string valstr_048_170_CNF[] = {
+ { 0, "Confirmed Track" },
+ { 1, "Tentative Track" },
+ { 0, NULL }
+};
+static const FieldPart I048_170_CNF = { 1, 1.0, FIELD_PART_UINT, &hf_048_170_CNF, NULL };
+static int hf_048_170_RAD = -1;
+static const value_string valstr_048_170_RAD[] = {
+ { 0, "Combined Track" },
+ { 1, "PSR Track" },
+ { 2, "SSR/Mode S Track" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I048_170_RAD = { 2, 1.0, FIELD_PART_UINT, &hf_048_170_RAD, NULL };
+static int hf_048_170_DOU = -1;
+static const value_string valstr_048_170_DOU[] = {
+ { 0, "Normal confidence" },
+ { 1, "Low confidence in plot to track association" },
+ { 0, NULL }
+};
+static const FieldPart I048_170_DOU = { 1, 1.0, FIELD_PART_UINT, &hf_048_170_DOU, NULL };
+static int hf_048_170_MAH = -1;
+static const value_string valstr_048_170_MAH[] = {
+ { 0, "No horizontal man.sensed" },
+ { 1, "Horizontal man. sensed" },
+ { 0, NULL }
+};
+static const FieldPart I048_170_MAH = { 1, 1.0, FIELD_PART_UINT, &hf_048_170_MAH, NULL };
+static int hf_048_170_CDM = -1;
+static const value_string valstr_048_170_CDM[] = {
+ { 0, "Maintaining" },
+ { 1, "Climbing" },
+ { 2, "Descending" },
+ { 3, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I048_170_CDM = { 2, 1.0, FIELD_PART_UINT, &hf_048_170_CDM, NULL };
+static int hf_048_170_TRE = -1;
+static const value_string valstr_048_170_TRE[] = {
+ { 0, "Track still alive" },
+ { 1, "End of track lifetime(last report for this track)" },
+ { 0, NULL }
+};
+static const FieldPart I048_170_TRE = { 1, 1.0, FIELD_PART_UINT, &hf_048_170_TRE, NULL };
+static int hf_048_170_GHO = -1;
+static const value_string valstr_048_170_GHO[] = {
+ { 0, "True target track" },
+ { 1, "Ghost target track" },
+ { 0, NULL }
+};
+static const FieldPart I048_170_GHO = { 1, 1.0, FIELD_PART_UINT, &hf_048_170_GHO, NULL };
+static int hf_048_170_SUP = -1;
+static const value_string valstr_048_170_SUP[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I048_170_SUP = { 1, 1.0, FIELD_PART_UINT, &hf_048_170_SUP, NULL };
+static int hf_048_170_TCC = -1;
+static const value_string valstr_048_170_TCC[] = {
+ { 0, "Tracking performed in so-called \'Radar Plane\', i.e. neither slant range correction nor stereographical projection was applied" },
+ { 1, "Slant range correction and a suitable projection technique are used to track in a 2D.reference plane, tangential to the earth model at the Radar Site co-ordinates" },
+ { 0, NULL }
+};
+static const FieldPart I048_170_TCC = { 1, 1.0, FIELD_PART_UINT, &hf_048_170_TCC, NULL };
+static const FieldPart *I048_170_PARTS[] = {
+ &I048_170_CNF,
+ &I048_170_RAD,
+ &I048_170_DOU,
+ &I048_170_MAH,
+ &I048_170_CDM,
+ &IXXX_FX,
+ &I048_170_TRE,
+ &I048_170_GHO,
+ &I048_170_SUP,
+ &I048_170_TCC,
+ &IXXX_3bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I048_170 = { FX, 1, 0, 0, &hf_048_170, I048_170_PARTS, { NULL } };
+static int hf_048_200 = -1;
+static int hf_048_200_GSP = -1;
+static const FieldPart I048_200_GSP = { 16, 0.00006103515625, FIELD_PART_UFLOAT, &hf_048_200_GSP, NULL };
+static int hf_048_200_HDG = -1;
+static const FieldPart I048_200_HDG = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_048_200_HDG, NULL };
+static const FieldPart *I048_200_PARTS[] = {
+ &I048_200_GSP,
+ &I048_200_HDG,
+ NULL
+};
+static const AsterixField I048_200 = { FIXED, 4, 0, 0, &hf_048_200, I048_200_PARTS, { NULL } };
+static int hf_048_210 = -1;
+static int hf_048_210_SIGX = -1;
+static const FieldPart I048_210_SIGX = { 8, 0.0078125, FIELD_PART_UFLOAT, &hf_048_210_SIGX, NULL };
+static int hf_048_210_SIGY = -1;
+static const FieldPart I048_210_SIGY = { 8, 0.0078125, FIELD_PART_UFLOAT, &hf_048_210_SIGY, NULL };
+static int hf_048_210_SIGV = -1;
+static const FieldPart I048_210_SIGV = { 8, 0.00006103515625, FIELD_PART_UFLOAT, &hf_048_210_SIGV, NULL };
+static int hf_048_210_SIGH = -1;
+static const FieldPart I048_210_SIGH = { 8, 0.087890625, FIELD_PART_UFLOAT, &hf_048_210_SIGH, NULL };
+static const FieldPart *I048_210_PARTS[] = {
+ &I048_210_SIGX,
+ &I048_210_SIGY,
+ &I048_210_SIGV,
+ &I048_210_SIGH,
+ NULL
+};
+static const AsterixField I048_210 = { FIXED, 4, 0, 0, &hf_048_210, I048_210_PARTS, { NULL } };
+static int hf_048_220 = -1;
+static int hf_048_220_VALUE = -1;
+static const FieldPart I048_220_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_048_220_VALUE, NULL };
+static const FieldPart *I048_220_PARTS[] = {
+ &I048_220_VALUE,
+ NULL
+};
+static const AsterixField I048_220 = { FIXED, 3, 0, 0, &hf_048_220, I048_220_PARTS, { NULL } };
+static int hf_048_230 = -1;
+static int hf_048_230_COM = -1;
+static const value_string valstr_048_230_COM[] = {
+ { 0, "No communications capability (surveillance only)" },
+ { 1, "Comm. A and Comm. B capability" },
+ { 2, "Comm. A, Comm. B and Uplink ELM" },
+ { 3, "Comm. A, Comm. B, Uplink ELM and Downlink ELM" },
+ { 4, "Level 5 Transponder capability" },
+ { 0, NULL }
+};
+static const FieldPart I048_230_COM = { 3, 1.0, FIELD_PART_UINT, &hf_048_230_COM, NULL };
+static int hf_048_230_STAT = -1;
+static const value_string valstr_048_230_STAT[] = {
+ { 0, "No alert, no SPI, aircraft airborne" },
+ { 1, "No alert, no SPI, aircraft on ground" },
+ { 2, "Alert, no SPI, aircraft airborne" },
+ { 3, "Alert, no SPI, aircraft on ground" },
+ { 4, "Alert, SPI, aircraft airborne or on ground" },
+ { 5, "No alert, SPI, aircraft airborne or on ground" },
+ { 7, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I048_230_STAT = { 3, 1.0, FIELD_PART_UINT, &hf_048_230_STAT, NULL };
+static int hf_048_230_SI = -1;
+static const value_string valstr_048_230_SI[] = {
+ { 0, "SI-Code Capable" },
+ { 1, "II-Code Capable" },
+ { 0, NULL }
+};
+static const FieldPart I048_230_SI = { 1, 1.0, FIELD_PART_UINT, &hf_048_230_SI, NULL };
+static int hf_048_230_MSSC = -1;
+static const value_string valstr_048_230_MSSC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I048_230_MSSC = { 1, 1.0, FIELD_PART_UINT, &hf_048_230_MSSC, NULL };
+static int hf_048_230_ARC = -1;
+static const value_string valstr_048_230_ARC[] = {
+ { 0, "100 ft resolution" },
+ { 1, "25 ft resolution" },
+ { 0, NULL }
+};
+static const FieldPart I048_230_ARC = { 1, 1.0, FIELD_PART_UINT, &hf_048_230_ARC, NULL };
+static int hf_048_230_AIC = -1;
+static const value_string valstr_048_230_AIC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I048_230_AIC = { 1, 1.0, FIELD_PART_UINT, &hf_048_230_AIC, NULL };
+static int hf_048_230_B1A = -1;
+static const FieldPart I048_230_B1A = { 1, 1.0, FIELD_PART_HEX, &hf_048_230_B1A, NULL };
+static int hf_048_230_B1B = -1;
+static const FieldPart I048_230_B1B = { 4, 1.0, FIELD_PART_HEX, &hf_048_230_B1B, NULL };
+static const FieldPart *I048_230_PARTS[] = {
+ &I048_230_COM,
+ &I048_230_STAT,
+ &I048_230_SI,
+ &IXXX_1bit_spare,
+ &I048_230_MSSC,
+ &I048_230_ARC,
+ &I048_230_AIC,
+ &I048_230_B1A,
+ &I048_230_B1B,
+ NULL
+};
+static const AsterixField I048_230 = { FIXED, 2, 0, 0, &hf_048_230, I048_230_PARTS, { NULL } };
+static int hf_048_240 = -1;
+static int hf_048_240_VALUE = -1;
+static const FieldPart I048_240_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_048_240_VALUE, NULL };
+static const FieldPart *I048_240_PARTS[] = {
+ &I048_240_VALUE,
+ NULL
+};
+static const AsterixField I048_240 = { FIXED, 6, 0, 0, &hf_048_240, I048_240_PARTS, { NULL } };
+static int hf_048_250 = -1;
+static int hf_048_250_MBDATA = -1;
+static const FieldPart I048_250_MBDATA = { 56, 1.0, FIELD_PART_HEX, &hf_048_250_MBDATA, NULL };
+static int hf_048_250_BDS1 = -1;
+static const FieldPart I048_250_BDS1 = { 4, 1.0, FIELD_PART_HEX, &hf_048_250_BDS1, NULL };
+static int hf_048_250_BDS2 = -1;
+static const FieldPart I048_250_BDS2 = { 4, 1.0, FIELD_PART_HEX, &hf_048_250_BDS2, NULL };
+static const FieldPart *I048_250_PARTS[] = {
+ &I048_250_MBDATA,
+ &I048_250_BDS1,
+ &I048_250_BDS2,
+ NULL
+};
+static const AsterixField I048_250 = { REPETITIVE, 8, 1, 0, &hf_048_250, I048_250_PARTS, { NULL } };
+static int hf_048_260 = -1;
+static int hf_048_260_VALUE = -1;
+static const FieldPart I048_260_VALUE = { 56, 1.0, FIELD_PART_HEX, &hf_048_260_VALUE, NULL };
+static const FieldPart *I048_260_PARTS[] = {
+ &I048_260_VALUE,
+ NULL
+};
+static const AsterixField I048_260 = { FIXED, 7, 0, 0, &hf_048_260, I048_260_PARTS, { NULL } };
+static int hf_048_RE = -1;
+static const AsterixField I048_RE = { EXP, 0, 0, 1, &hf_048_RE, NULL, { NULL } };
+static int hf_048_SP = -1;
+static const AsterixField I048_SP = { EXP, 0, 0, 1, &hf_048_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I048_V1_31_uap[] = {
+ &I048_V1_31_010,
+ &I048_V1_31_140,
+ &I048_V1_31_020,
+ &I048_V1_31_040,
+ &I048_V1_31_070,
+ &I048_V1_31_090,
+ &I048_V1_31_130,
+ &I048_V1_31_220,
+ &I048_V1_31_240,
+ &I048_V1_31_250,
+ &I048_V1_31_161,
+ &I048_V1_31_042,
+ &I048_V1_31_200,
+ &I048_V1_31_170,
+ &I048_V1_31_210,
+ &I048_V1_31_030,
+ &I048_V1_31_080,
+ &I048_V1_31_100,
+ &I048_V1_31_110,
+ &I048_V1_31_120,
+ &I048_V1_31_230,
+ &I048_V1_31_260,
+ &I048_V1_31_055,
+ &I048_V1_31_050,
+ &I048_V1_31_065,
+ &I048_V1_31_060,
+ &I048_V1_31_SP,
+ &I048_V1_31_RE,
+ NULL
+};
+static const AsterixField **I048_V1_31[] = {
+ I048_V1_31_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I048_uap[] = {
+ &I048_010,
+ &I048_140,
+ &I048_020,
+ &I048_040,
+ &I048_070,
+ &I048_090,
+ &I048_130,
+ &I048_220,
+ &I048_240,
+ &I048_250,
+ &I048_161,
+ &I048_042,
+ &I048_200,
+ &I048_170,
+ &I048_210,
+ &I048_030,
+ &I048_080,
+ &I048_100,
+ &I048_110,
+ &I048_120,
+ &I048_230,
+ &I048_260,
+ &I048_055,
+ &I048_050,
+ &I048_065,
+ &I048_060,
+ &I048_SP,
+ &I048_RE,
+ NULL
+};
+static const AsterixField **I048[] = {
+ I048_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 062, edition 1.17 */
+static int hf_062_V1_17_010 = -1;
+static int hf_062_V1_17_010_SAC = -1;
+static const FieldPart I062_V1_17_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_17_010_SAC, NULL };
+static int hf_062_V1_17_010_SIC = -1;
+static const FieldPart I062_V1_17_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_17_010_SIC, NULL };
+static const FieldPart *I062_V1_17_010_PARTS[] = {
+ &I062_V1_17_010_SAC,
+ &I062_V1_17_010_SIC,
+ NULL
+};
+static const AsterixField I062_V1_17_010 = { FIXED, 2, 0, 0, &hf_062_V1_17_010, I062_V1_17_010_PARTS, { NULL } };
+static int hf_062_V1_17_015 = -1;
+static int hf_062_V1_17_015_VALUE = -1;
+static const FieldPart I062_V1_17_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_17_015_VALUE, NULL };
+static const FieldPart *I062_V1_17_015_PARTS[] = {
+ &I062_V1_17_015_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_015 = { FIXED, 1, 0, 0, &hf_062_V1_17_015, I062_V1_17_015_PARTS, { NULL } };
+static int hf_062_V1_17_040 = -1;
+static int hf_062_V1_17_040_VALUE = -1;
+static const FieldPart I062_V1_17_040_VALUE = { 16, 1.0, FIELD_PART_HEX, &hf_062_V1_17_040_VALUE, NULL };
+static const FieldPart *I062_V1_17_040_PARTS[] = {
+ &I062_V1_17_040_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_040 = { FIXED, 2, 0, 0, &hf_062_V1_17_040, I062_V1_17_040_PARTS, { NULL } };
+static int hf_062_V1_17_060 = -1;
+static int hf_062_V1_17_060_V = -1;
+static const value_string valstr_062_V1_17_060_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_060_V = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_060_V, NULL };
+static int hf_062_V1_17_060_G = -1;
+static const value_string valstr_062_V1_17_060_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_060_G = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_060_G, NULL };
+static int hf_062_V1_17_060_CH = -1;
+static const value_string valstr_062_V1_17_060_CH[] = {
+ { 0, "No change" },
+ { 1, "Mode 3/A has changed" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_060_CH = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_060_CH, NULL };
+static int hf_062_V1_17_060_MODE3A = -1;
+static const FieldPart I062_V1_17_060_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_062_V1_17_060_MODE3A, NULL };
+static const FieldPart *I062_V1_17_060_PARTS[] = {
+ &I062_V1_17_060_V,
+ &I062_V1_17_060_G,
+ &I062_V1_17_060_CH,
+ &IXXX_1bit_spare,
+ &I062_V1_17_060_MODE3A,
+ NULL
+};
+static const AsterixField I062_V1_17_060 = { FIXED, 2, 0, 0, &hf_062_V1_17_060, I062_V1_17_060_PARTS, { NULL } };
+static int hf_062_V1_17_070 = -1;
+static int hf_062_V1_17_070_VALUE = -1;
+static const FieldPart I062_V1_17_070_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_062_V1_17_070_VALUE, NULL };
+static const FieldPart *I062_V1_17_070_PARTS[] = {
+ &I062_V1_17_070_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_070 = { FIXED, 3, 0, 0, &hf_062_V1_17_070, I062_V1_17_070_PARTS, { NULL } };
+static int hf_062_V1_17_080 = -1;
+static int hf_062_V1_17_080_MON = -1;
+static const value_string valstr_062_V1_17_080_MON[] = {
+ { 0, "Multisensor track" },
+ { 1, "Monosensor track" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_MON = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_MON, NULL };
+static int hf_062_V1_17_080_SPI = -1;
+static const value_string valstr_062_V1_17_080_SPI[] = {
+ { 0, "Default value" },
+ { 1, "SPI present in the last report received from a sensor capable of decoding this data" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_SPI, NULL };
+static int hf_062_V1_17_080_MRH = -1;
+static const value_string valstr_062_V1_17_080_MRH[] = {
+ { 0, "Barometric altitude (Mode C) more reliable" },
+ { 1, "Geometric altitude more reliable" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_MRH = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_MRH, NULL };
+static int hf_062_V1_17_080_SRC = -1;
+static const value_string valstr_062_V1_17_080_SRC[] = {
+ { 0, "No source" },
+ { 1, "GNSS" },
+ { 2, "3D radar" },
+ { 3, "Triangulation" },
+ { 4, "Height from coverage" },
+ { 5, "Speed look-up table" },
+ { 6, "Default height" },
+ { 7, "Multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_SRC = { 3, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_SRC, NULL };
+static int hf_062_V1_17_080_CNF = -1;
+static const value_string valstr_062_V1_17_080_CNF[] = {
+ { 0, "Confirmed track" },
+ { 1, "Tentative track" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_CNF = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_CNF, NULL };
+static int hf_062_V1_17_080_SIM = -1;
+static const value_string valstr_062_V1_17_080_SIM[] = {
+ { 0, "Actual track" },
+ { 1, "Simulated track" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_SIM, NULL };
+static int hf_062_V1_17_080_TSE = -1;
+static const value_string valstr_062_V1_17_080_TSE[] = {
+ { 0, "Default value" },
+ { 1, "Last message transmitted to the user for the track" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_TSE = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_TSE, NULL };
+static int hf_062_V1_17_080_TSB = -1;
+static const value_string valstr_062_V1_17_080_TSB[] = {
+ { 0, "Default value" },
+ { 1, "First message transmitted to the user for the track" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_TSB = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_TSB, NULL };
+static int hf_062_V1_17_080_FPC = -1;
+static const value_string valstr_062_V1_17_080_FPC[] = {
+ { 0, "Not flight-plan correlated" },
+ { 1, "Flight plan correlated" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_FPC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_FPC, NULL };
+static int hf_062_V1_17_080_AFF = -1;
+static const value_string valstr_062_V1_17_080_AFF[] = {
+ { 0, "Default value" },
+ { 1, "ADS-B data inconsistent with other surveillance information" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_AFF = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_AFF, NULL };
+static int hf_062_V1_17_080_STP = -1;
+static const value_string valstr_062_V1_17_080_STP[] = {
+ { 0, "Default value" },
+ { 1, "Slave Track Promotion" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_STP = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_STP, NULL };
+static int hf_062_V1_17_080_KOS = -1;
+static const value_string valstr_062_V1_17_080_KOS[] = {
+ { 0, "Complementary service used" },
+ { 1, "Background service used" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_KOS = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_KOS, NULL };
+static int hf_062_V1_17_080_AMA = -1;
+static const value_string valstr_062_V1_17_080_AMA[] = {
+ { 0, "Track not resulting from amalgamation process" },
+ { 1, "Track resulting from amalgamation process" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_AMA = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_AMA, NULL };
+static int hf_062_V1_17_080_MD4 = -1;
+static const value_string valstr_062_V1_17_080_MD4[] = {
+ { 0, "No Mode 4 interrogation" },
+ { 1, "Friendly target" },
+ { 2, "Unknown target" },
+ { 3, "No reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_MD4 = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_MD4, NULL };
+static int hf_062_V1_17_080_ME = -1;
+static const value_string valstr_062_V1_17_080_ME[] = {
+ { 0, "Default value" },
+ { 1, "Military Emergency present in the last report received from a sensor capable of decoding this data" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_ME = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_ME, NULL };
+static int hf_062_V1_17_080_MI = -1;
+static const value_string valstr_062_V1_17_080_MI[] = {
+ { 0, "Default value" },
+ { 1, "Military Identification present in the last report received from a sensor capable of decoding this data" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_MI = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_MI, NULL };
+static int hf_062_V1_17_080_MD5 = -1;
+static const value_string valstr_062_V1_17_080_MD5[] = {
+ { 0, "No Mode 5 interrogation" },
+ { 1, "Friendly target" },
+ { 2, "Unknown target" },
+ { 3, "No reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_MD5 = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_MD5, NULL };
+static int hf_062_V1_17_080_CST = -1;
+static const value_string valstr_062_V1_17_080_CST[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received track update is higher than system dependent threshold (coasting)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_CST = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_CST, NULL };
+static int hf_062_V1_17_080_PSR = -1;
+static const value_string valstr_062_V1_17_080_PSR[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received PSR track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_PSR = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_PSR, NULL };
+static int hf_062_V1_17_080_SSR = -1;
+static const value_string valstr_062_V1_17_080_SSR[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received SSR track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_SSR = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_SSR, NULL };
+static int hf_062_V1_17_080_MDS = -1;
+static const value_string valstr_062_V1_17_080_MDS[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received Mode S track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_MDS = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_MDS, NULL };
+static int hf_062_V1_17_080_ADS = -1;
+static const value_string valstr_062_V1_17_080_ADS[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received ADS-B track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_ADS = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_ADS, NULL };
+static int hf_062_V1_17_080_SUC = -1;
+static const value_string valstr_062_V1_17_080_SUC[] = {
+ { 0, "Default value" },
+ { 1, "Special Used Code (Mode A codes to be defined in the system to mark a track with special interest)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_SUC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_SUC, NULL };
+static int hf_062_V1_17_080_AAC = -1;
+static const value_string valstr_062_V1_17_080_AAC[] = {
+ { 0, "Default value" },
+ { 1, "Assigned Mode A Code Conflict (same discrete Mode A Code assigned to another track)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_AAC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_AAC, NULL };
+static int hf_062_V1_17_080_SDS = -1;
+static const value_string valstr_062_V1_17_080_SDS[] = {
+ { 0, "Combined" },
+ { 1, "Co-operative only" },
+ { 2, "Non-Cooperative only" },
+ { 3, "Not defined" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_SDS = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_SDS, NULL };
+static int hf_062_V1_17_080_EMS = -1;
+static const value_string valstr_062_V1_17_080_EMS[] = {
+ { 0, "No emergency" },
+ { 1, "General emergency" },
+ { 2, "Lifeguard / medical" },
+ { 3, "Minimum fuel" },
+ { 4, "No communications" },
+ { 5, "Unlawful interference" },
+ { 6, "Downed Aircraft" },
+ { 7, "Undefined" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_EMS = { 3, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_EMS, NULL };
+static int hf_062_V1_17_080_PFT = -1;
+static const value_string valstr_062_V1_17_080_PFT[] = {
+ { 0, "No indication" },
+ { 1, "Potential False Track Indication" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_PFT = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_PFT, NULL };
+static int hf_062_V1_17_080_FPLT = -1;
+static const value_string valstr_062_V1_17_080_FPLT[] = {
+ { 0, "Default value" },
+ { 1, "Track created / updated with FPL data" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_FPLT = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_FPLT, NULL };
+static int hf_062_V1_17_080_DUPT = -1;
+static const value_string valstr_062_V1_17_080_DUPT[] = {
+ { 0, "Default value" },
+ { 1, "Duplicate Mode 3/A Code" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_DUPT = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_DUPT, NULL };
+static int hf_062_V1_17_080_DUPF = -1;
+static const value_string valstr_062_V1_17_080_DUPF[] = {
+ { 0, "Default value" },
+ { 1, "Duplicate Flight Plan" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_DUPF = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_DUPF, NULL };
+static int hf_062_V1_17_080_DUPM = -1;
+static const value_string valstr_062_V1_17_080_DUPM[] = {
+ { 0, "Default value" },
+ { 1, "Duplicate Flight Plan due to manual correlation" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_080_DUPM = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_080_DUPM, NULL };
+static const FieldPart *I062_V1_17_080_PARTS[] = {
+ &I062_V1_17_080_MON,
+ &I062_V1_17_080_SPI,
+ &I062_V1_17_080_MRH,
+ &I062_V1_17_080_SRC,
+ &I062_V1_17_080_CNF,
+ &IXXX_FX,
+ &I062_V1_17_080_SIM,
+ &I062_V1_17_080_TSE,
+ &I062_V1_17_080_TSB,
+ &I062_V1_17_080_FPC,
+ &I062_V1_17_080_AFF,
+ &I062_V1_17_080_STP,
+ &I062_V1_17_080_KOS,
+ &IXXX_FX,
+ &I062_V1_17_080_AMA,
+ &I062_V1_17_080_MD4,
+ &I062_V1_17_080_ME,
+ &I062_V1_17_080_MI,
+ &I062_V1_17_080_MD5,
+ &IXXX_FX,
+ &I062_V1_17_080_CST,
+ &I062_V1_17_080_PSR,
+ &I062_V1_17_080_SSR,
+ &I062_V1_17_080_MDS,
+ &I062_V1_17_080_ADS,
+ &I062_V1_17_080_SUC,
+ &I062_V1_17_080_AAC,
+ &IXXX_FX,
+ &I062_V1_17_080_SDS,
+ &I062_V1_17_080_EMS,
+ &I062_V1_17_080_PFT,
+ &I062_V1_17_080_FPLT,
+ &IXXX_FX,
+ &I062_V1_17_080_DUPT,
+ &I062_V1_17_080_DUPF,
+ &I062_V1_17_080_DUPM,
+ &IXXX_4bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I062_V1_17_080 = { FX, 1, 0, 0, &hf_062_V1_17_080, I062_V1_17_080_PARTS, { NULL } };
+static int hf_062_V1_17_100 = -1;
+static int hf_062_V1_17_100_X = -1;
+static const FieldPart I062_V1_17_100_X = { 24, 0.5, FIELD_PART_FLOAT, &hf_062_V1_17_100_X, NULL };
+static int hf_062_V1_17_100_Y = -1;
+static const FieldPart I062_V1_17_100_Y = { 24, 0.5, FIELD_PART_FLOAT, &hf_062_V1_17_100_Y, NULL };
+static const FieldPart *I062_V1_17_100_PARTS[] = {
+ &I062_V1_17_100_X,
+ &I062_V1_17_100_Y,
+ NULL
+};
+static const AsterixField I062_V1_17_100 = { FIXED, 6, 0, 0, &hf_062_V1_17_100, I062_V1_17_100_PARTS, { NULL } };
+static int hf_062_V1_17_105 = -1;
+static int hf_062_V1_17_105_LAT = -1;
+static const FieldPart I062_V1_17_105_LAT = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_062_V1_17_105_LAT, NULL };
+static int hf_062_V1_17_105_LON = -1;
+static const FieldPart I062_V1_17_105_LON = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_062_V1_17_105_LON, NULL };
+static const FieldPart *I062_V1_17_105_PARTS[] = {
+ &I062_V1_17_105_LAT,
+ &I062_V1_17_105_LON,
+ NULL
+};
+static const AsterixField I062_V1_17_105 = { FIXED, 8, 0, 0, &hf_062_V1_17_105, I062_V1_17_105_PARTS, { NULL } };
+static int hf_062_V1_17_110 = -1;
+static int hf_062_V1_17_110_SUM = -1;
+static int hf_062_V1_17_110_SUM_M5 = -1;
+static const value_string valstr_062_V1_17_110_SUM_M5[] = {
+ { 0, "No Mode 5 interrogation" },
+ { 1, "Mode 5 interrogation" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_110_SUM_M5 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_110_SUM_M5, NULL };
+static int hf_062_V1_17_110_SUM_ID = -1;
+static const value_string valstr_062_V1_17_110_SUM_ID[] = {
+ { 0, "No authenticated Mode 5 ID reply" },
+ { 1, "Authenticated Mode 5 ID reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_110_SUM_ID = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_110_SUM_ID, NULL };
+static int hf_062_V1_17_110_SUM_DA = -1;
+static const value_string valstr_062_V1_17_110_SUM_DA[] = {
+ { 0, "No authenticated Mode 5 Data reply or Report" },
+ { 1, "Authenticated Mode 5 Data reply or Report (i.e any valid Mode 5 reply type other than ID)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_110_SUM_DA = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_110_SUM_DA, NULL };
+static int hf_062_V1_17_110_SUM_M1 = -1;
+static const value_string valstr_062_V1_17_110_SUM_M1[] = {
+ { 0, "Mode 1 code not present or not from Mode 5 reply" },
+ { 1, "Mode 1 code from Mode 5 reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_110_SUM_M1 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_110_SUM_M1, NULL };
+static int hf_062_V1_17_110_SUM_M2 = -1;
+static const value_string valstr_062_V1_17_110_SUM_M2[] = {
+ { 0, "Mode 2 code not present or not from Mode 5 reply" },
+ { 1, "Mode 2 code from Mode 5 reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_110_SUM_M2 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_110_SUM_M2, NULL };
+static int hf_062_V1_17_110_SUM_M3 = -1;
+static const value_string valstr_062_V1_17_110_SUM_M3[] = {
+ { 0, "Mode 3 code not present or not from Mode 5 reply" },
+ { 1, "Mode 3 code from Mode 5 reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_110_SUM_M3 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_110_SUM_M3, NULL };
+static int hf_062_V1_17_110_SUM_MC = -1;
+static const value_string valstr_062_V1_17_110_SUM_MC[] = {
+ { 0, "Mode C altitude code not present or not from Mode 5 reply" },
+ { 1, "Mode C altitude from Mode 5 reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_110_SUM_MC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_110_SUM_MC, NULL };
+static int hf_062_V1_17_110_SUM_X = -1;
+static const value_string valstr_062_V1_17_110_SUM_X[] = {
+ { 0, "X-pulse set to zero or no authenticated Data reply or Report received" },
+ { 1, "X-pulse set to one" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_110_SUM_X = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_110_SUM_X, NULL };
+static const FieldPart *I062_V1_17_110_SUM_PARTS[] = {
+ &I062_V1_17_110_SUM_M5,
+ &I062_V1_17_110_SUM_ID,
+ &I062_V1_17_110_SUM_DA,
+ &I062_V1_17_110_SUM_M1,
+ &I062_V1_17_110_SUM_M2,
+ &I062_V1_17_110_SUM_M3,
+ &I062_V1_17_110_SUM_MC,
+ &I062_V1_17_110_SUM_X,
+ NULL
+};
+static const AsterixField I062_V1_17_110_SUM = { FIXED, 1, 0, 0, &hf_062_V1_17_110_SUM, I062_V1_17_110_SUM_PARTS, { NULL } };
+static int hf_062_V1_17_110_PMN = -1;
+static int hf_062_V1_17_110_PMN_PIN = -1;
+static const FieldPart I062_V1_17_110_PMN_PIN = { 14, 1.0, FIELD_PART_HEX, &hf_062_V1_17_110_PMN_PIN, NULL };
+static int hf_062_V1_17_110_PMN_NAT = -1;
+static const FieldPart I062_V1_17_110_PMN_NAT = { 5, 1.0, FIELD_PART_HEX, &hf_062_V1_17_110_PMN_NAT, NULL };
+static int hf_062_V1_17_110_PMN_MIS = -1;
+static const FieldPart I062_V1_17_110_PMN_MIS = { 6, 1.0, FIELD_PART_HEX, &hf_062_V1_17_110_PMN_MIS, NULL };
+static const FieldPart *I062_V1_17_110_PMN_PARTS[] = {
+ &IXXX_2bit_spare,
+ &I062_V1_17_110_PMN_PIN,
+ &IXXX_3bit_spare,
+ &I062_V1_17_110_PMN_NAT,
+ &IXXX_2bit_spare,
+ &I062_V1_17_110_PMN_MIS,
+ NULL
+};
+static const AsterixField I062_V1_17_110_PMN = { FIXED, 4, 0, 0, &hf_062_V1_17_110_PMN, I062_V1_17_110_PMN_PARTS, { NULL } };
+static int hf_062_V1_17_110_POS = -1;
+static int hf_062_V1_17_110_POS_LAT = -1;
+static const FieldPart I062_V1_17_110_POS_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_V1_17_110_POS_LAT, NULL };
+static int hf_062_V1_17_110_POS_LON = -1;
+static const FieldPart I062_V1_17_110_POS_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_V1_17_110_POS_LON, NULL };
+static const FieldPart *I062_V1_17_110_POS_PARTS[] = {
+ &I062_V1_17_110_POS_LAT,
+ &I062_V1_17_110_POS_LON,
+ NULL
+};
+static const AsterixField I062_V1_17_110_POS = { FIXED, 6, 0, 0, &hf_062_V1_17_110_POS, I062_V1_17_110_POS_PARTS, { NULL } };
+static int hf_062_V1_17_110_GA = -1;
+static int hf_062_V1_17_110_GA_RES = -1;
+static const value_string valstr_062_V1_17_110_GA_RES[] = {
+ { 0, "GA reported in 100 ft increments" },
+ { 1, "GA reported in 25 ft increments" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_110_GA_RES = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_110_GA_RES, NULL };
+static int hf_062_V1_17_110_GA_GA = -1;
+static const FieldPart I062_V1_17_110_GA_GA = { 14, 25.0, FIELD_PART_FLOAT, &hf_062_V1_17_110_GA_GA, NULL };
+static const FieldPart *I062_V1_17_110_GA_PARTS[] = {
+ &IXXX_1bit_spare,
+ &I062_V1_17_110_GA_RES,
+ &I062_V1_17_110_GA_GA,
+ NULL
+};
+static const AsterixField I062_V1_17_110_GA = { FIXED, 2, 0, 0, &hf_062_V1_17_110_GA, I062_V1_17_110_GA_PARTS, { NULL } };
+static int hf_062_V1_17_110_EM1 = -1;
+static int hf_062_V1_17_110_EM1_EM1 = -1;
+static const FieldPart I062_V1_17_110_EM1_EM1 = { 12, 1.0, FIELD_PART_SQUAWK, &hf_062_V1_17_110_EM1_EM1, NULL };
+static const FieldPart *I062_V1_17_110_EM1_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I062_V1_17_110_EM1_EM1,
+ NULL
+};
+static const AsterixField I062_V1_17_110_EM1 = { FIXED, 2, 0, 0, &hf_062_V1_17_110_EM1, I062_V1_17_110_EM1_PARTS, { NULL } };
+static int hf_062_V1_17_110_TOS = -1;
+static int hf_062_V1_17_110_TOS_VALUE = -1;
+static const FieldPart I062_V1_17_110_TOS_VALUE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_062_V1_17_110_TOS_VALUE, NULL };
+static const FieldPart *I062_V1_17_110_TOS_PARTS[] = {
+ &I062_V1_17_110_TOS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_110_TOS = { FIXED, 1, 0, 0, &hf_062_V1_17_110_TOS, I062_V1_17_110_TOS_PARTS, { NULL } };
+static int hf_062_V1_17_110_XP = -1;
+static int hf_062_V1_17_110_XP_X5 = -1;
+static const value_string valstr_062_V1_17_110_XP_X5[] = {
+ { 0, "X-pulse set to zero or no authenticated Data reply or Report received" },
+ { 1, "X-pulse set to one (present)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_110_XP_X5 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_110_XP_X5, NULL };
+static int hf_062_V1_17_110_XP_XC = -1;
+static const value_string valstr_062_V1_17_110_XP_XC[] = {
+ { 0, "X-pulse set to zero or no Mode C reply" },
+ { 1, "X-pulse set to one (present)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_110_XP_XC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_110_XP_XC, NULL };
+static int hf_062_V1_17_110_XP_X3 = -1;
+static const value_string valstr_062_V1_17_110_XP_X3[] = {
+ { 0, "X-pulse set to zero or no Mode 3/A reply" },
+ { 1, "X-pulse set to one (present)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_110_XP_X3 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_110_XP_X3, NULL };
+static int hf_062_V1_17_110_XP_X2 = -1;
+static const value_string valstr_062_V1_17_110_XP_X2[] = {
+ { 0, "X-pulse set to zero or no Mode 2 reply" },
+ { 1, "X-pulse set to one (present)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_110_XP_X2 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_110_XP_X2, NULL };
+static int hf_062_V1_17_110_XP_X1 = -1;
+static const value_string valstr_062_V1_17_110_XP_X1[] = {
+ { 0, "X-pulse set to zero or no Mode 1 reply" },
+ { 1, "X-pulse set to one (present)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_110_XP_X1 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_110_XP_X1, NULL };
+static const FieldPart *I062_V1_17_110_XP_PARTS[] = {
+ &IXXX_3bit_spare,
+ &I062_V1_17_110_XP_X5,
+ &I062_V1_17_110_XP_XC,
+ &I062_V1_17_110_XP_X3,
+ &I062_V1_17_110_XP_X2,
+ &I062_V1_17_110_XP_X1,
+ NULL
+};
+static const AsterixField I062_V1_17_110_XP = { FIXED, 1, 0, 0, &hf_062_V1_17_110_XP, I062_V1_17_110_XP_PARTS, { NULL } };
+static const AsterixField I062_V1_17_110 = { COMPOUND, 0, 0, 0, &hf_062_V1_17_110, NULL, { &I062_V1_17_110_SUM, &I062_V1_17_110_PMN, &I062_V1_17_110_POS, &I062_V1_17_110_GA, &I062_V1_17_110_EM1, &I062_V1_17_110_TOS, &I062_V1_17_110_XP, NULL } };
+static int hf_062_V1_17_120 = -1;
+static int hf_062_V1_17_120_MODE2 = -1;
+static const FieldPart I062_V1_17_120_MODE2 = { 12, 1.0, FIELD_PART_SQUAWK, &hf_062_V1_17_120_MODE2, NULL };
+static const FieldPart *I062_V1_17_120_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I062_V1_17_120_MODE2,
+ NULL
+};
+static const AsterixField I062_V1_17_120 = { FIXED, 2, 0, 0, &hf_062_V1_17_120, I062_V1_17_120_PARTS, { NULL } };
+static int hf_062_V1_17_130 = -1;
+static int hf_062_V1_17_130_VALUE = -1;
+static const FieldPart I062_V1_17_130_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_062_V1_17_130_VALUE, NULL };
+static const FieldPart *I062_V1_17_130_PARTS[] = {
+ &I062_V1_17_130_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_130 = { FIXED, 2, 0, 0, &hf_062_V1_17_130, I062_V1_17_130_PARTS, { NULL } };
+static int hf_062_V1_17_135 = -1;
+static int hf_062_V1_17_135_QNH = -1;
+static const value_string valstr_062_V1_17_135_QNH[] = {
+ { 0, "No QNH correction applied" },
+ { 1, "QNH correction applied" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_135_QNH = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_135_QNH, NULL };
+static int hf_062_V1_17_135_CTB = -1;
+static const FieldPart I062_V1_17_135_CTB = { 15, 0.25, FIELD_PART_FLOAT, &hf_062_V1_17_135_CTB, NULL };
+static const FieldPart *I062_V1_17_135_PARTS[] = {
+ &I062_V1_17_135_QNH,
+ &I062_V1_17_135_CTB,
+ NULL
+};
+static const AsterixField I062_V1_17_135 = { FIXED, 2, 0, 0, &hf_062_V1_17_135, I062_V1_17_135_PARTS, { NULL } };
+static int hf_062_V1_17_136 = -1;
+static int hf_062_V1_17_136_VALUE = -1;
+static const FieldPart I062_V1_17_136_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_062_V1_17_136_VALUE, NULL };
+static const FieldPart *I062_V1_17_136_PARTS[] = {
+ &I062_V1_17_136_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_136 = { FIXED, 2, 0, 0, &hf_062_V1_17_136, I062_V1_17_136_PARTS, { NULL } };
+static int hf_062_V1_17_185 = -1;
+static int hf_062_V1_17_185_VX = -1;
+static const FieldPart I062_V1_17_185_VX = { 16, 0.25, FIELD_PART_FLOAT, &hf_062_V1_17_185_VX, NULL };
+static int hf_062_V1_17_185_VY = -1;
+static const FieldPart I062_V1_17_185_VY = { 16, 0.25, FIELD_PART_FLOAT, &hf_062_V1_17_185_VY, NULL };
+static const FieldPart *I062_V1_17_185_PARTS[] = {
+ &I062_V1_17_185_VX,
+ &I062_V1_17_185_VY,
+ NULL
+};
+static const AsterixField I062_V1_17_185 = { FIXED, 4, 0, 0, &hf_062_V1_17_185, I062_V1_17_185_PARTS, { NULL } };
+static int hf_062_V1_17_200 = -1;
+static int hf_062_V1_17_200_TRANS = -1;
+static const value_string valstr_062_V1_17_200_TRANS[] = {
+ { 0, "Constant course" },
+ { 1, "Right turn" },
+ { 2, "Left turn" },
+ { 3, "Undetermined" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_200_TRANS = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_17_200_TRANS, NULL };
+static int hf_062_V1_17_200_LONG = -1;
+static const value_string valstr_062_V1_17_200_LONG[] = {
+ { 0, "Constant groundspeed" },
+ { 1, "Increasing groundspeed" },
+ { 2, "Decreasing groundspeed" },
+ { 3, "Undetermined" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_200_LONG = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_17_200_LONG, NULL };
+static int hf_062_V1_17_200_VERT = -1;
+static const value_string valstr_062_V1_17_200_VERT[] = {
+ { 0, "Level" },
+ { 1, "Climb" },
+ { 2, "Descent" },
+ { 3, "Undetermined" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_200_VERT = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_17_200_VERT, NULL };
+static int hf_062_V1_17_200_ADF = -1;
+static const value_string valstr_062_V1_17_200_ADF[] = {
+ { 0, "No altitude discrepancy" },
+ { 1, "Altitude discrepancy" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_200_ADF = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_200_ADF, NULL };
+static const FieldPart *I062_V1_17_200_PARTS[] = {
+ &I062_V1_17_200_TRANS,
+ &I062_V1_17_200_LONG,
+ &I062_V1_17_200_VERT,
+ &I062_V1_17_200_ADF,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I062_V1_17_200 = { FIXED, 1, 0, 0, &hf_062_V1_17_200, I062_V1_17_200_PARTS, { NULL } };
+static int hf_062_V1_17_210 = -1;
+static int hf_062_V1_17_210_AX = -1;
+static const FieldPart I062_V1_17_210_AX = { 8, 0.25, FIELD_PART_FLOAT, &hf_062_V1_17_210_AX, NULL };
+static int hf_062_V1_17_210_AY = -1;
+static const FieldPart I062_V1_17_210_AY = { 8, 0.25, FIELD_PART_FLOAT, &hf_062_V1_17_210_AY, NULL };
+static const FieldPart *I062_V1_17_210_PARTS[] = {
+ &I062_V1_17_210_AX,
+ &I062_V1_17_210_AY,
+ NULL
+};
+static const AsterixField I062_V1_17_210 = { FIXED, 2, 0, 0, &hf_062_V1_17_210, I062_V1_17_210_PARTS, { NULL } };
+static int hf_062_V1_17_220 = -1;
+static int hf_062_V1_17_220_VALUE = -1;
+static const FieldPart I062_V1_17_220_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_062_V1_17_220_VALUE, NULL };
+static const FieldPart *I062_V1_17_220_PARTS[] = {
+ &I062_V1_17_220_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_220 = { FIXED, 2, 0, 0, &hf_062_V1_17_220, I062_V1_17_220_PARTS, { NULL } };
+static int hf_062_V1_17_245 = -1;
+static int hf_062_V1_17_245_STI = -1;
+static const value_string valstr_062_V1_17_245_STI[] = {
+ { 0, "Callsign or registration downlinked from target" },
+ { 1, "Callsign not downlinked from target" },
+ { 2, "Registration not downlinked from target" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_245_STI = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_17_245_STI, NULL };
+static int hf_062_V1_17_245_CHR = -1;
+static const FieldPart I062_V1_17_245_CHR = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_062_V1_17_245_CHR, NULL };
+static const FieldPart *I062_V1_17_245_PARTS[] = {
+ &I062_V1_17_245_STI,
+ &IXXX_6bit_spare,
+ &I062_V1_17_245_CHR,
+ NULL
+};
+static const AsterixField I062_V1_17_245 = { FIXED, 7, 0, 0, &hf_062_V1_17_245, I062_V1_17_245_PARTS, { NULL } };
+static int hf_062_V1_17_270 = -1;
+static int hf_062_V1_17_270_LENGTH = -1;
+static const FieldPart I062_V1_17_270_LENGTH = { 7, 1.0, FIELD_PART_UFLOAT, &hf_062_V1_17_270_LENGTH, NULL };
+static int hf_062_V1_17_270_ORIENTATION = -1;
+static const FieldPart I062_V1_17_270_ORIENTATION = { 7, 2.8125, FIELD_PART_UFLOAT, &hf_062_V1_17_270_ORIENTATION, NULL };
+static int hf_062_V1_17_270_WIDTH = -1;
+static const FieldPart I062_V1_17_270_WIDTH = { 7, 1.0, FIELD_PART_UFLOAT, &hf_062_V1_17_270_WIDTH, NULL };
+static const FieldPart *I062_V1_17_270_PARTS[] = {
+ &I062_V1_17_270_LENGTH,
+ &IXXX_FX,
+ &I062_V1_17_270_ORIENTATION,
+ &IXXX_FX,
+ &I062_V1_17_270_WIDTH,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I062_V1_17_270 = { FX, 1, 0, 0, &hf_062_V1_17_270, I062_V1_17_270_PARTS, { NULL } };
+static int hf_062_V1_17_290 = -1;
+static int hf_062_V1_17_290_TRK = -1;
+static int hf_062_V1_17_290_TRK_VALUE = -1;
+static const FieldPart I062_V1_17_290_TRK_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_290_TRK_VALUE, NULL };
+static const FieldPart *I062_V1_17_290_TRK_PARTS[] = {
+ &I062_V1_17_290_TRK_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_290_TRK = { FIXED, 1, 0, 0, &hf_062_V1_17_290_TRK, I062_V1_17_290_TRK_PARTS, { NULL } };
+static int hf_062_V1_17_290_PSR = -1;
+static int hf_062_V1_17_290_PSR_VALUE = -1;
+static const FieldPart I062_V1_17_290_PSR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_290_PSR_VALUE, NULL };
+static const FieldPart *I062_V1_17_290_PSR_PARTS[] = {
+ &I062_V1_17_290_PSR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_290_PSR = { FIXED, 1, 0, 0, &hf_062_V1_17_290_PSR, I062_V1_17_290_PSR_PARTS, { NULL } };
+static int hf_062_V1_17_290_SSR = -1;
+static int hf_062_V1_17_290_SSR_VALUE = -1;
+static const FieldPart I062_V1_17_290_SSR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_290_SSR_VALUE, NULL };
+static const FieldPart *I062_V1_17_290_SSR_PARTS[] = {
+ &I062_V1_17_290_SSR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_290_SSR = { FIXED, 1, 0, 0, &hf_062_V1_17_290_SSR, I062_V1_17_290_SSR_PARTS, { NULL } };
+static int hf_062_V1_17_290_MDS = -1;
+static int hf_062_V1_17_290_MDS_VALUE = -1;
+static const FieldPart I062_V1_17_290_MDS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_290_MDS_VALUE, NULL };
+static const FieldPart *I062_V1_17_290_MDS_PARTS[] = {
+ &I062_V1_17_290_MDS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_290_MDS = { FIXED, 1, 0, 0, &hf_062_V1_17_290_MDS, I062_V1_17_290_MDS_PARTS, { NULL } };
+static int hf_062_V1_17_290_ADS = -1;
+static int hf_062_V1_17_290_ADS_VALUE = -1;
+static const FieldPart I062_V1_17_290_ADS_VALUE = { 16, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_290_ADS_VALUE, NULL };
+static const FieldPart *I062_V1_17_290_ADS_PARTS[] = {
+ &I062_V1_17_290_ADS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_290_ADS = { FIXED, 2, 0, 0, &hf_062_V1_17_290_ADS, I062_V1_17_290_ADS_PARTS, { NULL } };
+static int hf_062_V1_17_290_ES = -1;
+static int hf_062_V1_17_290_ES_VALUE = -1;
+static const FieldPart I062_V1_17_290_ES_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_290_ES_VALUE, NULL };
+static const FieldPart *I062_V1_17_290_ES_PARTS[] = {
+ &I062_V1_17_290_ES_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_290_ES = { FIXED, 1, 0, 0, &hf_062_V1_17_290_ES, I062_V1_17_290_ES_PARTS, { NULL } };
+static int hf_062_V1_17_290_VDL = -1;
+static int hf_062_V1_17_290_VDL_VALUE = -1;
+static const FieldPart I062_V1_17_290_VDL_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_290_VDL_VALUE, NULL };
+static const FieldPart *I062_V1_17_290_VDL_PARTS[] = {
+ &I062_V1_17_290_VDL_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_290_VDL = { FIXED, 1, 0, 0, &hf_062_V1_17_290_VDL, I062_V1_17_290_VDL_PARTS, { NULL } };
+static int hf_062_V1_17_290_UAT = -1;
+static int hf_062_V1_17_290_UAT_VALUE = -1;
+static const FieldPart I062_V1_17_290_UAT_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_290_UAT_VALUE, NULL };
+static const FieldPart *I062_V1_17_290_UAT_PARTS[] = {
+ &I062_V1_17_290_UAT_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_290_UAT = { FIXED, 1, 0, 0, &hf_062_V1_17_290_UAT, I062_V1_17_290_UAT_PARTS, { NULL } };
+static int hf_062_V1_17_290_LOP = -1;
+static int hf_062_V1_17_290_LOP_VALUE = -1;
+static const FieldPart I062_V1_17_290_LOP_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_290_LOP_VALUE, NULL };
+static const FieldPart *I062_V1_17_290_LOP_PARTS[] = {
+ &I062_V1_17_290_LOP_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_290_LOP = { FIXED, 1, 0, 0, &hf_062_V1_17_290_LOP, I062_V1_17_290_LOP_PARTS, { NULL } };
+static int hf_062_V1_17_290_MLT = -1;
+static int hf_062_V1_17_290_MLT_VALUE = -1;
+static const FieldPart I062_V1_17_290_MLT_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_290_MLT_VALUE, NULL };
+static const FieldPart *I062_V1_17_290_MLT_PARTS[] = {
+ &I062_V1_17_290_MLT_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_290_MLT = { FIXED, 1, 0, 0, &hf_062_V1_17_290_MLT, I062_V1_17_290_MLT_PARTS, { NULL } };
+static const AsterixField I062_V1_17_290 = { COMPOUND, 0, 0, 0, &hf_062_V1_17_290, NULL, { &I062_V1_17_290_TRK, &I062_V1_17_290_PSR, &I062_V1_17_290_SSR, &I062_V1_17_290_MDS, &I062_V1_17_290_ADS, &I062_V1_17_290_ES, &I062_V1_17_290_VDL, &I062_V1_17_290_UAT, &I062_V1_17_290_LOP, &I062_V1_17_290_MLT, NULL } };
+static int hf_062_V1_17_295 = -1;
+static int hf_062_V1_17_295_MFL = -1;
+static int hf_062_V1_17_295_MFL_VALUE = -1;
+static const FieldPart I062_V1_17_295_MFL_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_MFL_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_MFL_PARTS[] = {
+ &I062_V1_17_295_MFL_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_MFL = { FIXED, 1, 0, 0, &hf_062_V1_17_295_MFL, I062_V1_17_295_MFL_PARTS, { NULL } };
+static int hf_062_V1_17_295_MD1 = -1;
+static int hf_062_V1_17_295_MD1_VALUE = -1;
+static const FieldPart I062_V1_17_295_MD1_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_MD1_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_MD1_PARTS[] = {
+ &I062_V1_17_295_MD1_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_MD1 = { FIXED, 1, 0, 0, &hf_062_V1_17_295_MD1, I062_V1_17_295_MD1_PARTS, { NULL } };
+static int hf_062_V1_17_295_MD2 = -1;
+static int hf_062_V1_17_295_MD2_VALUE = -1;
+static const FieldPart I062_V1_17_295_MD2_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_MD2_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_MD2_PARTS[] = {
+ &I062_V1_17_295_MD2_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_MD2 = { FIXED, 1, 0, 0, &hf_062_V1_17_295_MD2, I062_V1_17_295_MD2_PARTS, { NULL } };
+static int hf_062_V1_17_295_MDA = -1;
+static int hf_062_V1_17_295_MDA_VALUE = -1;
+static const FieldPart I062_V1_17_295_MDA_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_MDA_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_MDA_PARTS[] = {
+ &I062_V1_17_295_MDA_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_MDA = { FIXED, 1, 0, 0, &hf_062_V1_17_295_MDA, I062_V1_17_295_MDA_PARTS, { NULL } };
+static int hf_062_V1_17_295_MD4 = -1;
+static int hf_062_V1_17_295_MD4_VALUE = -1;
+static const FieldPart I062_V1_17_295_MD4_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_MD4_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_MD4_PARTS[] = {
+ &I062_V1_17_295_MD4_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_MD4 = { FIXED, 1, 0, 0, &hf_062_V1_17_295_MD4, I062_V1_17_295_MD4_PARTS, { NULL } };
+static int hf_062_V1_17_295_MD5 = -1;
+static int hf_062_V1_17_295_MD5_VALUE = -1;
+static const FieldPart I062_V1_17_295_MD5_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_MD5_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_MD5_PARTS[] = {
+ &I062_V1_17_295_MD5_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_MD5 = { FIXED, 1, 0, 0, &hf_062_V1_17_295_MD5, I062_V1_17_295_MD5_PARTS, { NULL } };
+static int hf_062_V1_17_295_MHG = -1;
+static int hf_062_V1_17_295_MHG_VALUE = -1;
+static const FieldPart I062_V1_17_295_MHG_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_MHG_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_MHG_PARTS[] = {
+ &I062_V1_17_295_MHG_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_MHG = { FIXED, 1, 0, 0, &hf_062_V1_17_295_MHG, I062_V1_17_295_MHG_PARTS, { NULL } };
+static int hf_062_V1_17_295_IAS = -1;
+static int hf_062_V1_17_295_IAS_VALUE = -1;
+static const FieldPart I062_V1_17_295_IAS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_IAS_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_IAS_PARTS[] = {
+ &I062_V1_17_295_IAS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_IAS = { FIXED, 1, 0, 0, &hf_062_V1_17_295_IAS, I062_V1_17_295_IAS_PARTS, { NULL } };
+static int hf_062_V1_17_295_TAS = -1;
+static int hf_062_V1_17_295_TAS_VALUE = -1;
+static const FieldPart I062_V1_17_295_TAS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_TAS_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_TAS_PARTS[] = {
+ &I062_V1_17_295_TAS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_TAS = { FIXED, 1, 0, 0, &hf_062_V1_17_295_TAS, I062_V1_17_295_TAS_PARTS, { NULL } };
+static int hf_062_V1_17_295_SAL = -1;
+static int hf_062_V1_17_295_SAL_VALUE = -1;
+static const FieldPart I062_V1_17_295_SAL_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_SAL_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_SAL_PARTS[] = {
+ &I062_V1_17_295_SAL_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_SAL = { FIXED, 1, 0, 0, &hf_062_V1_17_295_SAL, I062_V1_17_295_SAL_PARTS, { NULL } };
+static int hf_062_V1_17_295_FSS = -1;
+static int hf_062_V1_17_295_FSS_VALUE = -1;
+static const FieldPart I062_V1_17_295_FSS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_FSS_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_FSS_PARTS[] = {
+ &I062_V1_17_295_FSS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_FSS = { FIXED, 1, 0, 0, &hf_062_V1_17_295_FSS, I062_V1_17_295_FSS_PARTS, { NULL } };
+static int hf_062_V1_17_295_TID = -1;
+static int hf_062_V1_17_295_TID_VALUE = -1;
+static const FieldPart I062_V1_17_295_TID_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_TID_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_TID_PARTS[] = {
+ &I062_V1_17_295_TID_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_TID = { FIXED, 1, 0, 0, &hf_062_V1_17_295_TID, I062_V1_17_295_TID_PARTS, { NULL } };
+static int hf_062_V1_17_295_COM = -1;
+static int hf_062_V1_17_295_COM_VALUE = -1;
+static const FieldPart I062_V1_17_295_COM_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_COM_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_COM_PARTS[] = {
+ &I062_V1_17_295_COM_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_COM = { FIXED, 1, 0, 0, &hf_062_V1_17_295_COM, I062_V1_17_295_COM_PARTS, { NULL } };
+static int hf_062_V1_17_295_SAB = -1;
+static int hf_062_V1_17_295_SAB_VALUE = -1;
+static const FieldPart I062_V1_17_295_SAB_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_SAB_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_SAB_PARTS[] = {
+ &I062_V1_17_295_SAB_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_SAB = { FIXED, 1, 0, 0, &hf_062_V1_17_295_SAB, I062_V1_17_295_SAB_PARTS, { NULL } };
+static int hf_062_V1_17_295_ACS = -1;
+static int hf_062_V1_17_295_ACS_VALUE = -1;
+static const FieldPart I062_V1_17_295_ACS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_ACS_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_ACS_PARTS[] = {
+ &I062_V1_17_295_ACS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_ACS = { FIXED, 1, 0, 0, &hf_062_V1_17_295_ACS, I062_V1_17_295_ACS_PARTS, { NULL } };
+static int hf_062_V1_17_295_BVR = -1;
+static int hf_062_V1_17_295_BVR_VALUE = -1;
+static const FieldPart I062_V1_17_295_BVR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_BVR_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_BVR_PARTS[] = {
+ &I062_V1_17_295_BVR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_BVR = { FIXED, 1, 0, 0, &hf_062_V1_17_295_BVR, I062_V1_17_295_BVR_PARTS, { NULL } };
+static int hf_062_V1_17_295_GVR = -1;
+static int hf_062_V1_17_295_GVR_VALUE = -1;
+static const FieldPart I062_V1_17_295_GVR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_GVR_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_GVR_PARTS[] = {
+ &I062_V1_17_295_GVR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_GVR = { FIXED, 1, 0, 0, &hf_062_V1_17_295_GVR, I062_V1_17_295_GVR_PARTS, { NULL } };
+static int hf_062_V1_17_295_RAN = -1;
+static int hf_062_V1_17_295_RAN_VALUE = -1;
+static const FieldPart I062_V1_17_295_RAN_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_RAN_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_RAN_PARTS[] = {
+ &I062_V1_17_295_RAN_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_RAN = { FIXED, 1, 0, 0, &hf_062_V1_17_295_RAN, I062_V1_17_295_RAN_PARTS, { NULL } };
+static int hf_062_V1_17_295_TAR = -1;
+static int hf_062_V1_17_295_TAR_VALUE = -1;
+static const FieldPart I062_V1_17_295_TAR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_TAR_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_TAR_PARTS[] = {
+ &I062_V1_17_295_TAR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_TAR = { FIXED, 1, 0, 0, &hf_062_V1_17_295_TAR, I062_V1_17_295_TAR_PARTS, { NULL } };
+static int hf_062_V1_17_295_TAN = -1;
+static int hf_062_V1_17_295_TAN_VALUE = -1;
+static const FieldPart I062_V1_17_295_TAN_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_TAN_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_TAN_PARTS[] = {
+ &I062_V1_17_295_TAN_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_TAN = { FIXED, 1, 0, 0, &hf_062_V1_17_295_TAN, I062_V1_17_295_TAN_PARTS, { NULL } };
+static int hf_062_V1_17_295_GSP = -1;
+static int hf_062_V1_17_295_GSP_VALUE = -1;
+static const FieldPart I062_V1_17_295_GSP_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_GSP_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_GSP_PARTS[] = {
+ &I062_V1_17_295_GSP_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_GSP = { FIXED, 1, 0, 0, &hf_062_V1_17_295_GSP, I062_V1_17_295_GSP_PARTS, { NULL } };
+static int hf_062_V1_17_295_VUN = -1;
+static int hf_062_V1_17_295_VUN_VALUE = -1;
+static const FieldPart I062_V1_17_295_VUN_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_VUN_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_VUN_PARTS[] = {
+ &I062_V1_17_295_VUN_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_VUN = { FIXED, 1, 0, 0, &hf_062_V1_17_295_VUN, I062_V1_17_295_VUN_PARTS, { NULL } };
+static int hf_062_V1_17_295_MET = -1;
+static int hf_062_V1_17_295_MET_VALUE = -1;
+static const FieldPart I062_V1_17_295_MET_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_MET_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_MET_PARTS[] = {
+ &I062_V1_17_295_MET_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_MET = { FIXED, 1, 0, 0, &hf_062_V1_17_295_MET, I062_V1_17_295_MET_PARTS, { NULL } };
+static int hf_062_V1_17_295_EMC = -1;
+static int hf_062_V1_17_295_EMC_VALUE = -1;
+static const FieldPart I062_V1_17_295_EMC_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_EMC_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_EMC_PARTS[] = {
+ &I062_V1_17_295_EMC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_EMC = { FIXED, 1, 0, 0, &hf_062_V1_17_295_EMC, I062_V1_17_295_EMC_PARTS, { NULL } };
+static int hf_062_V1_17_295_POS = -1;
+static int hf_062_V1_17_295_POS_VALUE = -1;
+static const FieldPart I062_V1_17_295_POS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_POS_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_POS_PARTS[] = {
+ &I062_V1_17_295_POS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_POS = { FIXED, 1, 0, 0, &hf_062_V1_17_295_POS, I062_V1_17_295_POS_PARTS, { NULL } };
+static int hf_062_V1_17_295_GAL = -1;
+static int hf_062_V1_17_295_GAL_VALUE = -1;
+static const FieldPart I062_V1_17_295_GAL_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_GAL_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_GAL_PARTS[] = {
+ &I062_V1_17_295_GAL_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_GAL = { FIXED, 1, 0, 0, &hf_062_V1_17_295_GAL, I062_V1_17_295_GAL_PARTS, { NULL } };
+static int hf_062_V1_17_295_PUN = -1;
+static int hf_062_V1_17_295_PUN_VALUE = -1;
+static const FieldPart I062_V1_17_295_PUN_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_PUN_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_PUN_PARTS[] = {
+ &I062_V1_17_295_PUN_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_PUN = { FIXED, 1, 0, 0, &hf_062_V1_17_295_PUN, I062_V1_17_295_PUN_PARTS, { NULL } };
+static int hf_062_V1_17_295_MB = -1;
+static int hf_062_V1_17_295_MB_VALUE = -1;
+static const FieldPart I062_V1_17_295_MB_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_MB_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_MB_PARTS[] = {
+ &I062_V1_17_295_MB_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_MB = { FIXED, 1, 0, 0, &hf_062_V1_17_295_MB, I062_V1_17_295_MB_PARTS, { NULL } };
+static int hf_062_V1_17_295_IAR = -1;
+static int hf_062_V1_17_295_IAR_VALUE = -1;
+static const FieldPart I062_V1_17_295_IAR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_IAR_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_IAR_PARTS[] = {
+ &I062_V1_17_295_IAR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_IAR = { FIXED, 1, 0, 0, &hf_062_V1_17_295_IAR, I062_V1_17_295_IAR_PARTS, { NULL } };
+static int hf_062_V1_17_295_MAC = -1;
+static int hf_062_V1_17_295_MAC_VALUE = -1;
+static const FieldPart I062_V1_17_295_MAC_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_MAC_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_MAC_PARTS[] = {
+ &I062_V1_17_295_MAC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_MAC = { FIXED, 1, 0, 0, &hf_062_V1_17_295_MAC, I062_V1_17_295_MAC_PARTS, { NULL } };
+static int hf_062_V1_17_295_BPS = -1;
+static int hf_062_V1_17_295_BPS_VALUE = -1;
+static const FieldPart I062_V1_17_295_BPS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_295_BPS_VALUE, NULL };
+static const FieldPart *I062_V1_17_295_BPS_PARTS[] = {
+ &I062_V1_17_295_BPS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_295_BPS = { FIXED, 1, 0, 0, &hf_062_V1_17_295_BPS, I062_V1_17_295_BPS_PARTS, { NULL } };
+static const AsterixField I062_V1_17_295 = { COMPOUND, 0, 0, 0, &hf_062_V1_17_295, NULL, { &I062_V1_17_295_MFL, &I062_V1_17_295_MD1, &I062_V1_17_295_MD2, &I062_V1_17_295_MDA, &I062_V1_17_295_MD4, &I062_V1_17_295_MD5, &I062_V1_17_295_MHG, &I062_V1_17_295_IAS, &I062_V1_17_295_TAS, &I062_V1_17_295_SAL, &I062_V1_17_295_FSS, &I062_V1_17_295_TID, &I062_V1_17_295_COM, &I062_V1_17_295_SAB, &I062_V1_17_295_ACS, &I062_V1_17_295_BVR, &I062_V1_17_295_GVR, &I062_V1_17_295_RAN, &I062_V1_17_295_TAR, &I062_V1_17_295_TAN, &I062_V1_17_295_GSP, &I062_V1_17_295_VUN, &I062_V1_17_295_MET, &I062_V1_17_295_EMC, &I062_V1_17_295_POS, &I062_V1_17_295_GAL, &I062_V1_17_295_PUN, &I062_V1_17_295_MB, &I062_V1_17_295_IAR, &I062_V1_17_295_MAC, &I062_V1_17_295_BPS, NULL } };
+static int hf_062_V1_17_300 = -1;
+static int hf_062_V1_17_300_VALUE = -1;
+static const value_string valstr_062_V1_17_300_VALUE[] = {
+ { 0, "Unknown" },
+ { 1, "ATC equipment maintenance" },
+ { 2, "Airport maintenance" },
+ { 3, "Fire" },
+ { 4, "Bird scarer" },
+ { 5, "Snow plough" },
+ { 6, "Runway sweeper" },
+ { 7, "Emergency" },
+ { 8, "Police" },
+ { 9, "Bus" },
+ { 10, "Tug (push/tow)" },
+ { 11, "Grass cutter" },
+ { 12, "Fuel" },
+ { 13, "Baggage" },
+ { 14, "Catering" },
+ { 15, "Aircraft maintenance" },
+ { 16, "Flyco (follow me)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_300_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_062_V1_17_300_VALUE, NULL };
+static const FieldPart *I062_V1_17_300_PARTS[] = {
+ &I062_V1_17_300_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_300 = { FIXED, 1, 0, 0, &hf_062_V1_17_300, I062_V1_17_300_PARTS, { NULL } };
+static int hf_062_V1_17_340 = -1;
+static int hf_062_V1_17_340_SID = -1;
+static int hf_062_V1_17_340_SID_SAC = -1;
+static const FieldPart I062_V1_17_340_SID_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_17_340_SID_SAC, NULL };
+static int hf_062_V1_17_340_SID_SIC = -1;
+static const FieldPart I062_V1_17_340_SID_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_17_340_SID_SIC, NULL };
+static const FieldPart *I062_V1_17_340_SID_PARTS[] = {
+ &I062_V1_17_340_SID_SAC,
+ &I062_V1_17_340_SID_SIC,
+ NULL
+};
+static const AsterixField I062_V1_17_340_SID = { FIXED, 2, 0, 0, &hf_062_V1_17_340_SID, I062_V1_17_340_SID_PARTS, { NULL } };
+static int hf_062_V1_17_340_POS = -1;
+static int hf_062_V1_17_340_POS_RHO = -1;
+static const FieldPart I062_V1_17_340_POS_RHO = { 16, 0.00390625, FIELD_PART_UFLOAT, &hf_062_V1_17_340_POS_RHO, NULL };
+static int hf_062_V1_17_340_POS_THETA = -1;
+static const FieldPart I062_V1_17_340_POS_THETA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_062_V1_17_340_POS_THETA, NULL };
+static const FieldPart *I062_V1_17_340_POS_PARTS[] = {
+ &I062_V1_17_340_POS_RHO,
+ &I062_V1_17_340_POS_THETA,
+ NULL
+};
+static const AsterixField I062_V1_17_340_POS = { FIXED, 4, 0, 0, &hf_062_V1_17_340_POS, I062_V1_17_340_POS_PARTS, { NULL } };
+static int hf_062_V1_17_340_HEIGHT = -1;
+static int hf_062_V1_17_340_HEIGHT_VALUE = -1;
+static const FieldPart I062_V1_17_340_HEIGHT_VALUE = { 16, 25.0, FIELD_PART_UFLOAT, &hf_062_V1_17_340_HEIGHT_VALUE, NULL };
+static const FieldPart *I062_V1_17_340_HEIGHT_PARTS[] = {
+ &I062_V1_17_340_HEIGHT_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_340_HEIGHT = { FIXED, 2, 0, 0, &hf_062_V1_17_340_HEIGHT, I062_V1_17_340_HEIGHT_PARTS, { NULL } };
+static int hf_062_V1_17_340_MDC = -1;
+static int hf_062_V1_17_340_MDC_V = -1;
+static const value_string valstr_062_V1_17_340_MDC_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_340_MDC_V = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_340_MDC_V, NULL };
+static int hf_062_V1_17_340_MDC_G = -1;
+static const value_string valstr_062_V1_17_340_MDC_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_340_MDC_G = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_340_MDC_G, NULL };
+static int hf_062_V1_17_340_MDC_LMC = -1;
+static const FieldPart I062_V1_17_340_MDC_LMC = { 14, 0.25, FIELD_PART_FLOAT, &hf_062_V1_17_340_MDC_LMC, NULL };
+static const FieldPart *I062_V1_17_340_MDC_PARTS[] = {
+ &I062_V1_17_340_MDC_V,
+ &I062_V1_17_340_MDC_G,
+ &I062_V1_17_340_MDC_LMC,
+ NULL
+};
+static const AsterixField I062_V1_17_340_MDC = { FIXED, 2, 0, 0, &hf_062_V1_17_340_MDC, I062_V1_17_340_MDC_PARTS, { NULL } };
+static int hf_062_V1_17_340_MDA = -1;
+static int hf_062_V1_17_340_MDA_V = -1;
+static const value_string valstr_062_V1_17_340_MDA_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_340_MDA_V = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_340_MDA_V, NULL };
+static int hf_062_V1_17_340_MDA_G = -1;
+static const value_string valstr_062_V1_17_340_MDA_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_340_MDA_G = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_340_MDA_G, NULL };
+static int hf_062_V1_17_340_MDA_L = -1;
+static const value_string valstr_062_V1_17_340_MDA_L[] = {
+ { 0, "Mode 3/A code as derived from the reply of the transponder" },
+ { 1, "Mode 3/A code as provided by a sensor local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_340_MDA_L = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_340_MDA_L, NULL };
+static int hf_062_V1_17_340_MDA_MODE3A = -1;
+static const FieldPart I062_V1_17_340_MDA_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_062_V1_17_340_MDA_MODE3A, NULL };
+static const FieldPart *I062_V1_17_340_MDA_PARTS[] = {
+ &I062_V1_17_340_MDA_V,
+ &I062_V1_17_340_MDA_G,
+ &I062_V1_17_340_MDA_L,
+ &IXXX_1bit_spare,
+ &I062_V1_17_340_MDA_MODE3A,
+ NULL
+};
+static const AsterixField I062_V1_17_340_MDA = { FIXED, 2, 0, 0, &hf_062_V1_17_340_MDA, I062_V1_17_340_MDA_PARTS, { NULL } };
+static int hf_062_V1_17_340_TYP = -1;
+static int hf_062_V1_17_340_TYP_TYP = -1;
+static const value_string valstr_062_V1_17_340_TYP_TYP[] = {
+ { 0, "No detection" },
+ { 1, "Single PSR detection" },
+ { 2, "Single SSR detection" },
+ { 3, "SSR + PSR detection" },
+ { 4, "Single ModeS All-Call" },
+ { 5, "Single ModeS Roll-Call" },
+ { 6, "ModeS All-Call + PSR" },
+ { 7, "ModeS Roll-Call + PSR" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_340_TYP_TYP = { 3, 1.0, FIELD_PART_UINT, &hf_062_V1_17_340_TYP_TYP, NULL };
+static int hf_062_V1_17_340_TYP_SIM = -1;
+static const value_string valstr_062_V1_17_340_TYP_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_340_TYP_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_340_TYP_SIM, NULL };
+static int hf_062_V1_17_340_TYP_RAB = -1;
+static const value_string valstr_062_V1_17_340_TYP_RAB[] = {
+ { 0, "Report from target transponder" },
+ { 1, "Report from field monitor (item transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_340_TYP_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_340_TYP_RAB, NULL };
+static int hf_062_V1_17_340_TYP_TST = -1;
+static const value_string valstr_062_V1_17_340_TYP_TST[] = {
+ { 0, "Real target report" },
+ { 1, "Test target report" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_340_TYP_TST = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_340_TYP_TST, NULL };
+static const FieldPart *I062_V1_17_340_TYP_PARTS[] = {
+ &I062_V1_17_340_TYP_TYP,
+ &I062_V1_17_340_TYP_SIM,
+ &I062_V1_17_340_TYP_RAB,
+ &I062_V1_17_340_TYP_TST,
+ &IXXX_2bit_spare,
+ NULL
+};
+static const AsterixField I062_V1_17_340_TYP = { FIXED, 1, 0, 0, &hf_062_V1_17_340_TYP, I062_V1_17_340_TYP_PARTS, { NULL } };
+static const AsterixField I062_V1_17_340 = { COMPOUND, 0, 0, 0, &hf_062_V1_17_340, NULL, { &I062_V1_17_340_SID, &I062_V1_17_340_POS, &I062_V1_17_340_HEIGHT, &I062_V1_17_340_MDC, &I062_V1_17_340_MDA, &I062_V1_17_340_TYP, NULL } };
+static int hf_062_V1_17_380 = -1;
+static int hf_062_V1_17_380_ADR = -1;
+static int hf_062_V1_17_380_ADR_VALUE = -1;
+static const FieldPart I062_V1_17_380_ADR_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_062_V1_17_380_ADR_VALUE, NULL };
+static const FieldPart *I062_V1_17_380_ADR_PARTS[] = {
+ &I062_V1_17_380_ADR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_380_ADR = { FIXED, 3, 0, 0, &hf_062_V1_17_380_ADR, I062_V1_17_380_ADR_PARTS, { NULL } };
+static int hf_062_V1_17_380_ID = -1;
+static int hf_062_V1_17_380_ID_VALUE = -1;
+static const FieldPart I062_V1_17_380_ID_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_062_V1_17_380_ID_VALUE, NULL };
+static const FieldPart *I062_V1_17_380_ID_PARTS[] = {
+ &I062_V1_17_380_ID_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_380_ID = { FIXED, 6, 0, 0, &hf_062_V1_17_380_ID, I062_V1_17_380_ID_PARTS, { NULL } };
+static int hf_062_V1_17_380_MHG = -1;
+static int hf_062_V1_17_380_MHG_VALUE = -1;
+static const FieldPart I062_V1_17_380_MHG_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_062_V1_17_380_MHG_VALUE, NULL };
+static const FieldPart *I062_V1_17_380_MHG_PARTS[] = {
+ &I062_V1_17_380_MHG_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_380_MHG = { FIXED, 2, 0, 0, &hf_062_V1_17_380_MHG, I062_V1_17_380_MHG_PARTS, { NULL } };
+static int hf_062_V1_17_380_IAS = -1;
+static int hf_062_V1_17_380_IAS_IM = -1;
+static const value_string valstr_062_V1_17_380_IAS_IM[] = {
+ { 0, "Air Speed = IAS, LSB (Bit-1) = 2^-14 NM/s" },
+ { 1, "Air Speed = Mach, LSB (Bit-1) = 0.001" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_IAS_IM = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_IAS_IM, NULL };
+static int hf_062_V1_17_380_IAS_IAS = -1;
+static const FieldPart I062_V1_17_380_IAS_IAS = { 15, 1.0, FIELD_PART_HEX, &hf_062_V1_17_380_IAS_IAS, NULL };
+static const FieldPart *I062_V1_17_380_IAS_PARTS[] = {
+ &I062_V1_17_380_IAS_IM,
+ &I062_V1_17_380_IAS_IAS,
+ NULL
+};
+static const AsterixField I062_V1_17_380_IAS = { FIXED, 2, 0, 0, &hf_062_V1_17_380_IAS, I062_V1_17_380_IAS_PARTS, { NULL } };
+static int hf_062_V1_17_380_TAS = -1;
+static int hf_062_V1_17_380_TAS_VALUE = -1;
+static const FieldPart I062_V1_17_380_TAS_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_062_V1_17_380_TAS_VALUE, NULL };
+static const FieldPart *I062_V1_17_380_TAS_PARTS[] = {
+ &I062_V1_17_380_TAS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_380_TAS = { FIXED, 2, 0, 0, &hf_062_V1_17_380_TAS, I062_V1_17_380_TAS_PARTS, { NULL } };
+static int hf_062_V1_17_380_SAL = -1;
+static int hf_062_V1_17_380_SAL_SAS = -1;
+static const value_string valstr_062_V1_17_380_SAL_SAS[] = {
+ { 0, "No source information provided" },
+ { 1, "Source information provided" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_SAL_SAS = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_SAL_SAS, NULL };
+static int hf_062_V1_17_380_SAL_SRC = -1;
+static const value_string valstr_062_V1_17_380_SAL_SRC[] = {
+ { 0, "Unknown" },
+ { 1, "Aircraft altitude" },
+ { 2, "FCU/MCP selected altitude" },
+ { 3, "FMS selected altitude" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_SAL_SRC = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_SAL_SRC, NULL };
+static int hf_062_V1_17_380_SAL_ALT = -1;
+static const FieldPart I062_V1_17_380_SAL_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_062_V1_17_380_SAL_ALT, NULL };
+static const FieldPart *I062_V1_17_380_SAL_PARTS[] = {
+ &I062_V1_17_380_SAL_SAS,
+ &I062_V1_17_380_SAL_SRC,
+ &I062_V1_17_380_SAL_ALT,
+ NULL
+};
+static const AsterixField I062_V1_17_380_SAL = { FIXED, 2, 0, 0, &hf_062_V1_17_380_SAL, I062_V1_17_380_SAL_PARTS, { NULL } };
+static int hf_062_V1_17_380_FSS = -1;
+static int hf_062_V1_17_380_FSS_MV = -1;
+static const value_string valstr_062_V1_17_380_FSS_MV[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_FSS_MV = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_FSS_MV, NULL };
+static int hf_062_V1_17_380_FSS_AH = -1;
+static const value_string valstr_062_V1_17_380_FSS_AH[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_FSS_AH = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_FSS_AH, NULL };
+static int hf_062_V1_17_380_FSS_AM = -1;
+static const value_string valstr_062_V1_17_380_FSS_AM[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_FSS_AM = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_FSS_AM, NULL };
+static int hf_062_V1_17_380_FSS_ALT = -1;
+static const FieldPart I062_V1_17_380_FSS_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_062_V1_17_380_FSS_ALT, NULL };
+static const FieldPart *I062_V1_17_380_FSS_PARTS[] = {
+ &I062_V1_17_380_FSS_MV,
+ &I062_V1_17_380_FSS_AH,
+ &I062_V1_17_380_FSS_AM,
+ &I062_V1_17_380_FSS_ALT,
+ NULL
+};
+static const AsterixField I062_V1_17_380_FSS = { FIXED, 2, 0, 0, &hf_062_V1_17_380_FSS, I062_V1_17_380_FSS_PARTS, { NULL } };
+static int hf_062_V1_17_380_TIS = -1;
+static int hf_062_V1_17_380_TIS_NAV = -1;
+static const value_string valstr_062_V1_17_380_TIS_NAV[] = {
+ { 0, "Trajectory intent data is available for this aircraft" },
+ { 1, "Trajectory intent data is not available for this aircraft" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_TIS_NAV = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_TIS_NAV, NULL };
+static int hf_062_V1_17_380_TIS_NVB = -1;
+static const value_string valstr_062_V1_17_380_TIS_NVB[] = {
+ { 0, "Trajectory intent data is valid" },
+ { 1, "Trajectory intent data is not valid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_TIS_NVB = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_TIS_NVB, NULL };
+static const FieldPart *I062_V1_17_380_TIS_PARTS[] = {
+ &I062_V1_17_380_TIS_NAV,
+ &I062_V1_17_380_TIS_NVB,
+ &IXXX_5bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I062_V1_17_380_TIS = { FX, 1, 0, 0, &hf_062_V1_17_380_TIS, I062_V1_17_380_TIS_PARTS, { NULL } };
+static int hf_062_V1_17_380_TID = -1;
+static int hf_062_V1_17_380_TID_TCA = -1;
+static const value_string valstr_062_V1_17_380_TID_TCA[] = {
+ { 0, "TCP number available" },
+ { 1, "TCP number not available" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_TID_TCA = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_TID_TCA, NULL };
+static int hf_062_V1_17_380_TID_NC = -1;
+static const value_string valstr_062_V1_17_380_TID_NC[] = {
+ { 0, "TCP compliance" },
+ { 1, "TCP non-compliance" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_TID_NC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_TID_NC, NULL };
+static int hf_062_V1_17_380_TID_TCPN = -1;
+static const FieldPart I062_V1_17_380_TID_TCPN = { 6, 1.0, FIELD_PART_HEX, &hf_062_V1_17_380_TID_TCPN, NULL };
+static int hf_062_V1_17_380_TID_ALT = -1;
+static const FieldPart I062_V1_17_380_TID_ALT = { 16, 10.0, FIELD_PART_FLOAT, &hf_062_V1_17_380_TID_ALT, NULL };
+static int hf_062_V1_17_380_TID_LAT = -1;
+static const FieldPart I062_V1_17_380_TID_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_V1_17_380_TID_LAT, NULL };
+static int hf_062_V1_17_380_TID_LON = -1;
+static const FieldPart I062_V1_17_380_TID_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_V1_17_380_TID_LON, NULL };
+static int hf_062_V1_17_380_TID_PT = -1;
+static const value_string valstr_062_V1_17_380_TID_PT[] = {
+ { 0, "Unknown" },
+ { 1, "Fly by waypoint (LT)" },
+ { 2, "Fly over waypoint (LT)" },
+ { 3, "Hold pattern (LT)" },
+ { 4, "Procedure hold (LT)" },
+ { 5, "Procedure turn (LT)" },
+ { 6, "RF leg (LT)" },
+ { 7, "Top of climb (VT)" },
+ { 8, "Top of descent (VT)" },
+ { 9, "Start of level (VT)" },
+ { 10, "Cross-over altitude (VT)" },
+ { 11, "Transition altitude (VT)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_TID_PT = { 4, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_TID_PT, NULL };
+static int hf_062_V1_17_380_TID_TD = -1;
+static const value_string valstr_062_V1_17_380_TID_TD[] = {
+ { 0, "N/A" },
+ { 1, "Turn right" },
+ { 2, "Turn left" },
+ { 3, "No turn" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_TID_TD = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_TID_TD, NULL };
+static int hf_062_V1_17_380_TID_TRA = -1;
+static const value_string valstr_062_V1_17_380_TID_TRA[] = {
+ { 0, "TTR not available" },
+ { 1, "TTR available" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_TID_TRA = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_TID_TRA, NULL };
+static int hf_062_V1_17_380_TID_TOA = -1;
+static const value_string valstr_062_V1_17_380_TID_TOA[] = {
+ { 0, "TOV available" },
+ { 1, "TOV not available" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_TID_TOA = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_TID_TOA, NULL };
+static int hf_062_V1_17_380_TID_TOV = -1;
+static const FieldPart I062_V1_17_380_TID_TOV = { 24, 1.0, FIELD_PART_UFLOAT, &hf_062_V1_17_380_TID_TOV, NULL };
+static int hf_062_V1_17_380_TID_TTR = -1;
+static const FieldPart I062_V1_17_380_TID_TTR = { 16, 0.01, FIELD_PART_UFLOAT, &hf_062_V1_17_380_TID_TTR, NULL };
+static const FieldPart *I062_V1_17_380_TID_PARTS[] = {
+ &I062_V1_17_380_TID_TCA,
+ &I062_V1_17_380_TID_NC,
+ &I062_V1_17_380_TID_TCPN,
+ &I062_V1_17_380_TID_ALT,
+ &I062_V1_17_380_TID_LAT,
+ &I062_V1_17_380_TID_LON,
+ &I062_V1_17_380_TID_PT,
+ &I062_V1_17_380_TID_TD,
+ &I062_V1_17_380_TID_TRA,
+ &I062_V1_17_380_TID_TOA,
+ &I062_V1_17_380_TID_TOV,
+ &I062_V1_17_380_TID_TTR,
+ NULL
+};
+static const AsterixField I062_V1_17_380_TID = { REPETITIVE, 15, 1, 0, &hf_062_V1_17_380_TID, I062_V1_17_380_TID_PARTS, { NULL } };
+static int hf_062_V1_17_380_COM = -1;
+static int hf_062_V1_17_380_COM_COM = -1;
+static const value_string valstr_062_V1_17_380_COM_COM[] = {
+ { 0, "No communications capability (surveillance only)" },
+ { 1, "Comm. A and Comm. B capability" },
+ { 2, "Comm. A, Comm. B and Uplink ELM" },
+ { 3, "Comm. A, Comm. B, Uplink ELM and Downlink ELM" },
+ { 4, "Level 5 Transponder capability" },
+ { 5, "Not assigned" },
+ { 6, "Not assigned" },
+ { 7, "Not assigned" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_COM_COM = { 3, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_COM_COM, NULL };
+static int hf_062_V1_17_380_COM_STAT = -1;
+static const value_string valstr_062_V1_17_380_COM_STAT[] = {
+ { 0, "No alert, no SPI, aircraft airborne" },
+ { 1, "No alert, no SPI, aircraft on ground" },
+ { 2, "Alert, no SPI, aircraft airborne" },
+ { 3, "Alert, no SPI, aircraft on ground" },
+ { 4, "Alert, SPI, aircraft airborne or on ground" },
+ { 5, "No alert, SPI, aircraft airborne or on ground" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_COM_STAT = { 3, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_COM_STAT, NULL };
+static int hf_062_V1_17_380_COM_SSC = -1;
+static const value_string valstr_062_V1_17_380_COM_SSC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_COM_SSC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_COM_SSC, NULL };
+static int hf_062_V1_17_380_COM_ARC = -1;
+static const value_string valstr_062_V1_17_380_COM_ARC[] = {
+ { 0, "100 ft resolution" },
+ { 1, "25 ft resolution" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_COM_ARC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_COM_ARC, NULL };
+static int hf_062_V1_17_380_COM_AIC = -1;
+static const value_string valstr_062_V1_17_380_COM_AIC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_COM_AIC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_COM_AIC, NULL };
+static int hf_062_V1_17_380_COM_B1A = -1;
+static const FieldPart I062_V1_17_380_COM_B1A = { 1, 1.0, FIELD_PART_HEX, &hf_062_V1_17_380_COM_B1A, NULL };
+static int hf_062_V1_17_380_COM_B1B = -1;
+static const FieldPart I062_V1_17_380_COM_B1B = { 4, 1.0, FIELD_PART_HEX, &hf_062_V1_17_380_COM_B1B, NULL };
+static const FieldPart *I062_V1_17_380_COM_PARTS[] = {
+ &I062_V1_17_380_COM_COM,
+ &I062_V1_17_380_COM_STAT,
+ &IXXX_2bit_spare,
+ &I062_V1_17_380_COM_SSC,
+ &I062_V1_17_380_COM_ARC,
+ &I062_V1_17_380_COM_AIC,
+ &I062_V1_17_380_COM_B1A,
+ &I062_V1_17_380_COM_B1B,
+ NULL
+};
+static const AsterixField I062_V1_17_380_COM = { FIXED, 2, 0, 0, &hf_062_V1_17_380_COM, I062_V1_17_380_COM_PARTS, { NULL } };
+static int hf_062_V1_17_380_SAB = -1;
+static int hf_062_V1_17_380_SAB_AC = -1;
+static const value_string valstr_062_V1_17_380_SAB_AC[] = {
+ { 0, "Unknown" },
+ { 1, "ACAS not operational" },
+ { 2, "ACAS operational" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_SAB_AC = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_SAB_AC, NULL };
+static int hf_062_V1_17_380_SAB_MN = -1;
+static const value_string valstr_062_V1_17_380_SAB_MN[] = {
+ { 0, "Unknown" },
+ { 1, "Multiple navigational aids not operating" },
+ { 2, "Multiple navigational aids operating" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_SAB_MN = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_SAB_MN, NULL };
+static int hf_062_V1_17_380_SAB_DC = -1;
+static const value_string valstr_062_V1_17_380_SAB_DC[] = {
+ { 0, "Unknown" },
+ { 1, "Differential correction" },
+ { 2, "No differential correction" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_SAB_DC = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_SAB_DC, NULL };
+static int hf_062_V1_17_380_SAB_GBS = -1;
+static const value_string valstr_062_V1_17_380_SAB_GBS[] = {
+ { 0, "Transponder ground bit not set or unknown" },
+ { 1, "Transponder Ground Bit set" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_SAB_GBS = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_SAB_GBS, NULL };
+static int hf_062_V1_17_380_SAB_STAT = -1;
+static const value_string valstr_062_V1_17_380_SAB_STAT[] = {
+ { 0, "No emergency" },
+ { 1, "General emergency" },
+ { 2, "Lifeguard / medical" },
+ { 3, "Minimum fuel" },
+ { 4, "No communications" },
+ { 5, "Unlawful interference" },
+ { 6, "Downed Aircraft" },
+ { 7, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_SAB_STAT = { 3, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_SAB_STAT, NULL };
+static const FieldPart *I062_V1_17_380_SAB_PARTS[] = {
+ &I062_V1_17_380_SAB_AC,
+ &I062_V1_17_380_SAB_MN,
+ &I062_V1_17_380_SAB_DC,
+ &I062_V1_17_380_SAB_GBS,
+ &IXXX_6bit_spare,
+ &I062_V1_17_380_SAB_STAT,
+ NULL
+};
+static const AsterixField I062_V1_17_380_SAB = { FIXED, 2, 0, 0, &hf_062_V1_17_380_SAB, I062_V1_17_380_SAB_PARTS, { NULL } };
+static int hf_062_V1_17_380_ACS = -1;
+static int hf_062_V1_17_380_ACS_VALUE = -1;
+static const FieldPart I062_V1_17_380_ACS_VALUE = { 56, 1.0, FIELD_PART_HEX, &hf_062_V1_17_380_ACS_VALUE, NULL };
+static const FieldPart *I062_V1_17_380_ACS_PARTS[] = {
+ &I062_V1_17_380_ACS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_380_ACS = { FIXED, 7, 0, 0, &hf_062_V1_17_380_ACS, I062_V1_17_380_ACS_PARTS, { NULL } };
+static int hf_062_V1_17_380_BVR = -1;
+static int hf_062_V1_17_380_BVR_VALUE = -1;
+static const FieldPart I062_V1_17_380_BVR_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_062_V1_17_380_BVR_VALUE, NULL };
+static const FieldPart *I062_V1_17_380_BVR_PARTS[] = {
+ &I062_V1_17_380_BVR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_380_BVR = { FIXED, 2, 0, 0, &hf_062_V1_17_380_BVR, I062_V1_17_380_BVR_PARTS, { NULL } };
+static int hf_062_V1_17_380_GVR = -1;
+static int hf_062_V1_17_380_GVR_VALUE = -1;
+static const FieldPart I062_V1_17_380_GVR_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_062_V1_17_380_GVR_VALUE, NULL };
+static const FieldPart *I062_V1_17_380_GVR_PARTS[] = {
+ &I062_V1_17_380_GVR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_380_GVR = { FIXED, 2, 0, 0, &hf_062_V1_17_380_GVR, I062_V1_17_380_GVR_PARTS, { NULL } };
+static int hf_062_V1_17_380_RAN = -1;
+static int hf_062_V1_17_380_RAN_VALUE = -1;
+static const FieldPart I062_V1_17_380_RAN_VALUE = { 16, 0.01, FIELD_PART_FLOAT, &hf_062_V1_17_380_RAN_VALUE, NULL };
+static const FieldPart *I062_V1_17_380_RAN_PARTS[] = {
+ &I062_V1_17_380_RAN_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_380_RAN = { FIXED, 2, 0, 0, &hf_062_V1_17_380_RAN, I062_V1_17_380_RAN_PARTS, { NULL } };
+static int hf_062_V1_17_380_TAR = -1;
+static int hf_062_V1_17_380_TAR_TI = -1;
+static const value_string valstr_062_V1_17_380_TAR_TI[] = {
+ { 0, "Not available" },
+ { 1, "Left" },
+ { 2, "Right" },
+ { 3, "Straight" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_TAR_TI = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_TAR_TI, NULL };
+static int hf_062_V1_17_380_TAR_ROT = -1;
+static const FieldPart I062_V1_17_380_TAR_ROT = { 7, 0.25, FIELD_PART_FLOAT, &hf_062_V1_17_380_TAR_ROT, NULL };
+static const FieldPart *I062_V1_17_380_TAR_PARTS[] = {
+ &I062_V1_17_380_TAR_TI,
+ &IXXX_6bit_spare,
+ &I062_V1_17_380_TAR_ROT,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I062_V1_17_380_TAR = { FIXED, 2, 0, 0, &hf_062_V1_17_380_TAR, I062_V1_17_380_TAR_PARTS, { NULL } };
+static int hf_062_V1_17_380_TAN = -1;
+static int hf_062_V1_17_380_TAN_VALUE = -1;
+static const FieldPart I062_V1_17_380_TAN_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_062_V1_17_380_TAN_VALUE, NULL };
+static const FieldPart *I062_V1_17_380_TAN_PARTS[] = {
+ &I062_V1_17_380_TAN_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_380_TAN = { FIXED, 2, 0, 0, &hf_062_V1_17_380_TAN, I062_V1_17_380_TAN_PARTS, { NULL } };
+static int hf_062_V1_17_380_GS = -1;
+static int hf_062_V1_17_380_GS_VALUE = -1;
+static const FieldPart I062_V1_17_380_GS_VALUE = { 16, 0.00006103515625, FIELD_PART_FLOAT, &hf_062_V1_17_380_GS_VALUE, NULL };
+static const FieldPart *I062_V1_17_380_GS_PARTS[] = {
+ &I062_V1_17_380_GS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_380_GS = { FIXED, 2, 0, 0, &hf_062_V1_17_380_GS, I062_V1_17_380_GS_PARTS, { NULL } };
+static int hf_062_V1_17_380_VUN = -1;
+static int hf_062_V1_17_380_VUN_VALUE = -1;
+static const FieldPart I062_V1_17_380_VUN_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_17_380_VUN_VALUE, NULL };
+static const FieldPart *I062_V1_17_380_VUN_PARTS[] = {
+ &I062_V1_17_380_VUN_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_380_VUN = { FIXED, 1, 0, 0, &hf_062_V1_17_380_VUN, I062_V1_17_380_VUN_PARTS, { NULL } };
+static int hf_062_V1_17_380_MET = -1;
+static int hf_062_V1_17_380_MET_WS = -1;
+static const value_string valstr_062_V1_17_380_MET_WS[] = {
+ { 0, "Not valid Wind Speed" },
+ { 1, "Valid Wind Speed" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_MET_WS = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_MET_WS, NULL };
+static int hf_062_V1_17_380_MET_WD = -1;
+static const value_string valstr_062_V1_17_380_MET_WD[] = {
+ { 0, "Not valid Wind Direction" },
+ { 1, "Valid Wind Direction" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_MET_WD = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_MET_WD, NULL };
+static int hf_062_V1_17_380_MET_TMP = -1;
+static const value_string valstr_062_V1_17_380_MET_TMP[] = {
+ { 0, "Not valid Temperature" },
+ { 1, "Valid Temperature" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_MET_TMP = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_MET_TMP, NULL };
+static int hf_062_V1_17_380_MET_TRB = -1;
+static const value_string valstr_062_V1_17_380_MET_TRB[] = {
+ { 0, "Not valid Turbulence" },
+ { 1, "Valid Turbulence" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_MET_TRB = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_MET_TRB, NULL };
+static int hf_062_V1_17_380_MET_WSD = -1;
+static const FieldPart I062_V1_17_380_MET_WSD = { 16, 1.0, FIELD_PART_UFLOAT, &hf_062_V1_17_380_MET_WSD, NULL };
+static int hf_062_V1_17_380_MET_WDD = -1;
+static const FieldPart I062_V1_17_380_MET_WDD = { 16, 1.0, FIELD_PART_UFLOAT, &hf_062_V1_17_380_MET_WDD, NULL };
+static int hf_062_V1_17_380_MET_TMPD = -1;
+static const FieldPart I062_V1_17_380_MET_TMPD = { 16, 0.25, FIELD_PART_FLOAT, &hf_062_V1_17_380_MET_TMPD, NULL };
+static int hf_062_V1_17_380_MET_TRBD = -1;
+static const FieldPart I062_V1_17_380_MET_TRBD = { 8, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_MET_TRBD, NULL };
+static const FieldPart *I062_V1_17_380_MET_PARTS[] = {
+ &I062_V1_17_380_MET_WS,
+ &I062_V1_17_380_MET_WD,
+ &I062_V1_17_380_MET_TMP,
+ &I062_V1_17_380_MET_TRB,
+ &IXXX_4bit_spare,
+ &I062_V1_17_380_MET_WSD,
+ &I062_V1_17_380_MET_WDD,
+ &I062_V1_17_380_MET_TMPD,
+ &I062_V1_17_380_MET_TRBD,
+ NULL
+};
+static const AsterixField I062_V1_17_380_MET = { FIXED, 8, 0, 0, &hf_062_V1_17_380_MET, I062_V1_17_380_MET_PARTS, { NULL } };
+static int hf_062_V1_17_380_EMC = -1;
+static int hf_062_V1_17_380_EMC_VALUE = -1;
+static const value_string valstr_062_V1_17_380_EMC_VALUE[] = {
+ { 1, "Light aircraft =< 7000 kg" },
+ { 2, "Reserved" },
+ { 3, "7000 kg < medium aircraft < 136000 kg" },
+ { 4, "Reserved" },
+ { 5, "136000 kg <= heavy aircraft" },
+ { 6, "Highly manoeuvrable (5g acceleration capability) and high speed (>400 knots cruise)" },
+ { 7, "Reserved" },
+ { 8, "Reserved" },
+ { 9, "Reserved" },
+ { 10, "Rotocraft" },
+ { 11, "Glider / sailplane" },
+ { 12, "Lighter-than-air" },
+ { 13, "Unmanned aerial vehicle" },
+ { 14, "Space / transatmospheric vehicle" },
+ { 15, "Ultralight / handglider / paraglider" },
+ { 16, "Parachutist / skydiver" },
+ { 17, "Reserved" },
+ { 18, "Reserved" },
+ { 19, "Reserved" },
+ { 20, "Surface emergency vehicle" },
+ { 21, "Surface service vehicle" },
+ { 22, "Fixed ground or tethered obstruction" },
+ { 23, "Reserved" },
+ { 24, "Reserved" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_380_EMC_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_062_V1_17_380_EMC_VALUE, NULL };
+static const FieldPart *I062_V1_17_380_EMC_PARTS[] = {
+ &I062_V1_17_380_EMC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_380_EMC = { FIXED, 1, 0, 0, &hf_062_V1_17_380_EMC, I062_V1_17_380_EMC_PARTS, { NULL } };
+static int hf_062_V1_17_380_POS = -1;
+static int hf_062_V1_17_380_POS_LAT = -1;
+static const FieldPart I062_V1_17_380_POS_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_V1_17_380_POS_LAT, NULL };
+static int hf_062_V1_17_380_POS_LON = -1;
+static const FieldPart I062_V1_17_380_POS_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_V1_17_380_POS_LON, NULL };
+static const FieldPart *I062_V1_17_380_POS_PARTS[] = {
+ &I062_V1_17_380_POS_LAT,
+ &I062_V1_17_380_POS_LON,
+ NULL
+};
+static const AsterixField I062_V1_17_380_POS = { FIXED, 6, 0, 0, &hf_062_V1_17_380_POS, I062_V1_17_380_POS_PARTS, { NULL } };
+static int hf_062_V1_17_380_GAL = -1;
+static int hf_062_V1_17_380_GAL_VALUE = -1;
+static const FieldPart I062_V1_17_380_GAL_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_062_V1_17_380_GAL_VALUE, NULL };
+static const FieldPart *I062_V1_17_380_GAL_PARTS[] = {
+ &I062_V1_17_380_GAL_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_380_GAL = { FIXED, 2, 0, 0, &hf_062_V1_17_380_GAL, I062_V1_17_380_GAL_PARTS, { NULL } };
+static int hf_062_V1_17_380_PUN = -1;
+static int hf_062_V1_17_380_PUN_PUN = -1;
+static const FieldPart I062_V1_17_380_PUN_PUN = { 4, 1.0, FIELD_PART_HEX, &hf_062_V1_17_380_PUN_PUN, NULL };
+static const FieldPart *I062_V1_17_380_PUN_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I062_V1_17_380_PUN_PUN,
+ NULL
+};
+static const AsterixField I062_V1_17_380_PUN = { FIXED, 1, 0, 0, &hf_062_V1_17_380_PUN, I062_V1_17_380_PUN_PARTS, { NULL } };
+static int hf_062_V1_17_380_MB = -1;
+static int hf_062_V1_17_380_MB_VALUE = -1;
+static const FieldPart I062_V1_17_380_MB_VALUE = { 64, 1.0, FIELD_PART_HEX, &hf_062_V1_17_380_MB_VALUE, NULL };
+static const FieldPart *I062_V1_17_380_MB_PARTS[] = {
+ &I062_V1_17_380_MB_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_380_MB = { REPETITIVE, 8, 1, 0, &hf_062_V1_17_380_MB, I062_V1_17_380_MB_PARTS, { NULL } };
+static int hf_062_V1_17_380_IAR = -1;
+static int hf_062_V1_17_380_IAR_VALUE = -1;
+static const FieldPart I062_V1_17_380_IAR_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_062_V1_17_380_IAR_VALUE, NULL };
+static const FieldPart *I062_V1_17_380_IAR_PARTS[] = {
+ &I062_V1_17_380_IAR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_380_IAR = { FIXED, 2, 0, 0, &hf_062_V1_17_380_IAR, I062_V1_17_380_IAR_PARTS, { NULL } };
+static int hf_062_V1_17_380_MAC = -1;
+static int hf_062_V1_17_380_MAC_VALUE = -1;
+static const FieldPart I062_V1_17_380_MAC_VALUE = { 16, 0.008, FIELD_PART_UFLOAT, &hf_062_V1_17_380_MAC_VALUE, NULL };
+static const FieldPart *I062_V1_17_380_MAC_PARTS[] = {
+ &I062_V1_17_380_MAC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_380_MAC = { FIXED, 2, 0, 0, &hf_062_V1_17_380_MAC, I062_V1_17_380_MAC_PARTS, { NULL } };
+static int hf_062_V1_17_380_BPS = -1;
+static int hf_062_V1_17_380_BPS_BPS = -1;
+static const FieldPart I062_V1_17_380_BPS_BPS = { 12, 0.1, FIELD_PART_UFLOAT, &hf_062_V1_17_380_BPS_BPS, NULL };
+static const FieldPart *I062_V1_17_380_BPS_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I062_V1_17_380_BPS_BPS,
+ NULL
+};
+static const AsterixField I062_V1_17_380_BPS = { FIXED, 2, 0, 0, &hf_062_V1_17_380_BPS, I062_V1_17_380_BPS_PARTS, { NULL } };
+static const AsterixField I062_V1_17_380 = { COMPOUND, 0, 0, 0, &hf_062_V1_17_380, NULL, { &I062_V1_17_380_ADR, &I062_V1_17_380_ID, &I062_V1_17_380_MHG, &I062_V1_17_380_IAS, &I062_V1_17_380_TAS, &I062_V1_17_380_SAL, &I062_V1_17_380_FSS, &I062_V1_17_380_TIS, &I062_V1_17_380_TID, &I062_V1_17_380_COM, &I062_V1_17_380_SAB, &I062_V1_17_380_ACS, &I062_V1_17_380_BVR, &I062_V1_17_380_GVR, &I062_V1_17_380_RAN, &I062_V1_17_380_TAR, &I062_V1_17_380_TAN, &I062_V1_17_380_GS, &I062_V1_17_380_VUN, &I062_V1_17_380_MET, &I062_V1_17_380_EMC, &I062_V1_17_380_POS, &I062_V1_17_380_GAL, &I062_V1_17_380_PUN, &I062_V1_17_380_MB, &I062_V1_17_380_IAR, &I062_V1_17_380_MAC, &I062_V1_17_380_BPS, NULL } };
+static int hf_062_V1_17_390 = -1;
+static int hf_062_V1_17_390_TAG = -1;
+static int hf_062_V1_17_390_TAG_SAC = -1;
+static const FieldPart I062_V1_17_390_TAG_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_17_390_TAG_SAC, NULL };
+static int hf_062_V1_17_390_TAG_SIC = -1;
+static const FieldPart I062_V1_17_390_TAG_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_17_390_TAG_SIC, NULL };
+static const FieldPart *I062_V1_17_390_TAG_PARTS[] = {
+ &I062_V1_17_390_TAG_SAC,
+ &I062_V1_17_390_TAG_SIC,
+ NULL
+};
+static const AsterixField I062_V1_17_390_TAG = { FIXED, 2, 0, 0, &hf_062_V1_17_390_TAG, I062_V1_17_390_TAG_PARTS, { NULL } };
+static int hf_062_V1_17_390_CS = -1;
+static int hf_062_V1_17_390_CS_VALUE = -1;
+static const FieldPart I062_V1_17_390_CS_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_062_V1_17_390_CS_VALUE, NULL };
+static const FieldPart *I062_V1_17_390_CS_PARTS[] = {
+ &I062_V1_17_390_CS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_390_CS = { FIXED, 7, 0, 0, &hf_062_V1_17_390_CS, I062_V1_17_390_CS_PARTS, { NULL } };
+static int hf_062_V1_17_390_IFI = -1;
+static int hf_062_V1_17_390_IFI_TYP = -1;
+static const value_string valstr_062_V1_17_390_IFI_TYP[] = {
+ { 0, "Plan Number" },
+ { 1, "Unit 1 internal flight number" },
+ { 2, "Unit 2 internal flight number" },
+ { 3, "Unit 3 internal flight number" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_390_IFI_TYP = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_17_390_IFI_TYP, NULL };
+static int hf_062_V1_17_390_IFI_NBR = -1;
+static const FieldPart I062_V1_17_390_IFI_NBR = { 27, 1.0, FIELD_PART_UINT, &hf_062_V1_17_390_IFI_NBR, NULL };
+static const FieldPart *I062_V1_17_390_IFI_PARTS[] = {
+ &I062_V1_17_390_IFI_TYP,
+ &IXXX_3bit_spare,
+ &I062_V1_17_390_IFI_NBR,
+ NULL
+};
+static const AsterixField I062_V1_17_390_IFI = { FIXED, 4, 0, 0, &hf_062_V1_17_390_IFI, I062_V1_17_390_IFI_PARTS, { NULL } };
+static int hf_062_V1_17_390_FCT = -1;
+static int hf_062_V1_17_390_FCT_GATOAT = -1;
+static const value_string valstr_062_V1_17_390_FCT_GATOAT[] = {
+ { 0, "Unknown" },
+ { 1, "General Air Traffic" },
+ { 2, "Operational Air Traffic" },
+ { 3, "Not applicable" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_390_FCT_GATOAT = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_17_390_FCT_GATOAT, NULL };
+static int hf_062_V1_17_390_FCT_FR1FR2 = -1;
+static const value_string valstr_062_V1_17_390_FCT_FR1FR2[] = {
+ { 0, "Instrument Flight Rules" },
+ { 1, "Visual Flight Rules" },
+ { 2, "Not applicable" },
+ { 3, "Controlled Visual Flight Rules" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_390_FCT_FR1FR2 = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_17_390_FCT_FR1FR2, NULL };
+static int hf_062_V1_17_390_FCT_RVSM = -1;
+static const value_string valstr_062_V1_17_390_FCT_RVSM[] = {
+ { 0, "Unknown" },
+ { 1, "Approved" },
+ { 2, "Exempt" },
+ { 3, "Not Approved" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_390_FCT_RVSM = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_17_390_FCT_RVSM, NULL };
+static int hf_062_V1_17_390_FCT_HPR = -1;
+static const value_string valstr_062_V1_17_390_FCT_HPR[] = {
+ { 0, "Normal Priority Flight" },
+ { 1, "High Priority Flight" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_390_FCT_HPR = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_390_FCT_HPR, NULL };
+static const FieldPart *I062_V1_17_390_FCT_PARTS[] = {
+ &I062_V1_17_390_FCT_GATOAT,
+ &I062_V1_17_390_FCT_FR1FR2,
+ &I062_V1_17_390_FCT_RVSM,
+ &I062_V1_17_390_FCT_HPR,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I062_V1_17_390_FCT = { FIXED, 1, 0, 0, &hf_062_V1_17_390_FCT, I062_V1_17_390_FCT_PARTS, { NULL } };
+static int hf_062_V1_17_390_TAC = -1;
+static int hf_062_V1_17_390_TAC_VALUE = -1;
+static const FieldPart I062_V1_17_390_TAC_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_062_V1_17_390_TAC_VALUE, NULL };
+static const FieldPart *I062_V1_17_390_TAC_PARTS[] = {
+ &I062_V1_17_390_TAC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_390_TAC = { FIXED, 4, 0, 0, &hf_062_V1_17_390_TAC, I062_V1_17_390_TAC_PARTS, { NULL } };
+static int hf_062_V1_17_390_WTC = -1;
+static int hf_062_V1_17_390_WTC_VALUE = -1;
+static const FieldPart I062_V1_17_390_WTC_VALUE = { 8, 1.0, FIELD_PART_ASCII, &hf_062_V1_17_390_WTC_VALUE, NULL };
+static const FieldPart *I062_V1_17_390_WTC_PARTS[] = {
+ &I062_V1_17_390_WTC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_390_WTC = { FIXED, 1, 0, 0, &hf_062_V1_17_390_WTC, I062_V1_17_390_WTC_PARTS, { NULL } };
+static int hf_062_V1_17_390_DEP = -1;
+static int hf_062_V1_17_390_DEP_VALUE = -1;
+static const FieldPart I062_V1_17_390_DEP_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_062_V1_17_390_DEP_VALUE, NULL };
+static const FieldPart *I062_V1_17_390_DEP_PARTS[] = {
+ &I062_V1_17_390_DEP_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_390_DEP = { FIXED, 4, 0, 0, &hf_062_V1_17_390_DEP, I062_V1_17_390_DEP_PARTS, { NULL } };
+static int hf_062_V1_17_390_DST = -1;
+static int hf_062_V1_17_390_DST_VALUE = -1;
+static const FieldPart I062_V1_17_390_DST_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_062_V1_17_390_DST_VALUE, NULL };
+static const FieldPart *I062_V1_17_390_DST_PARTS[] = {
+ &I062_V1_17_390_DST_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_390_DST = { FIXED, 4, 0, 0, &hf_062_V1_17_390_DST, I062_V1_17_390_DST_PARTS, { NULL } };
+static int hf_062_V1_17_390_RDS = -1;
+static int hf_062_V1_17_390_RDS_NU1 = -1;
+static const FieldPart I062_V1_17_390_RDS_NU1 = { 8, 1.0, FIELD_PART_ASCII, &hf_062_V1_17_390_RDS_NU1, NULL };
+static int hf_062_V1_17_390_RDS_NU2 = -1;
+static const FieldPart I062_V1_17_390_RDS_NU2 = { 8, 1.0, FIELD_PART_ASCII, &hf_062_V1_17_390_RDS_NU2, NULL };
+static int hf_062_V1_17_390_RDS_LTR = -1;
+static const FieldPart I062_V1_17_390_RDS_LTR = { 8, 1.0, FIELD_PART_ASCII, &hf_062_V1_17_390_RDS_LTR, NULL };
+static const FieldPart *I062_V1_17_390_RDS_PARTS[] = {
+ &I062_V1_17_390_RDS_NU1,
+ &I062_V1_17_390_RDS_NU2,
+ &I062_V1_17_390_RDS_LTR,
+ NULL
+};
+static const AsterixField I062_V1_17_390_RDS = { FIXED, 3, 0, 0, &hf_062_V1_17_390_RDS, I062_V1_17_390_RDS_PARTS, { NULL } };
+static int hf_062_V1_17_390_CFL = -1;
+static int hf_062_V1_17_390_CFL_VALUE = -1;
+static const FieldPart I062_V1_17_390_CFL_VALUE = { 16, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_390_CFL_VALUE, NULL };
+static const FieldPart *I062_V1_17_390_CFL_PARTS[] = {
+ &I062_V1_17_390_CFL_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_390_CFL = { FIXED, 2, 0, 0, &hf_062_V1_17_390_CFL, I062_V1_17_390_CFL_PARTS, { NULL } };
+static int hf_062_V1_17_390_CTL = -1;
+static int hf_062_V1_17_390_CTL_CENTRE = -1;
+static const FieldPart I062_V1_17_390_CTL_CENTRE = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_17_390_CTL_CENTRE, NULL };
+static int hf_062_V1_17_390_CTL_POSITION = -1;
+static const FieldPart I062_V1_17_390_CTL_POSITION = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_17_390_CTL_POSITION, NULL };
+static const FieldPart *I062_V1_17_390_CTL_PARTS[] = {
+ &I062_V1_17_390_CTL_CENTRE,
+ &I062_V1_17_390_CTL_POSITION,
+ NULL
+};
+static const AsterixField I062_V1_17_390_CTL = { FIXED, 2, 0, 0, &hf_062_V1_17_390_CTL, I062_V1_17_390_CTL_PARTS, { NULL } };
+static int hf_062_V1_17_390_TOD = -1;
+static int hf_062_V1_17_390_TOD_TYP = -1;
+static const value_string valstr_062_V1_17_390_TOD_TYP[] = {
+ { 0, "Scheduled off-block time" },
+ { 1, "Estimated off-block time" },
+ { 2, "Estimated take-off time" },
+ { 3, "Actual off-block time" },
+ { 4, "Predicted time at runway hold" },
+ { 5, "Actual time at runway hold" },
+ { 6, "Actual line-up time" },
+ { 7, "Actual take-off time" },
+ { 8, "Estimated time of arrival" },
+ { 9, "Predicted landing time" },
+ { 10, "Actual landing time" },
+ { 11, "Actual time off runway" },
+ { 12, "Predicted time to gate" },
+ { 13, "Actual on-block time" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_390_TOD_TYP = { 5, 1.0, FIELD_PART_UINT, &hf_062_V1_17_390_TOD_TYP, NULL };
+static int hf_062_V1_17_390_TOD_DAY = -1;
+static const value_string valstr_062_V1_17_390_TOD_DAY[] = {
+ { 0, "Today" },
+ { 1, "Yesterday" },
+ { 2, "Tomorrow" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_390_TOD_DAY = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_17_390_TOD_DAY, NULL };
+static int hf_062_V1_17_390_TOD_HOR = -1;
+static const FieldPart I062_V1_17_390_TOD_HOR = { 5, 1.0, FIELD_PART_UINT, &hf_062_V1_17_390_TOD_HOR, NULL };
+static int hf_062_V1_17_390_TOD_MIN = -1;
+static const FieldPart I062_V1_17_390_TOD_MIN = { 6, 1.0, FIELD_PART_UINT, &hf_062_V1_17_390_TOD_MIN, NULL };
+static int hf_062_V1_17_390_TOD_AVS = -1;
+static const value_string valstr_062_V1_17_390_TOD_AVS[] = {
+ { 0, "Seconds available" },
+ { 1, "Seconds not available" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_390_TOD_AVS = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_390_TOD_AVS, NULL };
+static int hf_062_V1_17_390_TOD_SEC = -1;
+static const FieldPart I062_V1_17_390_TOD_SEC = { 6, 1.0, FIELD_PART_UINT, &hf_062_V1_17_390_TOD_SEC, NULL };
+static const FieldPart *I062_V1_17_390_TOD_PARTS[] = {
+ &I062_V1_17_390_TOD_TYP,
+ &I062_V1_17_390_TOD_DAY,
+ &IXXX_4bit_spare,
+ &I062_V1_17_390_TOD_HOR,
+ &IXXX_2bit_spare,
+ &I062_V1_17_390_TOD_MIN,
+ &I062_V1_17_390_TOD_AVS,
+ &IXXX_1bit_spare,
+ &I062_V1_17_390_TOD_SEC,
+ NULL
+};
+static const AsterixField I062_V1_17_390_TOD = { REPETITIVE, 4, 1, 0, &hf_062_V1_17_390_TOD, I062_V1_17_390_TOD_PARTS, { NULL } };
+static int hf_062_V1_17_390_AST = -1;
+static int hf_062_V1_17_390_AST_VALUE = -1;
+static const FieldPart I062_V1_17_390_AST_VALUE = { 48, 1.0, FIELD_PART_ASCII, &hf_062_V1_17_390_AST_VALUE, NULL };
+static const FieldPart *I062_V1_17_390_AST_PARTS[] = {
+ &I062_V1_17_390_AST_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_390_AST = { FIXED, 6, 0, 0, &hf_062_V1_17_390_AST, I062_V1_17_390_AST_PARTS, { NULL } };
+static int hf_062_V1_17_390_STS = -1;
+static int hf_062_V1_17_390_STS_EMP = -1;
+static const value_string valstr_062_V1_17_390_STS_EMP[] = {
+ { 0, "Empty" },
+ { 1, "Occupied" },
+ { 2, "Unknown" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_390_STS_EMP = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_17_390_STS_EMP, NULL };
+static int hf_062_V1_17_390_STS_AVL = -1;
+static const value_string valstr_062_V1_17_390_STS_AVL[] = {
+ { 0, "Available" },
+ { 1, "Not available" },
+ { 2, "Unknown" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_390_STS_AVL = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_17_390_STS_AVL, NULL };
+static const FieldPart *I062_V1_17_390_STS_PARTS[] = {
+ &I062_V1_17_390_STS_EMP,
+ &I062_V1_17_390_STS_AVL,
+ &IXXX_4bit_spare,
+ NULL
+};
+static const AsterixField I062_V1_17_390_STS = { FIXED, 1, 0, 0, &hf_062_V1_17_390_STS, I062_V1_17_390_STS_PARTS, { NULL } };
+static int hf_062_V1_17_390_STD = -1;
+static int hf_062_V1_17_390_STD_VALUE = -1;
+static const FieldPart I062_V1_17_390_STD_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_062_V1_17_390_STD_VALUE, NULL };
+static const FieldPart *I062_V1_17_390_STD_PARTS[] = {
+ &I062_V1_17_390_STD_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_390_STD = { FIXED, 7, 0, 0, &hf_062_V1_17_390_STD, I062_V1_17_390_STD_PARTS, { NULL } };
+static int hf_062_V1_17_390_STA = -1;
+static int hf_062_V1_17_390_STA_VALUE = -1;
+static const FieldPart I062_V1_17_390_STA_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_062_V1_17_390_STA_VALUE, NULL };
+static const FieldPart *I062_V1_17_390_STA_PARTS[] = {
+ &I062_V1_17_390_STA_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_390_STA = { FIXED, 7, 0, 0, &hf_062_V1_17_390_STA, I062_V1_17_390_STA_PARTS, { NULL } };
+static int hf_062_V1_17_390_PEM = -1;
+static int hf_062_V1_17_390_PEM_VA = -1;
+static const value_string valstr_062_V1_17_390_PEM_VA[] = {
+ { 0, "No valid Mode 3/A available" },
+ { 1, "Valid Mode 3/A available" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_17_390_PEM_VA = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_17_390_PEM_VA, NULL };
+static int hf_062_V1_17_390_PEM_MODE3A = -1;
+static const FieldPart I062_V1_17_390_PEM_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_062_V1_17_390_PEM_MODE3A, NULL };
+static const FieldPart *I062_V1_17_390_PEM_PARTS[] = {
+ &IXXX_3bit_spare,
+ &I062_V1_17_390_PEM_VA,
+ &I062_V1_17_390_PEM_MODE3A,
+ NULL
+};
+static const AsterixField I062_V1_17_390_PEM = { FIXED, 2, 0, 0, &hf_062_V1_17_390_PEM, I062_V1_17_390_PEM_PARTS, { NULL } };
+static int hf_062_V1_17_390_PEC = -1;
+static int hf_062_V1_17_390_PEC_VALUE = -1;
+static const FieldPart I062_V1_17_390_PEC_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_062_V1_17_390_PEC_VALUE, NULL };
+static const FieldPart *I062_V1_17_390_PEC_PARTS[] = {
+ &I062_V1_17_390_PEC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_390_PEC = { FIXED, 7, 0, 0, &hf_062_V1_17_390_PEC, I062_V1_17_390_PEC_PARTS, { NULL } };
+static const AsterixField I062_V1_17_390 = { COMPOUND, 0, 0, 0, &hf_062_V1_17_390, NULL, { &I062_V1_17_390_TAG, &I062_V1_17_390_CS, &I062_V1_17_390_IFI, &I062_V1_17_390_FCT, &I062_V1_17_390_TAC, &I062_V1_17_390_WTC, &I062_V1_17_390_DEP, &I062_V1_17_390_DST, &I062_V1_17_390_RDS, &I062_V1_17_390_CFL, &I062_V1_17_390_CTL, &I062_V1_17_390_TOD, &I062_V1_17_390_AST, &I062_V1_17_390_STS, &I062_V1_17_390_STD, &I062_V1_17_390_STA, &I062_V1_17_390_PEM, &I062_V1_17_390_PEC, NULL } };
+static int hf_062_V1_17_500 = -1;
+static int hf_062_V1_17_500_APC = -1;
+static int hf_062_V1_17_500_APC_X = -1;
+static const FieldPart I062_V1_17_500_APC_X = { 16, 0.5, FIELD_PART_UFLOAT, &hf_062_V1_17_500_APC_X, NULL };
+static int hf_062_V1_17_500_APC_Y = -1;
+static const FieldPart I062_V1_17_500_APC_Y = { 16, 0.5, FIELD_PART_UFLOAT, &hf_062_V1_17_500_APC_Y, NULL };
+static const FieldPart *I062_V1_17_500_APC_PARTS[] = {
+ &I062_V1_17_500_APC_X,
+ &I062_V1_17_500_APC_Y,
+ NULL
+};
+static const AsterixField I062_V1_17_500_APC = { FIXED, 4, 0, 0, &hf_062_V1_17_500_APC, I062_V1_17_500_APC_PARTS, { NULL } };
+static int hf_062_V1_17_500_COV = -1;
+static int hf_062_V1_17_500_COV_VALUE = -1;
+static const FieldPart I062_V1_17_500_COV_VALUE = { 16, 0.5, FIELD_PART_FLOAT, &hf_062_V1_17_500_COV_VALUE, NULL };
+static const FieldPart *I062_V1_17_500_COV_PARTS[] = {
+ &I062_V1_17_500_COV_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_500_COV = { FIXED, 2, 0, 0, &hf_062_V1_17_500_COV, I062_V1_17_500_COV_PARTS, { NULL } };
+static int hf_062_V1_17_500_APW = -1;
+static int hf_062_V1_17_500_APW_LAT = -1;
+static const FieldPart I062_V1_17_500_APW_LAT = { 16, 0.00000536441802978515625, FIELD_PART_UFLOAT, &hf_062_V1_17_500_APW_LAT, NULL };
+static int hf_062_V1_17_500_APW_LON = -1;
+static const FieldPart I062_V1_17_500_APW_LON = { 16, 0.00000536441802978515625, FIELD_PART_UFLOAT, &hf_062_V1_17_500_APW_LON, NULL };
+static const FieldPart *I062_V1_17_500_APW_PARTS[] = {
+ &I062_V1_17_500_APW_LAT,
+ &I062_V1_17_500_APW_LON,
+ NULL
+};
+static const AsterixField I062_V1_17_500_APW = { FIXED, 4, 0, 0, &hf_062_V1_17_500_APW, I062_V1_17_500_APW_PARTS, { NULL } };
+static int hf_062_V1_17_500_AGA = -1;
+static int hf_062_V1_17_500_AGA_VALUE = -1;
+static const FieldPart I062_V1_17_500_AGA_VALUE = { 8, 6.25, FIELD_PART_UFLOAT, &hf_062_V1_17_500_AGA_VALUE, NULL };
+static const FieldPart *I062_V1_17_500_AGA_PARTS[] = {
+ &I062_V1_17_500_AGA_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_500_AGA = { FIXED, 1, 0, 0, &hf_062_V1_17_500_AGA, I062_V1_17_500_AGA_PARTS, { NULL } };
+static int hf_062_V1_17_500_ABA = -1;
+static int hf_062_V1_17_500_ABA_VALUE = -1;
+static const FieldPart I062_V1_17_500_ABA_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_500_ABA_VALUE, NULL };
+static const FieldPart *I062_V1_17_500_ABA_PARTS[] = {
+ &I062_V1_17_500_ABA_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_500_ABA = { FIXED, 1, 0, 0, &hf_062_V1_17_500_ABA, I062_V1_17_500_ABA_PARTS, { NULL } };
+static int hf_062_V1_17_500_ATV = -1;
+static int hf_062_V1_17_500_ATV_X = -1;
+static const FieldPart I062_V1_17_500_ATV_X = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_500_ATV_X, NULL };
+static int hf_062_V1_17_500_ATV_Y = -1;
+static const FieldPart I062_V1_17_500_ATV_Y = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_500_ATV_Y, NULL };
+static const FieldPart *I062_V1_17_500_ATV_PARTS[] = {
+ &I062_V1_17_500_ATV_X,
+ &I062_V1_17_500_ATV_Y,
+ NULL
+};
+static const AsterixField I062_V1_17_500_ATV = { FIXED, 2, 0, 0, &hf_062_V1_17_500_ATV, I062_V1_17_500_ATV_PARTS, { NULL } };
+static int hf_062_V1_17_500_AA = -1;
+static int hf_062_V1_17_500_AA_X = -1;
+static const FieldPart I062_V1_17_500_AA_X = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_500_AA_X, NULL };
+static int hf_062_V1_17_500_AA_Y = -1;
+static const FieldPart I062_V1_17_500_AA_Y = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_17_500_AA_Y, NULL };
+static const FieldPart *I062_V1_17_500_AA_PARTS[] = {
+ &I062_V1_17_500_AA_X,
+ &I062_V1_17_500_AA_Y,
+ NULL
+};
+static const AsterixField I062_V1_17_500_AA = { FIXED, 2, 0, 0, &hf_062_V1_17_500_AA, I062_V1_17_500_AA_PARTS, { NULL } };
+static int hf_062_V1_17_500_ARC = -1;
+static int hf_062_V1_17_500_ARC_VALUE = -1;
+static const FieldPart I062_V1_17_500_ARC_VALUE = { 8, 6.25, FIELD_PART_UFLOAT, &hf_062_V1_17_500_ARC_VALUE, NULL };
+static const FieldPart *I062_V1_17_500_ARC_PARTS[] = {
+ &I062_V1_17_500_ARC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_17_500_ARC = { FIXED, 1, 0, 0, &hf_062_V1_17_500_ARC, I062_V1_17_500_ARC_PARTS, { NULL } };
+static const AsterixField I062_V1_17_500 = { COMPOUND, 0, 0, 0, &hf_062_V1_17_500, NULL, { &I062_V1_17_500_APC, &I062_V1_17_500_COV, &I062_V1_17_500_APW, &I062_V1_17_500_AGA, &I062_V1_17_500_ABA, &I062_V1_17_500_ATV, &I062_V1_17_500_AA, &I062_V1_17_500_ARC, NULL } };
+static int hf_062_V1_17_510 = -1;
+static int hf_062_V1_17_510_MIDENT = -1;
+static const FieldPart I062_V1_17_510_MIDENT = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_17_510_MIDENT, NULL };
+static int hf_062_V1_17_510_MTRACK = -1;
+static const FieldPart I062_V1_17_510_MTRACK = { 15, 1.0, FIELD_PART_HEX, &hf_062_V1_17_510_MTRACK, NULL };
+static int hf_062_V1_17_510_SIDENT = -1;
+static const FieldPart I062_V1_17_510_SIDENT = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_17_510_SIDENT, NULL };
+static int hf_062_V1_17_510_STRACK = -1;
+static const FieldPart I062_V1_17_510_STRACK = { 15, 1.0, FIELD_PART_HEX, &hf_062_V1_17_510_STRACK, NULL };
+static const FieldPart *I062_V1_17_510_PARTS[] = {
+ &I062_V1_17_510_MIDENT,
+ &I062_V1_17_510_MTRACK,
+ &IXXX_FX,
+ &I062_V1_17_510_SIDENT,
+ &I062_V1_17_510_STRACK,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I062_V1_17_510 = { FX, 3, 0, 0, &hf_062_V1_17_510, I062_V1_17_510_PARTS, { NULL } };
+static int hf_062_V1_17_RE = -1;
+static const AsterixField I062_V1_17_RE = { EXP, 0, 0, 1, &hf_062_V1_17_RE, NULL, { NULL } };
+static int hf_062_V1_17_SP = -1;
+static const AsterixField I062_V1_17_SP = { EXP, 0, 0, 1, &hf_062_V1_17_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I062_V1_17_uap[] = {
+ &I062_V1_17_010,
+ &IX_SPARE,
+ &I062_V1_17_015,
+ &I062_V1_17_070,
+ &I062_V1_17_105,
+ &I062_V1_17_100,
+ &I062_V1_17_185,
+ &I062_V1_17_210,
+ &I062_V1_17_060,
+ &I062_V1_17_245,
+ &I062_V1_17_380,
+ &I062_V1_17_040,
+ &I062_V1_17_080,
+ &I062_V1_17_290,
+ &I062_V1_17_200,
+ &I062_V1_17_295,
+ &I062_V1_17_136,
+ &I062_V1_17_130,
+ &I062_V1_17_135,
+ &I062_V1_17_220,
+ &I062_V1_17_390,
+ &I062_V1_17_270,
+ &I062_V1_17_300,
+ &I062_V1_17_110,
+ &I062_V1_17_120,
+ &I062_V1_17_510,
+ &I062_V1_17_500,
+ &I062_V1_17_340,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I062_V1_17_RE,
+ &I062_V1_17_SP,
+ NULL
+};
+static const AsterixField **I062_V1_17[] = {
+ I062_V1_17_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 062, edition 1.18 */
+static int hf_062_V1_18_010 = -1;
+static int hf_062_V1_18_010_SAC = -1;
+static const FieldPart I062_V1_18_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_18_010_SAC, NULL };
+static int hf_062_V1_18_010_SIC = -1;
+static const FieldPart I062_V1_18_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_18_010_SIC, NULL };
+static const FieldPart *I062_V1_18_010_PARTS[] = {
+ &I062_V1_18_010_SAC,
+ &I062_V1_18_010_SIC,
+ NULL
+};
+static const AsterixField I062_V1_18_010 = { FIXED, 2, 0, 0, &hf_062_V1_18_010, I062_V1_18_010_PARTS, { NULL } };
+static int hf_062_V1_18_015 = -1;
+static int hf_062_V1_18_015_VALUE = -1;
+static const FieldPart I062_V1_18_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_18_015_VALUE, NULL };
+static const FieldPart *I062_V1_18_015_PARTS[] = {
+ &I062_V1_18_015_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_015 = { FIXED, 1, 0, 0, &hf_062_V1_18_015, I062_V1_18_015_PARTS, { NULL } };
+static int hf_062_V1_18_040 = -1;
+static int hf_062_V1_18_040_VALUE = -1;
+static const FieldPart I062_V1_18_040_VALUE = { 16, 1.0, FIELD_PART_HEX, &hf_062_V1_18_040_VALUE, NULL };
+static const FieldPart *I062_V1_18_040_PARTS[] = {
+ &I062_V1_18_040_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_040 = { FIXED, 2, 0, 0, &hf_062_V1_18_040, I062_V1_18_040_PARTS, { NULL } };
+static int hf_062_V1_18_060 = -1;
+static int hf_062_V1_18_060_V = -1;
+static const value_string valstr_062_V1_18_060_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_060_V = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_060_V, NULL };
+static int hf_062_V1_18_060_G = -1;
+static const value_string valstr_062_V1_18_060_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_060_G = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_060_G, NULL };
+static int hf_062_V1_18_060_CH = -1;
+static const value_string valstr_062_V1_18_060_CH[] = {
+ { 0, "No change" },
+ { 1, "Mode 3/A has changed" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_060_CH = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_060_CH, NULL };
+static int hf_062_V1_18_060_MODE3A = -1;
+static const FieldPart I062_V1_18_060_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_062_V1_18_060_MODE3A, NULL };
+static const FieldPart *I062_V1_18_060_PARTS[] = {
+ &I062_V1_18_060_V,
+ &I062_V1_18_060_G,
+ &I062_V1_18_060_CH,
+ &IXXX_1bit_spare,
+ &I062_V1_18_060_MODE3A,
+ NULL
+};
+static const AsterixField I062_V1_18_060 = { FIXED, 2, 0, 0, &hf_062_V1_18_060, I062_V1_18_060_PARTS, { NULL } };
+static int hf_062_V1_18_070 = -1;
+static int hf_062_V1_18_070_VALUE = -1;
+static const FieldPart I062_V1_18_070_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_062_V1_18_070_VALUE, NULL };
+static const FieldPart *I062_V1_18_070_PARTS[] = {
+ &I062_V1_18_070_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_070 = { FIXED, 3, 0, 0, &hf_062_V1_18_070, I062_V1_18_070_PARTS, { NULL } };
+static int hf_062_V1_18_080 = -1;
+static int hf_062_V1_18_080_MON = -1;
+static const value_string valstr_062_V1_18_080_MON[] = {
+ { 0, "Multisensor track" },
+ { 1, "Monosensor track" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_MON = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_MON, NULL };
+static int hf_062_V1_18_080_SPI = -1;
+static const value_string valstr_062_V1_18_080_SPI[] = {
+ { 0, "Default value" },
+ { 1, "SPI present in the last report received from a sensor capable of decoding this data" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_SPI, NULL };
+static int hf_062_V1_18_080_MRH = -1;
+static const value_string valstr_062_V1_18_080_MRH[] = {
+ { 0, "Barometric altitude (Mode C) more reliable" },
+ { 1, "Geometric altitude more reliable" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_MRH = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_MRH, NULL };
+static int hf_062_V1_18_080_SRC = -1;
+static const value_string valstr_062_V1_18_080_SRC[] = {
+ { 0, "No source" },
+ { 1, "GNSS" },
+ { 2, "3D radar" },
+ { 3, "Triangulation" },
+ { 4, "Height from coverage" },
+ { 5, "Speed look-up table" },
+ { 6, "Default height" },
+ { 7, "Multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_SRC = { 3, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_SRC, NULL };
+static int hf_062_V1_18_080_CNF = -1;
+static const value_string valstr_062_V1_18_080_CNF[] = {
+ { 0, "Confirmed track" },
+ { 1, "Tentative track" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_CNF = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_CNF, NULL };
+static int hf_062_V1_18_080_SIM = -1;
+static const value_string valstr_062_V1_18_080_SIM[] = {
+ { 0, "Actual track" },
+ { 1, "Simulated track" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_SIM, NULL };
+static int hf_062_V1_18_080_TSE = -1;
+static const value_string valstr_062_V1_18_080_TSE[] = {
+ { 0, "Default value" },
+ { 1, "Last message transmitted to the user for the track" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_TSE = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_TSE, NULL };
+static int hf_062_V1_18_080_TSB = -1;
+static const value_string valstr_062_V1_18_080_TSB[] = {
+ { 0, "Default value" },
+ { 1, "First message transmitted to the user for the track" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_TSB = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_TSB, NULL };
+static int hf_062_V1_18_080_FPC = -1;
+static const value_string valstr_062_V1_18_080_FPC[] = {
+ { 0, "Not flight-plan correlated" },
+ { 1, "Flight plan correlated" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_FPC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_FPC, NULL };
+static int hf_062_V1_18_080_AFF = -1;
+static const value_string valstr_062_V1_18_080_AFF[] = {
+ { 0, "Default value" },
+ { 1, "ADS-B data inconsistent with other surveillance information" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_AFF = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_AFF, NULL };
+static int hf_062_V1_18_080_STP = -1;
+static const value_string valstr_062_V1_18_080_STP[] = {
+ { 0, "Default value" },
+ { 1, "Slave Track Promotion" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_STP = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_STP, NULL };
+static int hf_062_V1_18_080_KOS = -1;
+static const value_string valstr_062_V1_18_080_KOS[] = {
+ { 0, "Complementary service used" },
+ { 1, "Background service used" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_KOS = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_KOS, NULL };
+static int hf_062_V1_18_080_AMA = -1;
+static const value_string valstr_062_V1_18_080_AMA[] = {
+ { 0, "Track not resulting from amalgamation process" },
+ { 1, "Track resulting from amalgamation process" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_AMA = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_AMA, NULL };
+static int hf_062_V1_18_080_MD4 = -1;
+static const value_string valstr_062_V1_18_080_MD4[] = {
+ { 0, "No Mode 4 interrogation" },
+ { 1, "Friendly target" },
+ { 2, "Unknown target" },
+ { 3, "No reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_MD4 = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_MD4, NULL };
+static int hf_062_V1_18_080_ME = -1;
+static const value_string valstr_062_V1_18_080_ME[] = {
+ { 0, "Default value" },
+ { 1, "Military Emergency present in the last report received from a sensor capable of decoding this data" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_ME = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_ME, NULL };
+static int hf_062_V1_18_080_MI = -1;
+static const value_string valstr_062_V1_18_080_MI[] = {
+ { 0, "Default value" },
+ { 1, "Military Identification present in the last report received from a sensor capable of decoding this data" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_MI = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_MI, NULL };
+static int hf_062_V1_18_080_MD5 = -1;
+static const value_string valstr_062_V1_18_080_MD5[] = {
+ { 0, "No Mode 5 interrogation" },
+ { 1, "Friendly target" },
+ { 2, "Unknown target" },
+ { 3, "No reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_MD5 = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_MD5, NULL };
+static int hf_062_V1_18_080_CST = -1;
+static const value_string valstr_062_V1_18_080_CST[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received track update is higher than system dependent threshold (coasting)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_CST = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_CST, NULL };
+static int hf_062_V1_18_080_PSR = -1;
+static const value_string valstr_062_V1_18_080_PSR[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received PSR track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_PSR = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_PSR, NULL };
+static int hf_062_V1_18_080_SSR = -1;
+static const value_string valstr_062_V1_18_080_SSR[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received SSR track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_SSR = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_SSR, NULL };
+static int hf_062_V1_18_080_MDS = -1;
+static const value_string valstr_062_V1_18_080_MDS[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received Mode S track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_MDS = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_MDS, NULL };
+static int hf_062_V1_18_080_ADS = -1;
+static const value_string valstr_062_V1_18_080_ADS[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received ADS-B track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_ADS = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_ADS, NULL };
+static int hf_062_V1_18_080_SUC = -1;
+static const value_string valstr_062_V1_18_080_SUC[] = {
+ { 0, "Default value" },
+ { 1, "Special Used Code (Mode A codes to be defined in the system to mark a track with special interest)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_SUC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_SUC, NULL };
+static int hf_062_V1_18_080_AAC = -1;
+static const value_string valstr_062_V1_18_080_AAC[] = {
+ { 0, "Default value" },
+ { 1, "Assigned Mode A Code Conflict (same discrete Mode A Code assigned to another track)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_AAC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_AAC, NULL };
+static int hf_062_V1_18_080_SDS = -1;
+static const value_string valstr_062_V1_18_080_SDS[] = {
+ { 0, "Combined" },
+ { 1, "Co-operative only" },
+ { 2, "Non-Cooperative only" },
+ { 3, "Not defined" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_SDS = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_SDS, NULL };
+static int hf_062_V1_18_080_EMS = -1;
+static const value_string valstr_062_V1_18_080_EMS[] = {
+ { 0, "No emergency" },
+ { 1, "General emergency" },
+ { 2, "Lifeguard / medical" },
+ { 3, "Minimum fuel" },
+ { 4, "No communications" },
+ { 5, "Unlawful interference" },
+ { 6, "Downed Aircraft" },
+ { 7, "Undefined" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_EMS = { 3, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_EMS, NULL };
+static int hf_062_V1_18_080_PFT = -1;
+static const value_string valstr_062_V1_18_080_PFT[] = {
+ { 0, "No indication" },
+ { 1, "Potential False Track Indication" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_PFT = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_PFT, NULL };
+static int hf_062_V1_18_080_FPLT = -1;
+static const value_string valstr_062_V1_18_080_FPLT[] = {
+ { 0, "Default value" },
+ { 1, "Track created / updated with FPL data" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_FPLT = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_FPLT, NULL };
+static int hf_062_V1_18_080_DUPT = -1;
+static const value_string valstr_062_V1_18_080_DUPT[] = {
+ { 0, "Default value" },
+ { 1, "Duplicate Mode 3/A Code" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_DUPT = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_DUPT, NULL };
+static int hf_062_V1_18_080_DUPF = -1;
+static const value_string valstr_062_V1_18_080_DUPF[] = {
+ { 0, "Default value" },
+ { 1, "Duplicate Flight Plan" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_DUPF = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_DUPF, NULL };
+static int hf_062_V1_18_080_DUPM = -1;
+static const value_string valstr_062_V1_18_080_DUPM[] = {
+ { 0, "Default value" },
+ { 1, "Duplicate Flight Plan due to manual correlation" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_DUPM = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_DUPM, NULL };
+static int hf_062_V1_18_080_SFC = -1;
+static const value_string valstr_062_V1_18_080_SFC[] = {
+ { 0, "Default value" },
+ { 1, "Surface target" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_SFC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_SFC, NULL };
+static int hf_062_V1_18_080_IDD = -1;
+static const value_string valstr_062_V1_18_080_IDD[] = {
+ { 0, "No indication" },
+ { 1, "Duplicate Flight-ID" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_IDD = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_IDD, NULL };
+static int hf_062_V1_18_080_IEC = -1;
+static const value_string valstr_062_V1_18_080_IEC[] = {
+ { 0, "Default value" },
+ { 1, "Inconsistent Emergency Code" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_080_IEC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_080_IEC, NULL };
+static const FieldPart *I062_V1_18_080_PARTS[] = {
+ &I062_V1_18_080_MON,
+ &I062_V1_18_080_SPI,
+ &I062_V1_18_080_MRH,
+ &I062_V1_18_080_SRC,
+ &I062_V1_18_080_CNF,
+ &IXXX_FX,
+ &I062_V1_18_080_SIM,
+ &I062_V1_18_080_TSE,
+ &I062_V1_18_080_TSB,
+ &I062_V1_18_080_FPC,
+ &I062_V1_18_080_AFF,
+ &I062_V1_18_080_STP,
+ &I062_V1_18_080_KOS,
+ &IXXX_FX,
+ &I062_V1_18_080_AMA,
+ &I062_V1_18_080_MD4,
+ &I062_V1_18_080_ME,
+ &I062_V1_18_080_MI,
+ &I062_V1_18_080_MD5,
+ &IXXX_FX,
+ &I062_V1_18_080_CST,
+ &I062_V1_18_080_PSR,
+ &I062_V1_18_080_SSR,
+ &I062_V1_18_080_MDS,
+ &I062_V1_18_080_ADS,
+ &I062_V1_18_080_SUC,
+ &I062_V1_18_080_AAC,
+ &IXXX_FX,
+ &I062_V1_18_080_SDS,
+ &I062_V1_18_080_EMS,
+ &I062_V1_18_080_PFT,
+ &I062_V1_18_080_FPLT,
+ &IXXX_FX,
+ &I062_V1_18_080_DUPT,
+ &I062_V1_18_080_DUPF,
+ &I062_V1_18_080_DUPM,
+ &I062_V1_18_080_SFC,
+ &I062_V1_18_080_IDD,
+ &I062_V1_18_080_IEC,
+ &IXXX_1bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I062_V1_18_080 = { FX, 1, 0, 0, &hf_062_V1_18_080, I062_V1_18_080_PARTS, { NULL } };
+static int hf_062_V1_18_100 = -1;
+static int hf_062_V1_18_100_X = -1;
+static const FieldPart I062_V1_18_100_X = { 24, 0.5, FIELD_PART_FLOAT, &hf_062_V1_18_100_X, NULL };
+static int hf_062_V1_18_100_Y = -1;
+static const FieldPart I062_V1_18_100_Y = { 24, 0.5, FIELD_PART_FLOAT, &hf_062_V1_18_100_Y, NULL };
+static const FieldPart *I062_V1_18_100_PARTS[] = {
+ &I062_V1_18_100_X,
+ &I062_V1_18_100_Y,
+ NULL
+};
+static const AsterixField I062_V1_18_100 = { FIXED, 6, 0, 0, &hf_062_V1_18_100, I062_V1_18_100_PARTS, { NULL } };
+static int hf_062_V1_18_105 = -1;
+static int hf_062_V1_18_105_LAT = -1;
+static const FieldPart I062_V1_18_105_LAT = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_062_V1_18_105_LAT, NULL };
+static int hf_062_V1_18_105_LON = -1;
+static const FieldPart I062_V1_18_105_LON = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_062_V1_18_105_LON, NULL };
+static const FieldPart *I062_V1_18_105_PARTS[] = {
+ &I062_V1_18_105_LAT,
+ &I062_V1_18_105_LON,
+ NULL
+};
+static const AsterixField I062_V1_18_105 = { FIXED, 8, 0, 0, &hf_062_V1_18_105, I062_V1_18_105_PARTS, { NULL } };
+static int hf_062_V1_18_110 = -1;
+static int hf_062_V1_18_110_SUM = -1;
+static int hf_062_V1_18_110_SUM_M5 = -1;
+static const value_string valstr_062_V1_18_110_SUM_M5[] = {
+ { 0, "No Mode 5 interrogation" },
+ { 1, "Mode 5 interrogation" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_110_SUM_M5 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_110_SUM_M5, NULL };
+static int hf_062_V1_18_110_SUM_ID = -1;
+static const value_string valstr_062_V1_18_110_SUM_ID[] = {
+ { 0, "No authenticated Mode 5 ID reply" },
+ { 1, "Authenticated Mode 5 ID reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_110_SUM_ID = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_110_SUM_ID, NULL };
+static int hf_062_V1_18_110_SUM_DA = -1;
+static const value_string valstr_062_V1_18_110_SUM_DA[] = {
+ { 0, "No authenticated Mode 5 Data reply or Report" },
+ { 1, "Authenticated Mode 5 Data reply or Report (i.e any valid Mode 5 reply type other than ID)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_110_SUM_DA = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_110_SUM_DA, NULL };
+static int hf_062_V1_18_110_SUM_M1 = -1;
+static const value_string valstr_062_V1_18_110_SUM_M1[] = {
+ { 0, "Mode 1 code not present or not from Mode 5 reply" },
+ { 1, "Mode 1 code from Mode 5 reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_110_SUM_M1 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_110_SUM_M1, NULL };
+static int hf_062_V1_18_110_SUM_M2 = -1;
+static const value_string valstr_062_V1_18_110_SUM_M2[] = {
+ { 0, "Mode 2 code not present or not from Mode 5 reply" },
+ { 1, "Mode 2 code from Mode 5 reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_110_SUM_M2 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_110_SUM_M2, NULL };
+static int hf_062_V1_18_110_SUM_M3 = -1;
+static const value_string valstr_062_V1_18_110_SUM_M3[] = {
+ { 0, "Mode 3 code not present or not from Mode 5 reply" },
+ { 1, "Mode 3 code from Mode 5 reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_110_SUM_M3 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_110_SUM_M3, NULL };
+static int hf_062_V1_18_110_SUM_MC = -1;
+static const value_string valstr_062_V1_18_110_SUM_MC[] = {
+ { 0, "Mode C altitude code not present or not from Mode 5 reply" },
+ { 1, "Mode C altitude from Mode 5 reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_110_SUM_MC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_110_SUM_MC, NULL };
+static int hf_062_V1_18_110_SUM_X = -1;
+static const value_string valstr_062_V1_18_110_SUM_X[] = {
+ { 0, "X-pulse set to zero or no authenticated Data reply or Report received" },
+ { 1, "X-pulse set to one" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_110_SUM_X = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_110_SUM_X, NULL };
+static const FieldPart *I062_V1_18_110_SUM_PARTS[] = {
+ &I062_V1_18_110_SUM_M5,
+ &I062_V1_18_110_SUM_ID,
+ &I062_V1_18_110_SUM_DA,
+ &I062_V1_18_110_SUM_M1,
+ &I062_V1_18_110_SUM_M2,
+ &I062_V1_18_110_SUM_M3,
+ &I062_V1_18_110_SUM_MC,
+ &I062_V1_18_110_SUM_X,
+ NULL
+};
+static const AsterixField I062_V1_18_110_SUM = { FIXED, 1, 0, 0, &hf_062_V1_18_110_SUM, I062_V1_18_110_SUM_PARTS, { NULL } };
+static int hf_062_V1_18_110_PMN = -1;
+static int hf_062_V1_18_110_PMN_PIN = -1;
+static const FieldPart I062_V1_18_110_PMN_PIN = { 14, 1.0, FIELD_PART_HEX, &hf_062_V1_18_110_PMN_PIN, NULL };
+static int hf_062_V1_18_110_PMN_NAT = -1;
+static const FieldPart I062_V1_18_110_PMN_NAT = { 5, 1.0, FIELD_PART_HEX, &hf_062_V1_18_110_PMN_NAT, NULL };
+static int hf_062_V1_18_110_PMN_MIS = -1;
+static const FieldPart I062_V1_18_110_PMN_MIS = { 6, 1.0, FIELD_PART_HEX, &hf_062_V1_18_110_PMN_MIS, NULL };
+static const FieldPart *I062_V1_18_110_PMN_PARTS[] = {
+ &IXXX_2bit_spare,
+ &I062_V1_18_110_PMN_PIN,
+ &IXXX_3bit_spare,
+ &I062_V1_18_110_PMN_NAT,
+ &IXXX_2bit_spare,
+ &I062_V1_18_110_PMN_MIS,
+ NULL
+};
+static const AsterixField I062_V1_18_110_PMN = { FIXED, 4, 0, 0, &hf_062_V1_18_110_PMN, I062_V1_18_110_PMN_PARTS, { NULL } };
+static int hf_062_V1_18_110_POS = -1;
+static int hf_062_V1_18_110_POS_LAT = -1;
+static const FieldPart I062_V1_18_110_POS_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_V1_18_110_POS_LAT, NULL };
+static int hf_062_V1_18_110_POS_LON = -1;
+static const FieldPart I062_V1_18_110_POS_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_V1_18_110_POS_LON, NULL };
+static const FieldPart *I062_V1_18_110_POS_PARTS[] = {
+ &I062_V1_18_110_POS_LAT,
+ &I062_V1_18_110_POS_LON,
+ NULL
+};
+static const AsterixField I062_V1_18_110_POS = { FIXED, 6, 0, 0, &hf_062_V1_18_110_POS, I062_V1_18_110_POS_PARTS, { NULL } };
+static int hf_062_V1_18_110_GA = -1;
+static int hf_062_V1_18_110_GA_RES = -1;
+static const value_string valstr_062_V1_18_110_GA_RES[] = {
+ { 0, "GA reported in 100 ft increments" },
+ { 1, "GA reported in 25 ft increments" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_110_GA_RES = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_110_GA_RES, NULL };
+static int hf_062_V1_18_110_GA_GA = -1;
+static const FieldPart I062_V1_18_110_GA_GA = { 14, 25.0, FIELD_PART_FLOAT, &hf_062_V1_18_110_GA_GA, NULL };
+static const FieldPart *I062_V1_18_110_GA_PARTS[] = {
+ &IXXX_1bit_spare,
+ &I062_V1_18_110_GA_RES,
+ &I062_V1_18_110_GA_GA,
+ NULL
+};
+static const AsterixField I062_V1_18_110_GA = { FIXED, 2, 0, 0, &hf_062_V1_18_110_GA, I062_V1_18_110_GA_PARTS, { NULL } };
+static int hf_062_V1_18_110_EM1 = -1;
+static int hf_062_V1_18_110_EM1_EM1 = -1;
+static const FieldPart I062_V1_18_110_EM1_EM1 = { 12, 1.0, FIELD_PART_SQUAWK, &hf_062_V1_18_110_EM1_EM1, NULL };
+static const FieldPart *I062_V1_18_110_EM1_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I062_V1_18_110_EM1_EM1,
+ NULL
+};
+static const AsterixField I062_V1_18_110_EM1 = { FIXED, 2, 0, 0, &hf_062_V1_18_110_EM1, I062_V1_18_110_EM1_PARTS, { NULL } };
+static int hf_062_V1_18_110_TOS = -1;
+static int hf_062_V1_18_110_TOS_VALUE = -1;
+static const FieldPart I062_V1_18_110_TOS_VALUE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_062_V1_18_110_TOS_VALUE, NULL };
+static const FieldPart *I062_V1_18_110_TOS_PARTS[] = {
+ &I062_V1_18_110_TOS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_110_TOS = { FIXED, 1, 0, 0, &hf_062_V1_18_110_TOS, I062_V1_18_110_TOS_PARTS, { NULL } };
+static int hf_062_V1_18_110_XP = -1;
+static int hf_062_V1_18_110_XP_X5 = -1;
+static const value_string valstr_062_V1_18_110_XP_X5[] = {
+ { 0, "X-pulse set to zero or no authenticated Data reply or Report received" },
+ { 1, "X-pulse set to one (present)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_110_XP_X5 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_110_XP_X5, NULL };
+static int hf_062_V1_18_110_XP_XC = -1;
+static const value_string valstr_062_V1_18_110_XP_XC[] = {
+ { 0, "X-pulse set to zero or no Mode C reply" },
+ { 1, "X-pulse set to one (present)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_110_XP_XC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_110_XP_XC, NULL };
+static int hf_062_V1_18_110_XP_X3 = -1;
+static const value_string valstr_062_V1_18_110_XP_X3[] = {
+ { 0, "X-pulse set to zero or no Mode 3/A reply" },
+ { 1, "X-pulse set to one (present)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_110_XP_X3 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_110_XP_X3, NULL };
+static int hf_062_V1_18_110_XP_X2 = -1;
+static const value_string valstr_062_V1_18_110_XP_X2[] = {
+ { 0, "X-pulse set to zero or no Mode 2 reply" },
+ { 1, "X-pulse set to one (present)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_110_XP_X2 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_110_XP_X2, NULL };
+static int hf_062_V1_18_110_XP_X1 = -1;
+static const value_string valstr_062_V1_18_110_XP_X1[] = {
+ { 0, "X-pulse set to zero or no Mode 1 reply" },
+ { 1, "X-pulse set to one (present)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_110_XP_X1 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_110_XP_X1, NULL };
+static const FieldPart *I062_V1_18_110_XP_PARTS[] = {
+ &IXXX_3bit_spare,
+ &I062_V1_18_110_XP_X5,
+ &I062_V1_18_110_XP_XC,
+ &I062_V1_18_110_XP_X3,
+ &I062_V1_18_110_XP_X2,
+ &I062_V1_18_110_XP_X1,
+ NULL
+};
+static const AsterixField I062_V1_18_110_XP = { FIXED, 1, 0, 0, &hf_062_V1_18_110_XP, I062_V1_18_110_XP_PARTS, { NULL } };
+static const AsterixField I062_V1_18_110 = { COMPOUND, 0, 0, 0, &hf_062_V1_18_110, NULL, { &I062_V1_18_110_SUM, &I062_V1_18_110_PMN, &I062_V1_18_110_POS, &I062_V1_18_110_GA, &I062_V1_18_110_EM1, &I062_V1_18_110_TOS, &I062_V1_18_110_XP, NULL } };
+static int hf_062_V1_18_120 = -1;
+static int hf_062_V1_18_120_MODE2 = -1;
+static const FieldPart I062_V1_18_120_MODE2 = { 12, 1.0, FIELD_PART_SQUAWK, &hf_062_V1_18_120_MODE2, NULL };
+static const FieldPart *I062_V1_18_120_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I062_V1_18_120_MODE2,
+ NULL
+};
+static const AsterixField I062_V1_18_120 = { FIXED, 2, 0, 0, &hf_062_V1_18_120, I062_V1_18_120_PARTS, { NULL } };
+static int hf_062_V1_18_130 = -1;
+static int hf_062_V1_18_130_VALUE = -1;
+static const FieldPart I062_V1_18_130_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_062_V1_18_130_VALUE, NULL };
+static const FieldPart *I062_V1_18_130_PARTS[] = {
+ &I062_V1_18_130_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_130 = { FIXED, 2, 0, 0, &hf_062_V1_18_130, I062_V1_18_130_PARTS, { NULL } };
+static int hf_062_V1_18_135 = -1;
+static int hf_062_V1_18_135_QNH = -1;
+static const value_string valstr_062_V1_18_135_QNH[] = {
+ { 0, "No QNH correction applied" },
+ { 1, "QNH correction applied" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_135_QNH = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_135_QNH, NULL };
+static int hf_062_V1_18_135_CTB = -1;
+static const FieldPart I062_V1_18_135_CTB = { 15, 0.25, FIELD_PART_FLOAT, &hf_062_V1_18_135_CTB, NULL };
+static const FieldPart *I062_V1_18_135_PARTS[] = {
+ &I062_V1_18_135_QNH,
+ &I062_V1_18_135_CTB,
+ NULL
+};
+static const AsterixField I062_V1_18_135 = { FIXED, 2, 0, 0, &hf_062_V1_18_135, I062_V1_18_135_PARTS, { NULL } };
+static int hf_062_V1_18_136 = -1;
+static int hf_062_V1_18_136_VALUE = -1;
+static const FieldPart I062_V1_18_136_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_062_V1_18_136_VALUE, NULL };
+static const FieldPart *I062_V1_18_136_PARTS[] = {
+ &I062_V1_18_136_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_136 = { FIXED, 2, 0, 0, &hf_062_V1_18_136, I062_V1_18_136_PARTS, { NULL } };
+static int hf_062_V1_18_185 = -1;
+static int hf_062_V1_18_185_VX = -1;
+static const FieldPart I062_V1_18_185_VX = { 16, 0.25, FIELD_PART_FLOAT, &hf_062_V1_18_185_VX, NULL };
+static int hf_062_V1_18_185_VY = -1;
+static const FieldPart I062_V1_18_185_VY = { 16, 0.25, FIELD_PART_FLOAT, &hf_062_V1_18_185_VY, NULL };
+static const FieldPart *I062_V1_18_185_PARTS[] = {
+ &I062_V1_18_185_VX,
+ &I062_V1_18_185_VY,
+ NULL
+};
+static const AsterixField I062_V1_18_185 = { FIXED, 4, 0, 0, &hf_062_V1_18_185, I062_V1_18_185_PARTS, { NULL } };
+static int hf_062_V1_18_200 = -1;
+static int hf_062_V1_18_200_TRANS = -1;
+static const value_string valstr_062_V1_18_200_TRANS[] = {
+ { 0, "Constant course" },
+ { 1, "Right turn" },
+ { 2, "Left turn" },
+ { 3, "Undetermined" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_200_TRANS = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_18_200_TRANS, NULL };
+static int hf_062_V1_18_200_LONG = -1;
+static const value_string valstr_062_V1_18_200_LONG[] = {
+ { 0, "Constant groundspeed" },
+ { 1, "Increasing groundspeed" },
+ { 2, "Decreasing groundspeed" },
+ { 3, "Undetermined" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_200_LONG = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_18_200_LONG, NULL };
+static int hf_062_V1_18_200_VERT = -1;
+static const value_string valstr_062_V1_18_200_VERT[] = {
+ { 0, "Level" },
+ { 1, "Climb" },
+ { 2, "Descent" },
+ { 3, "Undetermined" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_200_VERT = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_18_200_VERT, NULL };
+static int hf_062_V1_18_200_ADF = -1;
+static const value_string valstr_062_V1_18_200_ADF[] = {
+ { 0, "No altitude discrepancy" },
+ { 1, "Altitude discrepancy" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_200_ADF = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_200_ADF, NULL };
+static const FieldPart *I062_V1_18_200_PARTS[] = {
+ &I062_V1_18_200_TRANS,
+ &I062_V1_18_200_LONG,
+ &I062_V1_18_200_VERT,
+ &I062_V1_18_200_ADF,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I062_V1_18_200 = { FIXED, 1, 0, 0, &hf_062_V1_18_200, I062_V1_18_200_PARTS, { NULL } };
+static int hf_062_V1_18_210 = -1;
+static int hf_062_V1_18_210_AX = -1;
+static const FieldPart I062_V1_18_210_AX = { 8, 0.25, FIELD_PART_FLOAT, &hf_062_V1_18_210_AX, NULL };
+static int hf_062_V1_18_210_AY = -1;
+static const FieldPart I062_V1_18_210_AY = { 8, 0.25, FIELD_PART_FLOAT, &hf_062_V1_18_210_AY, NULL };
+static const FieldPart *I062_V1_18_210_PARTS[] = {
+ &I062_V1_18_210_AX,
+ &I062_V1_18_210_AY,
+ NULL
+};
+static const AsterixField I062_V1_18_210 = { FIXED, 2, 0, 0, &hf_062_V1_18_210, I062_V1_18_210_PARTS, { NULL } };
+static int hf_062_V1_18_220 = -1;
+static int hf_062_V1_18_220_VALUE = -1;
+static const FieldPart I062_V1_18_220_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_062_V1_18_220_VALUE, NULL };
+static const FieldPart *I062_V1_18_220_PARTS[] = {
+ &I062_V1_18_220_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_220 = { FIXED, 2, 0, 0, &hf_062_V1_18_220, I062_V1_18_220_PARTS, { NULL } };
+static int hf_062_V1_18_245 = -1;
+static int hf_062_V1_18_245_STI = -1;
+static const value_string valstr_062_V1_18_245_STI[] = {
+ { 0, "Callsign or registration downlinked from target" },
+ { 1, "Callsign not downlinked from target" },
+ { 2, "Registration not downlinked from target" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_245_STI = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_18_245_STI, NULL };
+static int hf_062_V1_18_245_CHR = -1;
+static const FieldPart I062_V1_18_245_CHR = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_062_V1_18_245_CHR, NULL };
+static const FieldPart *I062_V1_18_245_PARTS[] = {
+ &I062_V1_18_245_STI,
+ &IXXX_6bit_spare,
+ &I062_V1_18_245_CHR,
+ NULL
+};
+static const AsterixField I062_V1_18_245 = { FIXED, 7, 0, 0, &hf_062_V1_18_245, I062_V1_18_245_PARTS, { NULL } };
+static int hf_062_V1_18_270 = -1;
+static int hf_062_V1_18_270_LENGTH = -1;
+static const FieldPart I062_V1_18_270_LENGTH = { 7, 1.0, FIELD_PART_UFLOAT, &hf_062_V1_18_270_LENGTH, NULL };
+static int hf_062_V1_18_270_ORIENTATION = -1;
+static const FieldPart I062_V1_18_270_ORIENTATION = { 7, 2.8125, FIELD_PART_UFLOAT, &hf_062_V1_18_270_ORIENTATION, NULL };
+static int hf_062_V1_18_270_WIDTH = -1;
+static const FieldPart I062_V1_18_270_WIDTH = { 7, 1.0, FIELD_PART_UFLOAT, &hf_062_V1_18_270_WIDTH, NULL };
+static const FieldPart *I062_V1_18_270_PARTS[] = {
+ &I062_V1_18_270_LENGTH,
+ &IXXX_FX,
+ &I062_V1_18_270_ORIENTATION,
+ &IXXX_FX,
+ &I062_V1_18_270_WIDTH,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I062_V1_18_270 = { FX, 1, 0, 0, &hf_062_V1_18_270, I062_V1_18_270_PARTS, { NULL } };
+static int hf_062_V1_18_290 = -1;
+static int hf_062_V1_18_290_TRK = -1;
+static int hf_062_V1_18_290_TRK_VALUE = -1;
+static const FieldPart I062_V1_18_290_TRK_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_290_TRK_VALUE, NULL };
+static const FieldPart *I062_V1_18_290_TRK_PARTS[] = {
+ &I062_V1_18_290_TRK_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_290_TRK = { FIXED, 1, 0, 0, &hf_062_V1_18_290_TRK, I062_V1_18_290_TRK_PARTS, { NULL } };
+static int hf_062_V1_18_290_PSR = -1;
+static int hf_062_V1_18_290_PSR_VALUE = -1;
+static const FieldPart I062_V1_18_290_PSR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_290_PSR_VALUE, NULL };
+static const FieldPart *I062_V1_18_290_PSR_PARTS[] = {
+ &I062_V1_18_290_PSR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_290_PSR = { FIXED, 1, 0, 0, &hf_062_V1_18_290_PSR, I062_V1_18_290_PSR_PARTS, { NULL } };
+static int hf_062_V1_18_290_SSR = -1;
+static int hf_062_V1_18_290_SSR_VALUE = -1;
+static const FieldPart I062_V1_18_290_SSR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_290_SSR_VALUE, NULL };
+static const FieldPart *I062_V1_18_290_SSR_PARTS[] = {
+ &I062_V1_18_290_SSR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_290_SSR = { FIXED, 1, 0, 0, &hf_062_V1_18_290_SSR, I062_V1_18_290_SSR_PARTS, { NULL } };
+static int hf_062_V1_18_290_MDS = -1;
+static int hf_062_V1_18_290_MDS_VALUE = -1;
+static const FieldPart I062_V1_18_290_MDS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_290_MDS_VALUE, NULL };
+static const FieldPart *I062_V1_18_290_MDS_PARTS[] = {
+ &I062_V1_18_290_MDS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_290_MDS = { FIXED, 1, 0, 0, &hf_062_V1_18_290_MDS, I062_V1_18_290_MDS_PARTS, { NULL } };
+static int hf_062_V1_18_290_ADS = -1;
+static int hf_062_V1_18_290_ADS_VALUE = -1;
+static const FieldPart I062_V1_18_290_ADS_VALUE = { 16, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_290_ADS_VALUE, NULL };
+static const FieldPart *I062_V1_18_290_ADS_PARTS[] = {
+ &I062_V1_18_290_ADS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_290_ADS = { FIXED, 2, 0, 0, &hf_062_V1_18_290_ADS, I062_V1_18_290_ADS_PARTS, { NULL } };
+static int hf_062_V1_18_290_ES = -1;
+static int hf_062_V1_18_290_ES_VALUE = -1;
+static const FieldPart I062_V1_18_290_ES_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_290_ES_VALUE, NULL };
+static const FieldPart *I062_V1_18_290_ES_PARTS[] = {
+ &I062_V1_18_290_ES_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_290_ES = { FIXED, 1, 0, 0, &hf_062_V1_18_290_ES, I062_V1_18_290_ES_PARTS, { NULL } };
+static int hf_062_V1_18_290_VDL = -1;
+static int hf_062_V1_18_290_VDL_VALUE = -1;
+static const FieldPart I062_V1_18_290_VDL_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_290_VDL_VALUE, NULL };
+static const FieldPart *I062_V1_18_290_VDL_PARTS[] = {
+ &I062_V1_18_290_VDL_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_290_VDL = { FIXED, 1, 0, 0, &hf_062_V1_18_290_VDL, I062_V1_18_290_VDL_PARTS, { NULL } };
+static int hf_062_V1_18_290_UAT = -1;
+static int hf_062_V1_18_290_UAT_VALUE = -1;
+static const FieldPart I062_V1_18_290_UAT_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_290_UAT_VALUE, NULL };
+static const FieldPart *I062_V1_18_290_UAT_PARTS[] = {
+ &I062_V1_18_290_UAT_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_290_UAT = { FIXED, 1, 0, 0, &hf_062_V1_18_290_UAT, I062_V1_18_290_UAT_PARTS, { NULL } };
+static int hf_062_V1_18_290_LOP = -1;
+static int hf_062_V1_18_290_LOP_VALUE = -1;
+static const FieldPart I062_V1_18_290_LOP_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_290_LOP_VALUE, NULL };
+static const FieldPart *I062_V1_18_290_LOP_PARTS[] = {
+ &I062_V1_18_290_LOP_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_290_LOP = { FIXED, 1, 0, 0, &hf_062_V1_18_290_LOP, I062_V1_18_290_LOP_PARTS, { NULL } };
+static int hf_062_V1_18_290_MLT = -1;
+static int hf_062_V1_18_290_MLT_VALUE = -1;
+static const FieldPart I062_V1_18_290_MLT_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_290_MLT_VALUE, NULL };
+static const FieldPart *I062_V1_18_290_MLT_PARTS[] = {
+ &I062_V1_18_290_MLT_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_290_MLT = { FIXED, 1, 0, 0, &hf_062_V1_18_290_MLT, I062_V1_18_290_MLT_PARTS, { NULL } };
+static const AsterixField I062_V1_18_290 = { COMPOUND, 0, 0, 0, &hf_062_V1_18_290, NULL, { &I062_V1_18_290_TRK, &I062_V1_18_290_PSR, &I062_V1_18_290_SSR, &I062_V1_18_290_MDS, &I062_V1_18_290_ADS, &I062_V1_18_290_ES, &I062_V1_18_290_VDL, &I062_V1_18_290_UAT, &I062_V1_18_290_LOP, &I062_V1_18_290_MLT, NULL } };
+static int hf_062_V1_18_295 = -1;
+static int hf_062_V1_18_295_MFL = -1;
+static int hf_062_V1_18_295_MFL_VALUE = -1;
+static const FieldPart I062_V1_18_295_MFL_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_MFL_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_MFL_PARTS[] = {
+ &I062_V1_18_295_MFL_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_MFL = { FIXED, 1, 0, 0, &hf_062_V1_18_295_MFL, I062_V1_18_295_MFL_PARTS, { NULL } };
+static int hf_062_V1_18_295_MD1 = -1;
+static int hf_062_V1_18_295_MD1_VALUE = -1;
+static const FieldPart I062_V1_18_295_MD1_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_MD1_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_MD1_PARTS[] = {
+ &I062_V1_18_295_MD1_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_MD1 = { FIXED, 1, 0, 0, &hf_062_V1_18_295_MD1, I062_V1_18_295_MD1_PARTS, { NULL } };
+static int hf_062_V1_18_295_MD2 = -1;
+static int hf_062_V1_18_295_MD2_VALUE = -1;
+static const FieldPart I062_V1_18_295_MD2_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_MD2_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_MD2_PARTS[] = {
+ &I062_V1_18_295_MD2_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_MD2 = { FIXED, 1, 0, 0, &hf_062_V1_18_295_MD2, I062_V1_18_295_MD2_PARTS, { NULL } };
+static int hf_062_V1_18_295_MDA = -1;
+static int hf_062_V1_18_295_MDA_VALUE = -1;
+static const FieldPart I062_V1_18_295_MDA_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_MDA_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_MDA_PARTS[] = {
+ &I062_V1_18_295_MDA_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_MDA = { FIXED, 1, 0, 0, &hf_062_V1_18_295_MDA, I062_V1_18_295_MDA_PARTS, { NULL } };
+static int hf_062_V1_18_295_MD4 = -1;
+static int hf_062_V1_18_295_MD4_VALUE = -1;
+static const FieldPart I062_V1_18_295_MD4_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_MD4_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_MD4_PARTS[] = {
+ &I062_V1_18_295_MD4_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_MD4 = { FIXED, 1, 0, 0, &hf_062_V1_18_295_MD4, I062_V1_18_295_MD4_PARTS, { NULL } };
+static int hf_062_V1_18_295_MD5 = -1;
+static int hf_062_V1_18_295_MD5_VALUE = -1;
+static const FieldPart I062_V1_18_295_MD5_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_MD5_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_MD5_PARTS[] = {
+ &I062_V1_18_295_MD5_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_MD5 = { FIXED, 1, 0, 0, &hf_062_V1_18_295_MD5, I062_V1_18_295_MD5_PARTS, { NULL } };
+static int hf_062_V1_18_295_MHG = -1;
+static int hf_062_V1_18_295_MHG_VALUE = -1;
+static const FieldPart I062_V1_18_295_MHG_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_MHG_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_MHG_PARTS[] = {
+ &I062_V1_18_295_MHG_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_MHG = { FIXED, 1, 0, 0, &hf_062_V1_18_295_MHG, I062_V1_18_295_MHG_PARTS, { NULL } };
+static int hf_062_V1_18_295_IAS = -1;
+static int hf_062_V1_18_295_IAS_VALUE = -1;
+static const FieldPart I062_V1_18_295_IAS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_IAS_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_IAS_PARTS[] = {
+ &I062_V1_18_295_IAS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_IAS = { FIXED, 1, 0, 0, &hf_062_V1_18_295_IAS, I062_V1_18_295_IAS_PARTS, { NULL } };
+static int hf_062_V1_18_295_TAS = -1;
+static int hf_062_V1_18_295_TAS_VALUE = -1;
+static const FieldPart I062_V1_18_295_TAS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_TAS_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_TAS_PARTS[] = {
+ &I062_V1_18_295_TAS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_TAS = { FIXED, 1, 0, 0, &hf_062_V1_18_295_TAS, I062_V1_18_295_TAS_PARTS, { NULL } };
+static int hf_062_V1_18_295_SAL = -1;
+static int hf_062_V1_18_295_SAL_VALUE = -1;
+static const FieldPart I062_V1_18_295_SAL_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_SAL_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_SAL_PARTS[] = {
+ &I062_V1_18_295_SAL_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_SAL = { FIXED, 1, 0, 0, &hf_062_V1_18_295_SAL, I062_V1_18_295_SAL_PARTS, { NULL } };
+static int hf_062_V1_18_295_FSS = -1;
+static int hf_062_V1_18_295_FSS_VALUE = -1;
+static const FieldPart I062_V1_18_295_FSS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_FSS_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_FSS_PARTS[] = {
+ &I062_V1_18_295_FSS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_FSS = { FIXED, 1, 0, 0, &hf_062_V1_18_295_FSS, I062_V1_18_295_FSS_PARTS, { NULL } };
+static int hf_062_V1_18_295_TID = -1;
+static int hf_062_V1_18_295_TID_VALUE = -1;
+static const FieldPart I062_V1_18_295_TID_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_TID_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_TID_PARTS[] = {
+ &I062_V1_18_295_TID_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_TID = { FIXED, 1, 0, 0, &hf_062_V1_18_295_TID, I062_V1_18_295_TID_PARTS, { NULL } };
+static int hf_062_V1_18_295_COM = -1;
+static int hf_062_V1_18_295_COM_VALUE = -1;
+static const FieldPart I062_V1_18_295_COM_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_COM_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_COM_PARTS[] = {
+ &I062_V1_18_295_COM_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_COM = { FIXED, 1, 0, 0, &hf_062_V1_18_295_COM, I062_V1_18_295_COM_PARTS, { NULL } };
+static int hf_062_V1_18_295_SAB = -1;
+static int hf_062_V1_18_295_SAB_VALUE = -1;
+static const FieldPart I062_V1_18_295_SAB_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_SAB_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_SAB_PARTS[] = {
+ &I062_V1_18_295_SAB_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_SAB = { FIXED, 1, 0, 0, &hf_062_V1_18_295_SAB, I062_V1_18_295_SAB_PARTS, { NULL } };
+static int hf_062_V1_18_295_ACS = -1;
+static int hf_062_V1_18_295_ACS_VALUE = -1;
+static const FieldPart I062_V1_18_295_ACS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_ACS_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_ACS_PARTS[] = {
+ &I062_V1_18_295_ACS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_ACS = { FIXED, 1, 0, 0, &hf_062_V1_18_295_ACS, I062_V1_18_295_ACS_PARTS, { NULL } };
+static int hf_062_V1_18_295_BVR = -1;
+static int hf_062_V1_18_295_BVR_VALUE = -1;
+static const FieldPart I062_V1_18_295_BVR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_BVR_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_BVR_PARTS[] = {
+ &I062_V1_18_295_BVR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_BVR = { FIXED, 1, 0, 0, &hf_062_V1_18_295_BVR, I062_V1_18_295_BVR_PARTS, { NULL } };
+static int hf_062_V1_18_295_GVR = -1;
+static int hf_062_V1_18_295_GVR_VALUE = -1;
+static const FieldPart I062_V1_18_295_GVR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_GVR_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_GVR_PARTS[] = {
+ &I062_V1_18_295_GVR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_GVR = { FIXED, 1, 0, 0, &hf_062_V1_18_295_GVR, I062_V1_18_295_GVR_PARTS, { NULL } };
+static int hf_062_V1_18_295_RAN = -1;
+static int hf_062_V1_18_295_RAN_VALUE = -1;
+static const FieldPart I062_V1_18_295_RAN_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_RAN_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_RAN_PARTS[] = {
+ &I062_V1_18_295_RAN_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_RAN = { FIXED, 1, 0, 0, &hf_062_V1_18_295_RAN, I062_V1_18_295_RAN_PARTS, { NULL } };
+static int hf_062_V1_18_295_TAR = -1;
+static int hf_062_V1_18_295_TAR_VALUE = -1;
+static const FieldPart I062_V1_18_295_TAR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_TAR_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_TAR_PARTS[] = {
+ &I062_V1_18_295_TAR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_TAR = { FIXED, 1, 0, 0, &hf_062_V1_18_295_TAR, I062_V1_18_295_TAR_PARTS, { NULL } };
+static int hf_062_V1_18_295_TAN = -1;
+static int hf_062_V1_18_295_TAN_VALUE = -1;
+static const FieldPart I062_V1_18_295_TAN_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_TAN_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_TAN_PARTS[] = {
+ &I062_V1_18_295_TAN_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_TAN = { FIXED, 1, 0, 0, &hf_062_V1_18_295_TAN, I062_V1_18_295_TAN_PARTS, { NULL } };
+static int hf_062_V1_18_295_GSP = -1;
+static int hf_062_V1_18_295_GSP_VALUE = -1;
+static const FieldPart I062_V1_18_295_GSP_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_GSP_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_GSP_PARTS[] = {
+ &I062_V1_18_295_GSP_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_GSP = { FIXED, 1, 0, 0, &hf_062_V1_18_295_GSP, I062_V1_18_295_GSP_PARTS, { NULL } };
+static int hf_062_V1_18_295_VUN = -1;
+static int hf_062_V1_18_295_VUN_VALUE = -1;
+static const FieldPart I062_V1_18_295_VUN_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_VUN_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_VUN_PARTS[] = {
+ &I062_V1_18_295_VUN_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_VUN = { FIXED, 1, 0, 0, &hf_062_V1_18_295_VUN, I062_V1_18_295_VUN_PARTS, { NULL } };
+static int hf_062_V1_18_295_MET = -1;
+static int hf_062_V1_18_295_MET_VALUE = -1;
+static const FieldPart I062_V1_18_295_MET_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_MET_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_MET_PARTS[] = {
+ &I062_V1_18_295_MET_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_MET = { FIXED, 1, 0, 0, &hf_062_V1_18_295_MET, I062_V1_18_295_MET_PARTS, { NULL } };
+static int hf_062_V1_18_295_EMC = -1;
+static int hf_062_V1_18_295_EMC_VALUE = -1;
+static const FieldPart I062_V1_18_295_EMC_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_EMC_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_EMC_PARTS[] = {
+ &I062_V1_18_295_EMC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_EMC = { FIXED, 1, 0, 0, &hf_062_V1_18_295_EMC, I062_V1_18_295_EMC_PARTS, { NULL } };
+static int hf_062_V1_18_295_POS = -1;
+static int hf_062_V1_18_295_POS_VALUE = -1;
+static const FieldPart I062_V1_18_295_POS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_POS_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_POS_PARTS[] = {
+ &I062_V1_18_295_POS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_POS = { FIXED, 1, 0, 0, &hf_062_V1_18_295_POS, I062_V1_18_295_POS_PARTS, { NULL } };
+static int hf_062_V1_18_295_GAL = -1;
+static int hf_062_V1_18_295_GAL_VALUE = -1;
+static const FieldPart I062_V1_18_295_GAL_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_GAL_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_GAL_PARTS[] = {
+ &I062_V1_18_295_GAL_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_GAL = { FIXED, 1, 0, 0, &hf_062_V1_18_295_GAL, I062_V1_18_295_GAL_PARTS, { NULL } };
+static int hf_062_V1_18_295_PUN = -1;
+static int hf_062_V1_18_295_PUN_VALUE = -1;
+static const FieldPart I062_V1_18_295_PUN_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_PUN_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_PUN_PARTS[] = {
+ &I062_V1_18_295_PUN_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_PUN = { FIXED, 1, 0, 0, &hf_062_V1_18_295_PUN, I062_V1_18_295_PUN_PARTS, { NULL } };
+static int hf_062_V1_18_295_MB = -1;
+static int hf_062_V1_18_295_MB_VALUE = -1;
+static const FieldPart I062_V1_18_295_MB_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_MB_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_MB_PARTS[] = {
+ &I062_V1_18_295_MB_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_MB = { FIXED, 1, 0, 0, &hf_062_V1_18_295_MB, I062_V1_18_295_MB_PARTS, { NULL } };
+static int hf_062_V1_18_295_IAR = -1;
+static int hf_062_V1_18_295_IAR_VALUE = -1;
+static const FieldPart I062_V1_18_295_IAR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_IAR_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_IAR_PARTS[] = {
+ &I062_V1_18_295_IAR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_IAR = { FIXED, 1, 0, 0, &hf_062_V1_18_295_IAR, I062_V1_18_295_IAR_PARTS, { NULL } };
+static int hf_062_V1_18_295_MAC = -1;
+static int hf_062_V1_18_295_MAC_VALUE = -1;
+static const FieldPart I062_V1_18_295_MAC_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_MAC_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_MAC_PARTS[] = {
+ &I062_V1_18_295_MAC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_MAC = { FIXED, 1, 0, 0, &hf_062_V1_18_295_MAC, I062_V1_18_295_MAC_PARTS, { NULL } };
+static int hf_062_V1_18_295_BPS = -1;
+static int hf_062_V1_18_295_BPS_VALUE = -1;
+static const FieldPart I062_V1_18_295_BPS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_295_BPS_VALUE, NULL };
+static const FieldPart *I062_V1_18_295_BPS_PARTS[] = {
+ &I062_V1_18_295_BPS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_295_BPS = { FIXED, 1, 0, 0, &hf_062_V1_18_295_BPS, I062_V1_18_295_BPS_PARTS, { NULL } };
+static const AsterixField I062_V1_18_295 = { COMPOUND, 0, 0, 0, &hf_062_V1_18_295, NULL, { &I062_V1_18_295_MFL, &I062_V1_18_295_MD1, &I062_V1_18_295_MD2, &I062_V1_18_295_MDA, &I062_V1_18_295_MD4, &I062_V1_18_295_MD5, &I062_V1_18_295_MHG, &I062_V1_18_295_IAS, &I062_V1_18_295_TAS, &I062_V1_18_295_SAL, &I062_V1_18_295_FSS, &I062_V1_18_295_TID, &I062_V1_18_295_COM, &I062_V1_18_295_SAB, &I062_V1_18_295_ACS, &I062_V1_18_295_BVR, &I062_V1_18_295_GVR, &I062_V1_18_295_RAN, &I062_V1_18_295_TAR, &I062_V1_18_295_TAN, &I062_V1_18_295_GSP, &I062_V1_18_295_VUN, &I062_V1_18_295_MET, &I062_V1_18_295_EMC, &I062_V1_18_295_POS, &I062_V1_18_295_GAL, &I062_V1_18_295_PUN, &I062_V1_18_295_MB, &I062_V1_18_295_IAR, &I062_V1_18_295_MAC, &I062_V1_18_295_BPS, NULL } };
+static int hf_062_V1_18_300 = -1;
+static int hf_062_V1_18_300_VALUE = -1;
+static const value_string valstr_062_V1_18_300_VALUE[] = {
+ { 0, "Unknown" },
+ { 1, "ATC equipment maintenance" },
+ { 2, "Airport maintenance" },
+ { 3, "Fire" },
+ { 4, "Bird scarer" },
+ { 5, "Snow plough" },
+ { 6, "Runway sweeper" },
+ { 7, "Emergency" },
+ { 8, "Police" },
+ { 9, "Bus" },
+ { 10, "Tug (push/tow)" },
+ { 11, "Grass cutter" },
+ { 12, "Fuel" },
+ { 13, "Baggage" },
+ { 14, "Catering" },
+ { 15, "Aircraft maintenance" },
+ { 16, "Flyco (follow me)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_300_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_062_V1_18_300_VALUE, NULL };
+static const FieldPart *I062_V1_18_300_PARTS[] = {
+ &I062_V1_18_300_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_300 = { FIXED, 1, 0, 0, &hf_062_V1_18_300, I062_V1_18_300_PARTS, { NULL } };
+static int hf_062_V1_18_340 = -1;
+static int hf_062_V1_18_340_SID = -1;
+static int hf_062_V1_18_340_SID_SAC = -1;
+static const FieldPart I062_V1_18_340_SID_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_18_340_SID_SAC, NULL };
+static int hf_062_V1_18_340_SID_SIC = -1;
+static const FieldPart I062_V1_18_340_SID_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_18_340_SID_SIC, NULL };
+static const FieldPart *I062_V1_18_340_SID_PARTS[] = {
+ &I062_V1_18_340_SID_SAC,
+ &I062_V1_18_340_SID_SIC,
+ NULL
+};
+static const AsterixField I062_V1_18_340_SID = { FIXED, 2, 0, 0, &hf_062_V1_18_340_SID, I062_V1_18_340_SID_PARTS, { NULL } };
+static int hf_062_V1_18_340_POS = -1;
+static int hf_062_V1_18_340_POS_RHO = -1;
+static const FieldPart I062_V1_18_340_POS_RHO = { 16, 0.00390625, FIELD_PART_UFLOAT, &hf_062_V1_18_340_POS_RHO, NULL };
+static int hf_062_V1_18_340_POS_THETA = -1;
+static const FieldPart I062_V1_18_340_POS_THETA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_062_V1_18_340_POS_THETA, NULL };
+static const FieldPart *I062_V1_18_340_POS_PARTS[] = {
+ &I062_V1_18_340_POS_RHO,
+ &I062_V1_18_340_POS_THETA,
+ NULL
+};
+static const AsterixField I062_V1_18_340_POS = { FIXED, 4, 0, 0, &hf_062_V1_18_340_POS, I062_V1_18_340_POS_PARTS, { NULL } };
+static int hf_062_V1_18_340_HEIGHT = -1;
+static int hf_062_V1_18_340_HEIGHT_VALUE = -1;
+static const FieldPart I062_V1_18_340_HEIGHT_VALUE = { 16, 25.0, FIELD_PART_UFLOAT, &hf_062_V1_18_340_HEIGHT_VALUE, NULL };
+static const FieldPart *I062_V1_18_340_HEIGHT_PARTS[] = {
+ &I062_V1_18_340_HEIGHT_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_340_HEIGHT = { FIXED, 2, 0, 0, &hf_062_V1_18_340_HEIGHT, I062_V1_18_340_HEIGHT_PARTS, { NULL } };
+static int hf_062_V1_18_340_MDC = -1;
+static int hf_062_V1_18_340_MDC_V = -1;
+static const value_string valstr_062_V1_18_340_MDC_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_340_MDC_V = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_340_MDC_V, NULL };
+static int hf_062_V1_18_340_MDC_G = -1;
+static const value_string valstr_062_V1_18_340_MDC_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_340_MDC_G = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_340_MDC_G, NULL };
+static int hf_062_V1_18_340_MDC_LMC = -1;
+static const FieldPart I062_V1_18_340_MDC_LMC = { 14, 0.25, FIELD_PART_FLOAT, &hf_062_V1_18_340_MDC_LMC, NULL };
+static const FieldPart *I062_V1_18_340_MDC_PARTS[] = {
+ &I062_V1_18_340_MDC_V,
+ &I062_V1_18_340_MDC_G,
+ &I062_V1_18_340_MDC_LMC,
+ NULL
+};
+static const AsterixField I062_V1_18_340_MDC = { FIXED, 2, 0, 0, &hf_062_V1_18_340_MDC, I062_V1_18_340_MDC_PARTS, { NULL } };
+static int hf_062_V1_18_340_MDA = -1;
+static int hf_062_V1_18_340_MDA_V = -1;
+static const value_string valstr_062_V1_18_340_MDA_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_340_MDA_V = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_340_MDA_V, NULL };
+static int hf_062_V1_18_340_MDA_G = -1;
+static const value_string valstr_062_V1_18_340_MDA_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_340_MDA_G = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_340_MDA_G, NULL };
+static int hf_062_V1_18_340_MDA_L = -1;
+static const value_string valstr_062_V1_18_340_MDA_L[] = {
+ { 0, "Mode 3/A code as derived from the reply of the transponder" },
+ { 1, "Mode 3/A code as provided by a sensor local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_340_MDA_L = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_340_MDA_L, NULL };
+static int hf_062_V1_18_340_MDA_MODE3A = -1;
+static const FieldPart I062_V1_18_340_MDA_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_062_V1_18_340_MDA_MODE3A, NULL };
+static const FieldPart *I062_V1_18_340_MDA_PARTS[] = {
+ &I062_V1_18_340_MDA_V,
+ &I062_V1_18_340_MDA_G,
+ &I062_V1_18_340_MDA_L,
+ &IXXX_1bit_spare,
+ &I062_V1_18_340_MDA_MODE3A,
+ NULL
+};
+static const AsterixField I062_V1_18_340_MDA = { FIXED, 2, 0, 0, &hf_062_V1_18_340_MDA, I062_V1_18_340_MDA_PARTS, { NULL } };
+static int hf_062_V1_18_340_TYP = -1;
+static int hf_062_V1_18_340_TYP_TYP = -1;
+static const value_string valstr_062_V1_18_340_TYP_TYP[] = {
+ { 0, "No detection" },
+ { 1, "Single PSR detection" },
+ { 2, "Single SSR detection" },
+ { 3, "SSR + PSR detection" },
+ { 4, "Single ModeS All-Call" },
+ { 5, "Single ModeS Roll-Call" },
+ { 6, "ModeS All-Call + PSR" },
+ { 7, "ModeS Roll-Call + PSR" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_340_TYP_TYP = { 3, 1.0, FIELD_PART_UINT, &hf_062_V1_18_340_TYP_TYP, NULL };
+static int hf_062_V1_18_340_TYP_SIM = -1;
+static const value_string valstr_062_V1_18_340_TYP_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_340_TYP_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_340_TYP_SIM, NULL };
+static int hf_062_V1_18_340_TYP_RAB = -1;
+static const value_string valstr_062_V1_18_340_TYP_RAB[] = {
+ { 0, "Report from target transponder" },
+ { 1, "Report from field monitor (item transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_340_TYP_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_340_TYP_RAB, NULL };
+static int hf_062_V1_18_340_TYP_TST = -1;
+static const value_string valstr_062_V1_18_340_TYP_TST[] = {
+ { 0, "Real target report" },
+ { 1, "Test target report" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_340_TYP_TST = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_340_TYP_TST, NULL };
+static const FieldPart *I062_V1_18_340_TYP_PARTS[] = {
+ &I062_V1_18_340_TYP_TYP,
+ &I062_V1_18_340_TYP_SIM,
+ &I062_V1_18_340_TYP_RAB,
+ &I062_V1_18_340_TYP_TST,
+ &IXXX_2bit_spare,
+ NULL
+};
+static const AsterixField I062_V1_18_340_TYP = { FIXED, 1, 0, 0, &hf_062_V1_18_340_TYP, I062_V1_18_340_TYP_PARTS, { NULL } };
+static const AsterixField I062_V1_18_340 = { COMPOUND, 0, 0, 0, &hf_062_V1_18_340, NULL, { &I062_V1_18_340_SID, &I062_V1_18_340_POS, &I062_V1_18_340_HEIGHT, &I062_V1_18_340_MDC, &I062_V1_18_340_MDA, &I062_V1_18_340_TYP, NULL } };
+static int hf_062_V1_18_380 = -1;
+static int hf_062_V1_18_380_ADR = -1;
+static int hf_062_V1_18_380_ADR_VALUE = -1;
+static const FieldPart I062_V1_18_380_ADR_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_062_V1_18_380_ADR_VALUE, NULL };
+static const FieldPart *I062_V1_18_380_ADR_PARTS[] = {
+ &I062_V1_18_380_ADR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_380_ADR = { FIXED, 3, 0, 0, &hf_062_V1_18_380_ADR, I062_V1_18_380_ADR_PARTS, { NULL } };
+static int hf_062_V1_18_380_ID = -1;
+static int hf_062_V1_18_380_ID_VALUE = -1;
+static const FieldPart I062_V1_18_380_ID_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_062_V1_18_380_ID_VALUE, NULL };
+static const FieldPart *I062_V1_18_380_ID_PARTS[] = {
+ &I062_V1_18_380_ID_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_380_ID = { FIXED, 6, 0, 0, &hf_062_V1_18_380_ID, I062_V1_18_380_ID_PARTS, { NULL } };
+static int hf_062_V1_18_380_MHG = -1;
+static int hf_062_V1_18_380_MHG_VALUE = -1;
+static const FieldPart I062_V1_18_380_MHG_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_062_V1_18_380_MHG_VALUE, NULL };
+static const FieldPart *I062_V1_18_380_MHG_PARTS[] = {
+ &I062_V1_18_380_MHG_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_380_MHG = { FIXED, 2, 0, 0, &hf_062_V1_18_380_MHG, I062_V1_18_380_MHG_PARTS, { NULL } };
+static int hf_062_V1_18_380_IAS = -1;
+static int hf_062_V1_18_380_IAS_IM = -1;
+static const value_string valstr_062_V1_18_380_IAS_IM[] = {
+ { 0, "Air Speed = IAS, LSB (Bit-1) = 2^-14 NM/s" },
+ { 1, "Air Speed = Mach, LSB (Bit-1) = 0.001" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_IAS_IM = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_IAS_IM, NULL };
+static int hf_062_V1_18_380_IAS_IAS = -1;
+static const FieldPart I062_V1_18_380_IAS_IAS = { 15, 1.0, FIELD_PART_HEX, &hf_062_V1_18_380_IAS_IAS, NULL };
+static const FieldPart *I062_V1_18_380_IAS_PARTS[] = {
+ &I062_V1_18_380_IAS_IM,
+ &I062_V1_18_380_IAS_IAS,
+ NULL
+};
+static const AsterixField I062_V1_18_380_IAS = { FIXED, 2, 0, 0, &hf_062_V1_18_380_IAS, I062_V1_18_380_IAS_PARTS, { NULL } };
+static int hf_062_V1_18_380_TAS = -1;
+static int hf_062_V1_18_380_TAS_VALUE = -1;
+static const FieldPart I062_V1_18_380_TAS_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_062_V1_18_380_TAS_VALUE, NULL };
+static const FieldPart *I062_V1_18_380_TAS_PARTS[] = {
+ &I062_V1_18_380_TAS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_380_TAS = { FIXED, 2, 0, 0, &hf_062_V1_18_380_TAS, I062_V1_18_380_TAS_PARTS, { NULL } };
+static int hf_062_V1_18_380_SAL = -1;
+static int hf_062_V1_18_380_SAL_SAS = -1;
+static const value_string valstr_062_V1_18_380_SAL_SAS[] = {
+ { 0, "No source information provided" },
+ { 1, "Source information provided" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_SAL_SAS = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_SAL_SAS, NULL };
+static int hf_062_V1_18_380_SAL_SRC = -1;
+static const value_string valstr_062_V1_18_380_SAL_SRC[] = {
+ { 0, "Unknown" },
+ { 1, "Aircraft altitude" },
+ { 2, "FCU/MCP selected altitude" },
+ { 3, "FMS selected altitude" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_SAL_SRC = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_SAL_SRC, NULL };
+static int hf_062_V1_18_380_SAL_ALT = -1;
+static const FieldPart I062_V1_18_380_SAL_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_062_V1_18_380_SAL_ALT, NULL };
+static const FieldPart *I062_V1_18_380_SAL_PARTS[] = {
+ &I062_V1_18_380_SAL_SAS,
+ &I062_V1_18_380_SAL_SRC,
+ &I062_V1_18_380_SAL_ALT,
+ NULL
+};
+static const AsterixField I062_V1_18_380_SAL = { FIXED, 2, 0, 0, &hf_062_V1_18_380_SAL, I062_V1_18_380_SAL_PARTS, { NULL } };
+static int hf_062_V1_18_380_FSS = -1;
+static int hf_062_V1_18_380_FSS_MV = -1;
+static const value_string valstr_062_V1_18_380_FSS_MV[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_FSS_MV = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_FSS_MV, NULL };
+static int hf_062_V1_18_380_FSS_AH = -1;
+static const value_string valstr_062_V1_18_380_FSS_AH[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_FSS_AH = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_FSS_AH, NULL };
+static int hf_062_V1_18_380_FSS_AM = -1;
+static const value_string valstr_062_V1_18_380_FSS_AM[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_FSS_AM = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_FSS_AM, NULL };
+static int hf_062_V1_18_380_FSS_ALT = -1;
+static const FieldPart I062_V1_18_380_FSS_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_062_V1_18_380_FSS_ALT, NULL };
+static const FieldPart *I062_V1_18_380_FSS_PARTS[] = {
+ &I062_V1_18_380_FSS_MV,
+ &I062_V1_18_380_FSS_AH,
+ &I062_V1_18_380_FSS_AM,
+ &I062_V1_18_380_FSS_ALT,
+ NULL
+};
+static const AsterixField I062_V1_18_380_FSS = { FIXED, 2, 0, 0, &hf_062_V1_18_380_FSS, I062_V1_18_380_FSS_PARTS, { NULL } };
+static int hf_062_V1_18_380_TIS = -1;
+static int hf_062_V1_18_380_TIS_NAV = -1;
+static const value_string valstr_062_V1_18_380_TIS_NAV[] = {
+ { 0, "Trajectory intent data is available for this aircraft" },
+ { 1, "Trajectory intent data is not available for this aircraft" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_TIS_NAV = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_TIS_NAV, NULL };
+static int hf_062_V1_18_380_TIS_NVB = -1;
+static const value_string valstr_062_V1_18_380_TIS_NVB[] = {
+ { 0, "Trajectory intent data is valid" },
+ { 1, "Trajectory intent data is not valid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_TIS_NVB = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_TIS_NVB, NULL };
+static const FieldPart *I062_V1_18_380_TIS_PARTS[] = {
+ &I062_V1_18_380_TIS_NAV,
+ &I062_V1_18_380_TIS_NVB,
+ &IXXX_5bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I062_V1_18_380_TIS = { FX, 1, 0, 0, &hf_062_V1_18_380_TIS, I062_V1_18_380_TIS_PARTS, { NULL } };
+static int hf_062_V1_18_380_TID = -1;
+static int hf_062_V1_18_380_TID_TCA = -1;
+static const value_string valstr_062_V1_18_380_TID_TCA[] = {
+ { 0, "TCP number available" },
+ { 1, "TCP number not available" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_TID_TCA = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_TID_TCA, NULL };
+static int hf_062_V1_18_380_TID_NC = -1;
+static const value_string valstr_062_V1_18_380_TID_NC[] = {
+ { 0, "TCP compliance" },
+ { 1, "TCP non-compliance" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_TID_NC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_TID_NC, NULL };
+static int hf_062_V1_18_380_TID_TCPN = -1;
+static const FieldPart I062_V1_18_380_TID_TCPN = { 6, 1.0, FIELD_PART_HEX, &hf_062_V1_18_380_TID_TCPN, NULL };
+static int hf_062_V1_18_380_TID_ALT = -1;
+static const FieldPart I062_V1_18_380_TID_ALT = { 16, 10.0, FIELD_PART_FLOAT, &hf_062_V1_18_380_TID_ALT, NULL };
+static int hf_062_V1_18_380_TID_LAT = -1;
+static const FieldPart I062_V1_18_380_TID_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_V1_18_380_TID_LAT, NULL };
+static int hf_062_V1_18_380_TID_LON = -1;
+static const FieldPart I062_V1_18_380_TID_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_V1_18_380_TID_LON, NULL };
+static int hf_062_V1_18_380_TID_PT = -1;
+static const value_string valstr_062_V1_18_380_TID_PT[] = {
+ { 0, "Unknown" },
+ { 1, "Fly by waypoint (LT)" },
+ { 2, "Fly over waypoint (LT)" },
+ { 3, "Hold pattern (LT)" },
+ { 4, "Procedure hold (LT)" },
+ { 5, "Procedure turn (LT)" },
+ { 6, "RF leg (LT)" },
+ { 7, "Top of climb (VT)" },
+ { 8, "Top of descent (VT)" },
+ { 9, "Start of level (VT)" },
+ { 10, "Cross-over altitude (VT)" },
+ { 11, "Transition altitude (VT)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_TID_PT = { 4, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_TID_PT, NULL };
+static int hf_062_V1_18_380_TID_TD = -1;
+static const value_string valstr_062_V1_18_380_TID_TD[] = {
+ { 0, "N/A" },
+ { 1, "Turn right" },
+ { 2, "Turn left" },
+ { 3, "No turn" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_TID_TD = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_TID_TD, NULL };
+static int hf_062_V1_18_380_TID_TRA = -1;
+static const value_string valstr_062_V1_18_380_TID_TRA[] = {
+ { 0, "TTR not available" },
+ { 1, "TTR available" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_TID_TRA = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_TID_TRA, NULL };
+static int hf_062_V1_18_380_TID_TOA = -1;
+static const value_string valstr_062_V1_18_380_TID_TOA[] = {
+ { 0, "TOV available" },
+ { 1, "TOV not available" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_TID_TOA = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_TID_TOA, NULL };
+static int hf_062_V1_18_380_TID_TOV = -1;
+static const FieldPart I062_V1_18_380_TID_TOV = { 24, 1.0, FIELD_PART_UFLOAT, &hf_062_V1_18_380_TID_TOV, NULL };
+static int hf_062_V1_18_380_TID_TTR = -1;
+static const FieldPart I062_V1_18_380_TID_TTR = { 16, 0.01, FIELD_PART_UFLOAT, &hf_062_V1_18_380_TID_TTR, NULL };
+static const FieldPart *I062_V1_18_380_TID_PARTS[] = {
+ &I062_V1_18_380_TID_TCA,
+ &I062_V1_18_380_TID_NC,
+ &I062_V1_18_380_TID_TCPN,
+ &I062_V1_18_380_TID_ALT,
+ &I062_V1_18_380_TID_LAT,
+ &I062_V1_18_380_TID_LON,
+ &I062_V1_18_380_TID_PT,
+ &I062_V1_18_380_TID_TD,
+ &I062_V1_18_380_TID_TRA,
+ &I062_V1_18_380_TID_TOA,
+ &I062_V1_18_380_TID_TOV,
+ &I062_V1_18_380_TID_TTR,
+ NULL
+};
+static const AsterixField I062_V1_18_380_TID = { REPETITIVE, 15, 1, 0, &hf_062_V1_18_380_TID, I062_V1_18_380_TID_PARTS, { NULL } };
+static int hf_062_V1_18_380_COM = -1;
+static int hf_062_V1_18_380_COM_COM = -1;
+static const value_string valstr_062_V1_18_380_COM_COM[] = {
+ { 0, "No communications capability (surveillance only)" },
+ { 1, "Comm. A and Comm. B capability" },
+ { 2, "Comm. A, Comm. B and Uplink ELM" },
+ { 3, "Comm. A, Comm. B, Uplink ELM and Downlink ELM" },
+ { 4, "Level 5 Transponder capability" },
+ { 5, "Not assigned" },
+ { 6, "Not assigned" },
+ { 7, "Not assigned" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_COM_COM = { 3, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_COM_COM, NULL };
+static int hf_062_V1_18_380_COM_STAT = -1;
+static const value_string valstr_062_V1_18_380_COM_STAT[] = {
+ { 0, "No alert, no SPI, aircraft airborne" },
+ { 1, "No alert, no SPI, aircraft on ground" },
+ { 2, "Alert, no SPI, aircraft airborne" },
+ { 3, "Alert, no SPI, aircraft on ground" },
+ { 4, "Alert, SPI, aircraft airborne or on ground" },
+ { 5, "No alert, SPI, aircraft airborne or on ground" },
+ { 6, "Not defined" },
+ { 7, "Unknown or not yet extracted" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_COM_STAT = { 3, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_COM_STAT, NULL };
+static int hf_062_V1_18_380_COM_SSC = -1;
+static const value_string valstr_062_V1_18_380_COM_SSC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_COM_SSC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_COM_SSC, NULL };
+static int hf_062_V1_18_380_COM_ARC = -1;
+static const value_string valstr_062_V1_18_380_COM_ARC[] = {
+ { 0, "100 ft resolution" },
+ { 1, "25 ft resolution" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_COM_ARC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_COM_ARC, NULL };
+static int hf_062_V1_18_380_COM_AIC = -1;
+static const value_string valstr_062_V1_18_380_COM_AIC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_COM_AIC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_COM_AIC, NULL };
+static int hf_062_V1_18_380_COM_B1A = -1;
+static const FieldPart I062_V1_18_380_COM_B1A = { 1, 1.0, FIELD_PART_HEX, &hf_062_V1_18_380_COM_B1A, NULL };
+static int hf_062_V1_18_380_COM_B1B = -1;
+static const FieldPart I062_V1_18_380_COM_B1B = { 4, 1.0, FIELD_PART_HEX, &hf_062_V1_18_380_COM_B1B, NULL };
+static const FieldPart *I062_V1_18_380_COM_PARTS[] = {
+ &I062_V1_18_380_COM_COM,
+ &I062_V1_18_380_COM_STAT,
+ &IXXX_2bit_spare,
+ &I062_V1_18_380_COM_SSC,
+ &I062_V1_18_380_COM_ARC,
+ &I062_V1_18_380_COM_AIC,
+ &I062_V1_18_380_COM_B1A,
+ &I062_V1_18_380_COM_B1B,
+ NULL
+};
+static const AsterixField I062_V1_18_380_COM = { FIXED, 2, 0, 0, &hf_062_V1_18_380_COM, I062_V1_18_380_COM_PARTS, { NULL } };
+static int hf_062_V1_18_380_SAB = -1;
+static int hf_062_V1_18_380_SAB_AC = -1;
+static const value_string valstr_062_V1_18_380_SAB_AC[] = {
+ { 0, "Unknown" },
+ { 1, "ACAS not operational" },
+ { 2, "ACAS operational" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_SAB_AC = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_SAB_AC, NULL };
+static int hf_062_V1_18_380_SAB_MN = -1;
+static const value_string valstr_062_V1_18_380_SAB_MN[] = {
+ { 0, "Unknown" },
+ { 1, "Multiple navigational aids not operating" },
+ { 2, "Multiple navigational aids operating" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_SAB_MN = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_SAB_MN, NULL };
+static int hf_062_V1_18_380_SAB_DC = -1;
+static const value_string valstr_062_V1_18_380_SAB_DC[] = {
+ { 0, "Unknown" },
+ { 1, "Differential correction" },
+ { 2, "No differential correction" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_SAB_DC = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_SAB_DC, NULL };
+static int hf_062_V1_18_380_SAB_GBS = -1;
+static const value_string valstr_062_V1_18_380_SAB_GBS[] = {
+ { 0, "Transponder ground bit not set or unknown" },
+ { 1, "Transponder Ground Bit set" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_SAB_GBS = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_SAB_GBS, NULL };
+static int hf_062_V1_18_380_SAB_STAT = -1;
+static const value_string valstr_062_V1_18_380_SAB_STAT[] = {
+ { 0, "No emergency" },
+ { 1, "General emergency" },
+ { 2, "Lifeguard / medical" },
+ { 3, "Minimum fuel" },
+ { 4, "No communications" },
+ { 5, "Unlawful interference" },
+ { 6, "Downed Aircraft" },
+ { 7, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_SAB_STAT = { 3, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_SAB_STAT, NULL };
+static const FieldPart *I062_V1_18_380_SAB_PARTS[] = {
+ &I062_V1_18_380_SAB_AC,
+ &I062_V1_18_380_SAB_MN,
+ &I062_V1_18_380_SAB_DC,
+ &I062_V1_18_380_SAB_GBS,
+ &IXXX_6bit_spare,
+ &I062_V1_18_380_SAB_STAT,
+ NULL
+};
+static const AsterixField I062_V1_18_380_SAB = { FIXED, 2, 0, 0, &hf_062_V1_18_380_SAB, I062_V1_18_380_SAB_PARTS, { NULL } };
+static int hf_062_V1_18_380_ACS = -1;
+static int hf_062_V1_18_380_ACS_VALUE = -1;
+static const FieldPart I062_V1_18_380_ACS_VALUE = { 56, 1.0, FIELD_PART_HEX, &hf_062_V1_18_380_ACS_VALUE, NULL };
+static const FieldPart *I062_V1_18_380_ACS_PARTS[] = {
+ &I062_V1_18_380_ACS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_380_ACS = { FIXED, 7, 0, 0, &hf_062_V1_18_380_ACS, I062_V1_18_380_ACS_PARTS, { NULL } };
+static int hf_062_V1_18_380_BVR = -1;
+static int hf_062_V1_18_380_BVR_VALUE = -1;
+static const FieldPart I062_V1_18_380_BVR_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_062_V1_18_380_BVR_VALUE, NULL };
+static const FieldPart *I062_V1_18_380_BVR_PARTS[] = {
+ &I062_V1_18_380_BVR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_380_BVR = { FIXED, 2, 0, 0, &hf_062_V1_18_380_BVR, I062_V1_18_380_BVR_PARTS, { NULL } };
+static int hf_062_V1_18_380_GVR = -1;
+static int hf_062_V1_18_380_GVR_VALUE = -1;
+static const FieldPart I062_V1_18_380_GVR_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_062_V1_18_380_GVR_VALUE, NULL };
+static const FieldPart *I062_V1_18_380_GVR_PARTS[] = {
+ &I062_V1_18_380_GVR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_380_GVR = { FIXED, 2, 0, 0, &hf_062_V1_18_380_GVR, I062_V1_18_380_GVR_PARTS, { NULL } };
+static int hf_062_V1_18_380_RAN = -1;
+static int hf_062_V1_18_380_RAN_VALUE = -1;
+static const FieldPart I062_V1_18_380_RAN_VALUE = { 16, 0.01, FIELD_PART_FLOAT, &hf_062_V1_18_380_RAN_VALUE, NULL };
+static const FieldPart *I062_V1_18_380_RAN_PARTS[] = {
+ &I062_V1_18_380_RAN_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_380_RAN = { FIXED, 2, 0, 0, &hf_062_V1_18_380_RAN, I062_V1_18_380_RAN_PARTS, { NULL } };
+static int hf_062_V1_18_380_TAR = -1;
+static int hf_062_V1_18_380_TAR_TI = -1;
+static const value_string valstr_062_V1_18_380_TAR_TI[] = {
+ { 0, "Not available" },
+ { 1, "Left" },
+ { 2, "Right" },
+ { 3, "Straight" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_TAR_TI = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_TAR_TI, NULL };
+static int hf_062_V1_18_380_TAR_ROT = -1;
+static const FieldPart I062_V1_18_380_TAR_ROT = { 7, 0.25, FIELD_PART_FLOAT, &hf_062_V1_18_380_TAR_ROT, NULL };
+static const FieldPart *I062_V1_18_380_TAR_PARTS[] = {
+ &I062_V1_18_380_TAR_TI,
+ &IXXX_6bit_spare,
+ &I062_V1_18_380_TAR_ROT,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I062_V1_18_380_TAR = { FIXED, 2, 0, 0, &hf_062_V1_18_380_TAR, I062_V1_18_380_TAR_PARTS, { NULL } };
+static int hf_062_V1_18_380_TAN = -1;
+static int hf_062_V1_18_380_TAN_VALUE = -1;
+static const FieldPart I062_V1_18_380_TAN_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_062_V1_18_380_TAN_VALUE, NULL };
+static const FieldPart *I062_V1_18_380_TAN_PARTS[] = {
+ &I062_V1_18_380_TAN_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_380_TAN = { FIXED, 2, 0, 0, &hf_062_V1_18_380_TAN, I062_V1_18_380_TAN_PARTS, { NULL } };
+static int hf_062_V1_18_380_GS = -1;
+static int hf_062_V1_18_380_GS_VALUE = -1;
+static const FieldPart I062_V1_18_380_GS_VALUE = { 16, 0.00006103515625, FIELD_PART_FLOAT, &hf_062_V1_18_380_GS_VALUE, NULL };
+static const FieldPart *I062_V1_18_380_GS_PARTS[] = {
+ &I062_V1_18_380_GS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_380_GS = { FIXED, 2, 0, 0, &hf_062_V1_18_380_GS, I062_V1_18_380_GS_PARTS, { NULL } };
+static int hf_062_V1_18_380_VUN = -1;
+static int hf_062_V1_18_380_VUN_VALUE = -1;
+static const FieldPart I062_V1_18_380_VUN_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_18_380_VUN_VALUE, NULL };
+static const FieldPart *I062_V1_18_380_VUN_PARTS[] = {
+ &I062_V1_18_380_VUN_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_380_VUN = { FIXED, 1, 0, 0, &hf_062_V1_18_380_VUN, I062_V1_18_380_VUN_PARTS, { NULL } };
+static int hf_062_V1_18_380_MET = -1;
+static int hf_062_V1_18_380_MET_WS = -1;
+static const value_string valstr_062_V1_18_380_MET_WS[] = {
+ { 0, "Not valid Wind Speed" },
+ { 1, "Valid Wind Speed" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_MET_WS = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_MET_WS, NULL };
+static int hf_062_V1_18_380_MET_WD = -1;
+static const value_string valstr_062_V1_18_380_MET_WD[] = {
+ { 0, "Not valid Wind Direction" },
+ { 1, "Valid Wind Direction" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_MET_WD = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_MET_WD, NULL };
+static int hf_062_V1_18_380_MET_TMP = -1;
+static const value_string valstr_062_V1_18_380_MET_TMP[] = {
+ { 0, "Not valid Temperature" },
+ { 1, "Valid Temperature" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_MET_TMP = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_MET_TMP, NULL };
+static int hf_062_V1_18_380_MET_TRB = -1;
+static const value_string valstr_062_V1_18_380_MET_TRB[] = {
+ { 0, "Not valid Turbulence" },
+ { 1, "Valid Turbulence" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_MET_TRB = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_MET_TRB, NULL };
+static int hf_062_V1_18_380_MET_WSD = -1;
+static const FieldPart I062_V1_18_380_MET_WSD = { 16, 1.0, FIELD_PART_UFLOAT, &hf_062_V1_18_380_MET_WSD, NULL };
+static int hf_062_V1_18_380_MET_WDD = -1;
+static const FieldPart I062_V1_18_380_MET_WDD = { 16, 1.0, FIELD_PART_UFLOAT, &hf_062_V1_18_380_MET_WDD, NULL };
+static int hf_062_V1_18_380_MET_TMPD = -1;
+static const FieldPart I062_V1_18_380_MET_TMPD = { 16, 0.25, FIELD_PART_FLOAT, &hf_062_V1_18_380_MET_TMPD, NULL };
+static int hf_062_V1_18_380_MET_TRBD = -1;
+static const FieldPart I062_V1_18_380_MET_TRBD = { 8, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_MET_TRBD, NULL };
+static const FieldPart *I062_V1_18_380_MET_PARTS[] = {
+ &I062_V1_18_380_MET_WS,
+ &I062_V1_18_380_MET_WD,
+ &I062_V1_18_380_MET_TMP,
+ &I062_V1_18_380_MET_TRB,
+ &IXXX_4bit_spare,
+ &I062_V1_18_380_MET_WSD,
+ &I062_V1_18_380_MET_WDD,
+ &I062_V1_18_380_MET_TMPD,
+ &I062_V1_18_380_MET_TRBD,
+ NULL
+};
+static const AsterixField I062_V1_18_380_MET = { FIXED, 8, 0, 0, &hf_062_V1_18_380_MET, I062_V1_18_380_MET_PARTS, { NULL } };
+static int hf_062_V1_18_380_EMC = -1;
+static int hf_062_V1_18_380_EMC_VALUE = -1;
+static const value_string valstr_062_V1_18_380_EMC_VALUE[] = {
+ { 1, "Light aircraft =< 7000 kg" },
+ { 2, "Reserved" },
+ { 3, "7000 kg < medium aircraft < 136000 kg" },
+ { 4, "Reserved" },
+ { 5, "136000 kg <= heavy aircraft" },
+ { 6, "Highly manoeuvrable (5g acceleration capability) and high speed (>400 knots cruise)" },
+ { 7, "Reserved" },
+ { 8, "Reserved" },
+ { 9, "Reserved" },
+ { 10, "Rotocraft" },
+ { 11, "Glider / sailplane" },
+ { 12, "Lighter-than-air" },
+ { 13, "Unmanned aerial vehicle" },
+ { 14, "Space / transatmospheric vehicle" },
+ { 15, "Ultralight / handglider / paraglider" },
+ { 16, "Parachutist / skydiver" },
+ { 17, "Reserved" },
+ { 18, "Reserved" },
+ { 19, "Reserved" },
+ { 20, "Surface emergency vehicle" },
+ { 21, "Surface service vehicle" },
+ { 22, "Fixed ground or tethered obstruction" },
+ { 23, "Reserved" },
+ { 24, "Reserved" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_380_EMC_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_062_V1_18_380_EMC_VALUE, NULL };
+static const FieldPart *I062_V1_18_380_EMC_PARTS[] = {
+ &I062_V1_18_380_EMC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_380_EMC = { FIXED, 1, 0, 0, &hf_062_V1_18_380_EMC, I062_V1_18_380_EMC_PARTS, { NULL } };
+static int hf_062_V1_18_380_POS = -1;
+static int hf_062_V1_18_380_POS_LAT = -1;
+static const FieldPart I062_V1_18_380_POS_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_V1_18_380_POS_LAT, NULL };
+static int hf_062_V1_18_380_POS_LON = -1;
+static const FieldPart I062_V1_18_380_POS_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_V1_18_380_POS_LON, NULL };
+static const FieldPart *I062_V1_18_380_POS_PARTS[] = {
+ &I062_V1_18_380_POS_LAT,
+ &I062_V1_18_380_POS_LON,
+ NULL
+};
+static const AsterixField I062_V1_18_380_POS = { FIXED, 6, 0, 0, &hf_062_V1_18_380_POS, I062_V1_18_380_POS_PARTS, { NULL } };
+static int hf_062_V1_18_380_GAL = -1;
+static int hf_062_V1_18_380_GAL_VALUE = -1;
+static const FieldPart I062_V1_18_380_GAL_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_062_V1_18_380_GAL_VALUE, NULL };
+static const FieldPart *I062_V1_18_380_GAL_PARTS[] = {
+ &I062_V1_18_380_GAL_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_380_GAL = { FIXED, 2, 0, 0, &hf_062_V1_18_380_GAL, I062_V1_18_380_GAL_PARTS, { NULL } };
+static int hf_062_V1_18_380_PUN = -1;
+static int hf_062_V1_18_380_PUN_PUN = -1;
+static const FieldPart I062_V1_18_380_PUN_PUN = { 4, 1.0, FIELD_PART_HEX, &hf_062_V1_18_380_PUN_PUN, NULL };
+static const FieldPart *I062_V1_18_380_PUN_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I062_V1_18_380_PUN_PUN,
+ NULL
+};
+static const AsterixField I062_V1_18_380_PUN = { FIXED, 1, 0, 0, &hf_062_V1_18_380_PUN, I062_V1_18_380_PUN_PARTS, { NULL } };
+static int hf_062_V1_18_380_MB = -1;
+static int hf_062_V1_18_380_MB_VALUE = -1;
+static const FieldPart I062_V1_18_380_MB_VALUE = { 64, 1.0, FIELD_PART_HEX, &hf_062_V1_18_380_MB_VALUE, NULL };
+static const FieldPart *I062_V1_18_380_MB_PARTS[] = {
+ &I062_V1_18_380_MB_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_380_MB = { REPETITIVE, 8, 1, 0, &hf_062_V1_18_380_MB, I062_V1_18_380_MB_PARTS, { NULL } };
+static int hf_062_V1_18_380_IAR = -1;
+static int hf_062_V1_18_380_IAR_VALUE = -1;
+static const FieldPart I062_V1_18_380_IAR_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_062_V1_18_380_IAR_VALUE, NULL };
+static const FieldPart *I062_V1_18_380_IAR_PARTS[] = {
+ &I062_V1_18_380_IAR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_380_IAR = { FIXED, 2, 0, 0, &hf_062_V1_18_380_IAR, I062_V1_18_380_IAR_PARTS, { NULL } };
+static int hf_062_V1_18_380_MAC = -1;
+static int hf_062_V1_18_380_MAC_VALUE = -1;
+static const FieldPart I062_V1_18_380_MAC_VALUE = { 16, 0.008, FIELD_PART_UFLOAT, &hf_062_V1_18_380_MAC_VALUE, NULL };
+static const FieldPart *I062_V1_18_380_MAC_PARTS[] = {
+ &I062_V1_18_380_MAC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_380_MAC = { FIXED, 2, 0, 0, &hf_062_V1_18_380_MAC, I062_V1_18_380_MAC_PARTS, { NULL } };
+static int hf_062_V1_18_380_BPS = -1;
+static int hf_062_V1_18_380_BPS_BPS = -1;
+static const FieldPart I062_V1_18_380_BPS_BPS = { 12, 0.1, FIELD_PART_UFLOAT, &hf_062_V1_18_380_BPS_BPS, NULL };
+static const FieldPart *I062_V1_18_380_BPS_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I062_V1_18_380_BPS_BPS,
+ NULL
+};
+static const AsterixField I062_V1_18_380_BPS = { FIXED, 2, 0, 0, &hf_062_V1_18_380_BPS, I062_V1_18_380_BPS_PARTS, { NULL } };
+static const AsterixField I062_V1_18_380 = { COMPOUND, 0, 0, 0, &hf_062_V1_18_380, NULL, { &I062_V1_18_380_ADR, &I062_V1_18_380_ID, &I062_V1_18_380_MHG, &I062_V1_18_380_IAS, &I062_V1_18_380_TAS, &I062_V1_18_380_SAL, &I062_V1_18_380_FSS, &I062_V1_18_380_TIS, &I062_V1_18_380_TID, &I062_V1_18_380_COM, &I062_V1_18_380_SAB, &I062_V1_18_380_ACS, &I062_V1_18_380_BVR, &I062_V1_18_380_GVR, &I062_V1_18_380_RAN, &I062_V1_18_380_TAR, &I062_V1_18_380_TAN, &I062_V1_18_380_GS, &I062_V1_18_380_VUN, &I062_V1_18_380_MET, &I062_V1_18_380_EMC, &I062_V1_18_380_POS, &I062_V1_18_380_GAL, &I062_V1_18_380_PUN, &I062_V1_18_380_MB, &I062_V1_18_380_IAR, &I062_V1_18_380_MAC, &I062_V1_18_380_BPS, NULL } };
+static int hf_062_V1_18_390 = -1;
+static int hf_062_V1_18_390_TAG = -1;
+static int hf_062_V1_18_390_TAG_SAC = -1;
+static const FieldPart I062_V1_18_390_TAG_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_18_390_TAG_SAC, NULL };
+static int hf_062_V1_18_390_TAG_SIC = -1;
+static const FieldPart I062_V1_18_390_TAG_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_18_390_TAG_SIC, NULL };
+static const FieldPart *I062_V1_18_390_TAG_PARTS[] = {
+ &I062_V1_18_390_TAG_SAC,
+ &I062_V1_18_390_TAG_SIC,
+ NULL
+};
+static const AsterixField I062_V1_18_390_TAG = { FIXED, 2, 0, 0, &hf_062_V1_18_390_TAG, I062_V1_18_390_TAG_PARTS, { NULL } };
+static int hf_062_V1_18_390_CS = -1;
+static int hf_062_V1_18_390_CS_VALUE = -1;
+static const FieldPart I062_V1_18_390_CS_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_062_V1_18_390_CS_VALUE, NULL };
+static const FieldPart *I062_V1_18_390_CS_PARTS[] = {
+ &I062_V1_18_390_CS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_390_CS = { FIXED, 7, 0, 0, &hf_062_V1_18_390_CS, I062_V1_18_390_CS_PARTS, { NULL } };
+static int hf_062_V1_18_390_IFI = -1;
+static int hf_062_V1_18_390_IFI_TYP = -1;
+static const value_string valstr_062_V1_18_390_IFI_TYP[] = {
+ { 0, "Plan Number" },
+ { 1, "Unit 1 internal flight number" },
+ { 2, "Unit 2 internal flight number" },
+ { 3, "Unit 3 internal flight number" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_390_IFI_TYP = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_18_390_IFI_TYP, NULL };
+static int hf_062_V1_18_390_IFI_NBR = -1;
+static const FieldPart I062_V1_18_390_IFI_NBR = { 27, 1.0, FIELD_PART_UINT, &hf_062_V1_18_390_IFI_NBR, NULL };
+static const FieldPart *I062_V1_18_390_IFI_PARTS[] = {
+ &I062_V1_18_390_IFI_TYP,
+ &IXXX_3bit_spare,
+ &I062_V1_18_390_IFI_NBR,
+ NULL
+};
+static const AsterixField I062_V1_18_390_IFI = { FIXED, 4, 0, 0, &hf_062_V1_18_390_IFI, I062_V1_18_390_IFI_PARTS, { NULL } };
+static int hf_062_V1_18_390_FCT = -1;
+static int hf_062_V1_18_390_FCT_GATOAT = -1;
+static const value_string valstr_062_V1_18_390_FCT_GATOAT[] = {
+ { 0, "Unknown" },
+ { 1, "General Air Traffic" },
+ { 2, "Operational Air Traffic" },
+ { 3, "Not applicable" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_390_FCT_GATOAT = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_18_390_FCT_GATOAT, NULL };
+static int hf_062_V1_18_390_FCT_FR1FR2 = -1;
+static const value_string valstr_062_V1_18_390_FCT_FR1FR2[] = {
+ { 0, "Instrument Flight Rules" },
+ { 1, "Visual Flight Rules" },
+ { 2, "Not applicable" },
+ { 3, "Controlled Visual Flight Rules" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_390_FCT_FR1FR2 = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_18_390_FCT_FR1FR2, NULL };
+static int hf_062_V1_18_390_FCT_RVSM = -1;
+static const value_string valstr_062_V1_18_390_FCT_RVSM[] = {
+ { 0, "Unknown" },
+ { 1, "Approved" },
+ { 2, "Exempt" },
+ { 3, "Not Approved" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_390_FCT_RVSM = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_18_390_FCT_RVSM, NULL };
+static int hf_062_V1_18_390_FCT_HPR = -1;
+static const value_string valstr_062_V1_18_390_FCT_HPR[] = {
+ { 0, "Normal Priority Flight" },
+ { 1, "High Priority Flight" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_390_FCT_HPR = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_390_FCT_HPR, NULL };
+static const FieldPart *I062_V1_18_390_FCT_PARTS[] = {
+ &I062_V1_18_390_FCT_GATOAT,
+ &I062_V1_18_390_FCT_FR1FR2,
+ &I062_V1_18_390_FCT_RVSM,
+ &I062_V1_18_390_FCT_HPR,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I062_V1_18_390_FCT = { FIXED, 1, 0, 0, &hf_062_V1_18_390_FCT, I062_V1_18_390_FCT_PARTS, { NULL } };
+static int hf_062_V1_18_390_TAC = -1;
+static int hf_062_V1_18_390_TAC_VALUE = -1;
+static const FieldPart I062_V1_18_390_TAC_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_062_V1_18_390_TAC_VALUE, NULL };
+static const FieldPart *I062_V1_18_390_TAC_PARTS[] = {
+ &I062_V1_18_390_TAC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_390_TAC = { FIXED, 4, 0, 0, &hf_062_V1_18_390_TAC, I062_V1_18_390_TAC_PARTS, { NULL } };
+static int hf_062_V1_18_390_WTC = -1;
+static int hf_062_V1_18_390_WTC_VALUE = -1;
+static const FieldPart I062_V1_18_390_WTC_VALUE = { 8, 1.0, FIELD_PART_ASCII, &hf_062_V1_18_390_WTC_VALUE, NULL };
+static const FieldPart *I062_V1_18_390_WTC_PARTS[] = {
+ &I062_V1_18_390_WTC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_390_WTC = { FIXED, 1, 0, 0, &hf_062_V1_18_390_WTC, I062_V1_18_390_WTC_PARTS, { NULL } };
+static int hf_062_V1_18_390_DEP = -1;
+static int hf_062_V1_18_390_DEP_VALUE = -1;
+static const FieldPart I062_V1_18_390_DEP_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_062_V1_18_390_DEP_VALUE, NULL };
+static const FieldPart *I062_V1_18_390_DEP_PARTS[] = {
+ &I062_V1_18_390_DEP_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_390_DEP = { FIXED, 4, 0, 0, &hf_062_V1_18_390_DEP, I062_V1_18_390_DEP_PARTS, { NULL } };
+static int hf_062_V1_18_390_DST = -1;
+static int hf_062_V1_18_390_DST_VALUE = -1;
+static const FieldPart I062_V1_18_390_DST_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_062_V1_18_390_DST_VALUE, NULL };
+static const FieldPart *I062_V1_18_390_DST_PARTS[] = {
+ &I062_V1_18_390_DST_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_390_DST = { FIXED, 4, 0, 0, &hf_062_V1_18_390_DST, I062_V1_18_390_DST_PARTS, { NULL } };
+static int hf_062_V1_18_390_RDS = -1;
+static int hf_062_V1_18_390_RDS_NU1 = -1;
+static const FieldPart I062_V1_18_390_RDS_NU1 = { 8, 1.0, FIELD_PART_ASCII, &hf_062_V1_18_390_RDS_NU1, NULL };
+static int hf_062_V1_18_390_RDS_NU2 = -1;
+static const FieldPart I062_V1_18_390_RDS_NU2 = { 8, 1.0, FIELD_PART_ASCII, &hf_062_V1_18_390_RDS_NU2, NULL };
+static int hf_062_V1_18_390_RDS_LTR = -1;
+static const FieldPart I062_V1_18_390_RDS_LTR = { 8, 1.0, FIELD_PART_ASCII, &hf_062_V1_18_390_RDS_LTR, NULL };
+static const FieldPart *I062_V1_18_390_RDS_PARTS[] = {
+ &I062_V1_18_390_RDS_NU1,
+ &I062_V1_18_390_RDS_NU2,
+ &I062_V1_18_390_RDS_LTR,
+ NULL
+};
+static const AsterixField I062_V1_18_390_RDS = { FIXED, 3, 0, 0, &hf_062_V1_18_390_RDS, I062_V1_18_390_RDS_PARTS, { NULL } };
+static int hf_062_V1_18_390_CFL = -1;
+static int hf_062_V1_18_390_CFL_VALUE = -1;
+static const FieldPart I062_V1_18_390_CFL_VALUE = { 16, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_390_CFL_VALUE, NULL };
+static const FieldPart *I062_V1_18_390_CFL_PARTS[] = {
+ &I062_V1_18_390_CFL_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_390_CFL = { FIXED, 2, 0, 0, &hf_062_V1_18_390_CFL, I062_V1_18_390_CFL_PARTS, { NULL } };
+static int hf_062_V1_18_390_CTL = -1;
+static int hf_062_V1_18_390_CTL_CENTRE = -1;
+static const FieldPart I062_V1_18_390_CTL_CENTRE = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_18_390_CTL_CENTRE, NULL };
+static int hf_062_V1_18_390_CTL_POSITION = -1;
+static const FieldPart I062_V1_18_390_CTL_POSITION = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_18_390_CTL_POSITION, NULL };
+static const FieldPart *I062_V1_18_390_CTL_PARTS[] = {
+ &I062_V1_18_390_CTL_CENTRE,
+ &I062_V1_18_390_CTL_POSITION,
+ NULL
+};
+static const AsterixField I062_V1_18_390_CTL = { FIXED, 2, 0, 0, &hf_062_V1_18_390_CTL, I062_V1_18_390_CTL_PARTS, { NULL } };
+static int hf_062_V1_18_390_TOD = -1;
+static int hf_062_V1_18_390_TOD_TYP = -1;
+static const value_string valstr_062_V1_18_390_TOD_TYP[] = {
+ { 0, "Scheduled off-block time" },
+ { 1, "Estimated off-block time" },
+ { 2, "Estimated take-off time" },
+ { 3, "Actual off-block time" },
+ { 4, "Predicted time at runway hold" },
+ { 5, "Actual time at runway hold" },
+ { 6, "Actual line-up time" },
+ { 7, "Actual take-off time" },
+ { 8, "Estimated time of arrival" },
+ { 9, "Predicted landing time" },
+ { 10, "Actual landing time" },
+ { 11, "Actual time off runway" },
+ { 12, "Predicted time to gate" },
+ { 13, "Actual on-block time" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_390_TOD_TYP = { 5, 1.0, FIELD_PART_UINT, &hf_062_V1_18_390_TOD_TYP, NULL };
+static int hf_062_V1_18_390_TOD_DAY = -1;
+static const value_string valstr_062_V1_18_390_TOD_DAY[] = {
+ { 0, "Today" },
+ { 1, "Yesterday" },
+ { 2, "Tomorrow" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_390_TOD_DAY = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_18_390_TOD_DAY, NULL };
+static int hf_062_V1_18_390_TOD_HOR = -1;
+static const FieldPart I062_V1_18_390_TOD_HOR = { 5, 1.0, FIELD_PART_UINT, &hf_062_V1_18_390_TOD_HOR, NULL };
+static int hf_062_V1_18_390_TOD_MIN = -1;
+static const FieldPart I062_V1_18_390_TOD_MIN = { 6, 1.0, FIELD_PART_UINT, &hf_062_V1_18_390_TOD_MIN, NULL };
+static int hf_062_V1_18_390_TOD_AVS = -1;
+static const value_string valstr_062_V1_18_390_TOD_AVS[] = {
+ { 0, "Seconds available" },
+ { 1, "Seconds not available" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_390_TOD_AVS = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_390_TOD_AVS, NULL };
+static int hf_062_V1_18_390_TOD_SEC = -1;
+static const FieldPart I062_V1_18_390_TOD_SEC = { 6, 1.0, FIELD_PART_UINT, &hf_062_V1_18_390_TOD_SEC, NULL };
+static const FieldPart *I062_V1_18_390_TOD_PARTS[] = {
+ &I062_V1_18_390_TOD_TYP,
+ &I062_V1_18_390_TOD_DAY,
+ &IXXX_4bit_spare,
+ &I062_V1_18_390_TOD_HOR,
+ &IXXX_2bit_spare,
+ &I062_V1_18_390_TOD_MIN,
+ &I062_V1_18_390_TOD_AVS,
+ &IXXX_1bit_spare,
+ &I062_V1_18_390_TOD_SEC,
+ NULL
+};
+static const AsterixField I062_V1_18_390_TOD = { REPETITIVE, 4, 1, 0, &hf_062_V1_18_390_TOD, I062_V1_18_390_TOD_PARTS, { NULL } };
+static int hf_062_V1_18_390_AST = -1;
+static int hf_062_V1_18_390_AST_VALUE = -1;
+static const FieldPart I062_V1_18_390_AST_VALUE = { 48, 1.0, FIELD_PART_ASCII, &hf_062_V1_18_390_AST_VALUE, NULL };
+static const FieldPart *I062_V1_18_390_AST_PARTS[] = {
+ &I062_V1_18_390_AST_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_390_AST = { FIXED, 6, 0, 0, &hf_062_V1_18_390_AST, I062_V1_18_390_AST_PARTS, { NULL } };
+static int hf_062_V1_18_390_STS = -1;
+static int hf_062_V1_18_390_STS_EMP = -1;
+static const value_string valstr_062_V1_18_390_STS_EMP[] = {
+ { 0, "Empty" },
+ { 1, "Occupied" },
+ { 2, "Unknown" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_390_STS_EMP = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_18_390_STS_EMP, NULL };
+static int hf_062_V1_18_390_STS_AVL = -1;
+static const value_string valstr_062_V1_18_390_STS_AVL[] = {
+ { 0, "Available" },
+ { 1, "Not available" },
+ { 2, "Unknown" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_390_STS_AVL = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_18_390_STS_AVL, NULL };
+static const FieldPart *I062_V1_18_390_STS_PARTS[] = {
+ &I062_V1_18_390_STS_EMP,
+ &I062_V1_18_390_STS_AVL,
+ &IXXX_4bit_spare,
+ NULL
+};
+static const AsterixField I062_V1_18_390_STS = { FIXED, 1, 0, 0, &hf_062_V1_18_390_STS, I062_V1_18_390_STS_PARTS, { NULL } };
+static int hf_062_V1_18_390_STD = -1;
+static int hf_062_V1_18_390_STD_VALUE = -1;
+static const FieldPart I062_V1_18_390_STD_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_062_V1_18_390_STD_VALUE, NULL };
+static const FieldPart *I062_V1_18_390_STD_PARTS[] = {
+ &I062_V1_18_390_STD_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_390_STD = { FIXED, 7, 0, 0, &hf_062_V1_18_390_STD, I062_V1_18_390_STD_PARTS, { NULL } };
+static int hf_062_V1_18_390_STA = -1;
+static int hf_062_V1_18_390_STA_VALUE = -1;
+static const FieldPart I062_V1_18_390_STA_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_062_V1_18_390_STA_VALUE, NULL };
+static const FieldPart *I062_V1_18_390_STA_PARTS[] = {
+ &I062_V1_18_390_STA_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_390_STA = { FIXED, 7, 0, 0, &hf_062_V1_18_390_STA, I062_V1_18_390_STA_PARTS, { NULL } };
+static int hf_062_V1_18_390_PEM = -1;
+static int hf_062_V1_18_390_PEM_VA = -1;
+static const value_string valstr_062_V1_18_390_PEM_VA[] = {
+ { 0, "No valid Mode 3/A available" },
+ { 1, "Valid Mode 3/A available" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_18_390_PEM_VA = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_18_390_PEM_VA, NULL };
+static int hf_062_V1_18_390_PEM_MODE3A = -1;
+static const FieldPart I062_V1_18_390_PEM_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_062_V1_18_390_PEM_MODE3A, NULL };
+static const FieldPart *I062_V1_18_390_PEM_PARTS[] = {
+ &IXXX_3bit_spare,
+ &I062_V1_18_390_PEM_VA,
+ &I062_V1_18_390_PEM_MODE3A,
+ NULL
+};
+static const AsterixField I062_V1_18_390_PEM = { FIXED, 2, 0, 0, &hf_062_V1_18_390_PEM, I062_V1_18_390_PEM_PARTS, { NULL } };
+static int hf_062_V1_18_390_PEC = -1;
+static int hf_062_V1_18_390_PEC_VALUE = -1;
+static const FieldPart I062_V1_18_390_PEC_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_062_V1_18_390_PEC_VALUE, NULL };
+static const FieldPart *I062_V1_18_390_PEC_PARTS[] = {
+ &I062_V1_18_390_PEC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_390_PEC = { FIXED, 7, 0, 0, &hf_062_V1_18_390_PEC, I062_V1_18_390_PEC_PARTS, { NULL } };
+static const AsterixField I062_V1_18_390 = { COMPOUND, 0, 0, 0, &hf_062_V1_18_390, NULL, { &I062_V1_18_390_TAG, &I062_V1_18_390_CS, &I062_V1_18_390_IFI, &I062_V1_18_390_FCT, &I062_V1_18_390_TAC, &I062_V1_18_390_WTC, &I062_V1_18_390_DEP, &I062_V1_18_390_DST, &I062_V1_18_390_RDS, &I062_V1_18_390_CFL, &I062_V1_18_390_CTL, &I062_V1_18_390_TOD, &I062_V1_18_390_AST, &I062_V1_18_390_STS, &I062_V1_18_390_STD, &I062_V1_18_390_STA, &I062_V1_18_390_PEM, &I062_V1_18_390_PEC, NULL } };
+static int hf_062_V1_18_500 = -1;
+static int hf_062_V1_18_500_APC = -1;
+static int hf_062_V1_18_500_APC_X = -1;
+static const FieldPart I062_V1_18_500_APC_X = { 16, 0.5, FIELD_PART_UFLOAT, &hf_062_V1_18_500_APC_X, NULL };
+static int hf_062_V1_18_500_APC_Y = -1;
+static const FieldPart I062_V1_18_500_APC_Y = { 16, 0.5, FIELD_PART_UFLOAT, &hf_062_V1_18_500_APC_Y, NULL };
+static const FieldPart *I062_V1_18_500_APC_PARTS[] = {
+ &I062_V1_18_500_APC_X,
+ &I062_V1_18_500_APC_Y,
+ NULL
+};
+static const AsterixField I062_V1_18_500_APC = { FIXED, 4, 0, 0, &hf_062_V1_18_500_APC, I062_V1_18_500_APC_PARTS, { NULL } };
+static int hf_062_V1_18_500_COV = -1;
+static int hf_062_V1_18_500_COV_VALUE = -1;
+static const FieldPart I062_V1_18_500_COV_VALUE = { 16, 0.5, FIELD_PART_FLOAT, &hf_062_V1_18_500_COV_VALUE, NULL };
+static const FieldPart *I062_V1_18_500_COV_PARTS[] = {
+ &I062_V1_18_500_COV_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_500_COV = { FIXED, 2, 0, 0, &hf_062_V1_18_500_COV, I062_V1_18_500_COV_PARTS, { NULL } };
+static int hf_062_V1_18_500_APW = -1;
+static int hf_062_V1_18_500_APW_LAT = -1;
+static const FieldPart I062_V1_18_500_APW_LAT = { 16, 0.00000536441802978515625, FIELD_PART_UFLOAT, &hf_062_V1_18_500_APW_LAT, NULL };
+static int hf_062_V1_18_500_APW_LON = -1;
+static const FieldPart I062_V1_18_500_APW_LON = { 16, 0.00000536441802978515625, FIELD_PART_UFLOAT, &hf_062_V1_18_500_APW_LON, NULL };
+static const FieldPart *I062_V1_18_500_APW_PARTS[] = {
+ &I062_V1_18_500_APW_LAT,
+ &I062_V1_18_500_APW_LON,
+ NULL
+};
+static const AsterixField I062_V1_18_500_APW = { FIXED, 4, 0, 0, &hf_062_V1_18_500_APW, I062_V1_18_500_APW_PARTS, { NULL } };
+static int hf_062_V1_18_500_AGA = -1;
+static int hf_062_V1_18_500_AGA_VALUE = -1;
+static const FieldPart I062_V1_18_500_AGA_VALUE = { 8, 6.25, FIELD_PART_UFLOAT, &hf_062_V1_18_500_AGA_VALUE, NULL };
+static const FieldPart *I062_V1_18_500_AGA_PARTS[] = {
+ &I062_V1_18_500_AGA_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_500_AGA = { FIXED, 1, 0, 0, &hf_062_V1_18_500_AGA, I062_V1_18_500_AGA_PARTS, { NULL } };
+static int hf_062_V1_18_500_ABA = -1;
+static int hf_062_V1_18_500_ABA_VALUE = -1;
+static const FieldPart I062_V1_18_500_ABA_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_500_ABA_VALUE, NULL };
+static const FieldPart *I062_V1_18_500_ABA_PARTS[] = {
+ &I062_V1_18_500_ABA_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_500_ABA = { FIXED, 1, 0, 0, &hf_062_V1_18_500_ABA, I062_V1_18_500_ABA_PARTS, { NULL } };
+static int hf_062_V1_18_500_ATV = -1;
+static int hf_062_V1_18_500_ATV_X = -1;
+static const FieldPart I062_V1_18_500_ATV_X = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_500_ATV_X, NULL };
+static int hf_062_V1_18_500_ATV_Y = -1;
+static const FieldPart I062_V1_18_500_ATV_Y = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_500_ATV_Y, NULL };
+static const FieldPart *I062_V1_18_500_ATV_PARTS[] = {
+ &I062_V1_18_500_ATV_X,
+ &I062_V1_18_500_ATV_Y,
+ NULL
+};
+static const AsterixField I062_V1_18_500_ATV = { FIXED, 2, 0, 0, &hf_062_V1_18_500_ATV, I062_V1_18_500_ATV_PARTS, { NULL } };
+static int hf_062_V1_18_500_AA = -1;
+static int hf_062_V1_18_500_AA_X = -1;
+static const FieldPart I062_V1_18_500_AA_X = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_500_AA_X, NULL };
+static int hf_062_V1_18_500_AA_Y = -1;
+static const FieldPart I062_V1_18_500_AA_Y = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_18_500_AA_Y, NULL };
+static const FieldPart *I062_V1_18_500_AA_PARTS[] = {
+ &I062_V1_18_500_AA_X,
+ &I062_V1_18_500_AA_Y,
+ NULL
+};
+static const AsterixField I062_V1_18_500_AA = { FIXED, 2, 0, 0, &hf_062_V1_18_500_AA, I062_V1_18_500_AA_PARTS, { NULL } };
+static int hf_062_V1_18_500_ARC = -1;
+static int hf_062_V1_18_500_ARC_VALUE = -1;
+static const FieldPart I062_V1_18_500_ARC_VALUE = { 8, 6.25, FIELD_PART_UFLOAT, &hf_062_V1_18_500_ARC_VALUE, NULL };
+static const FieldPart *I062_V1_18_500_ARC_PARTS[] = {
+ &I062_V1_18_500_ARC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_18_500_ARC = { FIXED, 1, 0, 0, &hf_062_V1_18_500_ARC, I062_V1_18_500_ARC_PARTS, { NULL } };
+static const AsterixField I062_V1_18_500 = { COMPOUND, 0, 0, 0, &hf_062_V1_18_500, NULL, { &I062_V1_18_500_APC, &I062_V1_18_500_COV, &I062_V1_18_500_APW, &I062_V1_18_500_AGA, &I062_V1_18_500_ABA, &I062_V1_18_500_ATV, &I062_V1_18_500_AA, &I062_V1_18_500_ARC, NULL } };
+static int hf_062_V1_18_510 = -1;
+static int hf_062_V1_18_510_MIDENT = -1;
+static const FieldPart I062_V1_18_510_MIDENT = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_18_510_MIDENT, NULL };
+static int hf_062_V1_18_510_MTRACK = -1;
+static const FieldPart I062_V1_18_510_MTRACK = { 15, 1.0, FIELD_PART_HEX, &hf_062_V1_18_510_MTRACK, NULL };
+static int hf_062_V1_18_510_SIDENT = -1;
+static const FieldPart I062_V1_18_510_SIDENT = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_18_510_SIDENT, NULL };
+static int hf_062_V1_18_510_STRACK = -1;
+static const FieldPart I062_V1_18_510_STRACK = { 15, 1.0, FIELD_PART_HEX, &hf_062_V1_18_510_STRACK, NULL };
+static const FieldPart *I062_V1_18_510_PARTS[] = {
+ &I062_V1_18_510_MIDENT,
+ &I062_V1_18_510_MTRACK,
+ &IXXX_FX,
+ &I062_V1_18_510_SIDENT,
+ &I062_V1_18_510_STRACK,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I062_V1_18_510 = { FX, 3, 0, 0, &hf_062_V1_18_510, I062_V1_18_510_PARTS, { NULL } };
+static int hf_062_V1_18_RE = -1;
+static const AsterixField I062_V1_18_RE = { EXP, 0, 0, 1, &hf_062_V1_18_RE, NULL, { NULL } };
+static int hf_062_V1_18_SP = -1;
+static const AsterixField I062_V1_18_SP = { EXP, 0, 0, 1, &hf_062_V1_18_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I062_V1_18_uap[] = {
+ &I062_V1_18_010,
+ &IX_SPARE,
+ &I062_V1_18_015,
+ &I062_V1_18_070,
+ &I062_V1_18_105,
+ &I062_V1_18_100,
+ &I062_V1_18_185,
+ &I062_V1_18_210,
+ &I062_V1_18_060,
+ &I062_V1_18_245,
+ &I062_V1_18_380,
+ &I062_V1_18_040,
+ &I062_V1_18_080,
+ &I062_V1_18_290,
+ &I062_V1_18_200,
+ &I062_V1_18_295,
+ &I062_V1_18_136,
+ &I062_V1_18_130,
+ &I062_V1_18_135,
+ &I062_V1_18_220,
+ &I062_V1_18_390,
+ &I062_V1_18_270,
+ &I062_V1_18_300,
+ &I062_V1_18_110,
+ &I062_V1_18_120,
+ &I062_V1_18_510,
+ &I062_V1_18_500,
+ &I062_V1_18_340,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I062_V1_18_RE,
+ &I062_V1_18_SP,
+ NULL
+};
+static const AsterixField **I062_V1_18[] = {
+ I062_V1_18_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 062, edition 1.19 */
+static int hf_062_V1_19_010 = -1;
+static int hf_062_V1_19_010_SAC = -1;
+static const FieldPart I062_V1_19_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_19_010_SAC, NULL };
+static int hf_062_V1_19_010_SIC = -1;
+static const FieldPart I062_V1_19_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_19_010_SIC, NULL };
+static const FieldPart *I062_V1_19_010_PARTS[] = {
+ &I062_V1_19_010_SAC,
+ &I062_V1_19_010_SIC,
+ NULL
+};
+static const AsterixField I062_V1_19_010 = { FIXED, 2, 0, 0, &hf_062_V1_19_010, I062_V1_19_010_PARTS, { NULL } };
+static int hf_062_V1_19_015 = -1;
+static int hf_062_V1_19_015_VALUE = -1;
+static const FieldPart I062_V1_19_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_19_015_VALUE, NULL };
+static const FieldPart *I062_V1_19_015_PARTS[] = {
+ &I062_V1_19_015_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_015 = { FIXED, 1, 0, 0, &hf_062_V1_19_015, I062_V1_19_015_PARTS, { NULL } };
+static int hf_062_V1_19_040 = -1;
+static int hf_062_V1_19_040_VALUE = -1;
+static const FieldPart I062_V1_19_040_VALUE = { 16, 1.0, FIELD_PART_HEX, &hf_062_V1_19_040_VALUE, NULL };
+static const FieldPart *I062_V1_19_040_PARTS[] = {
+ &I062_V1_19_040_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_040 = { FIXED, 2, 0, 0, &hf_062_V1_19_040, I062_V1_19_040_PARTS, { NULL } };
+static int hf_062_V1_19_060 = -1;
+static int hf_062_V1_19_060_V = -1;
+static const value_string valstr_062_V1_19_060_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_060_V = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_060_V, NULL };
+static int hf_062_V1_19_060_G = -1;
+static const value_string valstr_062_V1_19_060_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_060_G = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_060_G, NULL };
+static int hf_062_V1_19_060_CH = -1;
+static const value_string valstr_062_V1_19_060_CH[] = {
+ { 0, "No change" },
+ { 1, "Mode 3/A has changed" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_060_CH = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_060_CH, NULL };
+static int hf_062_V1_19_060_MODE3A = -1;
+static const FieldPart I062_V1_19_060_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_062_V1_19_060_MODE3A, NULL };
+static const FieldPart *I062_V1_19_060_PARTS[] = {
+ &I062_V1_19_060_V,
+ &I062_V1_19_060_G,
+ &I062_V1_19_060_CH,
+ &IXXX_1bit_spare,
+ &I062_V1_19_060_MODE3A,
+ NULL
+};
+static const AsterixField I062_V1_19_060 = { FIXED, 2, 0, 0, &hf_062_V1_19_060, I062_V1_19_060_PARTS, { NULL } };
+static int hf_062_V1_19_070 = -1;
+static int hf_062_V1_19_070_VALUE = -1;
+static const FieldPart I062_V1_19_070_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_062_V1_19_070_VALUE, NULL };
+static const FieldPart *I062_V1_19_070_PARTS[] = {
+ &I062_V1_19_070_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_070 = { FIXED, 3, 0, 0, &hf_062_V1_19_070, I062_V1_19_070_PARTS, { NULL } };
+static int hf_062_V1_19_080 = -1;
+static int hf_062_V1_19_080_MON = -1;
+static const value_string valstr_062_V1_19_080_MON[] = {
+ { 0, "Multisensor track" },
+ { 1, "Monosensor track" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_MON = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_MON, NULL };
+static int hf_062_V1_19_080_SPI = -1;
+static const value_string valstr_062_V1_19_080_SPI[] = {
+ { 0, "Default value" },
+ { 1, "SPI present in the last report received from a sensor capable of decoding this data" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_SPI, NULL };
+static int hf_062_V1_19_080_MRH = -1;
+static const value_string valstr_062_V1_19_080_MRH[] = {
+ { 0, "Barometric altitude (Mode C) more reliable" },
+ { 1, "Geometric altitude more reliable" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_MRH = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_MRH, NULL };
+static int hf_062_V1_19_080_SRC = -1;
+static const value_string valstr_062_V1_19_080_SRC[] = {
+ { 0, "No source" },
+ { 1, "GNSS" },
+ { 2, "3D radar" },
+ { 3, "Triangulation" },
+ { 4, "Height from coverage" },
+ { 5, "Speed look-up table" },
+ { 6, "Default height" },
+ { 7, "Multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_SRC = { 3, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_SRC, NULL };
+static int hf_062_V1_19_080_CNF = -1;
+static const value_string valstr_062_V1_19_080_CNF[] = {
+ { 0, "Confirmed track" },
+ { 1, "Tentative track" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_CNF = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_CNF, NULL };
+static int hf_062_V1_19_080_SIM = -1;
+static const value_string valstr_062_V1_19_080_SIM[] = {
+ { 0, "Actual track" },
+ { 1, "Simulated track" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_SIM, NULL };
+static int hf_062_V1_19_080_TSE = -1;
+static const value_string valstr_062_V1_19_080_TSE[] = {
+ { 0, "Default value" },
+ { 1, "Last message transmitted to the user for the track" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_TSE = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_TSE, NULL };
+static int hf_062_V1_19_080_TSB = -1;
+static const value_string valstr_062_V1_19_080_TSB[] = {
+ { 0, "Default value" },
+ { 1, "First message transmitted to the user for the track" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_TSB = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_TSB, NULL };
+static int hf_062_V1_19_080_FPC = -1;
+static const value_string valstr_062_V1_19_080_FPC[] = {
+ { 0, "Not flight-plan correlated" },
+ { 1, "Flight plan correlated" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_FPC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_FPC, NULL };
+static int hf_062_V1_19_080_AFF = -1;
+static const value_string valstr_062_V1_19_080_AFF[] = {
+ { 0, "Default value" },
+ { 1, "ADS-B data inconsistent with other surveillance information" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_AFF = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_AFF, NULL };
+static int hf_062_V1_19_080_STP = -1;
+static const value_string valstr_062_V1_19_080_STP[] = {
+ { 0, "Default value" },
+ { 1, "Slave Track Promotion" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_STP = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_STP, NULL };
+static int hf_062_V1_19_080_KOS = -1;
+static const value_string valstr_062_V1_19_080_KOS[] = {
+ { 0, "Complementary service used" },
+ { 1, "Background service used" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_KOS = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_KOS, NULL };
+static int hf_062_V1_19_080_AMA = -1;
+static const value_string valstr_062_V1_19_080_AMA[] = {
+ { 0, "Track not resulting from amalgamation process" },
+ { 1, "Track resulting from amalgamation process" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_AMA = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_AMA, NULL };
+static int hf_062_V1_19_080_MD4 = -1;
+static const value_string valstr_062_V1_19_080_MD4[] = {
+ { 0, "No Mode 4 interrogation" },
+ { 1, "Friendly target" },
+ { 2, "Unknown target" },
+ { 3, "No reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_MD4 = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_MD4, NULL };
+static int hf_062_V1_19_080_ME = -1;
+static const value_string valstr_062_V1_19_080_ME[] = {
+ { 0, "Default value" },
+ { 1, "Military Emergency present in the last report received from a sensor capable of decoding this data" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_ME = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_ME, NULL };
+static int hf_062_V1_19_080_MI = -1;
+static const value_string valstr_062_V1_19_080_MI[] = {
+ { 0, "Default value" },
+ { 1, "Military Identification present in the last report received from a sensor capable of decoding this data" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_MI = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_MI, NULL };
+static int hf_062_V1_19_080_MD5 = -1;
+static const value_string valstr_062_V1_19_080_MD5[] = {
+ { 0, "No Mode 5 interrogation" },
+ { 1, "Friendly target" },
+ { 2, "Unknown target" },
+ { 3, "No reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_MD5 = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_MD5, NULL };
+static int hf_062_V1_19_080_CST = -1;
+static const value_string valstr_062_V1_19_080_CST[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received track update is higher than system dependent threshold (coasting)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_CST = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_CST, NULL };
+static int hf_062_V1_19_080_PSR = -1;
+static const value_string valstr_062_V1_19_080_PSR[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received PSR track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_PSR = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_PSR, NULL };
+static int hf_062_V1_19_080_SSR = -1;
+static const value_string valstr_062_V1_19_080_SSR[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received SSR track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_SSR = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_SSR, NULL };
+static int hf_062_V1_19_080_MDS = -1;
+static const value_string valstr_062_V1_19_080_MDS[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received Mode S track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_MDS = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_MDS, NULL };
+static int hf_062_V1_19_080_ADS = -1;
+static const value_string valstr_062_V1_19_080_ADS[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received ADS-B track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_ADS = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_ADS, NULL };
+static int hf_062_V1_19_080_SUC = -1;
+static const value_string valstr_062_V1_19_080_SUC[] = {
+ { 0, "Default value" },
+ { 1, "Special Used Code (Mode A codes to be defined in the system to mark a track with special interest)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_SUC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_SUC, NULL };
+static int hf_062_V1_19_080_AAC = -1;
+static const value_string valstr_062_V1_19_080_AAC[] = {
+ { 0, "Default value" },
+ { 1, "Assigned Mode A Code Conflict (same discrete Mode A Code assigned to another track)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_AAC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_AAC, NULL };
+static int hf_062_V1_19_080_SDS = -1;
+static const value_string valstr_062_V1_19_080_SDS[] = {
+ { 0, "Combined" },
+ { 1, "Co-operative only" },
+ { 2, "Non-Cooperative only" },
+ { 3, "Not defined" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_SDS = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_SDS, NULL };
+static int hf_062_V1_19_080_EMS = -1;
+static const value_string valstr_062_V1_19_080_EMS[] = {
+ { 0, "No emergency" },
+ { 1, "General emergency" },
+ { 2, "Lifeguard / medical" },
+ { 3, "Minimum fuel" },
+ { 4, "No communications" },
+ { 5, "Unlawful interference" },
+ { 6, "Downed Aircraft" },
+ { 7, "Undefined" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_EMS = { 3, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_EMS, NULL };
+static int hf_062_V1_19_080_PFT = -1;
+static const value_string valstr_062_V1_19_080_PFT[] = {
+ { 0, "No indication" },
+ { 1, "Potential False Track Indication" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_PFT = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_PFT, NULL };
+static int hf_062_V1_19_080_FPLT = -1;
+static const value_string valstr_062_V1_19_080_FPLT[] = {
+ { 0, "Default value" },
+ { 1, "Track created / updated with FPL data" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_FPLT = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_FPLT, NULL };
+static int hf_062_V1_19_080_DUPT = -1;
+static const value_string valstr_062_V1_19_080_DUPT[] = {
+ { 0, "Default value" },
+ { 1, "Duplicate Mode 3/A Code" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_DUPT = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_DUPT, NULL };
+static int hf_062_V1_19_080_DUPF = -1;
+static const value_string valstr_062_V1_19_080_DUPF[] = {
+ { 0, "Default value" },
+ { 1, "Duplicate Flight Plan" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_DUPF = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_DUPF, NULL };
+static int hf_062_V1_19_080_DUPM = -1;
+static const value_string valstr_062_V1_19_080_DUPM[] = {
+ { 0, "Default value" },
+ { 1, "Duplicate Flight Plan due to manual correlation" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_DUPM = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_DUPM, NULL };
+static int hf_062_V1_19_080_SFC = -1;
+static const value_string valstr_062_V1_19_080_SFC[] = {
+ { 0, "Default value" },
+ { 1, "Surface target" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_SFC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_SFC, NULL };
+static int hf_062_V1_19_080_IDD = -1;
+static const value_string valstr_062_V1_19_080_IDD[] = {
+ { 0, "No indication" },
+ { 1, "Duplicate Flight-ID" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_IDD = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_IDD, NULL };
+static int hf_062_V1_19_080_IEC = -1;
+static const value_string valstr_062_V1_19_080_IEC[] = {
+ { 0, "Default value" },
+ { 1, "Inconsistent Emergency Code" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_080_IEC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_080_IEC, NULL };
+static const FieldPart *I062_V1_19_080_PARTS[] = {
+ &I062_V1_19_080_MON,
+ &I062_V1_19_080_SPI,
+ &I062_V1_19_080_MRH,
+ &I062_V1_19_080_SRC,
+ &I062_V1_19_080_CNF,
+ &IXXX_FX,
+ &I062_V1_19_080_SIM,
+ &I062_V1_19_080_TSE,
+ &I062_V1_19_080_TSB,
+ &I062_V1_19_080_FPC,
+ &I062_V1_19_080_AFF,
+ &I062_V1_19_080_STP,
+ &I062_V1_19_080_KOS,
+ &IXXX_FX,
+ &I062_V1_19_080_AMA,
+ &I062_V1_19_080_MD4,
+ &I062_V1_19_080_ME,
+ &I062_V1_19_080_MI,
+ &I062_V1_19_080_MD5,
+ &IXXX_FX,
+ &I062_V1_19_080_CST,
+ &I062_V1_19_080_PSR,
+ &I062_V1_19_080_SSR,
+ &I062_V1_19_080_MDS,
+ &I062_V1_19_080_ADS,
+ &I062_V1_19_080_SUC,
+ &I062_V1_19_080_AAC,
+ &IXXX_FX,
+ &I062_V1_19_080_SDS,
+ &I062_V1_19_080_EMS,
+ &I062_V1_19_080_PFT,
+ &I062_V1_19_080_FPLT,
+ &IXXX_FX,
+ &I062_V1_19_080_DUPT,
+ &I062_V1_19_080_DUPF,
+ &I062_V1_19_080_DUPM,
+ &I062_V1_19_080_SFC,
+ &I062_V1_19_080_IDD,
+ &I062_V1_19_080_IEC,
+ &IXXX_1bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I062_V1_19_080 = { FX, 1, 0, 0, &hf_062_V1_19_080, I062_V1_19_080_PARTS, { NULL } };
+static int hf_062_V1_19_100 = -1;
+static int hf_062_V1_19_100_X = -1;
+static const FieldPart I062_V1_19_100_X = { 24, 0.5, FIELD_PART_FLOAT, &hf_062_V1_19_100_X, NULL };
+static int hf_062_V1_19_100_Y = -1;
+static const FieldPart I062_V1_19_100_Y = { 24, 0.5, FIELD_PART_FLOAT, &hf_062_V1_19_100_Y, NULL };
+static const FieldPart *I062_V1_19_100_PARTS[] = {
+ &I062_V1_19_100_X,
+ &I062_V1_19_100_Y,
+ NULL
+};
+static const AsterixField I062_V1_19_100 = { FIXED, 6, 0, 0, &hf_062_V1_19_100, I062_V1_19_100_PARTS, { NULL } };
+static int hf_062_V1_19_105 = -1;
+static int hf_062_V1_19_105_LAT = -1;
+static const FieldPart I062_V1_19_105_LAT = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_062_V1_19_105_LAT, NULL };
+static int hf_062_V1_19_105_LON = -1;
+static const FieldPart I062_V1_19_105_LON = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_062_V1_19_105_LON, NULL };
+static const FieldPart *I062_V1_19_105_PARTS[] = {
+ &I062_V1_19_105_LAT,
+ &I062_V1_19_105_LON,
+ NULL
+};
+static const AsterixField I062_V1_19_105 = { FIXED, 8, 0, 0, &hf_062_V1_19_105, I062_V1_19_105_PARTS, { NULL } };
+static int hf_062_V1_19_110 = -1;
+static int hf_062_V1_19_110_SUM = -1;
+static int hf_062_V1_19_110_SUM_M5 = -1;
+static const value_string valstr_062_V1_19_110_SUM_M5[] = {
+ { 0, "No Mode 5 interrogation" },
+ { 1, "Mode 5 interrogation" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_110_SUM_M5 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_110_SUM_M5, NULL };
+static int hf_062_V1_19_110_SUM_ID = -1;
+static const value_string valstr_062_V1_19_110_SUM_ID[] = {
+ { 0, "No authenticated Mode 5 ID reply" },
+ { 1, "Authenticated Mode 5 ID reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_110_SUM_ID = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_110_SUM_ID, NULL };
+static int hf_062_V1_19_110_SUM_DA = -1;
+static const value_string valstr_062_V1_19_110_SUM_DA[] = {
+ { 0, "No authenticated Mode 5 Data reply or Report" },
+ { 1, "Authenticated Mode 5 Data reply or Report (i.e any valid Mode 5 reply type other than ID)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_110_SUM_DA = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_110_SUM_DA, NULL };
+static int hf_062_V1_19_110_SUM_M1 = -1;
+static const value_string valstr_062_V1_19_110_SUM_M1[] = {
+ { 0, "Mode 1 code not present or not from Mode 5 reply" },
+ { 1, "Mode 1 code from Mode 5 reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_110_SUM_M1 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_110_SUM_M1, NULL };
+static int hf_062_V1_19_110_SUM_M2 = -1;
+static const value_string valstr_062_V1_19_110_SUM_M2[] = {
+ { 0, "Mode 2 code not present or not from Mode 5 reply" },
+ { 1, "Mode 2 code from Mode 5 reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_110_SUM_M2 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_110_SUM_M2, NULL };
+static int hf_062_V1_19_110_SUM_M3 = -1;
+static const value_string valstr_062_V1_19_110_SUM_M3[] = {
+ { 0, "Mode 3 code not present or not from Mode 5 reply" },
+ { 1, "Mode 3 code from Mode 5 reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_110_SUM_M3 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_110_SUM_M3, NULL };
+static int hf_062_V1_19_110_SUM_MC = -1;
+static const value_string valstr_062_V1_19_110_SUM_MC[] = {
+ { 0, "Mode C altitude code not present or not from Mode 5 reply" },
+ { 1, "Mode C altitude from Mode 5 reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_110_SUM_MC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_110_SUM_MC, NULL };
+static int hf_062_V1_19_110_SUM_X = -1;
+static const value_string valstr_062_V1_19_110_SUM_X[] = {
+ { 0, "X-pulse set to zero or no authenticated Data reply or Report received" },
+ { 1, "X-pulse set to one" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_110_SUM_X = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_110_SUM_X, NULL };
+static const FieldPart *I062_V1_19_110_SUM_PARTS[] = {
+ &I062_V1_19_110_SUM_M5,
+ &I062_V1_19_110_SUM_ID,
+ &I062_V1_19_110_SUM_DA,
+ &I062_V1_19_110_SUM_M1,
+ &I062_V1_19_110_SUM_M2,
+ &I062_V1_19_110_SUM_M3,
+ &I062_V1_19_110_SUM_MC,
+ &I062_V1_19_110_SUM_X,
+ NULL
+};
+static const AsterixField I062_V1_19_110_SUM = { FIXED, 1, 0, 0, &hf_062_V1_19_110_SUM, I062_V1_19_110_SUM_PARTS, { NULL } };
+static int hf_062_V1_19_110_PMN = -1;
+static int hf_062_V1_19_110_PMN_PIN = -1;
+static const FieldPart I062_V1_19_110_PMN_PIN = { 14, 1.0, FIELD_PART_HEX, &hf_062_V1_19_110_PMN_PIN, NULL };
+static int hf_062_V1_19_110_PMN_NAT = -1;
+static const FieldPart I062_V1_19_110_PMN_NAT = { 5, 1.0, FIELD_PART_HEX, &hf_062_V1_19_110_PMN_NAT, NULL };
+static int hf_062_V1_19_110_PMN_MIS = -1;
+static const FieldPart I062_V1_19_110_PMN_MIS = { 6, 1.0, FIELD_PART_HEX, &hf_062_V1_19_110_PMN_MIS, NULL };
+static const FieldPart *I062_V1_19_110_PMN_PARTS[] = {
+ &IXXX_2bit_spare,
+ &I062_V1_19_110_PMN_PIN,
+ &IXXX_3bit_spare,
+ &I062_V1_19_110_PMN_NAT,
+ &IXXX_2bit_spare,
+ &I062_V1_19_110_PMN_MIS,
+ NULL
+};
+static const AsterixField I062_V1_19_110_PMN = { FIXED, 4, 0, 0, &hf_062_V1_19_110_PMN, I062_V1_19_110_PMN_PARTS, { NULL } };
+static int hf_062_V1_19_110_POS = -1;
+static int hf_062_V1_19_110_POS_LAT = -1;
+static const FieldPart I062_V1_19_110_POS_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_V1_19_110_POS_LAT, NULL };
+static int hf_062_V1_19_110_POS_LON = -1;
+static const FieldPart I062_V1_19_110_POS_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_V1_19_110_POS_LON, NULL };
+static const FieldPart *I062_V1_19_110_POS_PARTS[] = {
+ &I062_V1_19_110_POS_LAT,
+ &I062_V1_19_110_POS_LON,
+ NULL
+};
+static const AsterixField I062_V1_19_110_POS = { FIXED, 6, 0, 0, &hf_062_V1_19_110_POS, I062_V1_19_110_POS_PARTS, { NULL } };
+static int hf_062_V1_19_110_GA = -1;
+static int hf_062_V1_19_110_GA_RES = -1;
+static const value_string valstr_062_V1_19_110_GA_RES[] = {
+ { 0, "GA reported in 100 ft increments" },
+ { 1, "GA reported in 25 ft increments" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_110_GA_RES = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_110_GA_RES, NULL };
+static int hf_062_V1_19_110_GA_GA = -1;
+static const FieldPart I062_V1_19_110_GA_GA = { 14, 25.0, FIELD_PART_FLOAT, &hf_062_V1_19_110_GA_GA, NULL };
+static const FieldPart *I062_V1_19_110_GA_PARTS[] = {
+ &IXXX_1bit_spare,
+ &I062_V1_19_110_GA_RES,
+ &I062_V1_19_110_GA_GA,
+ NULL
+};
+static const AsterixField I062_V1_19_110_GA = { FIXED, 2, 0, 0, &hf_062_V1_19_110_GA, I062_V1_19_110_GA_PARTS, { NULL } };
+static int hf_062_V1_19_110_EM1 = -1;
+static int hf_062_V1_19_110_EM1_EM1 = -1;
+static const FieldPart I062_V1_19_110_EM1_EM1 = { 12, 1.0, FIELD_PART_SQUAWK, &hf_062_V1_19_110_EM1_EM1, NULL };
+static const FieldPart *I062_V1_19_110_EM1_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I062_V1_19_110_EM1_EM1,
+ NULL
+};
+static const AsterixField I062_V1_19_110_EM1 = { FIXED, 2, 0, 0, &hf_062_V1_19_110_EM1, I062_V1_19_110_EM1_PARTS, { NULL } };
+static int hf_062_V1_19_110_TOS = -1;
+static int hf_062_V1_19_110_TOS_VALUE = -1;
+static const FieldPart I062_V1_19_110_TOS_VALUE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_062_V1_19_110_TOS_VALUE, NULL };
+static const FieldPart *I062_V1_19_110_TOS_PARTS[] = {
+ &I062_V1_19_110_TOS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_110_TOS = { FIXED, 1, 0, 0, &hf_062_V1_19_110_TOS, I062_V1_19_110_TOS_PARTS, { NULL } };
+static int hf_062_V1_19_110_XP = -1;
+static int hf_062_V1_19_110_XP_X5 = -1;
+static const value_string valstr_062_V1_19_110_XP_X5[] = {
+ { 0, "X-pulse set to zero or no authenticated Data reply or Report received" },
+ { 1, "X-pulse set to one (present)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_110_XP_X5 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_110_XP_X5, NULL };
+static int hf_062_V1_19_110_XP_XC = -1;
+static const value_string valstr_062_V1_19_110_XP_XC[] = {
+ { 0, "X-pulse set to zero or no Mode C reply" },
+ { 1, "X-pulse set to one (present)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_110_XP_XC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_110_XP_XC, NULL };
+static int hf_062_V1_19_110_XP_X3 = -1;
+static const value_string valstr_062_V1_19_110_XP_X3[] = {
+ { 0, "X-pulse set to zero or no Mode 3/A reply" },
+ { 1, "X-pulse set to one (present)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_110_XP_X3 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_110_XP_X3, NULL };
+static int hf_062_V1_19_110_XP_X2 = -1;
+static const value_string valstr_062_V1_19_110_XP_X2[] = {
+ { 0, "X-pulse set to zero or no Mode 2 reply" },
+ { 1, "X-pulse set to one (present)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_110_XP_X2 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_110_XP_X2, NULL };
+static int hf_062_V1_19_110_XP_X1 = -1;
+static const value_string valstr_062_V1_19_110_XP_X1[] = {
+ { 0, "X-pulse set to zero or no Mode 1 reply" },
+ { 1, "X-pulse set to one (present)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_110_XP_X1 = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_110_XP_X1, NULL };
+static const FieldPart *I062_V1_19_110_XP_PARTS[] = {
+ &IXXX_3bit_spare,
+ &I062_V1_19_110_XP_X5,
+ &I062_V1_19_110_XP_XC,
+ &I062_V1_19_110_XP_X3,
+ &I062_V1_19_110_XP_X2,
+ &I062_V1_19_110_XP_X1,
+ NULL
+};
+static const AsterixField I062_V1_19_110_XP = { FIXED, 1, 0, 0, &hf_062_V1_19_110_XP, I062_V1_19_110_XP_PARTS, { NULL } };
+static const AsterixField I062_V1_19_110 = { COMPOUND, 0, 0, 0, &hf_062_V1_19_110, NULL, { &I062_V1_19_110_SUM, &I062_V1_19_110_PMN, &I062_V1_19_110_POS, &I062_V1_19_110_GA, &I062_V1_19_110_EM1, &I062_V1_19_110_TOS, &I062_V1_19_110_XP, NULL } };
+static int hf_062_V1_19_120 = -1;
+static int hf_062_V1_19_120_MODE2 = -1;
+static const FieldPart I062_V1_19_120_MODE2 = { 12, 1.0, FIELD_PART_SQUAWK, &hf_062_V1_19_120_MODE2, NULL };
+static const FieldPart *I062_V1_19_120_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I062_V1_19_120_MODE2,
+ NULL
+};
+static const AsterixField I062_V1_19_120 = { FIXED, 2, 0, 0, &hf_062_V1_19_120, I062_V1_19_120_PARTS, { NULL } };
+static int hf_062_V1_19_130 = -1;
+static int hf_062_V1_19_130_VALUE = -1;
+static const FieldPart I062_V1_19_130_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_062_V1_19_130_VALUE, NULL };
+static const FieldPart *I062_V1_19_130_PARTS[] = {
+ &I062_V1_19_130_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_130 = { FIXED, 2, 0, 0, &hf_062_V1_19_130, I062_V1_19_130_PARTS, { NULL } };
+static int hf_062_V1_19_135 = -1;
+static int hf_062_V1_19_135_QNH = -1;
+static const value_string valstr_062_V1_19_135_QNH[] = {
+ { 0, "No QNH correction applied" },
+ { 1, "QNH correction applied" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_135_QNH = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_135_QNH, NULL };
+static int hf_062_V1_19_135_CTB = -1;
+static const FieldPart I062_V1_19_135_CTB = { 15, 0.25, FIELD_PART_FLOAT, &hf_062_V1_19_135_CTB, NULL };
+static const FieldPart *I062_V1_19_135_PARTS[] = {
+ &I062_V1_19_135_QNH,
+ &I062_V1_19_135_CTB,
+ NULL
+};
+static const AsterixField I062_V1_19_135 = { FIXED, 2, 0, 0, &hf_062_V1_19_135, I062_V1_19_135_PARTS, { NULL } };
+static int hf_062_V1_19_136 = -1;
+static int hf_062_V1_19_136_VALUE = -1;
+static const FieldPart I062_V1_19_136_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_062_V1_19_136_VALUE, NULL };
+static const FieldPart *I062_V1_19_136_PARTS[] = {
+ &I062_V1_19_136_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_136 = { FIXED, 2, 0, 0, &hf_062_V1_19_136, I062_V1_19_136_PARTS, { NULL } };
+static int hf_062_V1_19_185 = -1;
+static int hf_062_V1_19_185_VX = -1;
+static const FieldPart I062_V1_19_185_VX = { 16, 0.25, FIELD_PART_FLOAT, &hf_062_V1_19_185_VX, NULL };
+static int hf_062_V1_19_185_VY = -1;
+static const FieldPart I062_V1_19_185_VY = { 16, 0.25, FIELD_PART_FLOAT, &hf_062_V1_19_185_VY, NULL };
+static const FieldPart *I062_V1_19_185_PARTS[] = {
+ &I062_V1_19_185_VX,
+ &I062_V1_19_185_VY,
+ NULL
+};
+static const AsterixField I062_V1_19_185 = { FIXED, 4, 0, 0, &hf_062_V1_19_185, I062_V1_19_185_PARTS, { NULL } };
+static int hf_062_V1_19_200 = -1;
+static int hf_062_V1_19_200_TRANS = -1;
+static const value_string valstr_062_V1_19_200_TRANS[] = {
+ { 0, "Constant course" },
+ { 1, "Right turn" },
+ { 2, "Left turn" },
+ { 3, "Undetermined" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_200_TRANS = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_19_200_TRANS, NULL };
+static int hf_062_V1_19_200_LONG = -1;
+static const value_string valstr_062_V1_19_200_LONG[] = {
+ { 0, "Constant groundspeed" },
+ { 1, "Increasing groundspeed" },
+ { 2, "Decreasing groundspeed" },
+ { 3, "Undetermined" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_200_LONG = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_19_200_LONG, NULL };
+static int hf_062_V1_19_200_VERT = -1;
+static const value_string valstr_062_V1_19_200_VERT[] = {
+ { 0, "Level" },
+ { 1, "Climb" },
+ { 2, "Descent" },
+ { 3, "Undetermined" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_200_VERT = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_19_200_VERT, NULL };
+static int hf_062_V1_19_200_ADF = -1;
+static const value_string valstr_062_V1_19_200_ADF[] = {
+ { 0, "No altitude discrepancy" },
+ { 1, "Altitude discrepancy" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_200_ADF = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_200_ADF, NULL };
+static const FieldPart *I062_V1_19_200_PARTS[] = {
+ &I062_V1_19_200_TRANS,
+ &I062_V1_19_200_LONG,
+ &I062_V1_19_200_VERT,
+ &I062_V1_19_200_ADF,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I062_V1_19_200 = { FIXED, 1, 0, 0, &hf_062_V1_19_200, I062_V1_19_200_PARTS, { NULL } };
+static int hf_062_V1_19_210 = -1;
+static int hf_062_V1_19_210_AX = -1;
+static const FieldPart I062_V1_19_210_AX = { 8, 0.25, FIELD_PART_FLOAT, &hf_062_V1_19_210_AX, NULL };
+static int hf_062_V1_19_210_AY = -1;
+static const FieldPart I062_V1_19_210_AY = { 8, 0.25, FIELD_PART_FLOAT, &hf_062_V1_19_210_AY, NULL };
+static const FieldPart *I062_V1_19_210_PARTS[] = {
+ &I062_V1_19_210_AX,
+ &I062_V1_19_210_AY,
+ NULL
+};
+static const AsterixField I062_V1_19_210 = { FIXED, 2, 0, 0, &hf_062_V1_19_210, I062_V1_19_210_PARTS, { NULL } };
+static int hf_062_V1_19_220 = -1;
+static int hf_062_V1_19_220_VALUE = -1;
+static const FieldPart I062_V1_19_220_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_062_V1_19_220_VALUE, NULL };
+static const FieldPart *I062_V1_19_220_PARTS[] = {
+ &I062_V1_19_220_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_220 = { FIXED, 2, 0, 0, &hf_062_V1_19_220, I062_V1_19_220_PARTS, { NULL } };
+static int hf_062_V1_19_245 = -1;
+static int hf_062_V1_19_245_STI = -1;
+static const value_string valstr_062_V1_19_245_STI[] = {
+ { 0, "Callsign or registration downlinked from target" },
+ { 1, "Callsign not downlinked from target" },
+ { 2, "Registration not downlinked from target" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_245_STI = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_19_245_STI, NULL };
+static int hf_062_V1_19_245_CHR = -1;
+static const FieldPart I062_V1_19_245_CHR = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_062_V1_19_245_CHR, NULL };
+static const FieldPart *I062_V1_19_245_PARTS[] = {
+ &I062_V1_19_245_STI,
+ &IXXX_6bit_spare,
+ &I062_V1_19_245_CHR,
+ NULL
+};
+static const AsterixField I062_V1_19_245 = { FIXED, 7, 0, 0, &hf_062_V1_19_245, I062_V1_19_245_PARTS, { NULL } };
+static int hf_062_V1_19_270 = -1;
+static int hf_062_V1_19_270_LENGTH = -1;
+static const FieldPart I062_V1_19_270_LENGTH = { 7, 1.0, FIELD_PART_UFLOAT, &hf_062_V1_19_270_LENGTH, NULL };
+static int hf_062_V1_19_270_ORIENTATION = -1;
+static const FieldPart I062_V1_19_270_ORIENTATION = { 7, 2.8125, FIELD_PART_UFLOAT, &hf_062_V1_19_270_ORIENTATION, NULL };
+static int hf_062_V1_19_270_WIDTH = -1;
+static const FieldPart I062_V1_19_270_WIDTH = { 7, 1.0, FIELD_PART_UFLOAT, &hf_062_V1_19_270_WIDTH, NULL };
+static const FieldPart *I062_V1_19_270_PARTS[] = {
+ &I062_V1_19_270_LENGTH,
+ &IXXX_FX,
+ &I062_V1_19_270_ORIENTATION,
+ &IXXX_FX,
+ &I062_V1_19_270_WIDTH,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I062_V1_19_270 = { FX, 1, 0, 0, &hf_062_V1_19_270, I062_V1_19_270_PARTS, { NULL } };
+static int hf_062_V1_19_290 = -1;
+static int hf_062_V1_19_290_TRK = -1;
+static int hf_062_V1_19_290_TRK_VALUE = -1;
+static const FieldPart I062_V1_19_290_TRK_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_290_TRK_VALUE, NULL };
+static const FieldPart *I062_V1_19_290_TRK_PARTS[] = {
+ &I062_V1_19_290_TRK_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_290_TRK = { FIXED, 1, 0, 0, &hf_062_V1_19_290_TRK, I062_V1_19_290_TRK_PARTS, { NULL } };
+static int hf_062_V1_19_290_PSR = -1;
+static int hf_062_V1_19_290_PSR_VALUE = -1;
+static const FieldPart I062_V1_19_290_PSR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_290_PSR_VALUE, NULL };
+static const FieldPart *I062_V1_19_290_PSR_PARTS[] = {
+ &I062_V1_19_290_PSR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_290_PSR = { FIXED, 1, 0, 0, &hf_062_V1_19_290_PSR, I062_V1_19_290_PSR_PARTS, { NULL } };
+static int hf_062_V1_19_290_SSR = -1;
+static int hf_062_V1_19_290_SSR_VALUE = -1;
+static const FieldPart I062_V1_19_290_SSR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_290_SSR_VALUE, NULL };
+static const FieldPart *I062_V1_19_290_SSR_PARTS[] = {
+ &I062_V1_19_290_SSR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_290_SSR = { FIXED, 1, 0, 0, &hf_062_V1_19_290_SSR, I062_V1_19_290_SSR_PARTS, { NULL } };
+static int hf_062_V1_19_290_MDS = -1;
+static int hf_062_V1_19_290_MDS_VALUE = -1;
+static const FieldPart I062_V1_19_290_MDS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_290_MDS_VALUE, NULL };
+static const FieldPart *I062_V1_19_290_MDS_PARTS[] = {
+ &I062_V1_19_290_MDS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_290_MDS = { FIXED, 1, 0, 0, &hf_062_V1_19_290_MDS, I062_V1_19_290_MDS_PARTS, { NULL } };
+static int hf_062_V1_19_290_ADS = -1;
+static int hf_062_V1_19_290_ADS_VALUE = -1;
+static const FieldPart I062_V1_19_290_ADS_VALUE = { 16, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_290_ADS_VALUE, NULL };
+static const FieldPart *I062_V1_19_290_ADS_PARTS[] = {
+ &I062_V1_19_290_ADS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_290_ADS = { FIXED, 2, 0, 0, &hf_062_V1_19_290_ADS, I062_V1_19_290_ADS_PARTS, { NULL } };
+static int hf_062_V1_19_290_ES = -1;
+static int hf_062_V1_19_290_ES_VALUE = -1;
+static const FieldPart I062_V1_19_290_ES_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_290_ES_VALUE, NULL };
+static const FieldPart *I062_V1_19_290_ES_PARTS[] = {
+ &I062_V1_19_290_ES_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_290_ES = { FIXED, 1, 0, 0, &hf_062_V1_19_290_ES, I062_V1_19_290_ES_PARTS, { NULL } };
+static int hf_062_V1_19_290_VDL = -1;
+static int hf_062_V1_19_290_VDL_VALUE = -1;
+static const FieldPart I062_V1_19_290_VDL_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_290_VDL_VALUE, NULL };
+static const FieldPart *I062_V1_19_290_VDL_PARTS[] = {
+ &I062_V1_19_290_VDL_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_290_VDL = { FIXED, 1, 0, 0, &hf_062_V1_19_290_VDL, I062_V1_19_290_VDL_PARTS, { NULL } };
+static int hf_062_V1_19_290_UAT = -1;
+static int hf_062_V1_19_290_UAT_VALUE = -1;
+static const FieldPart I062_V1_19_290_UAT_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_290_UAT_VALUE, NULL };
+static const FieldPart *I062_V1_19_290_UAT_PARTS[] = {
+ &I062_V1_19_290_UAT_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_290_UAT = { FIXED, 1, 0, 0, &hf_062_V1_19_290_UAT, I062_V1_19_290_UAT_PARTS, { NULL } };
+static int hf_062_V1_19_290_LOP = -1;
+static int hf_062_V1_19_290_LOP_VALUE = -1;
+static const FieldPart I062_V1_19_290_LOP_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_290_LOP_VALUE, NULL };
+static const FieldPart *I062_V1_19_290_LOP_PARTS[] = {
+ &I062_V1_19_290_LOP_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_290_LOP = { FIXED, 1, 0, 0, &hf_062_V1_19_290_LOP, I062_V1_19_290_LOP_PARTS, { NULL } };
+static int hf_062_V1_19_290_MLT = -1;
+static int hf_062_V1_19_290_MLT_VALUE = -1;
+static const FieldPart I062_V1_19_290_MLT_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_290_MLT_VALUE, NULL };
+static const FieldPart *I062_V1_19_290_MLT_PARTS[] = {
+ &I062_V1_19_290_MLT_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_290_MLT = { FIXED, 1, 0, 0, &hf_062_V1_19_290_MLT, I062_V1_19_290_MLT_PARTS, { NULL } };
+static const AsterixField I062_V1_19_290 = { COMPOUND, 0, 0, 0, &hf_062_V1_19_290, NULL, { &I062_V1_19_290_TRK, &I062_V1_19_290_PSR, &I062_V1_19_290_SSR, &I062_V1_19_290_MDS, &I062_V1_19_290_ADS, &I062_V1_19_290_ES, &I062_V1_19_290_VDL, &I062_V1_19_290_UAT, &I062_V1_19_290_LOP, &I062_V1_19_290_MLT, NULL } };
+static int hf_062_V1_19_295 = -1;
+static int hf_062_V1_19_295_MFL = -1;
+static int hf_062_V1_19_295_MFL_VALUE = -1;
+static const FieldPart I062_V1_19_295_MFL_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_MFL_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_MFL_PARTS[] = {
+ &I062_V1_19_295_MFL_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_MFL = { FIXED, 1, 0, 0, &hf_062_V1_19_295_MFL, I062_V1_19_295_MFL_PARTS, { NULL } };
+static int hf_062_V1_19_295_MD1 = -1;
+static int hf_062_V1_19_295_MD1_VALUE = -1;
+static const FieldPart I062_V1_19_295_MD1_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_MD1_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_MD1_PARTS[] = {
+ &I062_V1_19_295_MD1_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_MD1 = { FIXED, 1, 0, 0, &hf_062_V1_19_295_MD1, I062_V1_19_295_MD1_PARTS, { NULL } };
+static int hf_062_V1_19_295_MD2 = -1;
+static int hf_062_V1_19_295_MD2_VALUE = -1;
+static const FieldPart I062_V1_19_295_MD2_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_MD2_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_MD2_PARTS[] = {
+ &I062_V1_19_295_MD2_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_MD2 = { FIXED, 1, 0, 0, &hf_062_V1_19_295_MD2, I062_V1_19_295_MD2_PARTS, { NULL } };
+static int hf_062_V1_19_295_MDA = -1;
+static int hf_062_V1_19_295_MDA_VALUE = -1;
+static const FieldPart I062_V1_19_295_MDA_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_MDA_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_MDA_PARTS[] = {
+ &I062_V1_19_295_MDA_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_MDA = { FIXED, 1, 0, 0, &hf_062_V1_19_295_MDA, I062_V1_19_295_MDA_PARTS, { NULL } };
+static int hf_062_V1_19_295_MD4 = -1;
+static int hf_062_V1_19_295_MD4_VALUE = -1;
+static const FieldPart I062_V1_19_295_MD4_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_MD4_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_MD4_PARTS[] = {
+ &I062_V1_19_295_MD4_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_MD4 = { FIXED, 1, 0, 0, &hf_062_V1_19_295_MD4, I062_V1_19_295_MD4_PARTS, { NULL } };
+static int hf_062_V1_19_295_MD5 = -1;
+static int hf_062_V1_19_295_MD5_VALUE = -1;
+static const FieldPart I062_V1_19_295_MD5_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_MD5_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_MD5_PARTS[] = {
+ &I062_V1_19_295_MD5_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_MD5 = { FIXED, 1, 0, 0, &hf_062_V1_19_295_MD5, I062_V1_19_295_MD5_PARTS, { NULL } };
+static int hf_062_V1_19_295_MHG = -1;
+static int hf_062_V1_19_295_MHG_VALUE = -1;
+static const FieldPart I062_V1_19_295_MHG_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_MHG_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_MHG_PARTS[] = {
+ &I062_V1_19_295_MHG_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_MHG = { FIXED, 1, 0, 0, &hf_062_V1_19_295_MHG, I062_V1_19_295_MHG_PARTS, { NULL } };
+static int hf_062_V1_19_295_IAS = -1;
+static int hf_062_V1_19_295_IAS_VALUE = -1;
+static const FieldPart I062_V1_19_295_IAS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_IAS_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_IAS_PARTS[] = {
+ &I062_V1_19_295_IAS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_IAS = { FIXED, 1, 0, 0, &hf_062_V1_19_295_IAS, I062_V1_19_295_IAS_PARTS, { NULL } };
+static int hf_062_V1_19_295_TAS = -1;
+static int hf_062_V1_19_295_TAS_VALUE = -1;
+static const FieldPart I062_V1_19_295_TAS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_TAS_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_TAS_PARTS[] = {
+ &I062_V1_19_295_TAS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_TAS = { FIXED, 1, 0, 0, &hf_062_V1_19_295_TAS, I062_V1_19_295_TAS_PARTS, { NULL } };
+static int hf_062_V1_19_295_SAL = -1;
+static int hf_062_V1_19_295_SAL_VALUE = -1;
+static const FieldPart I062_V1_19_295_SAL_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_SAL_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_SAL_PARTS[] = {
+ &I062_V1_19_295_SAL_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_SAL = { FIXED, 1, 0, 0, &hf_062_V1_19_295_SAL, I062_V1_19_295_SAL_PARTS, { NULL } };
+static int hf_062_V1_19_295_FSS = -1;
+static int hf_062_V1_19_295_FSS_VALUE = -1;
+static const FieldPart I062_V1_19_295_FSS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_FSS_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_FSS_PARTS[] = {
+ &I062_V1_19_295_FSS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_FSS = { FIXED, 1, 0, 0, &hf_062_V1_19_295_FSS, I062_V1_19_295_FSS_PARTS, { NULL } };
+static int hf_062_V1_19_295_TID = -1;
+static int hf_062_V1_19_295_TID_VALUE = -1;
+static const FieldPart I062_V1_19_295_TID_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_TID_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_TID_PARTS[] = {
+ &I062_V1_19_295_TID_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_TID = { FIXED, 1, 0, 0, &hf_062_V1_19_295_TID, I062_V1_19_295_TID_PARTS, { NULL } };
+static int hf_062_V1_19_295_COM = -1;
+static int hf_062_V1_19_295_COM_VALUE = -1;
+static const FieldPart I062_V1_19_295_COM_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_COM_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_COM_PARTS[] = {
+ &I062_V1_19_295_COM_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_COM = { FIXED, 1, 0, 0, &hf_062_V1_19_295_COM, I062_V1_19_295_COM_PARTS, { NULL } };
+static int hf_062_V1_19_295_SAB = -1;
+static int hf_062_V1_19_295_SAB_VALUE = -1;
+static const FieldPart I062_V1_19_295_SAB_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_SAB_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_SAB_PARTS[] = {
+ &I062_V1_19_295_SAB_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_SAB = { FIXED, 1, 0, 0, &hf_062_V1_19_295_SAB, I062_V1_19_295_SAB_PARTS, { NULL } };
+static int hf_062_V1_19_295_ACS = -1;
+static int hf_062_V1_19_295_ACS_VALUE = -1;
+static const FieldPart I062_V1_19_295_ACS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_ACS_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_ACS_PARTS[] = {
+ &I062_V1_19_295_ACS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_ACS = { FIXED, 1, 0, 0, &hf_062_V1_19_295_ACS, I062_V1_19_295_ACS_PARTS, { NULL } };
+static int hf_062_V1_19_295_BVR = -1;
+static int hf_062_V1_19_295_BVR_VALUE = -1;
+static const FieldPart I062_V1_19_295_BVR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_BVR_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_BVR_PARTS[] = {
+ &I062_V1_19_295_BVR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_BVR = { FIXED, 1, 0, 0, &hf_062_V1_19_295_BVR, I062_V1_19_295_BVR_PARTS, { NULL } };
+static int hf_062_V1_19_295_GVR = -1;
+static int hf_062_V1_19_295_GVR_VALUE = -1;
+static const FieldPart I062_V1_19_295_GVR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_GVR_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_GVR_PARTS[] = {
+ &I062_V1_19_295_GVR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_GVR = { FIXED, 1, 0, 0, &hf_062_V1_19_295_GVR, I062_V1_19_295_GVR_PARTS, { NULL } };
+static int hf_062_V1_19_295_RAN = -1;
+static int hf_062_V1_19_295_RAN_VALUE = -1;
+static const FieldPart I062_V1_19_295_RAN_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_RAN_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_RAN_PARTS[] = {
+ &I062_V1_19_295_RAN_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_RAN = { FIXED, 1, 0, 0, &hf_062_V1_19_295_RAN, I062_V1_19_295_RAN_PARTS, { NULL } };
+static int hf_062_V1_19_295_TAR = -1;
+static int hf_062_V1_19_295_TAR_VALUE = -1;
+static const FieldPart I062_V1_19_295_TAR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_TAR_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_TAR_PARTS[] = {
+ &I062_V1_19_295_TAR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_TAR = { FIXED, 1, 0, 0, &hf_062_V1_19_295_TAR, I062_V1_19_295_TAR_PARTS, { NULL } };
+static int hf_062_V1_19_295_TAN = -1;
+static int hf_062_V1_19_295_TAN_VALUE = -1;
+static const FieldPart I062_V1_19_295_TAN_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_TAN_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_TAN_PARTS[] = {
+ &I062_V1_19_295_TAN_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_TAN = { FIXED, 1, 0, 0, &hf_062_V1_19_295_TAN, I062_V1_19_295_TAN_PARTS, { NULL } };
+static int hf_062_V1_19_295_GSP = -1;
+static int hf_062_V1_19_295_GSP_VALUE = -1;
+static const FieldPart I062_V1_19_295_GSP_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_GSP_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_GSP_PARTS[] = {
+ &I062_V1_19_295_GSP_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_GSP = { FIXED, 1, 0, 0, &hf_062_V1_19_295_GSP, I062_V1_19_295_GSP_PARTS, { NULL } };
+static int hf_062_V1_19_295_VUN = -1;
+static int hf_062_V1_19_295_VUN_VALUE = -1;
+static const FieldPart I062_V1_19_295_VUN_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_VUN_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_VUN_PARTS[] = {
+ &I062_V1_19_295_VUN_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_VUN = { FIXED, 1, 0, 0, &hf_062_V1_19_295_VUN, I062_V1_19_295_VUN_PARTS, { NULL } };
+static int hf_062_V1_19_295_MET = -1;
+static int hf_062_V1_19_295_MET_VALUE = -1;
+static const FieldPart I062_V1_19_295_MET_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_MET_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_MET_PARTS[] = {
+ &I062_V1_19_295_MET_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_MET = { FIXED, 1, 0, 0, &hf_062_V1_19_295_MET, I062_V1_19_295_MET_PARTS, { NULL } };
+static int hf_062_V1_19_295_EMC = -1;
+static int hf_062_V1_19_295_EMC_VALUE = -1;
+static const FieldPart I062_V1_19_295_EMC_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_EMC_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_EMC_PARTS[] = {
+ &I062_V1_19_295_EMC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_EMC = { FIXED, 1, 0, 0, &hf_062_V1_19_295_EMC, I062_V1_19_295_EMC_PARTS, { NULL } };
+static int hf_062_V1_19_295_POS = -1;
+static int hf_062_V1_19_295_POS_VALUE = -1;
+static const FieldPart I062_V1_19_295_POS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_POS_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_POS_PARTS[] = {
+ &I062_V1_19_295_POS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_POS = { FIXED, 1, 0, 0, &hf_062_V1_19_295_POS, I062_V1_19_295_POS_PARTS, { NULL } };
+static int hf_062_V1_19_295_GAL = -1;
+static int hf_062_V1_19_295_GAL_VALUE = -1;
+static const FieldPart I062_V1_19_295_GAL_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_GAL_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_GAL_PARTS[] = {
+ &I062_V1_19_295_GAL_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_GAL = { FIXED, 1, 0, 0, &hf_062_V1_19_295_GAL, I062_V1_19_295_GAL_PARTS, { NULL } };
+static int hf_062_V1_19_295_PUN = -1;
+static int hf_062_V1_19_295_PUN_VALUE = -1;
+static const FieldPart I062_V1_19_295_PUN_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_PUN_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_PUN_PARTS[] = {
+ &I062_V1_19_295_PUN_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_PUN = { FIXED, 1, 0, 0, &hf_062_V1_19_295_PUN, I062_V1_19_295_PUN_PARTS, { NULL } };
+static int hf_062_V1_19_295_MB = -1;
+static int hf_062_V1_19_295_MB_VALUE = -1;
+static const FieldPart I062_V1_19_295_MB_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_MB_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_MB_PARTS[] = {
+ &I062_V1_19_295_MB_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_MB = { FIXED, 1, 0, 0, &hf_062_V1_19_295_MB, I062_V1_19_295_MB_PARTS, { NULL } };
+static int hf_062_V1_19_295_IAR = -1;
+static int hf_062_V1_19_295_IAR_VALUE = -1;
+static const FieldPart I062_V1_19_295_IAR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_IAR_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_IAR_PARTS[] = {
+ &I062_V1_19_295_IAR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_IAR = { FIXED, 1, 0, 0, &hf_062_V1_19_295_IAR, I062_V1_19_295_IAR_PARTS, { NULL } };
+static int hf_062_V1_19_295_MAC = -1;
+static int hf_062_V1_19_295_MAC_VALUE = -1;
+static const FieldPart I062_V1_19_295_MAC_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_MAC_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_MAC_PARTS[] = {
+ &I062_V1_19_295_MAC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_MAC = { FIXED, 1, 0, 0, &hf_062_V1_19_295_MAC, I062_V1_19_295_MAC_PARTS, { NULL } };
+static int hf_062_V1_19_295_BPS = -1;
+static int hf_062_V1_19_295_BPS_VALUE = -1;
+static const FieldPart I062_V1_19_295_BPS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_295_BPS_VALUE, NULL };
+static const FieldPart *I062_V1_19_295_BPS_PARTS[] = {
+ &I062_V1_19_295_BPS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_295_BPS = { FIXED, 1, 0, 0, &hf_062_V1_19_295_BPS, I062_V1_19_295_BPS_PARTS, { NULL } };
+static const AsterixField I062_V1_19_295 = { COMPOUND, 0, 0, 0, &hf_062_V1_19_295, NULL, { &I062_V1_19_295_MFL, &I062_V1_19_295_MD1, &I062_V1_19_295_MD2, &I062_V1_19_295_MDA, &I062_V1_19_295_MD4, &I062_V1_19_295_MD5, &I062_V1_19_295_MHG, &I062_V1_19_295_IAS, &I062_V1_19_295_TAS, &I062_V1_19_295_SAL, &I062_V1_19_295_FSS, &I062_V1_19_295_TID, &I062_V1_19_295_COM, &I062_V1_19_295_SAB, &I062_V1_19_295_ACS, &I062_V1_19_295_BVR, &I062_V1_19_295_GVR, &I062_V1_19_295_RAN, &I062_V1_19_295_TAR, &I062_V1_19_295_TAN, &I062_V1_19_295_GSP, &I062_V1_19_295_VUN, &I062_V1_19_295_MET, &I062_V1_19_295_EMC, &I062_V1_19_295_POS, &I062_V1_19_295_GAL, &I062_V1_19_295_PUN, &I062_V1_19_295_MB, &I062_V1_19_295_IAR, &I062_V1_19_295_MAC, &I062_V1_19_295_BPS, NULL } };
+static int hf_062_V1_19_300 = -1;
+static int hf_062_V1_19_300_VALUE = -1;
+static const value_string valstr_062_V1_19_300_VALUE[] = {
+ { 0, "Unknown" },
+ { 1, "ATC equipment maintenance" },
+ { 2, "Airport maintenance" },
+ { 3, "Fire" },
+ { 4, "Bird scarer" },
+ { 5, "Snow plough" },
+ { 6, "Runway sweeper" },
+ { 7, "Emergency" },
+ { 8, "Police" },
+ { 9, "Bus" },
+ { 10, "Tug (push/tow)" },
+ { 11, "Grass cutter" },
+ { 12, "Fuel" },
+ { 13, "Baggage" },
+ { 14, "Catering" },
+ { 15, "Aircraft maintenance" },
+ { 16, "Flyco (follow me)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_300_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_062_V1_19_300_VALUE, NULL };
+static const FieldPart *I062_V1_19_300_PARTS[] = {
+ &I062_V1_19_300_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_300 = { FIXED, 1, 0, 0, &hf_062_V1_19_300, I062_V1_19_300_PARTS, { NULL } };
+static int hf_062_V1_19_340 = -1;
+static int hf_062_V1_19_340_SID = -1;
+static int hf_062_V1_19_340_SID_SAC = -1;
+static const FieldPart I062_V1_19_340_SID_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_19_340_SID_SAC, NULL };
+static int hf_062_V1_19_340_SID_SIC = -1;
+static const FieldPart I062_V1_19_340_SID_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_19_340_SID_SIC, NULL };
+static const FieldPart *I062_V1_19_340_SID_PARTS[] = {
+ &I062_V1_19_340_SID_SAC,
+ &I062_V1_19_340_SID_SIC,
+ NULL
+};
+static const AsterixField I062_V1_19_340_SID = { FIXED, 2, 0, 0, &hf_062_V1_19_340_SID, I062_V1_19_340_SID_PARTS, { NULL } };
+static int hf_062_V1_19_340_POS = -1;
+static int hf_062_V1_19_340_POS_RHO = -1;
+static const FieldPart I062_V1_19_340_POS_RHO = { 16, 0.00390625, FIELD_PART_UFLOAT, &hf_062_V1_19_340_POS_RHO, NULL };
+static int hf_062_V1_19_340_POS_THETA = -1;
+static const FieldPart I062_V1_19_340_POS_THETA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_062_V1_19_340_POS_THETA, NULL };
+static const FieldPart *I062_V1_19_340_POS_PARTS[] = {
+ &I062_V1_19_340_POS_RHO,
+ &I062_V1_19_340_POS_THETA,
+ NULL
+};
+static const AsterixField I062_V1_19_340_POS = { FIXED, 4, 0, 0, &hf_062_V1_19_340_POS, I062_V1_19_340_POS_PARTS, { NULL } };
+static int hf_062_V1_19_340_HEIGHT = -1;
+static int hf_062_V1_19_340_HEIGHT_VALUE = -1;
+static const FieldPart I062_V1_19_340_HEIGHT_VALUE = { 16, 25.0, FIELD_PART_FLOAT, &hf_062_V1_19_340_HEIGHT_VALUE, NULL };
+static const FieldPart *I062_V1_19_340_HEIGHT_PARTS[] = {
+ &I062_V1_19_340_HEIGHT_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_340_HEIGHT = { FIXED, 2, 0, 0, &hf_062_V1_19_340_HEIGHT, I062_V1_19_340_HEIGHT_PARTS, { NULL } };
+static int hf_062_V1_19_340_MDC = -1;
+static int hf_062_V1_19_340_MDC_V = -1;
+static const value_string valstr_062_V1_19_340_MDC_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_340_MDC_V = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_340_MDC_V, NULL };
+static int hf_062_V1_19_340_MDC_G = -1;
+static const value_string valstr_062_V1_19_340_MDC_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_340_MDC_G = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_340_MDC_G, NULL };
+static int hf_062_V1_19_340_MDC_LMC = -1;
+static const FieldPart I062_V1_19_340_MDC_LMC = { 14, 0.25, FIELD_PART_FLOAT, &hf_062_V1_19_340_MDC_LMC, NULL };
+static const FieldPart *I062_V1_19_340_MDC_PARTS[] = {
+ &I062_V1_19_340_MDC_V,
+ &I062_V1_19_340_MDC_G,
+ &I062_V1_19_340_MDC_LMC,
+ NULL
+};
+static const AsterixField I062_V1_19_340_MDC = { FIXED, 2, 0, 0, &hf_062_V1_19_340_MDC, I062_V1_19_340_MDC_PARTS, { NULL } };
+static int hf_062_V1_19_340_MDA = -1;
+static int hf_062_V1_19_340_MDA_V = -1;
+static const value_string valstr_062_V1_19_340_MDA_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_340_MDA_V = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_340_MDA_V, NULL };
+static int hf_062_V1_19_340_MDA_G = -1;
+static const value_string valstr_062_V1_19_340_MDA_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_340_MDA_G = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_340_MDA_G, NULL };
+static int hf_062_V1_19_340_MDA_L = -1;
+static const value_string valstr_062_V1_19_340_MDA_L[] = {
+ { 0, "Mode 3/A code as derived from the reply of the transponder" },
+ { 1, "Mode 3/A code as provided by a sensor local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_340_MDA_L = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_340_MDA_L, NULL };
+static int hf_062_V1_19_340_MDA_MODE3A = -1;
+static const FieldPart I062_V1_19_340_MDA_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_062_V1_19_340_MDA_MODE3A, NULL };
+static const FieldPart *I062_V1_19_340_MDA_PARTS[] = {
+ &I062_V1_19_340_MDA_V,
+ &I062_V1_19_340_MDA_G,
+ &I062_V1_19_340_MDA_L,
+ &IXXX_1bit_spare,
+ &I062_V1_19_340_MDA_MODE3A,
+ NULL
+};
+static const AsterixField I062_V1_19_340_MDA = { FIXED, 2, 0, 0, &hf_062_V1_19_340_MDA, I062_V1_19_340_MDA_PARTS, { NULL } };
+static int hf_062_V1_19_340_TYP = -1;
+static int hf_062_V1_19_340_TYP_TYP = -1;
+static const value_string valstr_062_V1_19_340_TYP_TYP[] = {
+ { 0, "No detection" },
+ { 1, "Single PSR detection" },
+ { 2, "Single SSR detection" },
+ { 3, "SSR + PSR detection" },
+ { 4, "Single ModeS All-Call" },
+ { 5, "Single ModeS Roll-Call" },
+ { 6, "ModeS All-Call + PSR" },
+ { 7, "ModeS Roll-Call + PSR" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_340_TYP_TYP = { 3, 1.0, FIELD_PART_UINT, &hf_062_V1_19_340_TYP_TYP, NULL };
+static int hf_062_V1_19_340_TYP_SIM = -1;
+static const value_string valstr_062_V1_19_340_TYP_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_340_TYP_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_340_TYP_SIM, NULL };
+static int hf_062_V1_19_340_TYP_RAB = -1;
+static const value_string valstr_062_V1_19_340_TYP_RAB[] = {
+ { 0, "Report from target transponder" },
+ { 1, "Report from field monitor (item transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_340_TYP_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_340_TYP_RAB, NULL };
+static int hf_062_V1_19_340_TYP_TST = -1;
+static const value_string valstr_062_V1_19_340_TYP_TST[] = {
+ { 0, "Real target report" },
+ { 1, "Test target report" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_340_TYP_TST = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_340_TYP_TST, NULL };
+static const FieldPart *I062_V1_19_340_TYP_PARTS[] = {
+ &I062_V1_19_340_TYP_TYP,
+ &I062_V1_19_340_TYP_SIM,
+ &I062_V1_19_340_TYP_RAB,
+ &I062_V1_19_340_TYP_TST,
+ &IXXX_2bit_spare,
+ NULL
+};
+static const AsterixField I062_V1_19_340_TYP = { FIXED, 1, 0, 0, &hf_062_V1_19_340_TYP, I062_V1_19_340_TYP_PARTS, { NULL } };
+static const AsterixField I062_V1_19_340 = { COMPOUND, 0, 0, 0, &hf_062_V1_19_340, NULL, { &I062_V1_19_340_SID, &I062_V1_19_340_POS, &I062_V1_19_340_HEIGHT, &I062_V1_19_340_MDC, &I062_V1_19_340_MDA, &I062_V1_19_340_TYP, NULL } };
+static int hf_062_V1_19_380 = -1;
+static int hf_062_V1_19_380_ADR = -1;
+static int hf_062_V1_19_380_ADR_VALUE = -1;
+static const FieldPart I062_V1_19_380_ADR_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_062_V1_19_380_ADR_VALUE, NULL };
+static const FieldPart *I062_V1_19_380_ADR_PARTS[] = {
+ &I062_V1_19_380_ADR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_380_ADR = { FIXED, 3, 0, 0, &hf_062_V1_19_380_ADR, I062_V1_19_380_ADR_PARTS, { NULL } };
+static int hf_062_V1_19_380_ID = -1;
+static int hf_062_V1_19_380_ID_VALUE = -1;
+static const FieldPart I062_V1_19_380_ID_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_062_V1_19_380_ID_VALUE, NULL };
+static const FieldPart *I062_V1_19_380_ID_PARTS[] = {
+ &I062_V1_19_380_ID_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_380_ID = { FIXED, 6, 0, 0, &hf_062_V1_19_380_ID, I062_V1_19_380_ID_PARTS, { NULL } };
+static int hf_062_V1_19_380_MHG = -1;
+static int hf_062_V1_19_380_MHG_VALUE = -1;
+static const FieldPart I062_V1_19_380_MHG_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_062_V1_19_380_MHG_VALUE, NULL };
+static const FieldPart *I062_V1_19_380_MHG_PARTS[] = {
+ &I062_V1_19_380_MHG_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_380_MHG = { FIXED, 2, 0, 0, &hf_062_V1_19_380_MHG, I062_V1_19_380_MHG_PARTS, { NULL } };
+static int hf_062_V1_19_380_IAS = -1;
+static int hf_062_V1_19_380_IAS_IM = -1;
+static const value_string valstr_062_V1_19_380_IAS_IM[] = {
+ { 0, "Air Speed = IAS, LSB (Bit-1) = 2^-14 NM/s" },
+ { 1, "Air Speed = Mach, LSB (Bit-1) = 0.001" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_IAS_IM = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_IAS_IM, NULL };
+static int hf_062_V1_19_380_IAS_IAS = -1;
+static const FieldPart I062_V1_19_380_IAS_IAS = { 15, 1.0, FIELD_PART_HEX, &hf_062_V1_19_380_IAS_IAS, NULL };
+static const FieldPart *I062_V1_19_380_IAS_PARTS[] = {
+ &I062_V1_19_380_IAS_IM,
+ &I062_V1_19_380_IAS_IAS,
+ NULL
+};
+static const AsterixField I062_V1_19_380_IAS = { FIXED, 2, 0, 0, &hf_062_V1_19_380_IAS, I062_V1_19_380_IAS_PARTS, { NULL } };
+static int hf_062_V1_19_380_TAS = -1;
+static int hf_062_V1_19_380_TAS_VALUE = -1;
+static const FieldPart I062_V1_19_380_TAS_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_062_V1_19_380_TAS_VALUE, NULL };
+static const FieldPart *I062_V1_19_380_TAS_PARTS[] = {
+ &I062_V1_19_380_TAS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_380_TAS = { FIXED, 2, 0, 0, &hf_062_V1_19_380_TAS, I062_V1_19_380_TAS_PARTS, { NULL } };
+static int hf_062_V1_19_380_SAL = -1;
+static int hf_062_V1_19_380_SAL_SAS = -1;
+static const value_string valstr_062_V1_19_380_SAL_SAS[] = {
+ { 0, "No source information provided" },
+ { 1, "Source information provided" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_SAL_SAS = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_SAL_SAS, NULL };
+static int hf_062_V1_19_380_SAL_SRC = -1;
+static const value_string valstr_062_V1_19_380_SAL_SRC[] = {
+ { 0, "Unknown" },
+ { 1, "Aircraft altitude" },
+ { 2, "FCU/MCP selected altitude" },
+ { 3, "FMS selected altitude" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_SAL_SRC = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_SAL_SRC, NULL };
+static int hf_062_V1_19_380_SAL_ALT = -1;
+static const FieldPart I062_V1_19_380_SAL_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_062_V1_19_380_SAL_ALT, NULL };
+static const FieldPart *I062_V1_19_380_SAL_PARTS[] = {
+ &I062_V1_19_380_SAL_SAS,
+ &I062_V1_19_380_SAL_SRC,
+ &I062_V1_19_380_SAL_ALT,
+ NULL
+};
+static const AsterixField I062_V1_19_380_SAL = { FIXED, 2, 0, 0, &hf_062_V1_19_380_SAL, I062_V1_19_380_SAL_PARTS, { NULL } };
+static int hf_062_V1_19_380_FSS = -1;
+static int hf_062_V1_19_380_FSS_MV = -1;
+static const value_string valstr_062_V1_19_380_FSS_MV[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_FSS_MV = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_FSS_MV, NULL };
+static int hf_062_V1_19_380_FSS_AH = -1;
+static const value_string valstr_062_V1_19_380_FSS_AH[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_FSS_AH = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_FSS_AH, NULL };
+static int hf_062_V1_19_380_FSS_AM = -1;
+static const value_string valstr_062_V1_19_380_FSS_AM[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_FSS_AM = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_FSS_AM, NULL };
+static int hf_062_V1_19_380_FSS_ALT = -1;
+static const FieldPart I062_V1_19_380_FSS_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_062_V1_19_380_FSS_ALT, NULL };
+static const FieldPart *I062_V1_19_380_FSS_PARTS[] = {
+ &I062_V1_19_380_FSS_MV,
+ &I062_V1_19_380_FSS_AH,
+ &I062_V1_19_380_FSS_AM,
+ &I062_V1_19_380_FSS_ALT,
+ NULL
+};
+static const AsterixField I062_V1_19_380_FSS = { FIXED, 2, 0, 0, &hf_062_V1_19_380_FSS, I062_V1_19_380_FSS_PARTS, { NULL } };
+static int hf_062_V1_19_380_TIS = -1;
+static int hf_062_V1_19_380_TIS_NAV = -1;
+static const value_string valstr_062_V1_19_380_TIS_NAV[] = {
+ { 0, "Trajectory intent data is available for this aircraft" },
+ { 1, "Trajectory intent data is not available for this aircraft" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_TIS_NAV = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_TIS_NAV, NULL };
+static int hf_062_V1_19_380_TIS_NVB = -1;
+static const value_string valstr_062_V1_19_380_TIS_NVB[] = {
+ { 0, "Trajectory intent data is valid" },
+ { 1, "Trajectory intent data is not valid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_TIS_NVB = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_TIS_NVB, NULL };
+static const FieldPart *I062_V1_19_380_TIS_PARTS[] = {
+ &I062_V1_19_380_TIS_NAV,
+ &I062_V1_19_380_TIS_NVB,
+ &IXXX_5bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I062_V1_19_380_TIS = { FX, 1, 0, 0, &hf_062_V1_19_380_TIS, I062_V1_19_380_TIS_PARTS, { NULL } };
+static int hf_062_V1_19_380_TID = -1;
+static int hf_062_V1_19_380_TID_TCA = -1;
+static const value_string valstr_062_V1_19_380_TID_TCA[] = {
+ { 0, "TCP number available" },
+ { 1, "TCP number not available" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_TID_TCA = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_TID_TCA, NULL };
+static int hf_062_V1_19_380_TID_NC = -1;
+static const value_string valstr_062_V1_19_380_TID_NC[] = {
+ { 0, "TCP compliance" },
+ { 1, "TCP non-compliance" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_TID_NC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_TID_NC, NULL };
+static int hf_062_V1_19_380_TID_TCPN = -1;
+static const FieldPart I062_V1_19_380_TID_TCPN = { 6, 1.0, FIELD_PART_HEX, &hf_062_V1_19_380_TID_TCPN, NULL };
+static int hf_062_V1_19_380_TID_ALT = -1;
+static const FieldPart I062_V1_19_380_TID_ALT = { 16, 10.0, FIELD_PART_FLOAT, &hf_062_V1_19_380_TID_ALT, NULL };
+static int hf_062_V1_19_380_TID_LAT = -1;
+static const FieldPart I062_V1_19_380_TID_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_V1_19_380_TID_LAT, NULL };
+static int hf_062_V1_19_380_TID_LON = -1;
+static const FieldPart I062_V1_19_380_TID_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_V1_19_380_TID_LON, NULL };
+static int hf_062_V1_19_380_TID_PT = -1;
+static const value_string valstr_062_V1_19_380_TID_PT[] = {
+ { 0, "Unknown" },
+ { 1, "Fly by waypoint (LT)" },
+ { 2, "Fly over waypoint (LT)" },
+ { 3, "Hold pattern (LT)" },
+ { 4, "Procedure hold (LT)" },
+ { 5, "Procedure turn (LT)" },
+ { 6, "RF leg (LT)" },
+ { 7, "Top of climb (VT)" },
+ { 8, "Top of descent (VT)" },
+ { 9, "Start of level (VT)" },
+ { 10, "Cross-over altitude (VT)" },
+ { 11, "Transition altitude (VT)" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_TID_PT = { 4, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_TID_PT, NULL };
+static int hf_062_V1_19_380_TID_TD = -1;
+static const value_string valstr_062_V1_19_380_TID_TD[] = {
+ { 0, "N/A" },
+ { 1, "Turn right" },
+ { 2, "Turn left" },
+ { 3, "No turn" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_TID_TD = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_TID_TD, NULL };
+static int hf_062_V1_19_380_TID_TRA = -1;
+static const value_string valstr_062_V1_19_380_TID_TRA[] = {
+ { 0, "TTR not available" },
+ { 1, "TTR available" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_TID_TRA = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_TID_TRA, NULL };
+static int hf_062_V1_19_380_TID_TOA = -1;
+static const value_string valstr_062_V1_19_380_TID_TOA[] = {
+ { 0, "TOV available" },
+ { 1, "TOV not available" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_TID_TOA = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_TID_TOA, NULL };
+static int hf_062_V1_19_380_TID_TOV = -1;
+static const FieldPart I062_V1_19_380_TID_TOV = { 24, 1.0, FIELD_PART_UFLOAT, &hf_062_V1_19_380_TID_TOV, NULL };
+static int hf_062_V1_19_380_TID_TTR = -1;
+static const FieldPart I062_V1_19_380_TID_TTR = { 16, 0.01, FIELD_PART_UFLOAT, &hf_062_V1_19_380_TID_TTR, NULL };
+static const FieldPart *I062_V1_19_380_TID_PARTS[] = {
+ &I062_V1_19_380_TID_TCA,
+ &I062_V1_19_380_TID_NC,
+ &I062_V1_19_380_TID_TCPN,
+ &I062_V1_19_380_TID_ALT,
+ &I062_V1_19_380_TID_LAT,
+ &I062_V1_19_380_TID_LON,
+ &I062_V1_19_380_TID_PT,
+ &I062_V1_19_380_TID_TD,
+ &I062_V1_19_380_TID_TRA,
+ &I062_V1_19_380_TID_TOA,
+ &I062_V1_19_380_TID_TOV,
+ &I062_V1_19_380_TID_TTR,
+ NULL
+};
+static const AsterixField I062_V1_19_380_TID = { REPETITIVE, 15, 1, 0, &hf_062_V1_19_380_TID, I062_V1_19_380_TID_PARTS, { NULL } };
+static int hf_062_V1_19_380_COM = -1;
+static int hf_062_V1_19_380_COM_COM = -1;
+static const value_string valstr_062_V1_19_380_COM_COM[] = {
+ { 0, "No communications capability (surveillance only)" },
+ { 1, "Comm. A and Comm. B capability" },
+ { 2, "Comm. A, Comm. B and Uplink ELM" },
+ { 3, "Comm. A, Comm. B, Uplink ELM and Downlink ELM" },
+ { 4, "Level 5 Transponder capability" },
+ { 5, "Not assigned" },
+ { 6, "Not assigned" },
+ { 7, "Not assigned" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_COM_COM = { 3, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_COM_COM, NULL };
+static int hf_062_V1_19_380_COM_STAT = -1;
+static const value_string valstr_062_V1_19_380_COM_STAT[] = {
+ { 0, "No alert, no SPI, aircraft airborne" },
+ { 1, "No alert, no SPI, aircraft on ground" },
+ { 2, "Alert, no SPI, aircraft airborne" },
+ { 3, "Alert, no SPI, aircraft on ground" },
+ { 4, "Alert, SPI, aircraft airborne or on ground" },
+ { 5, "No alert, SPI, aircraft airborne or on ground" },
+ { 6, "Not defined" },
+ { 7, "Unknown or not yet extracted" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_COM_STAT = { 3, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_COM_STAT, NULL };
+static int hf_062_V1_19_380_COM_SSC = -1;
+static const value_string valstr_062_V1_19_380_COM_SSC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_COM_SSC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_COM_SSC, NULL };
+static int hf_062_V1_19_380_COM_ARC = -1;
+static const value_string valstr_062_V1_19_380_COM_ARC[] = {
+ { 0, "100 ft resolution" },
+ { 1, "25 ft resolution" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_COM_ARC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_COM_ARC, NULL };
+static int hf_062_V1_19_380_COM_AIC = -1;
+static const value_string valstr_062_V1_19_380_COM_AIC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_COM_AIC = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_COM_AIC, NULL };
+static int hf_062_V1_19_380_COM_B1A = -1;
+static const FieldPart I062_V1_19_380_COM_B1A = { 1, 1.0, FIELD_PART_HEX, &hf_062_V1_19_380_COM_B1A, NULL };
+static int hf_062_V1_19_380_COM_B1B = -1;
+static const FieldPart I062_V1_19_380_COM_B1B = { 4, 1.0, FIELD_PART_HEX, &hf_062_V1_19_380_COM_B1B, NULL };
+static const FieldPart *I062_V1_19_380_COM_PARTS[] = {
+ &I062_V1_19_380_COM_COM,
+ &I062_V1_19_380_COM_STAT,
+ &IXXX_2bit_spare,
+ &I062_V1_19_380_COM_SSC,
+ &I062_V1_19_380_COM_ARC,
+ &I062_V1_19_380_COM_AIC,
+ &I062_V1_19_380_COM_B1A,
+ &I062_V1_19_380_COM_B1B,
+ NULL
+};
+static const AsterixField I062_V1_19_380_COM = { FIXED, 2, 0, 0, &hf_062_V1_19_380_COM, I062_V1_19_380_COM_PARTS, { NULL } };
+static int hf_062_V1_19_380_SAB = -1;
+static int hf_062_V1_19_380_SAB_AC = -1;
+static const value_string valstr_062_V1_19_380_SAB_AC[] = {
+ { 0, "Unknown" },
+ { 1, "ACAS not operational" },
+ { 2, "ACAS operational" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_SAB_AC = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_SAB_AC, NULL };
+static int hf_062_V1_19_380_SAB_MN = -1;
+static const value_string valstr_062_V1_19_380_SAB_MN[] = {
+ { 0, "Unknown" },
+ { 1, "Multiple navigational aids not operating" },
+ { 2, "Multiple navigational aids operating" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_SAB_MN = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_SAB_MN, NULL };
+static int hf_062_V1_19_380_SAB_DC = -1;
+static const value_string valstr_062_V1_19_380_SAB_DC[] = {
+ { 0, "Unknown" },
+ { 1, "Differential correction" },
+ { 2, "No differential correction" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_SAB_DC = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_SAB_DC, NULL };
+static int hf_062_V1_19_380_SAB_GBS = -1;
+static const value_string valstr_062_V1_19_380_SAB_GBS[] = {
+ { 0, "Transponder ground bit not set or unknown" },
+ { 1, "Transponder Ground Bit set" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_SAB_GBS = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_SAB_GBS, NULL };
+static int hf_062_V1_19_380_SAB_STAT = -1;
+static const value_string valstr_062_V1_19_380_SAB_STAT[] = {
+ { 0, "No emergency" },
+ { 1, "General emergency" },
+ { 2, "Lifeguard / medical" },
+ { 3, "Minimum fuel" },
+ { 4, "No communications" },
+ { 5, "Unlawful interference" },
+ { 6, "Downed Aircraft" },
+ { 7, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_SAB_STAT = { 3, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_SAB_STAT, NULL };
+static const FieldPart *I062_V1_19_380_SAB_PARTS[] = {
+ &I062_V1_19_380_SAB_AC,
+ &I062_V1_19_380_SAB_MN,
+ &I062_V1_19_380_SAB_DC,
+ &I062_V1_19_380_SAB_GBS,
+ &IXXX_6bit_spare,
+ &I062_V1_19_380_SAB_STAT,
+ NULL
+};
+static const AsterixField I062_V1_19_380_SAB = { FIXED, 2, 0, 0, &hf_062_V1_19_380_SAB, I062_V1_19_380_SAB_PARTS, { NULL } };
+static int hf_062_V1_19_380_ACS = -1;
+static int hf_062_V1_19_380_ACS_VALUE = -1;
+static const FieldPart I062_V1_19_380_ACS_VALUE = { 56, 1.0, FIELD_PART_HEX, &hf_062_V1_19_380_ACS_VALUE, NULL };
+static const FieldPart *I062_V1_19_380_ACS_PARTS[] = {
+ &I062_V1_19_380_ACS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_380_ACS = { FIXED, 7, 0, 0, &hf_062_V1_19_380_ACS, I062_V1_19_380_ACS_PARTS, { NULL } };
+static int hf_062_V1_19_380_BVR = -1;
+static int hf_062_V1_19_380_BVR_VALUE = -1;
+static const FieldPart I062_V1_19_380_BVR_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_062_V1_19_380_BVR_VALUE, NULL };
+static const FieldPart *I062_V1_19_380_BVR_PARTS[] = {
+ &I062_V1_19_380_BVR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_380_BVR = { FIXED, 2, 0, 0, &hf_062_V1_19_380_BVR, I062_V1_19_380_BVR_PARTS, { NULL } };
+static int hf_062_V1_19_380_GVR = -1;
+static int hf_062_V1_19_380_GVR_VALUE = -1;
+static const FieldPart I062_V1_19_380_GVR_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_062_V1_19_380_GVR_VALUE, NULL };
+static const FieldPart *I062_V1_19_380_GVR_PARTS[] = {
+ &I062_V1_19_380_GVR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_380_GVR = { FIXED, 2, 0, 0, &hf_062_V1_19_380_GVR, I062_V1_19_380_GVR_PARTS, { NULL } };
+static int hf_062_V1_19_380_RAN = -1;
+static int hf_062_V1_19_380_RAN_VALUE = -1;
+static const FieldPart I062_V1_19_380_RAN_VALUE = { 16, 0.01, FIELD_PART_FLOAT, &hf_062_V1_19_380_RAN_VALUE, NULL };
+static const FieldPart *I062_V1_19_380_RAN_PARTS[] = {
+ &I062_V1_19_380_RAN_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_380_RAN = { FIXED, 2, 0, 0, &hf_062_V1_19_380_RAN, I062_V1_19_380_RAN_PARTS, { NULL } };
+static int hf_062_V1_19_380_TAR = -1;
+static int hf_062_V1_19_380_TAR_TI = -1;
+static const value_string valstr_062_V1_19_380_TAR_TI[] = {
+ { 0, "Not available" },
+ { 1, "Left" },
+ { 2, "Right" },
+ { 3, "Straight" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_TAR_TI = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_TAR_TI, NULL };
+static int hf_062_V1_19_380_TAR_ROT = -1;
+static const FieldPart I062_V1_19_380_TAR_ROT = { 7, 0.25, FIELD_PART_FLOAT, &hf_062_V1_19_380_TAR_ROT, NULL };
+static const FieldPart *I062_V1_19_380_TAR_PARTS[] = {
+ &I062_V1_19_380_TAR_TI,
+ &IXXX_6bit_spare,
+ &I062_V1_19_380_TAR_ROT,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I062_V1_19_380_TAR = { FIXED, 2, 0, 0, &hf_062_V1_19_380_TAR, I062_V1_19_380_TAR_PARTS, { NULL } };
+static int hf_062_V1_19_380_TAN = -1;
+static int hf_062_V1_19_380_TAN_VALUE = -1;
+static const FieldPart I062_V1_19_380_TAN_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_062_V1_19_380_TAN_VALUE, NULL };
+static const FieldPart *I062_V1_19_380_TAN_PARTS[] = {
+ &I062_V1_19_380_TAN_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_380_TAN = { FIXED, 2, 0, 0, &hf_062_V1_19_380_TAN, I062_V1_19_380_TAN_PARTS, { NULL } };
+static int hf_062_V1_19_380_GS = -1;
+static int hf_062_V1_19_380_GS_VALUE = -1;
+static const FieldPart I062_V1_19_380_GS_VALUE = { 16, 0.00006103515625, FIELD_PART_FLOAT, &hf_062_V1_19_380_GS_VALUE, NULL };
+static const FieldPart *I062_V1_19_380_GS_PARTS[] = {
+ &I062_V1_19_380_GS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_380_GS = { FIXED, 2, 0, 0, &hf_062_V1_19_380_GS, I062_V1_19_380_GS_PARTS, { NULL } };
+static int hf_062_V1_19_380_VUN = -1;
+static int hf_062_V1_19_380_VUN_VALUE = -1;
+static const FieldPart I062_V1_19_380_VUN_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_19_380_VUN_VALUE, NULL };
+static const FieldPart *I062_V1_19_380_VUN_PARTS[] = {
+ &I062_V1_19_380_VUN_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_380_VUN = { FIXED, 1, 0, 0, &hf_062_V1_19_380_VUN, I062_V1_19_380_VUN_PARTS, { NULL } };
+static int hf_062_V1_19_380_MET = -1;
+static int hf_062_V1_19_380_MET_WS = -1;
+static const value_string valstr_062_V1_19_380_MET_WS[] = {
+ { 0, "Not valid Wind Speed" },
+ { 1, "Valid Wind Speed" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_MET_WS = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_MET_WS, NULL };
+static int hf_062_V1_19_380_MET_WD = -1;
+static const value_string valstr_062_V1_19_380_MET_WD[] = {
+ { 0, "Not valid Wind Direction" },
+ { 1, "Valid Wind Direction" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_MET_WD = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_MET_WD, NULL };
+static int hf_062_V1_19_380_MET_TMP = -1;
+static const value_string valstr_062_V1_19_380_MET_TMP[] = {
+ { 0, "Not valid Temperature" },
+ { 1, "Valid Temperature" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_MET_TMP = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_MET_TMP, NULL };
+static int hf_062_V1_19_380_MET_TRB = -1;
+static const value_string valstr_062_V1_19_380_MET_TRB[] = {
+ { 0, "Not valid Turbulence" },
+ { 1, "Valid Turbulence" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_MET_TRB = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_MET_TRB, NULL };
+static int hf_062_V1_19_380_MET_WSD = -1;
+static const FieldPart I062_V1_19_380_MET_WSD = { 16, 1.0, FIELD_PART_UFLOAT, &hf_062_V1_19_380_MET_WSD, NULL };
+static int hf_062_V1_19_380_MET_WDD = -1;
+static const FieldPart I062_V1_19_380_MET_WDD = { 16, 1.0, FIELD_PART_UFLOAT, &hf_062_V1_19_380_MET_WDD, NULL };
+static int hf_062_V1_19_380_MET_TMPD = -1;
+static const FieldPart I062_V1_19_380_MET_TMPD = { 16, 0.25, FIELD_PART_FLOAT, &hf_062_V1_19_380_MET_TMPD, NULL };
+static int hf_062_V1_19_380_MET_TRBD = -1;
+static const FieldPart I062_V1_19_380_MET_TRBD = { 8, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_MET_TRBD, NULL };
+static const FieldPart *I062_V1_19_380_MET_PARTS[] = {
+ &I062_V1_19_380_MET_WS,
+ &I062_V1_19_380_MET_WD,
+ &I062_V1_19_380_MET_TMP,
+ &I062_V1_19_380_MET_TRB,
+ &IXXX_4bit_spare,
+ &I062_V1_19_380_MET_WSD,
+ &I062_V1_19_380_MET_WDD,
+ &I062_V1_19_380_MET_TMPD,
+ &I062_V1_19_380_MET_TRBD,
+ NULL
+};
+static const AsterixField I062_V1_19_380_MET = { FIXED, 8, 0, 0, &hf_062_V1_19_380_MET, I062_V1_19_380_MET_PARTS, { NULL } };
+static int hf_062_V1_19_380_EMC = -1;
+static int hf_062_V1_19_380_EMC_VALUE = -1;
+static const value_string valstr_062_V1_19_380_EMC_VALUE[] = {
+ { 1, "Light aircraft =< 7000 kg" },
+ { 2, "Reserved" },
+ { 3, "7000 kg < medium aircraft < 136000 kg" },
+ { 4, "Reserved" },
+ { 5, "136000 kg <= heavy aircraft" },
+ { 6, "Highly manoeuvrable (5g acceleration capability) and high speed (>400 knots cruise)" },
+ { 7, "Reserved" },
+ { 8, "Reserved" },
+ { 9, "Reserved" },
+ { 10, "Rotocraft" },
+ { 11, "Glider / sailplane" },
+ { 12, "Lighter-than-air" },
+ { 13, "Unmanned aerial vehicle" },
+ { 14, "Space / transatmospheric vehicle" },
+ { 15, "Ultralight / handglider / paraglider" },
+ { 16, "Parachutist / skydiver" },
+ { 17, "Reserved" },
+ { 18, "Reserved" },
+ { 19, "Reserved" },
+ { 20, "Surface emergency vehicle" },
+ { 21, "Surface service vehicle" },
+ { 22, "Fixed ground or tethered obstruction" },
+ { 23, "Reserved" },
+ { 24, "Reserved" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_380_EMC_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_062_V1_19_380_EMC_VALUE, NULL };
+static const FieldPart *I062_V1_19_380_EMC_PARTS[] = {
+ &I062_V1_19_380_EMC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_380_EMC = { FIXED, 1, 0, 0, &hf_062_V1_19_380_EMC, I062_V1_19_380_EMC_PARTS, { NULL } };
+static int hf_062_V1_19_380_POS = -1;
+static int hf_062_V1_19_380_POS_LAT = -1;
+static const FieldPart I062_V1_19_380_POS_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_V1_19_380_POS_LAT, NULL };
+static int hf_062_V1_19_380_POS_LON = -1;
+static const FieldPart I062_V1_19_380_POS_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_V1_19_380_POS_LON, NULL };
+static const FieldPart *I062_V1_19_380_POS_PARTS[] = {
+ &I062_V1_19_380_POS_LAT,
+ &I062_V1_19_380_POS_LON,
+ NULL
+};
+static const AsterixField I062_V1_19_380_POS = { FIXED, 6, 0, 0, &hf_062_V1_19_380_POS, I062_V1_19_380_POS_PARTS, { NULL } };
+static int hf_062_V1_19_380_GAL = -1;
+static int hf_062_V1_19_380_GAL_VALUE = -1;
+static const FieldPart I062_V1_19_380_GAL_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_062_V1_19_380_GAL_VALUE, NULL };
+static const FieldPart *I062_V1_19_380_GAL_PARTS[] = {
+ &I062_V1_19_380_GAL_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_380_GAL = { FIXED, 2, 0, 0, &hf_062_V1_19_380_GAL, I062_V1_19_380_GAL_PARTS, { NULL } };
+static int hf_062_V1_19_380_PUN = -1;
+static int hf_062_V1_19_380_PUN_PUN = -1;
+static const FieldPart I062_V1_19_380_PUN_PUN = { 4, 1.0, FIELD_PART_HEX, &hf_062_V1_19_380_PUN_PUN, NULL };
+static const FieldPart *I062_V1_19_380_PUN_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I062_V1_19_380_PUN_PUN,
+ NULL
+};
+static const AsterixField I062_V1_19_380_PUN = { FIXED, 1, 0, 0, &hf_062_V1_19_380_PUN, I062_V1_19_380_PUN_PARTS, { NULL } };
+static int hf_062_V1_19_380_MB = -1;
+static int hf_062_V1_19_380_MB_VALUE = -1;
+static const FieldPart I062_V1_19_380_MB_VALUE = { 64, 1.0, FIELD_PART_HEX, &hf_062_V1_19_380_MB_VALUE, NULL };
+static const FieldPart *I062_V1_19_380_MB_PARTS[] = {
+ &I062_V1_19_380_MB_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_380_MB = { REPETITIVE, 8, 1, 0, &hf_062_V1_19_380_MB, I062_V1_19_380_MB_PARTS, { NULL } };
+static int hf_062_V1_19_380_IAR = -1;
+static int hf_062_V1_19_380_IAR_VALUE = -1;
+static const FieldPart I062_V1_19_380_IAR_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_062_V1_19_380_IAR_VALUE, NULL };
+static const FieldPart *I062_V1_19_380_IAR_PARTS[] = {
+ &I062_V1_19_380_IAR_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_380_IAR = { FIXED, 2, 0, 0, &hf_062_V1_19_380_IAR, I062_V1_19_380_IAR_PARTS, { NULL } };
+static int hf_062_V1_19_380_MAC = -1;
+static int hf_062_V1_19_380_MAC_VALUE = -1;
+static const FieldPart I062_V1_19_380_MAC_VALUE = { 16, 0.008, FIELD_PART_UFLOAT, &hf_062_V1_19_380_MAC_VALUE, NULL };
+static const FieldPart *I062_V1_19_380_MAC_PARTS[] = {
+ &I062_V1_19_380_MAC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_380_MAC = { FIXED, 2, 0, 0, &hf_062_V1_19_380_MAC, I062_V1_19_380_MAC_PARTS, { NULL } };
+static int hf_062_V1_19_380_BPS = -1;
+static int hf_062_V1_19_380_BPS_BPS = -1;
+static const FieldPart I062_V1_19_380_BPS_BPS = { 12, 0.1, FIELD_PART_UFLOAT, &hf_062_V1_19_380_BPS_BPS, NULL };
+static const FieldPart *I062_V1_19_380_BPS_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I062_V1_19_380_BPS_BPS,
+ NULL
+};
+static const AsterixField I062_V1_19_380_BPS = { FIXED, 2, 0, 0, &hf_062_V1_19_380_BPS, I062_V1_19_380_BPS_PARTS, { NULL } };
+static const AsterixField I062_V1_19_380 = { COMPOUND, 0, 0, 0, &hf_062_V1_19_380, NULL, { &I062_V1_19_380_ADR, &I062_V1_19_380_ID, &I062_V1_19_380_MHG, &I062_V1_19_380_IAS, &I062_V1_19_380_TAS, &I062_V1_19_380_SAL, &I062_V1_19_380_FSS, &I062_V1_19_380_TIS, &I062_V1_19_380_TID, &I062_V1_19_380_COM, &I062_V1_19_380_SAB, &I062_V1_19_380_ACS, &I062_V1_19_380_BVR, &I062_V1_19_380_GVR, &I062_V1_19_380_RAN, &I062_V1_19_380_TAR, &I062_V1_19_380_TAN, &I062_V1_19_380_GS, &I062_V1_19_380_VUN, &I062_V1_19_380_MET, &I062_V1_19_380_EMC, &I062_V1_19_380_POS, &I062_V1_19_380_GAL, &I062_V1_19_380_PUN, &I062_V1_19_380_MB, &I062_V1_19_380_IAR, &I062_V1_19_380_MAC, &I062_V1_19_380_BPS, NULL } };
+static int hf_062_V1_19_390 = -1;
+static int hf_062_V1_19_390_TAG = -1;
+static int hf_062_V1_19_390_TAG_SAC = -1;
+static const FieldPart I062_V1_19_390_TAG_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_19_390_TAG_SAC, NULL };
+static int hf_062_V1_19_390_TAG_SIC = -1;
+static const FieldPart I062_V1_19_390_TAG_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_19_390_TAG_SIC, NULL };
+static const FieldPart *I062_V1_19_390_TAG_PARTS[] = {
+ &I062_V1_19_390_TAG_SAC,
+ &I062_V1_19_390_TAG_SIC,
+ NULL
+};
+static const AsterixField I062_V1_19_390_TAG = { FIXED, 2, 0, 0, &hf_062_V1_19_390_TAG, I062_V1_19_390_TAG_PARTS, { NULL } };
+static int hf_062_V1_19_390_CS = -1;
+static int hf_062_V1_19_390_CS_VALUE = -1;
+static const FieldPart I062_V1_19_390_CS_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_062_V1_19_390_CS_VALUE, NULL };
+static const FieldPart *I062_V1_19_390_CS_PARTS[] = {
+ &I062_V1_19_390_CS_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_390_CS = { FIXED, 7, 0, 0, &hf_062_V1_19_390_CS, I062_V1_19_390_CS_PARTS, { NULL } };
+static int hf_062_V1_19_390_IFI = -1;
+static int hf_062_V1_19_390_IFI_TYP = -1;
+static const value_string valstr_062_V1_19_390_IFI_TYP[] = {
+ { 0, "Plan Number" },
+ { 1, "Unit 1 internal flight number" },
+ { 2, "Unit 2 internal flight number" },
+ { 3, "Unit 3 internal flight number" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_390_IFI_TYP = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_19_390_IFI_TYP, NULL };
+static int hf_062_V1_19_390_IFI_NBR = -1;
+static const FieldPart I062_V1_19_390_IFI_NBR = { 27, 1.0, FIELD_PART_UINT, &hf_062_V1_19_390_IFI_NBR, NULL };
+static const FieldPart *I062_V1_19_390_IFI_PARTS[] = {
+ &I062_V1_19_390_IFI_TYP,
+ &IXXX_3bit_spare,
+ &I062_V1_19_390_IFI_NBR,
+ NULL
+};
+static const AsterixField I062_V1_19_390_IFI = { FIXED, 4, 0, 0, &hf_062_V1_19_390_IFI, I062_V1_19_390_IFI_PARTS, { NULL } };
+static int hf_062_V1_19_390_FCT = -1;
+static int hf_062_V1_19_390_FCT_GATOAT = -1;
+static const value_string valstr_062_V1_19_390_FCT_GATOAT[] = {
+ { 0, "Unknown" },
+ { 1, "General Air Traffic" },
+ { 2, "Operational Air Traffic" },
+ { 3, "Not applicable" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_390_FCT_GATOAT = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_19_390_FCT_GATOAT, NULL };
+static int hf_062_V1_19_390_FCT_FR1FR2 = -1;
+static const value_string valstr_062_V1_19_390_FCT_FR1FR2[] = {
+ { 0, "Instrument Flight Rules" },
+ { 1, "Visual Flight Rules" },
+ { 2, "Not applicable" },
+ { 3, "Controlled Visual Flight Rules" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_390_FCT_FR1FR2 = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_19_390_FCT_FR1FR2, NULL };
+static int hf_062_V1_19_390_FCT_RVSM = -1;
+static const value_string valstr_062_V1_19_390_FCT_RVSM[] = {
+ { 0, "Unknown" },
+ { 1, "Approved" },
+ { 2, "Exempt" },
+ { 3, "Not Approved" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_390_FCT_RVSM = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_19_390_FCT_RVSM, NULL };
+static int hf_062_V1_19_390_FCT_HPR = -1;
+static const value_string valstr_062_V1_19_390_FCT_HPR[] = {
+ { 0, "Normal Priority Flight" },
+ { 1, "High Priority Flight" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_390_FCT_HPR = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_390_FCT_HPR, NULL };
+static const FieldPart *I062_V1_19_390_FCT_PARTS[] = {
+ &I062_V1_19_390_FCT_GATOAT,
+ &I062_V1_19_390_FCT_FR1FR2,
+ &I062_V1_19_390_FCT_RVSM,
+ &I062_V1_19_390_FCT_HPR,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I062_V1_19_390_FCT = { FIXED, 1, 0, 0, &hf_062_V1_19_390_FCT, I062_V1_19_390_FCT_PARTS, { NULL } };
+static int hf_062_V1_19_390_TAC = -1;
+static int hf_062_V1_19_390_TAC_VALUE = -1;
+static const FieldPart I062_V1_19_390_TAC_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_062_V1_19_390_TAC_VALUE, NULL };
+static const FieldPart *I062_V1_19_390_TAC_PARTS[] = {
+ &I062_V1_19_390_TAC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_390_TAC = { FIXED, 4, 0, 0, &hf_062_V1_19_390_TAC, I062_V1_19_390_TAC_PARTS, { NULL } };
+static int hf_062_V1_19_390_WTC = -1;
+static int hf_062_V1_19_390_WTC_VALUE = -1;
+static const FieldPart I062_V1_19_390_WTC_VALUE = { 8, 1.0, FIELD_PART_ASCII, &hf_062_V1_19_390_WTC_VALUE, NULL };
+static const FieldPart *I062_V1_19_390_WTC_PARTS[] = {
+ &I062_V1_19_390_WTC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_390_WTC = { FIXED, 1, 0, 0, &hf_062_V1_19_390_WTC, I062_V1_19_390_WTC_PARTS, { NULL } };
+static int hf_062_V1_19_390_DEP = -1;
+static int hf_062_V1_19_390_DEP_VALUE = -1;
+static const FieldPart I062_V1_19_390_DEP_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_062_V1_19_390_DEP_VALUE, NULL };
+static const FieldPart *I062_V1_19_390_DEP_PARTS[] = {
+ &I062_V1_19_390_DEP_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_390_DEP = { FIXED, 4, 0, 0, &hf_062_V1_19_390_DEP, I062_V1_19_390_DEP_PARTS, { NULL } };
+static int hf_062_V1_19_390_DST = -1;
+static int hf_062_V1_19_390_DST_VALUE = -1;
+static const FieldPart I062_V1_19_390_DST_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_062_V1_19_390_DST_VALUE, NULL };
+static const FieldPart *I062_V1_19_390_DST_PARTS[] = {
+ &I062_V1_19_390_DST_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_390_DST = { FIXED, 4, 0, 0, &hf_062_V1_19_390_DST, I062_V1_19_390_DST_PARTS, { NULL } };
+static int hf_062_V1_19_390_RDS = -1;
+static int hf_062_V1_19_390_RDS_NU1 = -1;
+static const FieldPart I062_V1_19_390_RDS_NU1 = { 8, 1.0, FIELD_PART_ASCII, &hf_062_V1_19_390_RDS_NU1, NULL };
+static int hf_062_V1_19_390_RDS_NU2 = -1;
+static const FieldPart I062_V1_19_390_RDS_NU2 = { 8, 1.0, FIELD_PART_ASCII, &hf_062_V1_19_390_RDS_NU2, NULL };
+static int hf_062_V1_19_390_RDS_LTR = -1;
+static const FieldPart I062_V1_19_390_RDS_LTR = { 8, 1.0, FIELD_PART_ASCII, &hf_062_V1_19_390_RDS_LTR, NULL };
+static const FieldPart *I062_V1_19_390_RDS_PARTS[] = {
+ &I062_V1_19_390_RDS_NU1,
+ &I062_V1_19_390_RDS_NU2,
+ &I062_V1_19_390_RDS_LTR,
+ NULL
+};
+static const AsterixField I062_V1_19_390_RDS = { FIXED, 3, 0, 0, &hf_062_V1_19_390_RDS, I062_V1_19_390_RDS_PARTS, { NULL } };
+static int hf_062_V1_19_390_CFL = -1;
+static int hf_062_V1_19_390_CFL_VALUE = -1;
+static const FieldPart I062_V1_19_390_CFL_VALUE = { 16, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_390_CFL_VALUE, NULL };
+static const FieldPart *I062_V1_19_390_CFL_PARTS[] = {
+ &I062_V1_19_390_CFL_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_390_CFL = { FIXED, 2, 0, 0, &hf_062_V1_19_390_CFL, I062_V1_19_390_CFL_PARTS, { NULL } };
+static int hf_062_V1_19_390_CTL = -1;
+static int hf_062_V1_19_390_CTL_CENTRE = -1;
+static const FieldPart I062_V1_19_390_CTL_CENTRE = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_19_390_CTL_CENTRE, NULL };
+static int hf_062_V1_19_390_CTL_POSITION = -1;
+static const FieldPart I062_V1_19_390_CTL_POSITION = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_19_390_CTL_POSITION, NULL };
+static const FieldPart *I062_V1_19_390_CTL_PARTS[] = {
+ &I062_V1_19_390_CTL_CENTRE,
+ &I062_V1_19_390_CTL_POSITION,
+ NULL
+};
+static const AsterixField I062_V1_19_390_CTL = { FIXED, 2, 0, 0, &hf_062_V1_19_390_CTL, I062_V1_19_390_CTL_PARTS, { NULL } };
+static int hf_062_V1_19_390_TOD = -1;
+static int hf_062_V1_19_390_TOD_TYP = -1;
+static const value_string valstr_062_V1_19_390_TOD_TYP[] = {
+ { 0, "Scheduled off-block time" },
+ { 1, "Estimated off-block time" },
+ { 2, "Estimated take-off time" },
+ { 3, "Actual off-block time" },
+ { 4, "Predicted time at runway hold" },
+ { 5, "Actual time at runway hold" },
+ { 6, "Actual line-up time" },
+ { 7, "Actual take-off time" },
+ { 8, "Estimated time of arrival" },
+ { 9, "Predicted landing time" },
+ { 10, "Actual landing time" },
+ { 11, "Actual time off runway" },
+ { 12, "Predicted time to gate" },
+ { 13, "Actual on-block time" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_390_TOD_TYP = { 5, 1.0, FIELD_PART_UINT, &hf_062_V1_19_390_TOD_TYP, NULL };
+static int hf_062_V1_19_390_TOD_DAY = -1;
+static const value_string valstr_062_V1_19_390_TOD_DAY[] = {
+ { 0, "Today" },
+ { 1, "Yesterday" },
+ { 2, "Tomorrow" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_390_TOD_DAY = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_19_390_TOD_DAY, NULL };
+static int hf_062_V1_19_390_TOD_HOR = -1;
+static const FieldPart I062_V1_19_390_TOD_HOR = { 5, 1.0, FIELD_PART_UINT, &hf_062_V1_19_390_TOD_HOR, NULL };
+static int hf_062_V1_19_390_TOD_MIN = -1;
+static const FieldPart I062_V1_19_390_TOD_MIN = { 6, 1.0, FIELD_PART_UINT, &hf_062_V1_19_390_TOD_MIN, NULL };
+static int hf_062_V1_19_390_TOD_AVS = -1;
+static const value_string valstr_062_V1_19_390_TOD_AVS[] = {
+ { 0, "Seconds available" },
+ { 1, "Seconds not available" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_390_TOD_AVS = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_390_TOD_AVS, NULL };
+static int hf_062_V1_19_390_TOD_SEC = -1;
+static const FieldPart I062_V1_19_390_TOD_SEC = { 6, 1.0, FIELD_PART_UINT, &hf_062_V1_19_390_TOD_SEC, NULL };
+static const FieldPart *I062_V1_19_390_TOD_PARTS[] = {
+ &I062_V1_19_390_TOD_TYP,
+ &I062_V1_19_390_TOD_DAY,
+ &IXXX_4bit_spare,
+ &I062_V1_19_390_TOD_HOR,
+ &IXXX_2bit_spare,
+ &I062_V1_19_390_TOD_MIN,
+ &I062_V1_19_390_TOD_AVS,
+ &IXXX_1bit_spare,
+ &I062_V1_19_390_TOD_SEC,
+ NULL
+};
+static const AsterixField I062_V1_19_390_TOD = { REPETITIVE, 4, 1, 0, &hf_062_V1_19_390_TOD, I062_V1_19_390_TOD_PARTS, { NULL } };
+static int hf_062_V1_19_390_AST = -1;
+static int hf_062_V1_19_390_AST_VALUE = -1;
+static const FieldPart I062_V1_19_390_AST_VALUE = { 48, 1.0, FIELD_PART_ASCII, &hf_062_V1_19_390_AST_VALUE, NULL };
+static const FieldPart *I062_V1_19_390_AST_PARTS[] = {
+ &I062_V1_19_390_AST_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_390_AST = { FIXED, 6, 0, 0, &hf_062_V1_19_390_AST, I062_V1_19_390_AST_PARTS, { NULL } };
+static int hf_062_V1_19_390_STS = -1;
+static int hf_062_V1_19_390_STS_EMP = -1;
+static const value_string valstr_062_V1_19_390_STS_EMP[] = {
+ { 0, "Empty" },
+ { 1, "Occupied" },
+ { 2, "Unknown" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_390_STS_EMP = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_19_390_STS_EMP, NULL };
+static int hf_062_V1_19_390_STS_AVL = -1;
+static const value_string valstr_062_V1_19_390_STS_AVL[] = {
+ { 0, "Available" },
+ { 1, "Not available" },
+ { 2, "Unknown" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_390_STS_AVL = { 2, 1.0, FIELD_PART_UINT, &hf_062_V1_19_390_STS_AVL, NULL };
+static const FieldPart *I062_V1_19_390_STS_PARTS[] = {
+ &I062_V1_19_390_STS_EMP,
+ &I062_V1_19_390_STS_AVL,
+ &IXXX_4bit_spare,
+ NULL
+};
+static const AsterixField I062_V1_19_390_STS = { FIXED, 1, 0, 0, &hf_062_V1_19_390_STS, I062_V1_19_390_STS_PARTS, { NULL } };
+static int hf_062_V1_19_390_STD = -1;
+static int hf_062_V1_19_390_STD_VALUE = -1;
+static const FieldPart I062_V1_19_390_STD_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_062_V1_19_390_STD_VALUE, NULL };
+static const FieldPart *I062_V1_19_390_STD_PARTS[] = {
+ &I062_V1_19_390_STD_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_390_STD = { FIXED, 7, 0, 0, &hf_062_V1_19_390_STD, I062_V1_19_390_STD_PARTS, { NULL } };
+static int hf_062_V1_19_390_STA = -1;
+static int hf_062_V1_19_390_STA_VALUE = -1;
+static const FieldPart I062_V1_19_390_STA_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_062_V1_19_390_STA_VALUE, NULL };
+static const FieldPart *I062_V1_19_390_STA_PARTS[] = {
+ &I062_V1_19_390_STA_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_390_STA = { FIXED, 7, 0, 0, &hf_062_V1_19_390_STA, I062_V1_19_390_STA_PARTS, { NULL } };
+static int hf_062_V1_19_390_PEM = -1;
+static int hf_062_V1_19_390_PEM_VA = -1;
+static const value_string valstr_062_V1_19_390_PEM_VA[] = {
+ { 0, "No valid Mode 3/A available" },
+ { 1, "Valid Mode 3/A available" },
+ { 0, NULL }
+};
+static const FieldPart I062_V1_19_390_PEM_VA = { 1, 1.0, FIELD_PART_UINT, &hf_062_V1_19_390_PEM_VA, NULL };
+static int hf_062_V1_19_390_PEM_MODE3A = -1;
+static const FieldPart I062_V1_19_390_PEM_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_062_V1_19_390_PEM_MODE3A, NULL };
+static const FieldPart *I062_V1_19_390_PEM_PARTS[] = {
+ &IXXX_3bit_spare,
+ &I062_V1_19_390_PEM_VA,
+ &I062_V1_19_390_PEM_MODE3A,
+ NULL
+};
+static const AsterixField I062_V1_19_390_PEM = { FIXED, 2, 0, 0, &hf_062_V1_19_390_PEM, I062_V1_19_390_PEM_PARTS, { NULL } };
+static int hf_062_V1_19_390_PEC = -1;
+static int hf_062_V1_19_390_PEC_VALUE = -1;
+static const FieldPart I062_V1_19_390_PEC_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_062_V1_19_390_PEC_VALUE, NULL };
+static const FieldPart *I062_V1_19_390_PEC_PARTS[] = {
+ &I062_V1_19_390_PEC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_390_PEC = { FIXED, 7, 0, 0, &hf_062_V1_19_390_PEC, I062_V1_19_390_PEC_PARTS, { NULL } };
+static const AsterixField I062_V1_19_390 = { COMPOUND, 0, 0, 0, &hf_062_V1_19_390, NULL, { &I062_V1_19_390_TAG, &I062_V1_19_390_CS, &I062_V1_19_390_IFI, &I062_V1_19_390_FCT, &I062_V1_19_390_TAC, &I062_V1_19_390_WTC, &I062_V1_19_390_DEP, &I062_V1_19_390_DST, &I062_V1_19_390_RDS, &I062_V1_19_390_CFL, &I062_V1_19_390_CTL, &I062_V1_19_390_TOD, &I062_V1_19_390_AST, &I062_V1_19_390_STS, &I062_V1_19_390_STD, &I062_V1_19_390_STA, &I062_V1_19_390_PEM, &I062_V1_19_390_PEC, NULL } };
+static int hf_062_V1_19_500 = -1;
+static int hf_062_V1_19_500_APC = -1;
+static int hf_062_V1_19_500_APC_X = -1;
+static const FieldPart I062_V1_19_500_APC_X = { 16, 0.5, FIELD_PART_UFLOAT, &hf_062_V1_19_500_APC_X, NULL };
+static int hf_062_V1_19_500_APC_Y = -1;
+static const FieldPart I062_V1_19_500_APC_Y = { 16, 0.5, FIELD_PART_UFLOAT, &hf_062_V1_19_500_APC_Y, NULL };
+static const FieldPart *I062_V1_19_500_APC_PARTS[] = {
+ &I062_V1_19_500_APC_X,
+ &I062_V1_19_500_APC_Y,
+ NULL
+};
+static const AsterixField I062_V1_19_500_APC = { FIXED, 4, 0, 0, &hf_062_V1_19_500_APC, I062_V1_19_500_APC_PARTS, { NULL } };
+static int hf_062_V1_19_500_COV = -1;
+static int hf_062_V1_19_500_COV_VALUE = -1;
+static const FieldPart I062_V1_19_500_COV_VALUE = { 16, 0.5, FIELD_PART_FLOAT, &hf_062_V1_19_500_COV_VALUE, NULL };
+static const FieldPart *I062_V1_19_500_COV_PARTS[] = {
+ &I062_V1_19_500_COV_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_500_COV = { FIXED, 2, 0, 0, &hf_062_V1_19_500_COV, I062_V1_19_500_COV_PARTS, { NULL } };
+static int hf_062_V1_19_500_APW = -1;
+static int hf_062_V1_19_500_APW_LAT = -1;
+static const FieldPart I062_V1_19_500_APW_LAT = { 16, 0.00000536441802978515625, FIELD_PART_UFLOAT, &hf_062_V1_19_500_APW_LAT, NULL };
+static int hf_062_V1_19_500_APW_LON = -1;
+static const FieldPart I062_V1_19_500_APW_LON = { 16, 0.00000536441802978515625, FIELD_PART_UFLOAT, &hf_062_V1_19_500_APW_LON, NULL };
+static const FieldPart *I062_V1_19_500_APW_PARTS[] = {
+ &I062_V1_19_500_APW_LAT,
+ &I062_V1_19_500_APW_LON,
+ NULL
+};
+static const AsterixField I062_V1_19_500_APW = { FIXED, 4, 0, 0, &hf_062_V1_19_500_APW, I062_V1_19_500_APW_PARTS, { NULL } };
+static int hf_062_V1_19_500_AGA = -1;
+static int hf_062_V1_19_500_AGA_VALUE = -1;
+static const FieldPart I062_V1_19_500_AGA_VALUE = { 8, 6.25, FIELD_PART_UFLOAT, &hf_062_V1_19_500_AGA_VALUE, NULL };
+static const FieldPart *I062_V1_19_500_AGA_PARTS[] = {
+ &I062_V1_19_500_AGA_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_500_AGA = { FIXED, 1, 0, 0, &hf_062_V1_19_500_AGA, I062_V1_19_500_AGA_PARTS, { NULL } };
+static int hf_062_V1_19_500_ABA = -1;
+static int hf_062_V1_19_500_ABA_VALUE = -1;
+static const FieldPart I062_V1_19_500_ABA_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_500_ABA_VALUE, NULL };
+static const FieldPart *I062_V1_19_500_ABA_PARTS[] = {
+ &I062_V1_19_500_ABA_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_500_ABA = { FIXED, 1, 0, 0, &hf_062_V1_19_500_ABA, I062_V1_19_500_ABA_PARTS, { NULL } };
+static int hf_062_V1_19_500_ATV = -1;
+static int hf_062_V1_19_500_ATV_X = -1;
+static const FieldPart I062_V1_19_500_ATV_X = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_500_ATV_X, NULL };
+static int hf_062_V1_19_500_ATV_Y = -1;
+static const FieldPart I062_V1_19_500_ATV_Y = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_500_ATV_Y, NULL };
+static const FieldPart *I062_V1_19_500_ATV_PARTS[] = {
+ &I062_V1_19_500_ATV_X,
+ &I062_V1_19_500_ATV_Y,
+ NULL
+};
+static const AsterixField I062_V1_19_500_ATV = { FIXED, 2, 0, 0, &hf_062_V1_19_500_ATV, I062_V1_19_500_ATV_PARTS, { NULL } };
+static int hf_062_V1_19_500_AA = -1;
+static int hf_062_V1_19_500_AA_X = -1;
+static const FieldPart I062_V1_19_500_AA_X = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_500_AA_X, NULL };
+static int hf_062_V1_19_500_AA_Y = -1;
+static const FieldPart I062_V1_19_500_AA_Y = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_V1_19_500_AA_Y, NULL };
+static const FieldPart *I062_V1_19_500_AA_PARTS[] = {
+ &I062_V1_19_500_AA_X,
+ &I062_V1_19_500_AA_Y,
+ NULL
+};
+static const AsterixField I062_V1_19_500_AA = { FIXED, 2, 0, 0, &hf_062_V1_19_500_AA, I062_V1_19_500_AA_PARTS, { NULL } };
+static int hf_062_V1_19_500_ARC = -1;
+static int hf_062_V1_19_500_ARC_VALUE = -1;
+static const FieldPart I062_V1_19_500_ARC_VALUE = { 8, 6.25, FIELD_PART_UFLOAT, &hf_062_V1_19_500_ARC_VALUE, NULL };
+static const FieldPart *I062_V1_19_500_ARC_PARTS[] = {
+ &I062_V1_19_500_ARC_VALUE,
+ NULL
+};
+static const AsterixField I062_V1_19_500_ARC = { FIXED, 1, 0, 0, &hf_062_V1_19_500_ARC, I062_V1_19_500_ARC_PARTS, { NULL } };
+static const AsterixField I062_V1_19_500 = { COMPOUND, 0, 0, 0, &hf_062_V1_19_500, NULL, { &I062_V1_19_500_APC, &I062_V1_19_500_COV, &I062_V1_19_500_APW, &I062_V1_19_500_AGA, &I062_V1_19_500_ABA, &I062_V1_19_500_ATV, &I062_V1_19_500_AA, &I062_V1_19_500_ARC, NULL } };
+static int hf_062_V1_19_510 = -1;
+static int hf_062_V1_19_510_MIDENT = -1;
+static const FieldPart I062_V1_19_510_MIDENT = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_19_510_MIDENT, NULL };
+static int hf_062_V1_19_510_MTRACK = -1;
+static const FieldPart I062_V1_19_510_MTRACK = { 15, 1.0, FIELD_PART_HEX, &hf_062_V1_19_510_MTRACK, NULL };
+static int hf_062_V1_19_510_SIDENT = -1;
+static const FieldPart I062_V1_19_510_SIDENT = { 8, 1.0, FIELD_PART_HEX, &hf_062_V1_19_510_SIDENT, NULL };
+static int hf_062_V1_19_510_STRACK = -1;
+static const FieldPart I062_V1_19_510_STRACK = { 15, 1.0, FIELD_PART_HEX, &hf_062_V1_19_510_STRACK, NULL };
+static const FieldPart *I062_V1_19_510_PARTS[] = {
+ &I062_V1_19_510_MIDENT,
+ &I062_V1_19_510_MTRACK,
+ &IXXX_FX,
+ &I062_V1_19_510_SIDENT,
+ &I062_V1_19_510_STRACK,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I062_V1_19_510 = { FX, 3, 0, 0, &hf_062_V1_19_510, I062_V1_19_510_PARTS, { NULL } };
+static int hf_062_V1_19_RE = -1;
+static const AsterixField I062_V1_19_RE = { EXP, 0, 0, 1, &hf_062_V1_19_RE, NULL, { NULL } };
+static int hf_062_V1_19_SP = -1;
+static const AsterixField I062_V1_19_SP = { EXP, 0, 0, 1, &hf_062_V1_19_SP, NULL, { NULL } };
+
+/* Category 062, edition 1.19 (latest) */
+static int hf_062_010 = -1;
+static int hf_062_010_SAC = -1;
+static const FieldPart I062_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_062_010_SAC, NULL };
+static int hf_062_010_SIC = -1;
+static const FieldPart I062_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_062_010_SIC, NULL };
+static const FieldPart *I062_010_PARTS[] = {
+ &I062_010_SAC,
+ &I062_010_SIC,
+ NULL
+};
+static const AsterixField I062_010 = { FIXED, 2, 0, 0, &hf_062_010, I062_010_PARTS, { NULL } };
+static int hf_062_015 = -1;
+static int hf_062_015_VALUE = -1;
+static const FieldPart I062_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_062_015_VALUE, NULL };
+static const FieldPart *I062_015_PARTS[] = {
+ &I062_015_VALUE,
+ NULL
+};
+static const AsterixField I062_015 = { FIXED, 1, 0, 0, &hf_062_015, I062_015_PARTS, { NULL } };
+static int hf_062_040 = -1;
+static int hf_062_040_VALUE = -1;
+static const FieldPart I062_040_VALUE = { 16, 1.0, FIELD_PART_HEX, &hf_062_040_VALUE, NULL };
+static const FieldPart *I062_040_PARTS[] = {
+ &I062_040_VALUE,
+ NULL
+};
+static const AsterixField I062_040 = { FIXED, 2, 0, 0, &hf_062_040, I062_040_PARTS, { NULL } };
+static int hf_062_060 = -1;
+static int hf_062_060_V = -1;
+static const value_string valstr_062_060_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I062_060_V = { 1, 1.0, FIELD_PART_UINT, &hf_062_060_V, NULL };
+static int hf_062_060_G = -1;
+static const value_string valstr_062_060_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I062_060_G = { 1, 1.0, FIELD_PART_UINT, &hf_062_060_G, NULL };
+static int hf_062_060_CH = -1;
+static const value_string valstr_062_060_CH[] = {
+ { 0, "No change" },
+ { 1, "Mode 3/A has changed" },
+ { 0, NULL }
+};
+static const FieldPart I062_060_CH = { 1, 1.0, FIELD_PART_UINT, &hf_062_060_CH, NULL };
+static int hf_062_060_MODE3A = -1;
+static const FieldPart I062_060_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_062_060_MODE3A, NULL };
+static const FieldPart *I062_060_PARTS[] = {
+ &I062_060_V,
+ &I062_060_G,
+ &I062_060_CH,
+ &IXXX_1bit_spare,
+ &I062_060_MODE3A,
+ NULL
+};
+static const AsterixField I062_060 = { FIXED, 2, 0, 0, &hf_062_060, I062_060_PARTS, { NULL } };
+static int hf_062_070 = -1;
+static int hf_062_070_VALUE = -1;
+static const FieldPart I062_070_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_062_070_VALUE, NULL };
+static const FieldPart *I062_070_PARTS[] = {
+ &I062_070_VALUE,
+ NULL
+};
+static const AsterixField I062_070 = { FIXED, 3, 0, 0, &hf_062_070, I062_070_PARTS, { NULL } };
+static int hf_062_080 = -1;
+static int hf_062_080_MON = -1;
+static const value_string valstr_062_080_MON[] = {
+ { 0, "Multisensor track" },
+ { 1, "Monosensor track" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_MON = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_MON, NULL };
+static int hf_062_080_SPI = -1;
+static const value_string valstr_062_080_SPI[] = {
+ { 0, "Default value" },
+ { 1, "SPI present in the last report received from a sensor capable of decoding this data" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_SPI = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_SPI, NULL };
+static int hf_062_080_MRH = -1;
+static const value_string valstr_062_080_MRH[] = {
+ { 0, "Barometric altitude (Mode C) more reliable" },
+ { 1, "Geometric altitude more reliable" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_MRH = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_MRH, NULL };
+static int hf_062_080_SRC = -1;
+static const value_string valstr_062_080_SRC[] = {
+ { 0, "No source" },
+ { 1, "GNSS" },
+ { 2, "3D radar" },
+ { 3, "Triangulation" },
+ { 4, "Height from coverage" },
+ { 5, "Speed look-up table" },
+ { 6, "Default height" },
+ { 7, "Multilateration" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_SRC = { 3, 1.0, FIELD_PART_UINT, &hf_062_080_SRC, NULL };
+static int hf_062_080_CNF = -1;
+static const value_string valstr_062_080_CNF[] = {
+ { 0, "Confirmed track" },
+ { 1, "Tentative track" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_CNF = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_CNF, NULL };
+static int hf_062_080_SIM = -1;
+static const value_string valstr_062_080_SIM[] = {
+ { 0, "Actual track" },
+ { 1, "Simulated track" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_SIM, NULL };
+static int hf_062_080_TSE = -1;
+static const value_string valstr_062_080_TSE[] = {
+ { 0, "Default value" },
+ { 1, "Last message transmitted to the user for the track" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_TSE = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_TSE, NULL };
+static int hf_062_080_TSB = -1;
+static const value_string valstr_062_080_TSB[] = {
+ { 0, "Default value" },
+ { 1, "First message transmitted to the user for the track" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_TSB = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_TSB, NULL };
+static int hf_062_080_FPC = -1;
+static const value_string valstr_062_080_FPC[] = {
+ { 0, "Not flight-plan correlated" },
+ { 1, "Flight plan correlated" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_FPC = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_FPC, NULL };
+static int hf_062_080_AFF = -1;
+static const value_string valstr_062_080_AFF[] = {
+ { 0, "Default value" },
+ { 1, "ADS-B data inconsistent with other surveillance information" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_AFF = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_AFF, NULL };
+static int hf_062_080_STP = -1;
+static const value_string valstr_062_080_STP[] = {
+ { 0, "Default value" },
+ { 1, "Slave Track Promotion" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_STP = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_STP, NULL };
+static int hf_062_080_KOS = -1;
+static const value_string valstr_062_080_KOS[] = {
+ { 0, "Complementary service used" },
+ { 1, "Background service used" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_KOS = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_KOS, NULL };
+static int hf_062_080_AMA = -1;
+static const value_string valstr_062_080_AMA[] = {
+ { 0, "Track not resulting from amalgamation process" },
+ { 1, "Track resulting from amalgamation process" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_AMA = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_AMA, NULL };
+static int hf_062_080_MD4 = -1;
+static const value_string valstr_062_080_MD4[] = {
+ { 0, "No Mode 4 interrogation" },
+ { 1, "Friendly target" },
+ { 2, "Unknown target" },
+ { 3, "No reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_MD4 = { 2, 1.0, FIELD_PART_UINT, &hf_062_080_MD4, NULL };
+static int hf_062_080_ME = -1;
+static const value_string valstr_062_080_ME[] = {
+ { 0, "Default value" },
+ { 1, "Military Emergency present in the last report received from a sensor capable of decoding this data" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_ME = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_ME, NULL };
+static int hf_062_080_MI = -1;
+static const value_string valstr_062_080_MI[] = {
+ { 0, "Default value" },
+ { 1, "Military Identification present in the last report received from a sensor capable of decoding this data" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_MI = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_MI, NULL };
+static int hf_062_080_MD5 = -1;
+static const value_string valstr_062_080_MD5[] = {
+ { 0, "No Mode 5 interrogation" },
+ { 1, "Friendly target" },
+ { 2, "Unknown target" },
+ { 3, "No reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_MD5 = { 2, 1.0, FIELD_PART_UINT, &hf_062_080_MD5, NULL };
+static int hf_062_080_CST = -1;
+static const value_string valstr_062_080_CST[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received track update is higher than system dependent threshold (coasting)" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_CST = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_CST, NULL };
+static int hf_062_080_PSR = -1;
+static const value_string valstr_062_080_PSR[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received PSR track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_PSR = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_PSR, NULL };
+static int hf_062_080_SSR = -1;
+static const value_string valstr_062_080_SSR[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received SSR track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_SSR = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_SSR, NULL };
+static int hf_062_080_MDS = -1;
+static const value_string valstr_062_080_MDS[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received Mode S track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_MDS = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_MDS, NULL };
+static int hf_062_080_ADS = -1;
+static const value_string valstr_062_080_ADS[] = {
+ { 0, "Default value" },
+ { 1, "Age of the last received ADS-B track update is higher than system dependent threshold" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_ADS = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_ADS, NULL };
+static int hf_062_080_SUC = -1;
+static const value_string valstr_062_080_SUC[] = {
+ { 0, "Default value" },
+ { 1, "Special Used Code (Mode A codes to be defined in the system to mark a track with special interest)" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_SUC = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_SUC, NULL };
+static int hf_062_080_AAC = -1;
+static const value_string valstr_062_080_AAC[] = {
+ { 0, "Default value" },
+ { 1, "Assigned Mode A Code Conflict (same discrete Mode A Code assigned to another track)" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_AAC = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_AAC, NULL };
+static int hf_062_080_SDS = -1;
+static const value_string valstr_062_080_SDS[] = {
+ { 0, "Combined" },
+ { 1, "Co-operative only" },
+ { 2, "Non-Cooperative only" },
+ { 3, "Not defined" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_SDS = { 2, 1.0, FIELD_PART_UINT, &hf_062_080_SDS, NULL };
+static int hf_062_080_EMS = -1;
+static const value_string valstr_062_080_EMS[] = {
+ { 0, "No emergency" },
+ { 1, "General emergency" },
+ { 2, "Lifeguard / medical" },
+ { 3, "Minimum fuel" },
+ { 4, "No communications" },
+ { 5, "Unlawful interference" },
+ { 6, "Downed Aircraft" },
+ { 7, "Undefined" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_EMS = { 3, 1.0, FIELD_PART_UINT, &hf_062_080_EMS, NULL };
+static int hf_062_080_PFT = -1;
+static const value_string valstr_062_080_PFT[] = {
+ { 0, "No indication" },
+ { 1, "Potential False Track Indication" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_PFT = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_PFT, NULL };
+static int hf_062_080_FPLT = -1;
+static const value_string valstr_062_080_FPLT[] = {
+ { 0, "Default value" },
+ { 1, "Track created / updated with FPL data" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_FPLT = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_FPLT, NULL };
+static int hf_062_080_DUPT = -1;
+static const value_string valstr_062_080_DUPT[] = {
+ { 0, "Default value" },
+ { 1, "Duplicate Mode 3/A Code" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_DUPT = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_DUPT, NULL };
+static int hf_062_080_DUPF = -1;
+static const value_string valstr_062_080_DUPF[] = {
+ { 0, "Default value" },
+ { 1, "Duplicate Flight Plan" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_DUPF = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_DUPF, NULL };
+static int hf_062_080_DUPM = -1;
+static const value_string valstr_062_080_DUPM[] = {
+ { 0, "Default value" },
+ { 1, "Duplicate Flight Plan due to manual correlation" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_DUPM = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_DUPM, NULL };
+static int hf_062_080_SFC = -1;
+static const value_string valstr_062_080_SFC[] = {
+ { 0, "Default value" },
+ { 1, "Surface target" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_SFC = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_SFC, NULL };
+static int hf_062_080_IDD = -1;
+static const value_string valstr_062_080_IDD[] = {
+ { 0, "No indication" },
+ { 1, "Duplicate Flight-ID" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_IDD = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_IDD, NULL };
+static int hf_062_080_IEC = -1;
+static const value_string valstr_062_080_IEC[] = {
+ { 0, "Default value" },
+ { 1, "Inconsistent Emergency Code" },
+ { 0, NULL }
+};
+static const FieldPart I062_080_IEC = { 1, 1.0, FIELD_PART_UINT, &hf_062_080_IEC, NULL };
+static const FieldPart *I062_080_PARTS[] = {
+ &I062_080_MON,
+ &I062_080_SPI,
+ &I062_080_MRH,
+ &I062_080_SRC,
+ &I062_080_CNF,
+ &IXXX_FX,
+ &I062_080_SIM,
+ &I062_080_TSE,
+ &I062_080_TSB,
+ &I062_080_FPC,
+ &I062_080_AFF,
+ &I062_080_STP,
+ &I062_080_KOS,
+ &IXXX_FX,
+ &I062_080_AMA,
+ &I062_080_MD4,
+ &I062_080_ME,
+ &I062_080_MI,
+ &I062_080_MD5,
+ &IXXX_FX,
+ &I062_080_CST,
+ &I062_080_PSR,
+ &I062_080_SSR,
+ &I062_080_MDS,
+ &I062_080_ADS,
+ &I062_080_SUC,
+ &I062_080_AAC,
+ &IXXX_FX,
+ &I062_080_SDS,
+ &I062_080_EMS,
+ &I062_080_PFT,
+ &I062_080_FPLT,
+ &IXXX_FX,
+ &I062_080_DUPT,
+ &I062_080_DUPF,
+ &I062_080_DUPM,
+ &I062_080_SFC,
+ &I062_080_IDD,
+ &I062_080_IEC,
+ &IXXX_1bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I062_080 = { FX, 1, 0, 0, &hf_062_080, I062_080_PARTS, { NULL } };
+static int hf_062_100 = -1;
+static int hf_062_100_X = -1;
+static const FieldPart I062_100_X = { 24, 0.5, FIELD_PART_FLOAT, &hf_062_100_X, NULL };
+static int hf_062_100_Y = -1;
+static const FieldPart I062_100_Y = { 24, 0.5, FIELD_PART_FLOAT, &hf_062_100_Y, NULL };
+static const FieldPart *I062_100_PARTS[] = {
+ &I062_100_X,
+ &I062_100_Y,
+ NULL
+};
+static const AsterixField I062_100 = { FIXED, 6, 0, 0, &hf_062_100, I062_100_PARTS, { NULL } };
+static int hf_062_105 = -1;
+static int hf_062_105_LAT = -1;
+static const FieldPart I062_105_LAT = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_062_105_LAT, NULL };
+static int hf_062_105_LON = -1;
+static const FieldPart I062_105_LON = { 32, 0.00000536441802978515625, FIELD_PART_FLOAT, &hf_062_105_LON, NULL };
+static const FieldPart *I062_105_PARTS[] = {
+ &I062_105_LAT,
+ &I062_105_LON,
+ NULL
+};
+static const AsterixField I062_105 = { FIXED, 8, 0, 0, &hf_062_105, I062_105_PARTS, { NULL } };
+static int hf_062_110 = -1;
+static int hf_062_110_SUM = -1;
+static int hf_062_110_SUM_M5 = -1;
+static const value_string valstr_062_110_SUM_M5[] = {
+ { 0, "No Mode 5 interrogation" },
+ { 1, "Mode 5 interrogation" },
+ { 0, NULL }
+};
+static const FieldPart I062_110_SUM_M5 = { 1, 1.0, FIELD_PART_UINT, &hf_062_110_SUM_M5, NULL };
+static int hf_062_110_SUM_ID = -1;
+static const value_string valstr_062_110_SUM_ID[] = {
+ { 0, "No authenticated Mode 5 ID reply" },
+ { 1, "Authenticated Mode 5 ID reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_110_SUM_ID = { 1, 1.0, FIELD_PART_UINT, &hf_062_110_SUM_ID, NULL };
+static int hf_062_110_SUM_DA = -1;
+static const value_string valstr_062_110_SUM_DA[] = {
+ { 0, "No authenticated Mode 5 Data reply or Report" },
+ { 1, "Authenticated Mode 5 Data reply or Report (i.e any valid Mode 5 reply type other than ID)" },
+ { 0, NULL }
+};
+static const FieldPart I062_110_SUM_DA = { 1, 1.0, FIELD_PART_UINT, &hf_062_110_SUM_DA, NULL };
+static int hf_062_110_SUM_M1 = -1;
+static const value_string valstr_062_110_SUM_M1[] = {
+ { 0, "Mode 1 code not present or not from Mode 5 reply" },
+ { 1, "Mode 1 code from Mode 5 reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_110_SUM_M1 = { 1, 1.0, FIELD_PART_UINT, &hf_062_110_SUM_M1, NULL };
+static int hf_062_110_SUM_M2 = -1;
+static const value_string valstr_062_110_SUM_M2[] = {
+ { 0, "Mode 2 code not present or not from Mode 5 reply" },
+ { 1, "Mode 2 code from Mode 5 reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_110_SUM_M2 = { 1, 1.0, FIELD_PART_UINT, &hf_062_110_SUM_M2, NULL };
+static int hf_062_110_SUM_M3 = -1;
+static const value_string valstr_062_110_SUM_M3[] = {
+ { 0, "Mode 3 code not present or not from Mode 5 reply" },
+ { 1, "Mode 3 code from Mode 5 reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_110_SUM_M3 = { 1, 1.0, FIELD_PART_UINT, &hf_062_110_SUM_M3, NULL };
+static int hf_062_110_SUM_MC = -1;
+static const value_string valstr_062_110_SUM_MC[] = {
+ { 0, "Mode C altitude code not present or not from Mode 5 reply" },
+ { 1, "Mode C altitude from Mode 5 reply" },
+ { 0, NULL }
+};
+static const FieldPart I062_110_SUM_MC = { 1, 1.0, FIELD_PART_UINT, &hf_062_110_SUM_MC, NULL };
+static int hf_062_110_SUM_X = -1;
+static const value_string valstr_062_110_SUM_X[] = {
+ { 0, "X-pulse set to zero or no authenticated Data reply or Report received" },
+ { 1, "X-pulse set to one" },
+ { 0, NULL }
+};
+static const FieldPart I062_110_SUM_X = { 1, 1.0, FIELD_PART_UINT, &hf_062_110_SUM_X, NULL };
+static const FieldPart *I062_110_SUM_PARTS[] = {
+ &I062_110_SUM_M5,
+ &I062_110_SUM_ID,
+ &I062_110_SUM_DA,
+ &I062_110_SUM_M1,
+ &I062_110_SUM_M2,
+ &I062_110_SUM_M3,
+ &I062_110_SUM_MC,
+ &I062_110_SUM_X,
+ NULL
+};
+static const AsterixField I062_110_SUM = { FIXED, 1, 0, 0, &hf_062_110_SUM, I062_110_SUM_PARTS, { NULL } };
+static int hf_062_110_PMN = -1;
+static int hf_062_110_PMN_PIN = -1;
+static const FieldPart I062_110_PMN_PIN = { 14, 1.0, FIELD_PART_HEX, &hf_062_110_PMN_PIN, NULL };
+static int hf_062_110_PMN_NAT = -1;
+static const FieldPart I062_110_PMN_NAT = { 5, 1.0, FIELD_PART_HEX, &hf_062_110_PMN_NAT, NULL };
+static int hf_062_110_PMN_MIS = -1;
+static const FieldPart I062_110_PMN_MIS = { 6, 1.0, FIELD_PART_HEX, &hf_062_110_PMN_MIS, NULL };
+static const FieldPart *I062_110_PMN_PARTS[] = {
+ &IXXX_2bit_spare,
+ &I062_110_PMN_PIN,
+ &IXXX_3bit_spare,
+ &I062_110_PMN_NAT,
+ &IXXX_2bit_spare,
+ &I062_110_PMN_MIS,
+ NULL
+};
+static const AsterixField I062_110_PMN = { FIXED, 4, 0, 0, &hf_062_110_PMN, I062_110_PMN_PARTS, { NULL } };
+static int hf_062_110_POS = -1;
+static int hf_062_110_POS_LAT = -1;
+static const FieldPart I062_110_POS_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_110_POS_LAT, NULL };
+static int hf_062_110_POS_LON = -1;
+static const FieldPart I062_110_POS_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_110_POS_LON, NULL };
+static const FieldPart *I062_110_POS_PARTS[] = {
+ &I062_110_POS_LAT,
+ &I062_110_POS_LON,
+ NULL
+};
+static const AsterixField I062_110_POS = { FIXED, 6, 0, 0, &hf_062_110_POS, I062_110_POS_PARTS, { NULL } };
+static int hf_062_110_GA = -1;
+static int hf_062_110_GA_RES = -1;
+static const value_string valstr_062_110_GA_RES[] = {
+ { 0, "GA reported in 100 ft increments" },
+ { 1, "GA reported in 25 ft increments" },
+ { 0, NULL }
+};
+static const FieldPart I062_110_GA_RES = { 1, 1.0, FIELD_PART_UINT, &hf_062_110_GA_RES, NULL };
+static int hf_062_110_GA_GA = -1;
+static const FieldPart I062_110_GA_GA = { 14, 25.0, FIELD_PART_FLOAT, &hf_062_110_GA_GA, NULL };
+static const FieldPart *I062_110_GA_PARTS[] = {
+ &IXXX_1bit_spare,
+ &I062_110_GA_RES,
+ &I062_110_GA_GA,
+ NULL
+};
+static const AsterixField I062_110_GA = { FIXED, 2, 0, 0, &hf_062_110_GA, I062_110_GA_PARTS, { NULL } };
+static int hf_062_110_EM1 = -1;
+static int hf_062_110_EM1_EM1 = -1;
+static const FieldPart I062_110_EM1_EM1 = { 12, 1.0, FIELD_PART_SQUAWK, &hf_062_110_EM1_EM1, NULL };
+static const FieldPart *I062_110_EM1_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I062_110_EM1_EM1,
+ NULL
+};
+static const AsterixField I062_110_EM1 = { FIXED, 2, 0, 0, &hf_062_110_EM1, I062_110_EM1_PARTS, { NULL } };
+static int hf_062_110_TOS = -1;
+static int hf_062_110_TOS_VALUE = -1;
+static const FieldPart I062_110_TOS_VALUE = { 8, 0.0078125, FIELD_PART_FLOAT, &hf_062_110_TOS_VALUE, NULL };
+static const FieldPart *I062_110_TOS_PARTS[] = {
+ &I062_110_TOS_VALUE,
+ NULL
+};
+static const AsterixField I062_110_TOS = { FIXED, 1, 0, 0, &hf_062_110_TOS, I062_110_TOS_PARTS, { NULL } };
+static int hf_062_110_XP = -1;
+static int hf_062_110_XP_X5 = -1;
+static const value_string valstr_062_110_XP_X5[] = {
+ { 0, "X-pulse set to zero or no authenticated Data reply or Report received" },
+ { 1, "X-pulse set to one (present)" },
+ { 0, NULL }
+};
+static const FieldPart I062_110_XP_X5 = { 1, 1.0, FIELD_PART_UINT, &hf_062_110_XP_X5, NULL };
+static int hf_062_110_XP_XC = -1;
+static const value_string valstr_062_110_XP_XC[] = {
+ { 0, "X-pulse set to zero or no Mode C reply" },
+ { 1, "X-pulse set to one (present)" },
+ { 0, NULL }
+};
+static const FieldPart I062_110_XP_XC = { 1, 1.0, FIELD_PART_UINT, &hf_062_110_XP_XC, NULL };
+static int hf_062_110_XP_X3 = -1;
+static const value_string valstr_062_110_XP_X3[] = {
+ { 0, "X-pulse set to zero or no Mode 3/A reply" },
+ { 1, "X-pulse set to one (present)" },
+ { 0, NULL }
+};
+static const FieldPart I062_110_XP_X3 = { 1, 1.0, FIELD_PART_UINT, &hf_062_110_XP_X3, NULL };
+static int hf_062_110_XP_X2 = -1;
+static const value_string valstr_062_110_XP_X2[] = {
+ { 0, "X-pulse set to zero or no Mode 2 reply" },
+ { 1, "X-pulse set to one (present)" },
+ { 0, NULL }
+};
+static const FieldPart I062_110_XP_X2 = { 1, 1.0, FIELD_PART_UINT, &hf_062_110_XP_X2, NULL };
+static int hf_062_110_XP_X1 = -1;
+static const value_string valstr_062_110_XP_X1[] = {
+ { 0, "X-pulse set to zero or no Mode 1 reply" },
+ { 1, "X-pulse set to one (present)" },
+ { 0, NULL }
+};
+static const FieldPart I062_110_XP_X1 = { 1, 1.0, FIELD_PART_UINT, &hf_062_110_XP_X1, NULL };
+static const FieldPart *I062_110_XP_PARTS[] = {
+ &IXXX_3bit_spare,
+ &I062_110_XP_X5,
+ &I062_110_XP_XC,
+ &I062_110_XP_X3,
+ &I062_110_XP_X2,
+ &I062_110_XP_X1,
+ NULL
+};
+static const AsterixField I062_110_XP = { FIXED, 1, 0, 0, &hf_062_110_XP, I062_110_XP_PARTS, { NULL } };
+static const AsterixField I062_110 = { COMPOUND, 0, 0, 0, &hf_062_110, NULL, { &I062_110_SUM, &I062_110_PMN, &I062_110_POS, &I062_110_GA, &I062_110_EM1, &I062_110_TOS, &I062_110_XP, NULL } };
+static int hf_062_120 = -1;
+static int hf_062_120_MODE2 = -1;
+static const FieldPart I062_120_MODE2 = { 12, 1.0, FIELD_PART_SQUAWK, &hf_062_120_MODE2, NULL };
+static const FieldPart *I062_120_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I062_120_MODE2,
+ NULL
+};
+static const AsterixField I062_120 = { FIXED, 2, 0, 0, &hf_062_120, I062_120_PARTS, { NULL } };
+static int hf_062_130 = -1;
+static int hf_062_130_VALUE = -1;
+static const FieldPart I062_130_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_062_130_VALUE, NULL };
+static const FieldPart *I062_130_PARTS[] = {
+ &I062_130_VALUE,
+ NULL
+};
+static const AsterixField I062_130 = { FIXED, 2, 0, 0, &hf_062_130, I062_130_PARTS, { NULL } };
+static int hf_062_135 = -1;
+static int hf_062_135_QNH = -1;
+static const value_string valstr_062_135_QNH[] = {
+ { 0, "No QNH correction applied" },
+ { 1, "QNH correction applied" },
+ { 0, NULL }
+};
+static const FieldPart I062_135_QNH = { 1, 1.0, FIELD_PART_UINT, &hf_062_135_QNH, NULL };
+static int hf_062_135_CTB = -1;
+static const FieldPart I062_135_CTB = { 15, 0.25, FIELD_PART_FLOAT, &hf_062_135_CTB, NULL };
+static const FieldPart *I062_135_PARTS[] = {
+ &I062_135_QNH,
+ &I062_135_CTB,
+ NULL
+};
+static const AsterixField I062_135 = { FIXED, 2, 0, 0, &hf_062_135, I062_135_PARTS, { NULL } };
+static int hf_062_136 = -1;
+static int hf_062_136_VALUE = -1;
+static const FieldPart I062_136_VALUE = { 16, 0.25, FIELD_PART_FLOAT, &hf_062_136_VALUE, NULL };
+static const FieldPart *I062_136_PARTS[] = {
+ &I062_136_VALUE,
+ NULL
+};
+static const AsterixField I062_136 = { FIXED, 2, 0, 0, &hf_062_136, I062_136_PARTS, { NULL } };
+static int hf_062_185 = -1;
+static int hf_062_185_VX = -1;
+static const FieldPart I062_185_VX = { 16, 0.25, FIELD_PART_FLOAT, &hf_062_185_VX, NULL };
+static int hf_062_185_VY = -1;
+static const FieldPart I062_185_VY = { 16, 0.25, FIELD_PART_FLOAT, &hf_062_185_VY, NULL };
+static const FieldPart *I062_185_PARTS[] = {
+ &I062_185_VX,
+ &I062_185_VY,
+ NULL
+};
+static const AsterixField I062_185 = { FIXED, 4, 0, 0, &hf_062_185, I062_185_PARTS, { NULL } };
+static int hf_062_200 = -1;
+static int hf_062_200_TRANS = -1;
+static const value_string valstr_062_200_TRANS[] = {
+ { 0, "Constant course" },
+ { 1, "Right turn" },
+ { 2, "Left turn" },
+ { 3, "Undetermined" },
+ { 0, NULL }
+};
+static const FieldPart I062_200_TRANS = { 2, 1.0, FIELD_PART_UINT, &hf_062_200_TRANS, NULL };
+static int hf_062_200_LONG = -1;
+static const value_string valstr_062_200_LONG[] = {
+ { 0, "Constant groundspeed" },
+ { 1, "Increasing groundspeed" },
+ { 2, "Decreasing groundspeed" },
+ { 3, "Undetermined" },
+ { 0, NULL }
+};
+static const FieldPart I062_200_LONG = { 2, 1.0, FIELD_PART_UINT, &hf_062_200_LONG, NULL };
+static int hf_062_200_VERT = -1;
+static const value_string valstr_062_200_VERT[] = {
+ { 0, "Level" },
+ { 1, "Climb" },
+ { 2, "Descent" },
+ { 3, "Undetermined" },
+ { 0, NULL }
+};
+static const FieldPart I062_200_VERT = { 2, 1.0, FIELD_PART_UINT, &hf_062_200_VERT, NULL };
+static int hf_062_200_ADF = -1;
+static const value_string valstr_062_200_ADF[] = {
+ { 0, "No altitude discrepancy" },
+ { 1, "Altitude discrepancy" },
+ { 0, NULL }
+};
+static const FieldPart I062_200_ADF = { 1, 1.0, FIELD_PART_UINT, &hf_062_200_ADF, NULL };
+static const FieldPart *I062_200_PARTS[] = {
+ &I062_200_TRANS,
+ &I062_200_LONG,
+ &I062_200_VERT,
+ &I062_200_ADF,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I062_200 = { FIXED, 1, 0, 0, &hf_062_200, I062_200_PARTS, { NULL } };
+static int hf_062_210 = -1;
+static int hf_062_210_AX = -1;
+static const FieldPart I062_210_AX = { 8, 0.25, FIELD_PART_FLOAT, &hf_062_210_AX, NULL };
+static int hf_062_210_AY = -1;
+static const FieldPart I062_210_AY = { 8, 0.25, FIELD_PART_FLOAT, &hf_062_210_AY, NULL };
+static const FieldPart *I062_210_PARTS[] = {
+ &I062_210_AX,
+ &I062_210_AY,
+ NULL
+};
+static const AsterixField I062_210 = { FIXED, 2, 0, 0, &hf_062_210, I062_210_PARTS, { NULL } };
+static int hf_062_220 = -1;
+static int hf_062_220_VALUE = -1;
+static const FieldPart I062_220_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_062_220_VALUE, NULL };
+static const FieldPart *I062_220_PARTS[] = {
+ &I062_220_VALUE,
+ NULL
+};
+static const AsterixField I062_220 = { FIXED, 2, 0, 0, &hf_062_220, I062_220_PARTS, { NULL } };
+static int hf_062_245 = -1;
+static int hf_062_245_STI = -1;
+static const value_string valstr_062_245_STI[] = {
+ { 0, "Callsign or registration downlinked from target" },
+ { 1, "Callsign not downlinked from target" },
+ { 2, "Registration not downlinked from target" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_245_STI = { 2, 1.0, FIELD_PART_UINT, &hf_062_245_STI, NULL };
+static int hf_062_245_CHR = -1;
+static const FieldPart I062_245_CHR = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_062_245_CHR, NULL };
+static const FieldPart *I062_245_PARTS[] = {
+ &I062_245_STI,
+ &IXXX_6bit_spare,
+ &I062_245_CHR,
+ NULL
+};
+static const AsterixField I062_245 = { FIXED, 7, 0, 0, &hf_062_245, I062_245_PARTS, { NULL } };
+static int hf_062_270 = -1;
+static int hf_062_270_LENGTH = -1;
+static const FieldPart I062_270_LENGTH = { 7, 1.0, FIELD_PART_UFLOAT, &hf_062_270_LENGTH, NULL };
+static int hf_062_270_ORIENTATION = -1;
+static const FieldPart I062_270_ORIENTATION = { 7, 2.8125, FIELD_PART_UFLOAT, &hf_062_270_ORIENTATION, NULL };
+static int hf_062_270_WIDTH = -1;
+static const FieldPart I062_270_WIDTH = { 7, 1.0, FIELD_PART_UFLOAT, &hf_062_270_WIDTH, NULL };
+static const FieldPart *I062_270_PARTS[] = {
+ &I062_270_LENGTH,
+ &IXXX_FX,
+ &I062_270_ORIENTATION,
+ &IXXX_FX,
+ &I062_270_WIDTH,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I062_270 = { FX, 1, 0, 0, &hf_062_270, I062_270_PARTS, { NULL } };
+static int hf_062_290 = -1;
+static int hf_062_290_TRK = -1;
+static int hf_062_290_TRK_VALUE = -1;
+static const FieldPart I062_290_TRK_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_290_TRK_VALUE, NULL };
+static const FieldPart *I062_290_TRK_PARTS[] = {
+ &I062_290_TRK_VALUE,
+ NULL
+};
+static const AsterixField I062_290_TRK = { FIXED, 1, 0, 0, &hf_062_290_TRK, I062_290_TRK_PARTS, { NULL } };
+static int hf_062_290_PSR = -1;
+static int hf_062_290_PSR_VALUE = -1;
+static const FieldPart I062_290_PSR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_290_PSR_VALUE, NULL };
+static const FieldPart *I062_290_PSR_PARTS[] = {
+ &I062_290_PSR_VALUE,
+ NULL
+};
+static const AsterixField I062_290_PSR = { FIXED, 1, 0, 0, &hf_062_290_PSR, I062_290_PSR_PARTS, { NULL } };
+static int hf_062_290_SSR = -1;
+static int hf_062_290_SSR_VALUE = -1;
+static const FieldPart I062_290_SSR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_290_SSR_VALUE, NULL };
+static const FieldPart *I062_290_SSR_PARTS[] = {
+ &I062_290_SSR_VALUE,
+ NULL
+};
+static const AsterixField I062_290_SSR = { FIXED, 1, 0, 0, &hf_062_290_SSR, I062_290_SSR_PARTS, { NULL } };
+static int hf_062_290_MDS = -1;
+static int hf_062_290_MDS_VALUE = -1;
+static const FieldPart I062_290_MDS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_290_MDS_VALUE, NULL };
+static const FieldPart *I062_290_MDS_PARTS[] = {
+ &I062_290_MDS_VALUE,
+ NULL
+};
+static const AsterixField I062_290_MDS = { FIXED, 1, 0, 0, &hf_062_290_MDS, I062_290_MDS_PARTS, { NULL } };
+static int hf_062_290_ADS = -1;
+static int hf_062_290_ADS_VALUE = -1;
+static const FieldPart I062_290_ADS_VALUE = { 16, 0.25, FIELD_PART_UFLOAT, &hf_062_290_ADS_VALUE, NULL };
+static const FieldPart *I062_290_ADS_PARTS[] = {
+ &I062_290_ADS_VALUE,
+ NULL
+};
+static const AsterixField I062_290_ADS = { FIXED, 2, 0, 0, &hf_062_290_ADS, I062_290_ADS_PARTS, { NULL } };
+static int hf_062_290_ES = -1;
+static int hf_062_290_ES_VALUE = -1;
+static const FieldPart I062_290_ES_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_290_ES_VALUE, NULL };
+static const FieldPart *I062_290_ES_PARTS[] = {
+ &I062_290_ES_VALUE,
+ NULL
+};
+static const AsterixField I062_290_ES = { FIXED, 1, 0, 0, &hf_062_290_ES, I062_290_ES_PARTS, { NULL } };
+static int hf_062_290_VDL = -1;
+static int hf_062_290_VDL_VALUE = -1;
+static const FieldPart I062_290_VDL_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_290_VDL_VALUE, NULL };
+static const FieldPart *I062_290_VDL_PARTS[] = {
+ &I062_290_VDL_VALUE,
+ NULL
+};
+static const AsterixField I062_290_VDL = { FIXED, 1, 0, 0, &hf_062_290_VDL, I062_290_VDL_PARTS, { NULL } };
+static int hf_062_290_UAT = -1;
+static int hf_062_290_UAT_VALUE = -1;
+static const FieldPart I062_290_UAT_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_290_UAT_VALUE, NULL };
+static const FieldPart *I062_290_UAT_PARTS[] = {
+ &I062_290_UAT_VALUE,
+ NULL
+};
+static const AsterixField I062_290_UAT = { FIXED, 1, 0, 0, &hf_062_290_UAT, I062_290_UAT_PARTS, { NULL } };
+static int hf_062_290_LOP = -1;
+static int hf_062_290_LOP_VALUE = -1;
+static const FieldPart I062_290_LOP_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_290_LOP_VALUE, NULL };
+static const FieldPart *I062_290_LOP_PARTS[] = {
+ &I062_290_LOP_VALUE,
+ NULL
+};
+static const AsterixField I062_290_LOP = { FIXED, 1, 0, 0, &hf_062_290_LOP, I062_290_LOP_PARTS, { NULL } };
+static int hf_062_290_MLT = -1;
+static int hf_062_290_MLT_VALUE = -1;
+static const FieldPart I062_290_MLT_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_290_MLT_VALUE, NULL };
+static const FieldPart *I062_290_MLT_PARTS[] = {
+ &I062_290_MLT_VALUE,
+ NULL
+};
+static const AsterixField I062_290_MLT = { FIXED, 1, 0, 0, &hf_062_290_MLT, I062_290_MLT_PARTS, { NULL } };
+static const AsterixField I062_290 = { COMPOUND, 0, 0, 0, &hf_062_290, NULL, { &I062_290_TRK, &I062_290_PSR, &I062_290_SSR, &I062_290_MDS, &I062_290_ADS, &I062_290_ES, &I062_290_VDL, &I062_290_UAT, &I062_290_LOP, &I062_290_MLT, NULL } };
+static int hf_062_295 = -1;
+static int hf_062_295_MFL = -1;
+static int hf_062_295_MFL_VALUE = -1;
+static const FieldPart I062_295_MFL_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_MFL_VALUE, NULL };
+static const FieldPart *I062_295_MFL_PARTS[] = {
+ &I062_295_MFL_VALUE,
+ NULL
+};
+static const AsterixField I062_295_MFL = { FIXED, 1, 0, 0, &hf_062_295_MFL, I062_295_MFL_PARTS, { NULL } };
+static int hf_062_295_MD1 = -1;
+static int hf_062_295_MD1_VALUE = -1;
+static const FieldPart I062_295_MD1_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_MD1_VALUE, NULL };
+static const FieldPart *I062_295_MD1_PARTS[] = {
+ &I062_295_MD1_VALUE,
+ NULL
+};
+static const AsterixField I062_295_MD1 = { FIXED, 1, 0, 0, &hf_062_295_MD1, I062_295_MD1_PARTS, { NULL } };
+static int hf_062_295_MD2 = -1;
+static int hf_062_295_MD2_VALUE = -1;
+static const FieldPart I062_295_MD2_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_MD2_VALUE, NULL };
+static const FieldPart *I062_295_MD2_PARTS[] = {
+ &I062_295_MD2_VALUE,
+ NULL
+};
+static const AsterixField I062_295_MD2 = { FIXED, 1, 0, 0, &hf_062_295_MD2, I062_295_MD2_PARTS, { NULL } };
+static int hf_062_295_MDA = -1;
+static int hf_062_295_MDA_VALUE = -1;
+static const FieldPart I062_295_MDA_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_MDA_VALUE, NULL };
+static const FieldPart *I062_295_MDA_PARTS[] = {
+ &I062_295_MDA_VALUE,
+ NULL
+};
+static const AsterixField I062_295_MDA = { FIXED, 1, 0, 0, &hf_062_295_MDA, I062_295_MDA_PARTS, { NULL } };
+static int hf_062_295_MD4 = -1;
+static int hf_062_295_MD4_VALUE = -1;
+static const FieldPart I062_295_MD4_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_MD4_VALUE, NULL };
+static const FieldPart *I062_295_MD4_PARTS[] = {
+ &I062_295_MD4_VALUE,
+ NULL
+};
+static const AsterixField I062_295_MD4 = { FIXED, 1, 0, 0, &hf_062_295_MD4, I062_295_MD4_PARTS, { NULL } };
+static int hf_062_295_MD5 = -1;
+static int hf_062_295_MD5_VALUE = -1;
+static const FieldPart I062_295_MD5_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_MD5_VALUE, NULL };
+static const FieldPart *I062_295_MD5_PARTS[] = {
+ &I062_295_MD5_VALUE,
+ NULL
+};
+static const AsterixField I062_295_MD5 = { FIXED, 1, 0, 0, &hf_062_295_MD5, I062_295_MD5_PARTS, { NULL } };
+static int hf_062_295_MHG = -1;
+static int hf_062_295_MHG_VALUE = -1;
+static const FieldPart I062_295_MHG_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_MHG_VALUE, NULL };
+static const FieldPart *I062_295_MHG_PARTS[] = {
+ &I062_295_MHG_VALUE,
+ NULL
+};
+static const AsterixField I062_295_MHG = { FIXED, 1, 0, 0, &hf_062_295_MHG, I062_295_MHG_PARTS, { NULL } };
+static int hf_062_295_IAS = -1;
+static int hf_062_295_IAS_VALUE = -1;
+static const FieldPart I062_295_IAS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_IAS_VALUE, NULL };
+static const FieldPart *I062_295_IAS_PARTS[] = {
+ &I062_295_IAS_VALUE,
+ NULL
+};
+static const AsterixField I062_295_IAS = { FIXED, 1, 0, 0, &hf_062_295_IAS, I062_295_IAS_PARTS, { NULL } };
+static int hf_062_295_TAS = -1;
+static int hf_062_295_TAS_VALUE = -1;
+static const FieldPart I062_295_TAS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_TAS_VALUE, NULL };
+static const FieldPart *I062_295_TAS_PARTS[] = {
+ &I062_295_TAS_VALUE,
+ NULL
+};
+static const AsterixField I062_295_TAS = { FIXED, 1, 0, 0, &hf_062_295_TAS, I062_295_TAS_PARTS, { NULL } };
+static int hf_062_295_SAL = -1;
+static int hf_062_295_SAL_VALUE = -1;
+static const FieldPart I062_295_SAL_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_SAL_VALUE, NULL };
+static const FieldPart *I062_295_SAL_PARTS[] = {
+ &I062_295_SAL_VALUE,
+ NULL
+};
+static const AsterixField I062_295_SAL = { FIXED, 1, 0, 0, &hf_062_295_SAL, I062_295_SAL_PARTS, { NULL } };
+static int hf_062_295_FSS = -1;
+static int hf_062_295_FSS_VALUE = -1;
+static const FieldPart I062_295_FSS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_FSS_VALUE, NULL };
+static const FieldPart *I062_295_FSS_PARTS[] = {
+ &I062_295_FSS_VALUE,
+ NULL
+};
+static const AsterixField I062_295_FSS = { FIXED, 1, 0, 0, &hf_062_295_FSS, I062_295_FSS_PARTS, { NULL } };
+static int hf_062_295_TID = -1;
+static int hf_062_295_TID_VALUE = -1;
+static const FieldPart I062_295_TID_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_TID_VALUE, NULL };
+static const FieldPart *I062_295_TID_PARTS[] = {
+ &I062_295_TID_VALUE,
+ NULL
+};
+static const AsterixField I062_295_TID = { FIXED, 1, 0, 0, &hf_062_295_TID, I062_295_TID_PARTS, { NULL } };
+static int hf_062_295_COM = -1;
+static int hf_062_295_COM_VALUE = -1;
+static const FieldPart I062_295_COM_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_COM_VALUE, NULL };
+static const FieldPart *I062_295_COM_PARTS[] = {
+ &I062_295_COM_VALUE,
+ NULL
+};
+static const AsterixField I062_295_COM = { FIXED, 1, 0, 0, &hf_062_295_COM, I062_295_COM_PARTS, { NULL } };
+static int hf_062_295_SAB = -1;
+static int hf_062_295_SAB_VALUE = -1;
+static const FieldPart I062_295_SAB_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_SAB_VALUE, NULL };
+static const FieldPart *I062_295_SAB_PARTS[] = {
+ &I062_295_SAB_VALUE,
+ NULL
+};
+static const AsterixField I062_295_SAB = { FIXED, 1, 0, 0, &hf_062_295_SAB, I062_295_SAB_PARTS, { NULL } };
+static int hf_062_295_ACS = -1;
+static int hf_062_295_ACS_VALUE = -1;
+static const FieldPart I062_295_ACS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_ACS_VALUE, NULL };
+static const FieldPart *I062_295_ACS_PARTS[] = {
+ &I062_295_ACS_VALUE,
+ NULL
+};
+static const AsterixField I062_295_ACS = { FIXED, 1, 0, 0, &hf_062_295_ACS, I062_295_ACS_PARTS, { NULL } };
+static int hf_062_295_BVR = -1;
+static int hf_062_295_BVR_VALUE = -1;
+static const FieldPart I062_295_BVR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_BVR_VALUE, NULL };
+static const FieldPart *I062_295_BVR_PARTS[] = {
+ &I062_295_BVR_VALUE,
+ NULL
+};
+static const AsterixField I062_295_BVR = { FIXED, 1, 0, 0, &hf_062_295_BVR, I062_295_BVR_PARTS, { NULL } };
+static int hf_062_295_GVR = -1;
+static int hf_062_295_GVR_VALUE = -1;
+static const FieldPart I062_295_GVR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_GVR_VALUE, NULL };
+static const FieldPart *I062_295_GVR_PARTS[] = {
+ &I062_295_GVR_VALUE,
+ NULL
+};
+static const AsterixField I062_295_GVR = { FIXED, 1, 0, 0, &hf_062_295_GVR, I062_295_GVR_PARTS, { NULL } };
+static int hf_062_295_RAN = -1;
+static int hf_062_295_RAN_VALUE = -1;
+static const FieldPart I062_295_RAN_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_RAN_VALUE, NULL };
+static const FieldPart *I062_295_RAN_PARTS[] = {
+ &I062_295_RAN_VALUE,
+ NULL
+};
+static const AsterixField I062_295_RAN = { FIXED, 1, 0, 0, &hf_062_295_RAN, I062_295_RAN_PARTS, { NULL } };
+static int hf_062_295_TAR = -1;
+static int hf_062_295_TAR_VALUE = -1;
+static const FieldPart I062_295_TAR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_TAR_VALUE, NULL };
+static const FieldPart *I062_295_TAR_PARTS[] = {
+ &I062_295_TAR_VALUE,
+ NULL
+};
+static const AsterixField I062_295_TAR = { FIXED, 1, 0, 0, &hf_062_295_TAR, I062_295_TAR_PARTS, { NULL } };
+static int hf_062_295_TAN = -1;
+static int hf_062_295_TAN_VALUE = -1;
+static const FieldPart I062_295_TAN_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_TAN_VALUE, NULL };
+static const FieldPart *I062_295_TAN_PARTS[] = {
+ &I062_295_TAN_VALUE,
+ NULL
+};
+static const AsterixField I062_295_TAN = { FIXED, 1, 0, 0, &hf_062_295_TAN, I062_295_TAN_PARTS, { NULL } };
+static int hf_062_295_GSP = -1;
+static int hf_062_295_GSP_VALUE = -1;
+static const FieldPart I062_295_GSP_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_GSP_VALUE, NULL };
+static const FieldPart *I062_295_GSP_PARTS[] = {
+ &I062_295_GSP_VALUE,
+ NULL
+};
+static const AsterixField I062_295_GSP = { FIXED, 1, 0, 0, &hf_062_295_GSP, I062_295_GSP_PARTS, { NULL } };
+static int hf_062_295_VUN = -1;
+static int hf_062_295_VUN_VALUE = -1;
+static const FieldPart I062_295_VUN_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_VUN_VALUE, NULL };
+static const FieldPart *I062_295_VUN_PARTS[] = {
+ &I062_295_VUN_VALUE,
+ NULL
+};
+static const AsterixField I062_295_VUN = { FIXED, 1, 0, 0, &hf_062_295_VUN, I062_295_VUN_PARTS, { NULL } };
+static int hf_062_295_MET = -1;
+static int hf_062_295_MET_VALUE = -1;
+static const FieldPart I062_295_MET_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_MET_VALUE, NULL };
+static const FieldPart *I062_295_MET_PARTS[] = {
+ &I062_295_MET_VALUE,
+ NULL
+};
+static const AsterixField I062_295_MET = { FIXED, 1, 0, 0, &hf_062_295_MET, I062_295_MET_PARTS, { NULL } };
+static int hf_062_295_EMC = -1;
+static int hf_062_295_EMC_VALUE = -1;
+static const FieldPart I062_295_EMC_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_EMC_VALUE, NULL };
+static const FieldPart *I062_295_EMC_PARTS[] = {
+ &I062_295_EMC_VALUE,
+ NULL
+};
+static const AsterixField I062_295_EMC = { FIXED, 1, 0, 0, &hf_062_295_EMC, I062_295_EMC_PARTS, { NULL } };
+static int hf_062_295_POS = -1;
+static int hf_062_295_POS_VALUE = -1;
+static const FieldPart I062_295_POS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_POS_VALUE, NULL };
+static const FieldPart *I062_295_POS_PARTS[] = {
+ &I062_295_POS_VALUE,
+ NULL
+};
+static const AsterixField I062_295_POS = { FIXED, 1, 0, 0, &hf_062_295_POS, I062_295_POS_PARTS, { NULL } };
+static int hf_062_295_GAL = -1;
+static int hf_062_295_GAL_VALUE = -1;
+static const FieldPart I062_295_GAL_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_GAL_VALUE, NULL };
+static const FieldPart *I062_295_GAL_PARTS[] = {
+ &I062_295_GAL_VALUE,
+ NULL
+};
+static const AsterixField I062_295_GAL = { FIXED, 1, 0, 0, &hf_062_295_GAL, I062_295_GAL_PARTS, { NULL } };
+static int hf_062_295_PUN = -1;
+static int hf_062_295_PUN_VALUE = -1;
+static const FieldPart I062_295_PUN_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_PUN_VALUE, NULL };
+static const FieldPart *I062_295_PUN_PARTS[] = {
+ &I062_295_PUN_VALUE,
+ NULL
+};
+static const AsterixField I062_295_PUN = { FIXED, 1, 0, 0, &hf_062_295_PUN, I062_295_PUN_PARTS, { NULL } };
+static int hf_062_295_MB = -1;
+static int hf_062_295_MB_VALUE = -1;
+static const FieldPart I062_295_MB_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_MB_VALUE, NULL };
+static const FieldPart *I062_295_MB_PARTS[] = {
+ &I062_295_MB_VALUE,
+ NULL
+};
+static const AsterixField I062_295_MB = { FIXED, 1, 0, 0, &hf_062_295_MB, I062_295_MB_PARTS, { NULL } };
+static int hf_062_295_IAR = -1;
+static int hf_062_295_IAR_VALUE = -1;
+static const FieldPart I062_295_IAR_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_IAR_VALUE, NULL };
+static const FieldPart *I062_295_IAR_PARTS[] = {
+ &I062_295_IAR_VALUE,
+ NULL
+};
+static const AsterixField I062_295_IAR = { FIXED, 1, 0, 0, &hf_062_295_IAR, I062_295_IAR_PARTS, { NULL } };
+static int hf_062_295_MAC = -1;
+static int hf_062_295_MAC_VALUE = -1;
+static const FieldPart I062_295_MAC_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_MAC_VALUE, NULL };
+static const FieldPart *I062_295_MAC_PARTS[] = {
+ &I062_295_MAC_VALUE,
+ NULL
+};
+static const AsterixField I062_295_MAC = { FIXED, 1, 0, 0, &hf_062_295_MAC, I062_295_MAC_PARTS, { NULL } };
+static int hf_062_295_BPS = -1;
+static int hf_062_295_BPS_VALUE = -1;
+static const FieldPart I062_295_BPS_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_295_BPS_VALUE, NULL };
+static const FieldPart *I062_295_BPS_PARTS[] = {
+ &I062_295_BPS_VALUE,
+ NULL
+};
+static const AsterixField I062_295_BPS = { FIXED, 1, 0, 0, &hf_062_295_BPS, I062_295_BPS_PARTS, { NULL } };
+static const AsterixField I062_295 = { COMPOUND, 0, 0, 0, &hf_062_295, NULL, { &I062_295_MFL, &I062_295_MD1, &I062_295_MD2, &I062_295_MDA, &I062_295_MD4, &I062_295_MD5, &I062_295_MHG, &I062_295_IAS, &I062_295_TAS, &I062_295_SAL, &I062_295_FSS, &I062_295_TID, &I062_295_COM, &I062_295_SAB, &I062_295_ACS, &I062_295_BVR, &I062_295_GVR, &I062_295_RAN, &I062_295_TAR, &I062_295_TAN, &I062_295_GSP, &I062_295_VUN, &I062_295_MET, &I062_295_EMC, &I062_295_POS, &I062_295_GAL, &I062_295_PUN, &I062_295_MB, &I062_295_IAR, &I062_295_MAC, &I062_295_BPS, NULL } };
+static int hf_062_300 = -1;
+static int hf_062_300_VALUE = -1;
+static const value_string valstr_062_300_VALUE[] = {
+ { 0, "Unknown" },
+ { 1, "ATC equipment maintenance" },
+ { 2, "Airport maintenance" },
+ { 3, "Fire" },
+ { 4, "Bird scarer" },
+ { 5, "Snow plough" },
+ { 6, "Runway sweeper" },
+ { 7, "Emergency" },
+ { 8, "Police" },
+ { 9, "Bus" },
+ { 10, "Tug (push/tow)" },
+ { 11, "Grass cutter" },
+ { 12, "Fuel" },
+ { 13, "Baggage" },
+ { 14, "Catering" },
+ { 15, "Aircraft maintenance" },
+ { 16, "Flyco (follow me)" },
+ { 0, NULL }
+};
+static const FieldPart I062_300_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_062_300_VALUE, NULL };
+static const FieldPart *I062_300_PARTS[] = {
+ &I062_300_VALUE,
+ NULL
+};
+static const AsterixField I062_300 = { FIXED, 1, 0, 0, &hf_062_300, I062_300_PARTS, { NULL } };
+static int hf_062_340 = -1;
+static int hf_062_340_SID = -1;
+static int hf_062_340_SID_SAC = -1;
+static const FieldPart I062_340_SID_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_062_340_SID_SAC, NULL };
+static int hf_062_340_SID_SIC = -1;
+static const FieldPart I062_340_SID_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_062_340_SID_SIC, NULL };
+static const FieldPart *I062_340_SID_PARTS[] = {
+ &I062_340_SID_SAC,
+ &I062_340_SID_SIC,
+ NULL
+};
+static const AsterixField I062_340_SID = { FIXED, 2, 0, 0, &hf_062_340_SID, I062_340_SID_PARTS, { NULL } };
+static int hf_062_340_POS = -1;
+static int hf_062_340_POS_RHO = -1;
+static const FieldPart I062_340_POS_RHO = { 16, 0.00390625, FIELD_PART_UFLOAT, &hf_062_340_POS_RHO, NULL };
+static int hf_062_340_POS_THETA = -1;
+static const FieldPart I062_340_POS_THETA = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_062_340_POS_THETA, NULL };
+static const FieldPart *I062_340_POS_PARTS[] = {
+ &I062_340_POS_RHO,
+ &I062_340_POS_THETA,
+ NULL
+};
+static const AsterixField I062_340_POS = { FIXED, 4, 0, 0, &hf_062_340_POS, I062_340_POS_PARTS, { NULL } };
+static int hf_062_340_HEIGHT = -1;
+static int hf_062_340_HEIGHT_VALUE = -1;
+static const FieldPart I062_340_HEIGHT_VALUE = { 16, 25.0, FIELD_PART_FLOAT, &hf_062_340_HEIGHT_VALUE, NULL };
+static const FieldPart *I062_340_HEIGHT_PARTS[] = {
+ &I062_340_HEIGHT_VALUE,
+ NULL
+};
+static const AsterixField I062_340_HEIGHT = { FIXED, 2, 0, 0, &hf_062_340_HEIGHT, I062_340_HEIGHT_PARTS, { NULL } };
+static int hf_062_340_MDC = -1;
+static int hf_062_340_MDC_V = -1;
+static const value_string valstr_062_340_MDC_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I062_340_MDC_V = { 1, 1.0, FIELD_PART_UINT, &hf_062_340_MDC_V, NULL };
+static int hf_062_340_MDC_G = -1;
+static const value_string valstr_062_340_MDC_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I062_340_MDC_G = { 1, 1.0, FIELD_PART_UINT, &hf_062_340_MDC_G, NULL };
+static int hf_062_340_MDC_LMC = -1;
+static const FieldPart I062_340_MDC_LMC = { 14, 0.25, FIELD_PART_FLOAT, &hf_062_340_MDC_LMC, NULL };
+static const FieldPart *I062_340_MDC_PARTS[] = {
+ &I062_340_MDC_V,
+ &I062_340_MDC_G,
+ &I062_340_MDC_LMC,
+ NULL
+};
+static const AsterixField I062_340_MDC = { FIXED, 2, 0, 0, &hf_062_340_MDC, I062_340_MDC_PARTS, { NULL } };
+static int hf_062_340_MDA = -1;
+static int hf_062_340_MDA_V = -1;
+static const value_string valstr_062_340_MDA_V[] = {
+ { 0, "Code validated" },
+ { 1, "Code not validated" },
+ { 0, NULL }
+};
+static const FieldPart I062_340_MDA_V = { 1, 1.0, FIELD_PART_UINT, &hf_062_340_MDA_V, NULL };
+static int hf_062_340_MDA_G = -1;
+static const value_string valstr_062_340_MDA_G[] = {
+ { 0, "Default" },
+ { 1, "Garbled code" },
+ { 0, NULL }
+};
+static const FieldPart I062_340_MDA_G = { 1, 1.0, FIELD_PART_UINT, &hf_062_340_MDA_G, NULL };
+static int hf_062_340_MDA_L = -1;
+static const value_string valstr_062_340_MDA_L[] = {
+ { 0, "Mode 3/A code as derived from the reply of the transponder" },
+ { 1, "Mode 3/A code as provided by a sensor local tracker" },
+ { 0, NULL }
+};
+static const FieldPart I062_340_MDA_L = { 1, 1.0, FIELD_PART_UINT, &hf_062_340_MDA_L, NULL };
+static int hf_062_340_MDA_MODE3A = -1;
+static const FieldPart I062_340_MDA_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_062_340_MDA_MODE3A, NULL };
+static const FieldPart *I062_340_MDA_PARTS[] = {
+ &I062_340_MDA_V,
+ &I062_340_MDA_G,
+ &I062_340_MDA_L,
+ &IXXX_1bit_spare,
+ &I062_340_MDA_MODE3A,
+ NULL
+};
+static const AsterixField I062_340_MDA = { FIXED, 2, 0, 0, &hf_062_340_MDA, I062_340_MDA_PARTS, { NULL } };
+static int hf_062_340_TYP = -1;
+static int hf_062_340_TYP_TYP = -1;
+static const value_string valstr_062_340_TYP_TYP[] = {
+ { 0, "No detection" },
+ { 1, "Single PSR detection" },
+ { 2, "Single SSR detection" },
+ { 3, "SSR + PSR detection" },
+ { 4, "Single ModeS All-Call" },
+ { 5, "Single ModeS Roll-Call" },
+ { 6, "ModeS All-Call + PSR" },
+ { 7, "ModeS Roll-Call + PSR" },
+ { 0, NULL }
+};
+static const FieldPart I062_340_TYP_TYP = { 3, 1.0, FIELD_PART_UINT, &hf_062_340_TYP_TYP, NULL };
+static int hf_062_340_TYP_SIM = -1;
+static const value_string valstr_062_340_TYP_SIM[] = {
+ { 0, "Actual target report" },
+ { 1, "Simulated target report" },
+ { 0, NULL }
+};
+static const FieldPart I062_340_TYP_SIM = { 1, 1.0, FIELD_PART_UINT, &hf_062_340_TYP_SIM, NULL };
+static int hf_062_340_TYP_RAB = -1;
+static const value_string valstr_062_340_TYP_RAB[] = {
+ { 0, "Report from target transponder" },
+ { 1, "Report from field monitor (item transponder)" },
+ { 0, NULL }
+};
+static const FieldPart I062_340_TYP_RAB = { 1, 1.0, FIELD_PART_UINT, &hf_062_340_TYP_RAB, NULL };
+static int hf_062_340_TYP_TST = -1;
+static const value_string valstr_062_340_TYP_TST[] = {
+ { 0, "Real target report" },
+ { 1, "Test target report" },
+ { 0, NULL }
+};
+static const FieldPart I062_340_TYP_TST = { 1, 1.0, FIELD_PART_UINT, &hf_062_340_TYP_TST, NULL };
+static const FieldPart *I062_340_TYP_PARTS[] = {
+ &I062_340_TYP_TYP,
+ &I062_340_TYP_SIM,
+ &I062_340_TYP_RAB,
+ &I062_340_TYP_TST,
+ &IXXX_2bit_spare,
+ NULL
+};
+static const AsterixField I062_340_TYP = { FIXED, 1, 0, 0, &hf_062_340_TYP, I062_340_TYP_PARTS, { NULL } };
+static const AsterixField I062_340 = { COMPOUND, 0, 0, 0, &hf_062_340, NULL, { &I062_340_SID, &I062_340_POS, &I062_340_HEIGHT, &I062_340_MDC, &I062_340_MDA, &I062_340_TYP, NULL } };
+static int hf_062_380 = -1;
+static int hf_062_380_ADR = -1;
+static int hf_062_380_ADR_VALUE = -1;
+static const FieldPart I062_380_ADR_VALUE = { 24, 1.0, FIELD_PART_HEX, &hf_062_380_ADR_VALUE, NULL };
+static const FieldPart *I062_380_ADR_PARTS[] = {
+ &I062_380_ADR_VALUE,
+ NULL
+};
+static const AsterixField I062_380_ADR = { FIXED, 3, 0, 0, &hf_062_380_ADR, I062_380_ADR_PARTS, { NULL } };
+static int hf_062_380_ID = -1;
+static int hf_062_380_ID_VALUE = -1;
+static const FieldPart I062_380_ID_VALUE = { 48, 1.0, FIELD_PART_CALLSIGN, &hf_062_380_ID_VALUE, NULL };
+static const FieldPart *I062_380_ID_PARTS[] = {
+ &I062_380_ID_VALUE,
+ NULL
+};
+static const AsterixField I062_380_ID = { FIXED, 6, 0, 0, &hf_062_380_ID, I062_380_ID_PARTS, { NULL } };
+static int hf_062_380_MHG = -1;
+static int hf_062_380_MHG_VALUE = -1;
+static const FieldPart I062_380_MHG_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_062_380_MHG_VALUE, NULL };
+static const FieldPart *I062_380_MHG_PARTS[] = {
+ &I062_380_MHG_VALUE,
+ NULL
+};
+static const AsterixField I062_380_MHG = { FIXED, 2, 0, 0, &hf_062_380_MHG, I062_380_MHG_PARTS, { NULL } };
+static int hf_062_380_IAS = -1;
+static int hf_062_380_IAS_IM = -1;
+static const value_string valstr_062_380_IAS_IM[] = {
+ { 0, "Air Speed = IAS, LSB (Bit-1) = 2^-14 NM/s" },
+ { 1, "Air Speed = Mach, LSB (Bit-1) = 0.001" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_IAS_IM = { 1, 1.0, FIELD_PART_UINT, &hf_062_380_IAS_IM, NULL };
+static int hf_062_380_IAS_IAS = -1;
+static const FieldPart I062_380_IAS_IAS = { 15, 1.0, FIELD_PART_HEX, &hf_062_380_IAS_IAS, NULL };
+static const FieldPart *I062_380_IAS_PARTS[] = {
+ &I062_380_IAS_IM,
+ &I062_380_IAS_IAS,
+ NULL
+};
+static const AsterixField I062_380_IAS = { FIXED, 2, 0, 0, &hf_062_380_IAS, I062_380_IAS_PARTS, { NULL } };
+static int hf_062_380_TAS = -1;
+static int hf_062_380_TAS_VALUE = -1;
+static const FieldPart I062_380_TAS_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_062_380_TAS_VALUE, NULL };
+static const FieldPart *I062_380_TAS_PARTS[] = {
+ &I062_380_TAS_VALUE,
+ NULL
+};
+static const AsterixField I062_380_TAS = { FIXED, 2, 0, 0, &hf_062_380_TAS, I062_380_TAS_PARTS, { NULL } };
+static int hf_062_380_SAL = -1;
+static int hf_062_380_SAL_SAS = -1;
+static const value_string valstr_062_380_SAL_SAS[] = {
+ { 0, "No source information provided" },
+ { 1, "Source information provided" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_SAL_SAS = { 1, 1.0, FIELD_PART_UINT, &hf_062_380_SAL_SAS, NULL };
+static int hf_062_380_SAL_SRC = -1;
+static const value_string valstr_062_380_SAL_SRC[] = {
+ { 0, "Unknown" },
+ { 1, "Aircraft altitude" },
+ { 2, "FCU/MCP selected altitude" },
+ { 3, "FMS selected altitude" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_SAL_SRC = { 2, 1.0, FIELD_PART_UINT, &hf_062_380_SAL_SRC, NULL };
+static int hf_062_380_SAL_ALT = -1;
+static const FieldPart I062_380_SAL_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_062_380_SAL_ALT, NULL };
+static const FieldPart *I062_380_SAL_PARTS[] = {
+ &I062_380_SAL_SAS,
+ &I062_380_SAL_SRC,
+ &I062_380_SAL_ALT,
+ NULL
+};
+static const AsterixField I062_380_SAL = { FIXED, 2, 0, 0, &hf_062_380_SAL, I062_380_SAL_PARTS, { NULL } };
+static int hf_062_380_FSS = -1;
+static int hf_062_380_FSS_MV = -1;
+static const value_string valstr_062_380_FSS_MV[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_FSS_MV = { 1, 1.0, FIELD_PART_UINT, &hf_062_380_FSS_MV, NULL };
+static int hf_062_380_FSS_AH = -1;
+static const value_string valstr_062_380_FSS_AH[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_FSS_AH = { 1, 1.0, FIELD_PART_UINT, &hf_062_380_FSS_AH, NULL };
+static int hf_062_380_FSS_AM = -1;
+static const value_string valstr_062_380_FSS_AM[] = {
+ { 0, "Not active" },
+ { 1, "Active" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_FSS_AM = { 1, 1.0, FIELD_PART_UINT, &hf_062_380_FSS_AM, NULL };
+static int hf_062_380_FSS_ALT = -1;
+static const FieldPart I062_380_FSS_ALT = { 13, 25.0, FIELD_PART_FLOAT, &hf_062_380_FSS_ALT, NULL };
+static const FieldPart *I062_380_FSS_PARTS[] = {
+ &I062_380_FSS_MV,
+ &I062_380_FSS_AH,
+ &I062_380_FSS_AM,
+ &I062_380_FSS_ALT,
+ NULL
+};
+static const AsterixField I062_380_FSS = { FIXED, 2, 0, 0, &hf_062_380_FSS, I062_380_FSS_PARTS, { NULL } };
+static int hf_062_380_TIS = -1;
+static int hf_062_380_TIS_NAV = -1;
+static const value_string valstr_062_380_TIS_NAV[] = {
+ { 0, "Trajectory intent data is available for this aircraft" },
+ { 1, "Trajectory intent data is not available for this aircraft" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_TIS_NAV = { 1, 1.0, FIELD_PART_UINT, &hf_062_380_TIS_NAV, NULL };
+static int hf_062_380_TIS_NVB = -1;
+static const value_string valstr_062_380_TIS_NVB[] = {
+ { 0, "Trajectory intent data is valid" },
+ { 1, "Trajectory intent data is not valid" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_TIS_NVB = { 1, 1.0, FIELD_PART_UINT, &hf_062_380_TIS_NVB, NULL };
+static const FieldPart *I062_380_TIS_PARTS[] = {
+ &I062_380_TIS_NAV,
+ &I062_380_TIS_NVB,
+ &IXXX_5bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I062_380_TIS = { FX, 1, 0, 0, &hf_062_380_TIS, I062_380_TIS_PARTS, { NULL } };
+static int hf_062_380_TID = -1;
+static int hf_062_380_TID_TCA = -1;
+static const value_string valstr_062_380_TID_TCA[] = {
+ { 0, "TCP number available" },
+ { 1, "TCP number not available" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_TID_TCA = { 1, 1.0, FIELD_PART_UINT, &hf_062_380_TID_TCA, NULL };
+static int hf_062_380_TID_NC = -1;
+static const value_string valstr_062_380_TID_NC[] = {
+ { 0, "TCP compliance" },
+ { 1, "TCP non-compliance" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_TID_NC = { 1, 1.0, FIELD_PART_UINT, &hf_062_380_TID_NC, NULL };
+static int hf_062_380_TID_TCPN = -1;
+static const FieldPart I062_380_TID_TCPN = { 6, 1.0, FIELD_PART_HEX, &hf_062_380_TID_TCPN, NULL };
+static int hf_062_380_TID_ALT = -1;
+static const FieldPart I062_380_TID_ALT = { 16, 10.0, FIELD_PART_FLOAT, &hf_062_380_TID_ALT, NULL };
+static int hf_062_380_TID_LAT = -1;
+static const FieldPart I062_380_TID_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_380_TID_LAT, NULL };
+static int hf_062_380_TID_LON = -1;
+static const FieldPart I062_380_TID_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_380_TID_LON, NULL };
+static int hf_062_380_TID_PT = -1;
+static const value_string valstr_062_380_TID_PT[] = {
+ { 0, "Unknown" },
+ { 1, "Fly by waypoint (LT)" },
+ { 2, "Fly over waypoint (LT)" },
+ { 3, "Hold pattern (LT)" },
+ { 4, "Procedure hold (LT)" },
+ { 5, "Procedure turn (LT)" },
+ { 6, "RF leg (LT)" },
+ { 7, "Top of climb (VT)" },
+ { 8, "Top of descent (VT)" },
+ { 9, "Start of level (VT)" },
+ { 10, "Cross-over altitude (VT)" },
+ { 11, "Transition altitude (VT)" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_TID_PT = { 4, 1.0, FIELD_PART_UINT, &hf_062_380_TID_PT, NULL };
+static int hf_062_380_TID_TD = -1;
+static const value_string valstr_062_380_TID_TD[] = {
+ { 0, "N/A" },
+ { 1, "Turn right" },
+ { 2, "Turn left" },
+ { 3, "No turn" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_TID_TD = { 2, 1.0, FIELD_PART_UINT, &hf_062_380_TID_TD, NULL };
+static int hf_062_380_TID_TRA = -1;
+static const value_string valstr_062_380_TID_TRA[] = {
+ { 0, "TTR not available" },
+ { 1, "TTR available" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_TID_TRA = { 1, 1.0, FIELD_PART_UINT, &hf_062_380_TID_TRA, NULL };
+static int hf_062_380_TID_TOA = -1;
+static const value_string valstr_062_380_TID_TOA[] = {
+ { 0, "TOV available" },
+ { 1, "TOV not available" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_TID_TOA = { 1, 1.0, FIELD_PART_UINT, &hf_062_380_TID_TOA, NULL };
+static int hf_062_380_TID_TOV = -1;
+static const FieldPart I062_380_TID_TOV = { 24, 1.0, FIELD_PART_UFLOAT, &hf_062_380_TID_TOV, NULL };
+static int hf_062_380_TID_TTR = -1;
+static const FieldPart I062_380_TID_TTR = { 16, 0.01, FIELD_PART_UFLOAT, &hf_062_380_TID_TTR, NULL };
+static const FieldPart *I062_380_TID_PARTS[] = {
+ &I062_380_TID_TCA,
+ &I062_380_TID_NC,
+ &I062_380_TID_TCPN,
+ &I062_380_TID_ALT,
+ &I062_380_TID_LAT,
+ &I062_380_TID_LON,
+ &I062_380_TID_PT,
+ &I062_380_TID_TD,
+ &I062_380_TID_TRA,
+ &I062_380_TID_TOA,
+ &I062_380_TID_TOV,
+ &I062_380_TID_TTR,
+ NULL
+};
+static const AsterixField I062_380_TID = { REPETITIVE, 15, 1, 0, &hf_062_380_TID, I062_380_TID_PARTS, { NULL } };
+static int hf_062_380_COM = -1;
+static int hf_062_380_COM_COM = -1;
+static const value_string valstr_062_380_COM_COM[] = {
+ { 0, "No communications capability (surveillance only)" },
+ { 1, "Comm. A and Comm. B capability" },
+ { 2, "Comm. A, Comm. B and Uplink ELM" },
+ { 3, "Comm. A, Comm. B, Uplink ELM and Downlink ELM" },
+ { 4, "Level 5 Transponder capability" },
+ { 5, "Not assigned" },
+ { 6, "Not assigned" },
+ { 7, "Not assigned" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_COM_COM = { 3, 1.0, FIELD_PART_UINT, &hf_062_380_COM_COM, NULL };
+static int hf_062_380_COM_STAT = -1;
+static const value_string valstr_062_380_COM_STAT[] = {
+ { 0, "No alert, no SPI, aircraft airborne" },
+ { 1, "No alert, no SPI, aircraft on ground" },
+ { 2, "Alert, no SPI, aircraft airborne" },
+ { 3, "Alert, no SPI, aircraft on ground" },
+ { 4, "Alert, SPI, aircraft airborne or on ground" },
+ { 5, "No alert, SPI, aircraft airborne or on ground" },
+ { 6, "Not defined" },
+ { 7, "Unknown or not yet extracted" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_COM_STAT = { 3, 1.0, FIELD_PART_UINT, &hf_062_380_COM_STAT, NULL };
+static int hf_062_380_COM_SSC = -1;
+static const value_string valstr_062_380_COM_SSC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_COM_SSC = { 1, 1.0, FIELD_PART_UINT, &hf_062_380_COM_SSC, NULL };
+static int hf_062_380_COM_ARC = -1;
+static const value_string valstr_062_380_COM_ARC[] = {
+ { 0, "100 ft resolution" },
+ { 1, "25 ft resolution" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_COM_ARC = { 1, 1.0, FIELD_PART_UINT, &hf_062_380_COM_ARC, NULL };
+static int hf_062_380_COM_AIC = -1;
+static const value_string valstr_062_380_COM_AIC[] = {
+ { 0, "No" },
+ { 1, "Yes" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_COM_AIC = { 1, 1.0, FIELD_PART_UINT, &hf_062_380_COM_AIC, NULL };
+static int hf_062_380_COM_B1A = -1;
+static const FieldPart I062_380_COM_B1A = { 1, 1.0, FIELD_PART_HEX, &hf_062_380_COM_B1A, NULL };
+static int hf_062_380_COM_B1B = -1;
+static const FieldPart I062_380_COM_B1B = { 4, 1.0, FIELD_PART_HEX, &hf_062_380_COM_B1B, NULL };
+static const FieldPart *I062_380_COM_PARTS[] = {
+ &I062_380_COM_COM,
+ &I062_380_COM_STAT,
+ &IXXX_2bit_spare,
+ &I062_380_COM_SSC,
+ &I062_380_COM_ARC,
+ &I062_380_COM_AIC,
+ &I062_380_COM_B1A,
+ &I062_380_COM_B1B,
+ NULL
+};
+static const AsterixField I062_380_COM = { FIXED, 2, 0, 0, &hf_062_380_COM, I062_380_COM_PARTS, { NULL } };
+static int hf_062_380_SAB = -1;
+static int hf_062_380_SAB_AC = -1;
+static const value_string valstr_062_380_SAB_AC[] = {
+ { 0, "Unknown" },
+ { 1, "ACAS not operational" },
+ { 2, "ACAS operational" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_SAB_AC = { 2, 1.0, FIELD_PART_UINT, &hf_062_380_SAB_AC, NULL };
+static int hf_062_380_SAB_MN = -1;
+static const value_string valstr_062_380_SAB_MN[] = {
+ { 0, "Unknown" },
+ { 1, "Multiple navigational aids not operating" },
+ { 2, "Multiple navigational aids operating" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_SAB_MN = { 2, 1.0, FIELD_PART_UINT, &hf_062_380_SAB_MN, NULL };
+static int hf_062_380_SAB_DC = -1;
+static const value_string valstr_062_380_SAB_DC[] = {
+ { 0, "Unknown" },
+ { 1, "Differential correction" },
+ { 2, "No differential correction" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_SAB_DC = { 2, 1.0, FIELD_PART_UINT, &hf_062_380_SAB_DC, NULL };
+static int hf_062_380_SAB_GBS = -1;
+static const value_string valstr_062_380_SAB_GBS[] = {
+ { 0, "Transponder ground bit not set or unknown" },
+ { 1, "Transponder Ground Bit set" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_SAB_GBS = { 1, 1.0, FIELD_PART_UINT, &hf_062_380_SAB_GBS, NULL };
+static int hf_062_380_SAB_STAT = -1;
+static const value_string valstr_062_380_SAB_STAT[] = {
+ { 0, "No emergency" },
+ { 1, "General emergency" },
+ { 2, "Lifeguard / medical" },
+ { 3, "Minimum fuel" },
+ { 4, "No communications" },
+ { 5, "Unlawful interference" },
+ { 6, "Downed Aircraft" },
+ { 7, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_SAB_STAT = { 3, 1.0, FIELD_PART_UINT, &hf_062_380_SAB_STAT, NULL };
+static const FieldPart *I062_380_SAB_PARTS[] = {
+ &I062_380_SAB_AC,
+ &I062_380_SAB_MN,
+ &I062_380_SAB_DC,
+ &I062_380_SAB_GBS,
+ &IXXX_6bit_spare,
+ &I062_380_SAB_STAT,
+ NULL
+};
+static const AsterixField I062_380_SAB = { FIXED, 2, 0, 0, &hf_062_380_SAB, I062_380_SAB_PARTS, { NULL } };
+static int hf_062_380_ACS = -1;
+static int hf_062_380_ACS_VALUE = -1;
+static const FieldPart I062_380_ACS_VALUE = { 56, 1.0, FIELD_PART_HEX, &hf_062_380_ACS_VALUE, NULL };
+static const FieldPart *I062_380_ACS_PARTS[] = {
+ &I062_380_ACS_VALUE,
+ NULL
+};
+static const AsterixField I062_380_ACS = { FIXED, 7, 0, 0, &hf_062_380_ACS, I062_380_ACS_PARTS, { NULL } };
+static int hf_062_380_BVR = -1;
+static int hf_062_380_BVR_VALUE = -1;
+static const FieldPart I062_380_BVR_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_062_380_BVR_VALUE, NULL };
+static const FieldPart *I062_380_BVR_PARTS[] = {
+ &I062_380_BVR_VALUE,
+ NULL
+};
+static const AsterixField I062_380_BVR = { FIXED, 2, 0, 0, &hf_062_380_BVR, I062_380_BVR_PARTS, { NULL } };
+static int hf_062_380_GVR = -1;
+static int hf_062_380_GVR_VALUE = -1;
+static const FieldPart I062_380_GVR_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_062_380_GVR_VALUE, NULL };
+static const FieldPart *I062_380_GVR_PARTS[] = {
+ &I062_380_GVR_VALUE,
+ NULL
+};
+static const AsterixField I062_380_GVR = { FIXED, 2, 0, 0, &hf_062_380_GVR, I062_380_GVR_PARTS, { NULL } };
+static int hf_062_380_RAN = -1;
+static int hf_062_380_RAN_VALUE = -1;
+static const FieldPart I062_380_RAN_VALUE = { 16, 0.01, FIELD_PART_FLOAT, &hf_062_380_RAN_VALUE, NULL };
+static const FieldPart *I062_380_RAN_PARTS[] = {
+ &I062_380_RAN_VALUE,
+ NULL
+};
+static const AsterixField I062_380_RAN = { FIXED, 2, 0, 0, &hf_062_380_RAN, I062_380_RAN_PARTS, { NULL } };
+static int hf_062_380_TAR = -1;
+static int hf_062_380_TAR_TI = -1;
+static const value_string valstr_062_380_TAR_TI[] = {
+ { 0, "Not available" },
+ { 1, "Left" },
+ { 2, "Right" },
+ { 3, "Straight" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_TAR_TI = { 2, 1.0, FIELD_PART_UINT, &hf_062_380_TAR_TI, NULL };
+static int hf_062_380_TAR_ROT = -1;
+static const FieldPart I062_380_TAR_ROT = { 7, 0.25, FIELD_PART_FLOAT, &hf_062_380_TAR_ROT, NULL };
+static const FieldPart *I062_380_TAR_PARTS[] = {
+ &I062_380_TAR_TI,
+ &IXXX_6bit_spare,
+ &I062_380_TAR_ROT,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I062_380_TAR = { FIXED, 2, 0, 0, &hf_062_380_TAR, I062_380_TAR_PARTS, { NULL } };
+static int hf_062_380_TAN = -1;
+static int hf_062_380_TAN_VALUE = -1;
+static const FieldPart I062_380_TAN_VALUE = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_062_380_TAN_VALUE, NULL };
+static const FieldPart *I062_380_TAN_PARTS[] = {
+ &I062_380_TAN_VALUE,
+ NULL
+};
+static const AsterixField I062_380_TAN = { FIXED, 2, 0, 0, &hf_062_380_TAN, I062_380_TAN_PARTS, { NULL } };
+static int hf_062_380_GS = -1;
+static int hf_062_380_GS_VALUE = -1;
+static const FieldPart I062_380_GS_VALUE = { 16, 0.00006103515625, FIELD_PART_FLOAT, &hf_062_380_GS_VALUE, NULL };
+static const FieldPart *I062_380_GS_PARTS[] = {
+ &I062_380_GS_VALUE,
+ NULL
+};
+static const AsterixField I062_380_GS = { FIXED, 2, 0, 0, &hf_062_380_GS, I062_380_GS_PARTS, { NULL } };
+static int hf_062_380_VUN = -1;
+static int hf_062_380_VUN_VALUE = -1;
+static const FieldPart I062_380_VUN_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_062_380_VUN_VALUE, NULL };
+static const FieldPart *I062_380_VUN_PARTS[] = {
+ &I062_380_VUN_VALUE,
+ NULL
+};
+static const AsterixField I062_380_VUN = { FIXED, 1, 0, 0, &hf_062_380_VUN, I062_380_VUN_PARTS, { NULL } };
+static int hf_062_380_MET = -1;
+static int hf_062_380_MET_WS = -1;
+static const value_string valstr_062_380_MET_WS[] = {
+ { 0, "Not valid Wind Speed" },
+ { 1, "Valid Wind Speed" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_MET_WS = { 1, 1.0, FIELD_PART_UINT, &hf_062_380_MET_WS, NULL };
+static int hf_062_380_MET_WD = -1;
+static const value_string valstr_062_380_MET_WD[] = {
+ { 0, "Not valid Wind Direction" },
+ { 1, "Valid Wind Direction" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_MET_WD = { 1, 1.0, FIELD_PART_UINT, &hf_062_380_MET_WD, NULL };
+static int hf_062_380_MET_TMP = -1;
+static const value_string valstr_062_380_MET_TMP[] = {
+ { 0, "Not valid Temperature" },
+ { 1, "Valid Temperature" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_MET_TMP = { 1, 1.0, FIELD_PART_UINT, &hf_062_380_MET_TMP, NULL };
+static int hf_062_380_MET_TRB = -1;
+static const value_string valstr_062_380_MET_TRB[] = {
+ { 0, "Not valid Turbulence" },
+ { 1, "Valid Turbulence" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_MET_TRB = { 1, 1.0, FIELD_PART_UINT, &hf_062_380_MET_TRB, NULL };
+static int hf_062_380_MET_WSD = -1;
+static const FieldPart I062_380_MET_WSD = { 16, 1.0, FIELD_PART_UFLOAT, &hf_062_380_MET_WSD, NULL };
+static int hf_062_380_MET_WDD = -1;
+static const FieldPart I062_380_MET_WDD = { 16, 1.0, FIELD_PART_UFLOAT, &hf_062_380_MET_WDD, NULL };
+static int hf_062_380_MET_TMPD = -1;
+static const FieldPart I062_380_MET_TMPD = { 16, 0.25, FIELD_PART_FLOAT, &hf_062_380_MET_TMPD, NULL };
+static int hf_062_380_MET_TRBD = -1;
+static const FieldPart I062_380_MET_TRBD = { 8, 1.0, FIELD_PART_UINT, &hf_062_380_MET_TRBD, NULL };
+static const FieldPart *I062_380_MET_PARTS[] = {
+ &I062_380_MET_WS,
+ &I062_380_MET_WD,
+ &I062_380_MET_TMP,
+ &I062_380_MET_TRB,
+ &IXXX_4bit_spare,
+ &I062_380_MET_WSD,
+ &I062_380_MET_WDD,
+ &I062_380_MET_TMPD,
+ &I062_380_MET_TRBD,
+ NULL
+};
+static const AsterixField I062_380_MET = { FIXED, 8, 0, 0, &hf_062_380_MET, I062_380_MET_PARTS, { NULL } };
+static int hf_062_380_EMC = -1;
+static int hf_062_380_EMC_VALUE = -1;
+static const value_string valstr_062_380_EMC_VALUE[] = {
+ { 1, "Light aircraft =< 7000 kg" },
+ { 2, "Reserved" },
+ { 3, "7000 kg < medium aircraft < 136000 kg" },
+ { 4, "Reserved" },
+ { 5, "136000 kg <= heavy aircraft" },
+ { 6, "Highly manoeuvrable (5g acceleration capability) and high speed (>400 knots cruise)" },
+ { 7, "Reserved" },
+ { 8, "Reserved" },
+ { 9, "Reserved" },
+ { 10, "Rotocraft" },
+ { 11, "Glider / sailplane" },
+ { 12, "Lighter-than-air" },
+ { 13, "Unmanned aerial vehicle" },
+ { 14, "Space / transatmospheric vehicle" },
+ { 15, "Ultralight / handglider / paraglider" },
+ { 16, "Parachutist / skydiver" },
+ { 17, "Reserved" },
+ { 18, "Reserved" },
+ { 19, "Reserved" },
+ { 20, "Surface emergency vehicle" },
+ { 21, "Surface service vehicle" },
+ { 22, "Fixed ground or tethered obstruction" },
+ { 23, "Reserved" },
+ { 24, "Reserved" },
+ { 0, NULL }
+};
+static const FieldPart I062_380_EMC_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_062_380_EMC_VALUE, NULL };
+static const FieldPart *I062_380_EMC_PARTS[] = {
+ &I062_380_EMC_VALUE,
+ NULL
+};
+static const AsterixField I062_380_EMC = { FIXED, 1, 0, 0, &hf_062_380_EMC, I062_380_EMC_PARTS, { NULL } };
+static int hf_062_380_POS = -1;
+static int hf_062_380_POS_LAT = -1;
+static const FieldPart I062_380_POS_LAT = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_380_POS_LAT, NULL };
+static int hf_062_380_POS_LON = -1;
+static const FieldPart I062_380_POS_LON = { 24, 0.000021457672119140625, FIELD_PART_FLOAT, &hf_062_380_POS_LON, NULL };
+static const FieldPart *I062_380_POS_PARTS[] = {
+ &I062_380_POS_LAT,
+ &I062_380_POS_LON,
+ NULL
+};
+static const AsterixField I062_380_POS = { FIXED, 6, 0, 0, &hf_062_380_POS, I062_380_POS_PARTS, { NULL } };
+static int hf_062_380_GAL = -1;
+static int hf_062_380_GAL_VALUE = -1;
+static const FieldPart I062_380_GAL_VALUE = { 16, 6.25, FIELD_PART_FLOAT, &hf_062_380_GAL_VALUE, NULL };
+static const FieldPart *I062_380_GAL_PARTS[] = {
+ &I062_380_GAL_VALUE,
+ NULL
+};
+static const AsterixField I062_380_GAL = { FIXED, 2, 0, 0, &hf_062_380_GAL, I062_380_GAL_PARTS, { NULL } };
+static int hf_062_380_PUN = -1;
+static int hf_062_380_PUN_PUN = -1;
+static const FieldPart I062_380_PUN_PUN = { 4, 1.0, FIELD_PART_HEX, &hf_062_380_PUN_PUN, NULL };
+static const FieldPart *I062_380_PUN_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I062_380_PUN_PUN,
+ NULL
+};
+static const AsterixField I062_380_PUN = { FIXED, 1, 0, 0, &hf_062_380_PUN, I062_380_PUN_PARTS, { NULL } };
+static int hf_062_380_MB = -1;
+static int hf_062_380_MB_VALUE = -1;
+static const FieldPart I062_380_MB_VALUE = { 64, 1.0, FIELD_PART_HEX, &hf_062_380_MB_VALUE, NULL };
+static const FieldPart *I062_380_MB_PARTS[] = {
+ &I062_380_MB_VALUE,
+ NULL
+};
+static const AsterixField I062_380_MB = { REPETITIVE, 8, 1, 0, &hf_062_380_MB, I062_380_MB_PARTS, { NULL } };
+static int hf_062_380_IAR = -1;
+static int hf_062_380_IAR_VALUE = -1;
+static const FieldPart I062_380_IAR_VALUE = { 16, 1.0, FIELD_PART_UFLOAT, &hf_062_380_IAR_VALUE, NULL };
+static const FieldPart *I062_380_IAR_PARTS[] = {
+ &I062_380_IAR_VALUE,
+ NULL
+};
+static const AsterixField I062_380_IAR = { FIXED, 2, 0, 0, &hf_062_380_IAR, I062_380_IAR_PARTS, { NULL } };
+static int hf_062_380_MAC = -1;
+static int hf_062_380_MAC_VALUE = -1;
+static const FieldPart I062_380_MAC_VALUE = { 16, 0.008, FIELD_PART_UFLOAT, &hf_062_380_MAC_VALUE, NULL };
+static const FieldPart *I062_380_MAC_PARTS[] = {
+ &I062_380_MAC_VALUE,
+ NULL
+};
+static const AsterixField I062_380_MAC = { FIXED, 2, 0, 0, &hf_062_380_MAC, I062_380_MAC_PARTS, { NULL } };
+static int hf_062_380_BPS = -1;
+static int hf_062_380_BPS_BPS = -1;
+static const FieldPart I062_380_BPS_BPS = { 12, 0.1, FIELD_PART_UFLOAT, &hf_062_380_BPS_BPS, NULL };
+static const FieldPart *I062_380_BPS_PARTS[] = {
+ &IXXX_4bit_spare,
+ &I062_380_BPS_BPS,
+ NULL
+};
+static const AsterixField I062_380_BPS = { FIXED, 2, 0, 0, &hf_062_380_BPS, I062_380_BPS_PARTS, { NULL } };
+static const AsterixField I062_380 = { COMPOUND, 0, 0, 0, &hf_062_380, NULL, { &I062_380_ADR, &I062_380_ID, &I062_380_MHG, &I062_380_IAS, &I062_380_TAS, &I062_380_SAL, &I062_380_FSS, &I062_380_TIS, &I062_380_TID, &I062_380_COM, &I062_380_SAB, &I062_380_ACS, &I062_380_BVR, &I062_380_GVR, &I062_380_RAN, &I062_380_TAR, &I062_380_TAN, &I062_380_GS, &I062_380_VUN, &I062_380_MET, &I062_380_EMC, &I062_380_POS, &I062_380_GAL, &I062_380_PUN, &I062_380_MB, &I062_380_IAR, &I062_380_MAC, &I062_380_BPS, NULL } };
+static int hf_062_390 = -1;
+static int hf_062_390_TAG = -1;
+static int hf_062_390_TAG_SAC = -1;
+static const FieldPart I062_390_TAG_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_062_390_TAG_SAC, NULL };
+static int hf_062_390_TAG_SIC = -1;
+static const FieldPart I062_390_TAG_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_062_390_TAG_SIC, NULL };
+static const FieldPart *I062_390_TAG_PARTS[] = {
+ &I062_390_TAG_SAC,
+ &I062_390_TAG_SIC,
+ NULL
+};
+static const AsterixField I062_390_TAG = { FIXED, 2, 0, 0, &hf_062_390_TAG, I062_390_TAG_PARTS, { NULL } };
+static int hf_062_390_CS = -1;
+static int hf_062_390_CS_VALUE = -1;
+static const FieldPart I062_390_CS_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_062_390_CS_VALUE, NULL };
+static const FieldPart *I062_390_CS_PARTS[] = {
+ &I062_390_CS_VALUE,
+ NULL
+};
+static const AsterixField I062_390_CS = { FIXED, 7, 0, 0, &hf_062_390_CS, I062_390_CS_PARTS, { NULL } };
+static int hf_062_390_IFI = -1;
+static int hf_062_390_IFI_TYP = -1;
+static const value_string valstr_062_390_IFI_TYP[] = {
+ { 0, "Plan Number" },
+ { 1, "Unit 1 internal flight number" },
+ { 2, "Unit 2 internal flight number" },
+ { 3, "Unit 3 internal flight number" },
+ { 0, NULL }
+};
+static const FieldPart I062_390_IFI_TYP = { 2, 1.0, FIELD_PART_UINT, &hf_062_390_IFI_TYP, NULL };
+static int hf_062_390_IFI_NBR = -1;
+static const FieldPart I062_390_IFI_NBR = { 27, 1.0, FIELD_PART_UINT, &hf_062_390_IFI_NBR, NULL };
+static const FieldPart *I062_390_IFI_PARTS[] = {
+ &I062_390_IFI_TYP,
+ &IXXX_3bit_spare,
+ &I062_390_IFI_NBR,
+ NULL
+};
+static const AsterixField I062_390_IFI = { FIXED, 4, 0, 0, &hf_062_390_IFI, I062_390_IFI_PARTS, { NULL } };
+static int hf_062_390_FCT = -1;
+static int hf_062_390_FCT_GATOAT = -1;
+static const value_string valstr_062_390_FCT_GATOAT[] = {
+ { 0, "Unknown" },
+ { 1, "General Air Traffic" },
+ { 2, "Operational Air Traffic" },
+ { 3, "Not applicable" },
+ { 0, NULL }
+};
+static const FieldPart I062_390_FCT_GATOAT = { 2, 1.0, FIELD_PART_UINT, &hf_062_390_FCT_GATOAT, NULL };
+static int hf_062_390_FCT_FR1FR2 = -1;
+static const value_string valstr_062_390_FCT_FR1FR2[] = {
+ { 0, "Instrument Flight Rules" },
+ { 1, "Visual Flight Rules" },
+ { 2, "Not applicable" },
+ { 3, "Controlled Visual Flight Rules" },
+ { 0, NULL }
+};
+static const FieldPart I062_390_FCT_FR1FR2 = { 2, 1.0, FIELD_PART_UINT, &hf_062_390_FCT_FR1FR2, NULL };
+static int hf_062_390_FCT_RVSM = -1;
+static const value_string valstr_062_390_FCT_RVSM[] = {
+ { 0, "Unknown" },
+ { 1, "Approved" },
+ { 2, "Exempt" },
+ { 3, "Not Approved" },
+ { 0, NULL }
+};
+static const FieldPart I062_390_FCT_RVSM = { 2, 1.0, FIELD_PART_UINT, &hf_062_390_FCT_RVSM, NULL };
+static int hf_062_390_FCT_HPR = -1;
+static const value_string valstr_062_390_FCT_HPR[] = {
+ { 0, "Normal Priority Flight" },
+ { 1, "High Priority Flight" },
+ { 0, NULL }
+};
+static const FieldPart I062_390_FCT_HPR = { 1, 1.0, FIELD_PART_UINT, &hf_062_390_FCT_HPR, NULL };
+static const FieldPart *I062_390_FCT_PARTS[] = {
+ &I062_390_FCT_GATOAT,
+ &I062_390_FCT_FR1FR2,
+ &I062_390_FCT_RVSM,
+ &I062_390_FCT_HPR,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I062_390_FCT = { FIXED, 1, 0, 0, &hf_062_390_FCT, I062_390_FCT_PARTS, { NULL } };
+static int hf_062_390_TAC = -1;
+static int hf_062_390_TAC_VALUE = -1;
+static const FieldPart I062_390_TAC_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_062_390_TAC_VALUE, NULL };
+static const FieldPart *I062_390_TAC_PARTS[] = {
+ &I062_390_TAC_VALUE,
+ NULL
+};
+static const AsterixField I062_390_TAC = { FIXED, 4, 0, 0, &hf_062_390_TAC, I062_390_TAC_PARTS, { NULL } };
+static int hf_062_390_WTC = -1;
+static int hf_062_390_WTC_VALUE = -1;
+static const FieldPart I062_390_WTC_VALUE = { 8, 1.0, FIELD_PART_ASCII, &hf_062_390_WTC_VALUE, NULL };
+static const FieldPart *I062_390_WTC_PARTS[] = {
+ &I062_390_WTC_VALUE,
+ NULL
+};
+static const AsterixField I062_390_WTC = { FIXED, 1, 0, 0, &hf_062_390_WTC, I062_390_WTC_PARTS, { NULL } };
+static int hf_062_390_DEP = -1;
+static int hf_062_390_DEP_VALUE = -1;
+static const FieldPart I062_390_DEP_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_062_390_DEP_VALUE, NULL };
+static const FieldPart *I062_390_DEP_PARTS[] = {
+ &I062_390_DEP_VALUE,
+ NULL
+};
+static const AsterixField I062_390_DEP = { FIXED, 4, 0, 0, &hf_062_390_DEP, I062_390_DEP_PARTS, { NULL } };
+static int hf_062_390_DST = -1;
+static int hf_062_390_DST_VALUE = -1;
+static const FieldPart I062_390_DST_VALUE = { 32, 1.0, FIELD_PART_ASCII, &hf_062_390_DST_VALUE, NULL };
+static const FieldPart *I062_390_DST_PARTS[] = {
+ &I062_390_DST_VALUE,
+ NULL
+};
+static const AsterixField I062_390_DST = { FIXED, 4, 0, 0, &hf_062_390_DST, I062_390_DST_PARTS, { NULL } };
+static int hf_062_390_RDS = -1;
+static int hf_062_390_RDS_NU1 = -1;
+static const FieldPart I062_390_RDS_NU1 = { 8, 1.0, FIELD_PART_ASCII, &hf_062_390_RDS_NU1, NULL };
+static int hf_062_390_RDS_NU2 = -1;
+static const FieldPart I062_390_RDS_NU2 = { 8, 1.0, FIELD_PART_ASCII, &hf_062_390_RDS_NU2, NULL };
+static int hf_062_390_RDS_LTR = -1;
+static const FieldPart I062_390_RDS_LTR = { 8, 1.0, FIELD_PART_ASCII, &hf_062_390_RDS_LTR, NULL };
+static const FieldPart *I062_390_RDS_PARTS[] = {
+ &I062_390_RDS_NU1,
+ &I062_390_RDS_NU2,
+ &I062_390_RDS_LTR,
+ NULL
+};
+static const AsterixField I062_390_RDS = { FIXED, 3, 0, 0, &hf_062_390_RDS, I062_390_RDS_PARTS, { NULL } };
+static int hf_062_390_CFL = -1;
+static int hf_062_390_CFL_VALUE = -1;
+static const FieldPart I062_390_CFL_VALUE = { 16, 0.25, FIELD_PART_UFLOAT, &hf_062_390_CFL_VALUE, NULL };
+static const FieldPart *I062_390_CFL_PARTS[] = {
+ &I062_390_CFL_VALUE,
+ NULL
+};
+static const AsterixField I062_390_CFL = { FIXED, 2, 0, 0, &hf_062_390_CFL, I062_390_CFL_PARTS, { NULL } };
+static int hf_062_390_CTL = -1;
+static int hf_062_390_CTL_CENTRE = -1;
+static const FieldPart I062_390_CTL_CENTRE = { 8, 1.0, FIELD_PART_HEX, &hf_062_390_CTL_CENTRE, NULL };
+static int hf_062_390_CTL_POSITION = -1;
+static const FieldPart I062_390_CTL_POSITION = { 8, 1.0, FIELD_PART_HEX, &hf_062_390_CTL_POSITION, NULL };
+static const FieldPart *I062_390_CTL_PARTS[] = {
+ &I062_390_CTL_CENTRE,
+ &I062_390_CTL_POSITION,
+ NULL
+};
+static const AsterixField I062_390_CTL = { FIXED, 2, 0, 0, &hf_062_390_CTL, I062_390_CTL_PARTS, { NULL } };
+static int hf_062_390_TOD = -1;
+static int hf_062_390_TOD_TYP = -1;
+static const value_string valstr_062_390_TOD_TYP[] = {
+ { 0, "Scheduled off-block time" },
+ { 1, "Estimated off-block time" },
+ { 2, "Estimated take-off time" },
+ { 3, "Actual off-block time" },
+ { 4, "Predicted time at runway hold" },
+ { 5, "Actual time at runway hold" },
+ { 6, "Actual line-up time" },
+ { 7, "Actual take-off time" },
+ { 8, "Estimated time of arrival" },
+ { 9, "Predicted landing time" },
+ { 10, "Actual landing time" },
+ { 11, "Actual time off runway" },
+ { 12, "Predicted time to gate" },
+ { 13, "Actual on-block time" },
+ { 0, NULL }
+};
+static const FieldPart I062_390_TOD_TYP = { 5, 1.0, FIELD_PART_UINT, &hf_062_390_TOD_TYP, NULL };
+static int hf_062_390_TOD_DAY = -1;
+static const value_string valstr_062_390_TOD_DAY[] = {
+ { 0, "Today" },
+ { 1, "Yesterday" },
+ { 2, "Tomorrow" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_390_TOD_DAY = { 2, 1.0, FIELD_PART_UINT, &hf_062_390_TOD_DAY, NULL };
+static int hf_062_390_TOD_HOR = -1;
+static const FieldPart I062_390_TOD_HOR = { 5, 1.0, FIELD_PART_UINT, &hf_062_390_TOD_HOR, NULL };
+static int hf_062_390_TOD_MIN = -1;
+static const FieldPart I062_390_TOD_MIN = { 6, 1.0, FIELD_PART_UINT, &hf_062_390_TOD_MIN, NULL };
+static int hf_062_390_TOD_AVS = -1;
+static const value_string valstr_062_390_TOD_AVS[] = {
+ { 0, "Seconds available" },
+ { 1, "Seconds not available" },
+ { 0, NULL }
+};
+static const FieldPart I062_390_TOD_AVS = { 1, 1.0, FIELD_PART_UINT, &hf_062_390_TOD_AVS, NULL };
+static int hf_062_390_TOD_SEC = -1;
+static const FieldPart I062_390_TOD_SEC = { 6, 1.0, FIELD_PART_UINT, &hf_062_390_TOD_SEC, NULL };
+static const FieldPart *I062_390_TOD_PARTS[] = {
+ &I062_390_TOD_TYP,
+ &I062_390_TOD_DAY,
+ &IXXX_4bit_spare,
+ &I062_390_TOD_HOR,
+ &IXXX_2bit_spare,
+ &I062_390_TOD_MIN,
+ &I062_390_TOD_AVS,
+ &IXXX_1bit_spare,
+ &I062_390_TOD_SEC,
+ NULL
+};
+static const AsterixField I062_390_TOD = { REPETITIVE, 4, 1, 0, &hf_062_390_TOD, I062_390_TOD_PARTS, { NULL } };
+static int hf_062_390_AST = -1;
+static int hf_062_390_AST_VALUE = -1;
+static const FieldPart I062_390_AST_VALUE = { 48, 1.0, FIELD_PART_ASCII, &hf_062_390_AST_VALUE, NULL };
+static const FieldPart *I062_390_AST_PARTS[] = {
+ &I062_390_AST_VALUE,
+ NULL
+};
+static const AsterixField I062_390_AST = { FIXED, 6, 0, 0, &hf_062_390_AST, I062_390_AST_PARTS, { NULL } };
+static int hf_062_390_STS = -1;
+static int hf_062_390_STS_EMP = -1;
+static const value_string valstr_062_390_STS_EMP[] = {
+ { 0, "Empty" },
+ { 1, "Occupied" },
+ { 2, "Unknown" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_390_STS_EMP = { 2, 1.0, FIELD_PART_UINT, &hf_062_390_STS_EMP, NULL };
+static int hf_062_390_STS_AVL = -1;
+static const value_string valstr_062_390_STS_AVL[] = {
+ { 0, "Available" },
+ { 1, "Not available" },
+ { 2, "Unknown" },
+ { 3, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I062_390_STS_AVL = { 2, 1.0, FIELD_PART_UINT, &hf_062_390_STS_AVL, NULL };
+static const FieldPart *I062_390_STS_PARTS[] = {
+ &I062_390_STS_EMP,
+ &I062_390_STS_AVL,
+ &IXXX_4bit_spare,
+ NULL
+};
+static const AsterixField I062_390_STS = { FIXED, 1, 0, 0, &hf_062_390_STS, I062_390_STS_PARTS, { NULL } };
+static int hf_062_390_STD = -1;
+static int hf_062_390_STD_VALUE = -1;
+static const FieldPart I062_390_STD_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_062_390_STD_VALUE, NULL };
+static const FieldPart *I062_390_STD_PARTS[] = {
+ &I062_390_STD_VALUE,
+ NULL
+};
+static const AsterixField I062_390_STD = { FIXED, 7, 0, 0, &hf_062_390_STD, I062_390_STD_PARTS, { NULL } };
+static int hf_062_390_STA = -1;
+static int hf_062_390_STA_VALUE = -1;
+static const FieldPart I062_390_STA_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_062_390_STA_VALUE, NULL };
+static const FieldPart *I062_390_STA_PARTS[] = {
+ &I062_390_STA_VALUE,
+ NULL
+};
+static const AsterixField I062_390_STA = { FIXED, 7, 0, 0, &hf_062_390_STA, I062_390_STA_PARTS, { NULL } };
+static int hf_062_390_PEM = -1;
+static int hf_062_390_PEM_VA = -1;
+static const value_string valstr_062_390_PEM_VA[] = {
+ { 0, "No valid Mode 3/A available" },
+ { 1, "Valid Mode 3/A available" },
+ { 0, NULL }
+};
+static const FieldPart I062_390_PEM_VA = { 1, 1.0, FIELD_PART_UINT, &hf_062_390_PEM_VA, NULL };
+static int hf_062_390_PEM_MODE3A = -1;
+static const FieldPart I062_390_PEM_MODE3A = { 12, 1.0, FIELD_PART_SQUAWK, &hf_062_390_PEM_MODE3A, NULL };
+static const FieldPart *I062_390_PEM_PARTS[] = {
+ &IXXX_3bit_spare,
+ &I062_390_PEM_VA,
+ &I062_390_PEM_MODE3A,
+ NULL
+};
+static const AsterixField I062_390_PEM = { FIXED, 2, 0, 0, &hf_062_390_PEM, I062_390_PEM_PARTS, { NULL } };
+static int hf_062_390_PEC = -1;
+static int hf_062_390_PEC_VALUE = -1;
+static const FieldPart I062_390_PEC_VALUE = { 56, 1.0, FIELD_PART_ASCII, &hf_062_390_PEC_VALUE, NULL };
+static const FieldPart *I062_390_PEC_PARTS[] = {
+ &I062_390_PEC_VALUE,
+ NULL
+};
+static const AsterixField I062_390_PEC = { FIXED, 7, 0, 0, &hf_062_390_PEC, I062_390_PEC_PARTS, { NULL } };
+static const AsterixField I062_390 = { COMPOUND, 0, 0, 0, &hf_062_390, NULL, { &I062_390_TAG, &I062_390_CS, &I062_390_IFI, &I062_390_FCT, &I062_390_TAC, &I062_390_WTC, &I062_390_DEP, &I062_390_DST, &I062_390_RDS, &I062_390_CFL, &I062_390_CTL, &I062_390_TOD, &I062_390_AST, &I062_390_STS, &I062_390_STD, &I062_390_STA, &I062_390_PEM, &I062_390_PEC, NULL } };
+static int hf_062_500 = -1;
+static int hf_062_500_APC = -1;
+static int hf_062_500_APC_X = -1;
+static const FieldPart I062_500_APC_X = { 16, 0.5, FIELD_PART_UFLOAT, &hf_062_500_APC_X, NULL };
+static int hf_062_500_APC_Y = -1;
+static const FieldPart I062_500_APC_Y = { 16, 0.5, FIELD_PART_UFLOAT, &hf_062_500_APC_Y, NULL };
+static const FieldPart *I062_500_APC_PARTS[] = {
+ &I062_500_APC_X,
+ &I062_500_APC_Y,
+ NULL
+};
+static const AsterixField I062_500_APC = { FIXED, 4, 0, 0, &hf_062_500_APC, I062_500_APC_PARTS, { NULL } };
+static int hf_062_500_COV = -1;
+static int hf_062_500_COV_VALUE = -1;
+static const FieldPart I062_500_COV_VALUE = { 16, 0.5, FIELD_PART_FLOAT, &hf_062_500_COV_VALUE, NULL };
+static const FieldPart *I062_500_COV_PARTS[] = {
+ &I062_500_COV_VALUE,
+ NULL
+};
+static const AsterixField I062_500_COV = { FIXED, 2, 0, 0, &hf_062_500_COV, I062_500_COV_PARTS, { NULL } };
+static int hf_062_500_APW = -1;
+static int hf_062_500_APW_LAT = -1;
+static const FieldPart I062_500_APW_LAT = { 16, 0.00000536441802978515625, FIELD_PART_UFLOAT, &hf_062_500_APW_LAT, NULL };
+static int hf_062_500_APW_LON = -1;
+static const FieldPart I062_500_APW_LON = { 16, 0.00000536441802978515625, FIELD_PART_UFLOAT, &hf_062_500_APW_LON, NULL };
+static const FieldPart *I062_500_APW_PARTS[] = {
+ &I062_500_APW_LAT,
+ &I062_500_APW_LON,
+ NULL
+};
+static const AsterixField I062_500_APW = { FIXED, 4, 0, 0, &hf_062_500_APW, I062_500_APW_PARTS, { NULL } };
+static int hf_062_500_AGA = -1;
+static int hf_062_500_AGA_VALUE = -1;
+static const FieldPart I062_500_AGA_VALUE = { 8, 6.25, FIELD_PART_UFLOAT, &hf_062_500_AGA_VALUE, NULL };
+static const FieldPart *I062_500_AGA_PARTS[] = {
+ &I062_500_AGA_VALUE,
+ NULL
+};
+static const AsterixField I062_500_AGA = { FIXED, 1, 0, 0, &hf_062_500_AGA, I062_500_AGA_PARTS, { NULL } };
+static int hf_062_500_ABA = -1;
+static int hf_062_500_ABA_VALUE = -1;
+static const FieldPart I062_500_ABA_VALUE = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_500_ABA_VALUE, NULL };
+static const FieldPart *I062_500_ABA_PARTS[] = {
+ &I062_500_ABA_VALUE,
+ NULL
+};
+static const AsterixField I062_500_ABA = { FIXED, 1, 0, 0, &hf_062_500_ABA, I062_500_ABA_PARTS, { NULL } };
+static int hf_062_500_ATV = -1;
+static int hf_062_500_ATV_X = -1;
+static const FieldPart I062_500_ATV_X = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_500_ATV_X, NULL };
+static int hf_062_500_ATV_Y = -1;
+static const FieldPart I062_500_ATV_Y = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_500_ATV_Y, NULL };
+static const FieldPart *I062_500_ATV_PARTS[] = {
+ &I062_500_ATV_X,
+ &I062_500_ATV_Y,
+ NULL
+};
+static const AsterixField I062_500_ATV = { FIXED, 2, 0, 0, &hf_062_500_ATV, I062_500_ATV_PARTS, { NULL } };
+static int hf_062_500_AA = -1;
+static int hf_062_500_AA_X = -1;
+static const FieldPart I062_500_AA_X = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_500_AA_X, NULL };
+static int hf_062_500_AA_Y = -1;
+static const FieldPart I062_500_AA_Y = { 8, 0.25, FIELD_PART_UFLOAT, &hf_062_500_AA_Y, NULL };
+static const FieldPart *I062_500_AA_PARTS[] = {
+ &I062_500_AA_X,
+ &I062_500_AA_Y,
+ NULL
+};
+static const AsterixField I062_500_AA = { FIXED, 2, 0, 0, &hf_062_500_AA, I062_500_AA_PARTS, { NULL } };
+static int hf_062_500_ARC = -1;
+static int hf_062_500_ARC_VALUE = -1;
+static const FieldPart I062_500_ARC_VALUE = { 8, 6.25, FIELD_PART_UFLOAT, &hf_062_500_ARC_VALUE, NULL };
+static const FieldPart *I062_500_ARC_PARTS[] = {
+ &I062_500_ARC_VALUE,
+ NULL
+};
+static const AsterixField I062_500_ARC = { FIXED, 1, 0, 0, &hf_062_500_ARC, I062_500_ARC_PARTS, { NULL } };
+static const AsterixField I062_500 = { COMPOUND, 0, 0, 0, &hf_062_500, NULL, { &I062_500_APC, &I062_500_COV, &I062_500_APW, &I062_500_AGA, &I062_500_ABA, &I062_500_ATV, &I062_500_AA, &I062_500_ARC, NULL } };
+static int hf_062_510 = -1;
+static int hf_062_510_MIDENT = -1;
+static const FieldPart I062_510_MIDENT = { 8, 1.0, FIELD_PART_HEX, &hf_062_510_MIDENT, NULL };
+static int hf_062_510_MTRACK = -1;
+static const FieldPart I062_510_MTRACK = { 15, 1.0, FIELD_PART_HEX, &hf_062_510_MTRACK, NULL };
+static int hf_062_510_SIDENT = -1;
+static const FieldPart I062_510_SIDENT = { 8, 1.0, FIELD_PART_HEX, &hf_062_510_SIDENT, NULL };
+static int hf_062_510_STRACK = -1;
+static const FieldPart I062_510_STRACK = { 15, 1.0, FIELD_PART_HEX, &hf_062_510_STRACK, NULL };
+static const FieldPart *I062_510_PARTS[] = {
+ &I062_510_MIDENT,
+ &I062_510_MTRACK,
+ &IXXX_FX,
+ &I062_510_SIDENT,
+ &I062_510_STRACK,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I062_510 = { FX, 3, 0, 0, &hf_062_510, I062_510_PARTS, { NULL } };
+static int hf_062_RE = -1;
+static const AsterixField I062_RE = { EXP, 0, 0, 1, &hf_062_RE, NULL, { NULL } };
+static int hf_062_SP = -1;
+static const AsterixField I062_SP = { EXP, 0, 0, 1, &hf_062_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I062_V1_19_uap[] = {
+ &I062_V1_19_010,
+ &IX_SPARE,
+ &I062_V1_19_015,
+ &I062_V1_19_070,
+ &I062_V1_19_105,
+ &I062_V1_19_100,
+ &I062_V1_19_185,
+ &I062_V1_19_210,
+ &I062_V1_19_060,
+ &I062_V1_19_245,
+ &I062_V1_19_380,
+ &I062_V1_19_040,
+ &I062_V1_19_080,
+ &I062_V1_19_290,
+ &I062_V1_19_200,
+ &I062_V1_19_295,
+ &I062_V1_19_136,
+ &I062_V1_19_130,
+ &I062_V1_19_135,
+ &I062_V1_19_220,
+ &I062_V1_19_390,
+ &I062_V1_19_270,
+ &I062_V1_19_300,
+ &I062_V1_19_110,
+ &I062_V1_19_120,
+ &I062_V1_19_510,
+ &I062_V1_19_500,
+ &I062_V1_19_340,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I062_V1_19_RE,
+ &I062_V1_19_SP,
+ NULL
+};
+static const AsterixField **I062_V1_19[] = {
+ I062_V1_19_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I062_uap[] = {
+ &I062_010,
+ &IX_SPARE,
+ &I062_015,
+ &I062_070,
+ &I062_105,
+ &I062_100,
+ &I062_185,
+ &I062_210,
+ &I062_060,
+ &I062_245,
+ &I062_380,
+ &I062_040,
+ &I062_080,
+ &I062_290,
+ &I062_200,
+ &I062_295,
+ &I062_136,
+ &I062_130,
+ &I062_135,
+ &I062_220,
+ &I062_390,
+ &I062_270,
+ &I062_300,
+ &I062_110,
+ &I062_120,
+ &I062_510,
+ &I062_500,
+ &I062_340,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I062_RE,
+ &I062_SP,
+ NULL
+};
+static const AsterixField **I062[] = {
+ I062_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 063, edition 1.6 */
+static int hf_063_V1_6_010 = -1;
+static int hf_063_V1_6_010_SAC = -1;
+static const FieldPart I063_V1_6_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_063_V1_6_010_SAC, NULL };
+static int hf_063_V1_6_010_SIC = -1;
+static const FieldPart I063_V1_6_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_063_V1_6_010_SIC, NULL };
+static const FieldPart *I063_V1_6_010_PARTS[] = {
+ &I063_V1_6_010_SAC,
+ &I063_V1_6_010_SIC,
+ NULL
+};
+static const AsterixField I063_V1_6_010 = { FIXED, 2, 0, 0, &hf_063_V1_6_010, I063_V1_6_010_PARTS, { NULL } };
+static int hf_063_V1_6_015 = -1;
+static int hf_063_V1_6_015_VALUE = -1;
+static const FieldPart I063_V1_6_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_063_V1_6_015_VALUE, NULL };
+static const FieldPart *I063_V1_6_015_PARTS[] = {
+ &I063_V1_6_015_VALUE,
+ NULL
+};
+static const AsterixField I063_V1_6_015 = { FIXED, 1, 0, 0, &hf_063_V1_6_015, I063_V1_6_015_PARTS, { NULL } };
+static int hf_063_V1_6_030 = -1;
+static int hf_063_V1_6_030_VALUE = -1;
+static const FieldPart I063_V1_6_030_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_063_V1_6_030_VALUE, NULL };
+static const FieldPart *I063_V1_6_030_PARTS[] = {
+ &I063_V1_6_030_VALUE,
+ NULL
+};
+static const AsterixField I063_V1_6_030 = { FIXED, 3, 0, 0, &hf_063_V1_6_030, I063_V1_6_030_PARTS, { NULL } };
+static int hf_063_V1_6_050 = -1;
+static int hf_063_V1_6_050_SAC = -1;
+static const FieldPart I063_V1_6_050_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_063_V1_6_050_SAC, NULL };
+static int hf_063_V1_6_050_SIC = -1;
+static const FieldPart I063_V1_6_050_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_063_V1_6_050_SIC, NULL };
+static const FieldPart *I063_V1_6_050_PARTS[] = {
+ &I063_V1_6_050_SAC,
+ &I063_V1_6_050_SIC,
+ NULL
+};
+static const AsterixField I063_V1_6_050 = { FIXED, 2, 0, 0, &hf_063_V1_6_050, I063_V1_6_050_PARTS, { NULL } };
+static int hf_063_V1_6_060 = -1;
+static int hf_063_V1_6_060_CON = -1;
+static const value_string valstr_063_V1_6_060_CON[] = {
+ { 0, "Operational" },
+ { 1, "Degraded" },
+ { 2, "Initialization" },
+ { 3, "Not currently connected" },
+ { 0, NULL }
+};
+static const FieldPart I063_V1_6_060_CON = { 2, 1.0, FIELD_PART_UINT, &hf_063_V1_6_060_CON, NULL };
+static int hf_063_V1_6_060_PSR = -1;
+static const value_string valstr_063_V1_6_060_PSR[] = {
+ { 0, "PSR GO" },
+ { 1, "PSR NOGO" },
+ { 0, NULL }
+};
+static const FieldPart I063_V1_6_060_PSR = { 1, 1.0, FIELD_PART_UINT, &hf_063_V1_6_060_PSR, NULL };
+static int hf_063_V1_6_060_SSR = -1;
+static const value_string valstr_063_V1_6_060_SSR[] = {
+ { 0, "SSR GO" },
+ { 1, "SSR NOGO" },
+ { 0, NULL }
+};
+static const FieldPart I063_V1_6_060_SSR = { 1, 1.0, FIELD_PART_UINT, &hf_063_V1_6_060_SSR, NULL };
+static int hf_063_V1_6_060_MDS = -1;
+static const value_string valstr_063_V1_6_060_MDS[] = {
+ { 0, "MDS GO" },
+ { 1, "MDS NOGO" },
+ { 0, NULL }
+};
+static const FieldPart I063_V1_6_060_MDS = { 1, 1.0, FIELD_PART_UINT, &hf_063_V1_6_060_MDS, NULL };
+static int hf_063_V1_6_060_ADS = -1;
+static const value_string valstr_063_V1_6_060_ADS[] = {
+ { 0, "ADS GO" },
+ { 1, "ADS NOGO" },
+ { 0, NULL }
+};
+static const FieldPart I063_V1_6_060_ADS = { 1, 1.0, FIELD_PART_UINT, &hf_063_V1_6_060_ADS, NULL };
+static int hf_063_V1_6_060_MLT = -1;
+static const value_string valstr_063_V1_6_060_MLT[] = {
+ { 0, "MLT GO" },
+ { 1, "MLT NOGO" },
+ { 0, NULL }
+};
+static const FieldPart I063_V1_6_060_MLT = { 1, 1.0, FIELD_PART_UINT, &hf_063_V1_6_060_MLT, NULL };
+static int hf_063_V1_6_060_OPS = -1;
+static const value_string valstr_063_V1_6_060_OPS[] = {
+ { 0, "System is released for operational use" },
+ { 1, "Operational use of System is inhibited" },
+ { 0, NULL }
+};
+static const FieldPart I063_V1_6_060_OPS = { 1, 1.0, FIELD_PART_UINT, &hf_063_V1_6_060_OPS, NULL };
+static int hf_063_V1_6_060_ODP = -1;
+static const value_string valstr_063_V1_6_060_ODP[] = {
+ { 0, "Default, no overload" },
+ { 1, "Overload in DP" },
+ { 0, NULL }
+};
+static const FieldPart I063_V1_6_060_ODP = { 1, 1.0, FIELD_PART_UINT, &hf_063_V1_6_060_ODP, NULL };
+static int hf_063_V1_6_060_OXT = -1;
+static const value_string valstr_063_V1_6_060_OXT[] = {
+ { 0, "Default, no overload" },
+ { 1, "Overload in transmission subsystem" },
+ { 0, NULL }
+};
+static const FieldPart I063_V1_6_060_OXT = { 1, 1.0, FIELD_PART_UINT, &hf_063_V1_6_060_OXT, NULL };
+static int hf_063_V1_6_060_MSC = -1;
+static const value_string valstr_063_V1_6_060_MSC[] = {
+ { 0, "Monitoring system connected" },
+ { 1, "Monitoring system disconnected" },
+ { 0, NULL }
+};
+static const FieldPart I063_V1_6_060_MSC = { 1, 1.0, FIELD_PART_UINT, &hf_063_V1_6_060_MSC, NULL };
+static int hf_063_V1_6_060_TSV = -1;
+static const value_string valstr_063_V1_6_060_TSV[] = {
+ { 0, "Valid" },
+ { 1, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I063_V1_6_060_TSV = { 1, 1.0, FIELD_PART_UINT, &hf_063_V1_6_060_TSV, NULL };
+static int hf_063_V1_6_060_NPW = -1;
+static const value_string valstr_063_V1_6_060_NPW[] = {
+ { 0, "Default (no meaning)" },
+ { 1, "No plots being received" },
+ { 0, NULL }
+};
+static const FieldPart I063_V1_6_060_NPW = { 1, 1.0, FIELD_PART_UINT, &hf_063_V1_6_060_NPW, NULL };
+static const FieldPart *I063_V1_6_060_PARTS[] = {
+ &I063_V1_6_060_CON,
+ &I063_V1_6_060_PSR,
+ &I063_V1_6_060_SSR,
+ &I063_V1_6_060_MDS,
+ &I063_V1_6_060_ADS,
+ &I063_V1_6_060_MLT,
+ &IXXX_FX,
+ &I063_V1_6_060_OPS,
+ &I063_V1_6_060_ODP,
+ &I063_V1_6_060_OXT,
+ &I063_V1_6_060_MSC,
+ &I063_V1_6_060_TSV,
+ &I063_V1_6_060_NPW,
+ &IXXX_1bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I063_V1_6_060 = { FX, 1, 0, 0, &hf_063_V1_6_060, I063_V1_6_060_PARTS, { NULL } };
+static int hf_063_V1_6_070 = -1;
+static int hf_063_V1_6_070_VALUE = -1;
+static const FieldPart I063_V1_6_070_VALUE = { 16, 1.0, FIELD_PART_FLOAT, &hf_063_V1_6_070_VALUE, NULL };
+static const FieldPart *I063_V1_6_070_PARTS[] = {
+ &I063_V1_6_070_VALUE,
+ NULL
+};
+static const AsterixField I063_V1_6_070 = { FIXED, 2, 0, 0, &hf_063_V1_6_070, I063_V1_6_070_PARTS, { NULL } };
+static int hf_063_V1_6_080 = -1;
+static int hf_063_V1_6_080_SRG = -1;
+static const FieldPart I063_V1_6_080_SRG = { 16, 1e-05, FIELD_PART_FLOAT, &hf_063_V1_6_080_SRG, NULL };
+static int hf_063_V1_6_080_SRB = -1;
+static const FieldPart I063_V1_6_080_SRB = { 16, 0.0078125, FIELD_PART_FLOAT, &hf_063_V1_6_080_SRB, NULL };
+static const FieldPart *I063_V1_6_080_PARTS[] = {
+ &I063_V1_6_080_SRG,
+ &I063_V1_6_080_SRB,
+ NULL
+};
+static const AsterixField I063_V1_6_080 = { FIXED, 4, 0, 0, &hf_063_V1_6_080, I063_V1_6_080_PARTS, { NULL } };
+static int hf_063_V1_6_081 = -1;
+static int hf_063_V1_6_081_VALUE = -1;
+static const FieldPart I063_V1_6_081_VALUE = { 16, 0.0054931640625, FIELD_PART_FLOAT, &hf_063_V1_6_081_VALUE, NULL };
+static const FieldPart *I063_V1_6_081_PARTS[] = {
+ &I063_V1_6_081_VALUE,
+ NULL
+};
+static const AsterixField I063_V1_6_081 = { FIXED, 2, 0, 0, &hf_063_V1_6_081, I063_V1_6_081_PARTS, { NULL } };
+static int hf_063_V1_6_090 = -1;
+static int hf_063_V1_6_090_PRG = -1;
+static const FieldPart I063_V1_6_090_PRG = { 16, 1e-05, FIELD_PART_FLOAT, &hf_063_V1_6_090_PRG, NULL };
+static int hf_063_V1_6_090_PRB = -1;
+static const FieldPart I063_V1_6_090_PRB = { 16, 0.0078125, FIELD_PART_FLOAT, &hf_063_V1_6_090_PRB, NULL };
+static const FieldPart *I063_V1_6_090_PARTS[] = {
+ &I063_V1_6_090_PRG,
+ &I063_V1_6_090_PRB,
+ NULL
+};
+static const AsterixField I063_V1_6_090 = { FIXED, 4, 0, 0, &hf_063_V1_6_090, I063_V1_6_090_PARTS, { NULL } };
+static int hf_063_V1_6_091 = -1;
+static int hf_063_V1_6_091_VALUE = -1;
+static const FieldPart I063_V1_6_091_VALUE = { 16, 0.0054931640625, FIELD_PART_FLOAT, &hf_063_V1_6_091_VALUE, NULL };
+static const FieldPart *I063_V1_6_091_PARTS[] = {
+ &I063_V1_6_091_VALUE,
+ NULL
+};
+static const AsterixField I063_V1_6_091 = { FIXED, 2, 0, 0, &hf_063_V1_6_091, I063_V1_6_091_PARTS, { NULL } };
+static int hf_063_V1_6_092 = -1;
+static int hf_063_V1_6_092_VALUE = -1;
+static const FieldPart I063_V1_6_092_VALUE = { 16, 0.0054931640625, FIELD_PART_FLOAT, &hf_063_V1_6_092_VALUE, NULL };
+static const FieldPart *I063_V1_6_092_PARTS[] = {
+ &I063_V1_6_092_VALUE,
+ NULL
+};
+static const AsterixField I063_V1_6_092 = { FIXED, 2, 0, 0, &hf_063_V1_6_092, I063_V1_6_092_PARTS, { NULL } };
+static int hf_063_V1_6_RE = -1;
+static const AsterixField I063_V1_6_RE = { EXP, 0, 0, 1, &hf_063_V1_6_RE, NULL, { NULL } };
+static int hf_063_V1_6_SP = -1;
+static const AsterixField I063_V1_6_SP = { EXP, 0, 0, 1, &hf_063_V1_6_SP, NULL, { NULL } };
+
+/* Category 063, edition 1.6 (latest) */
+static int hf_063_010 = -1;
+static int hf_063_010_SAC = -1;
+static const FieldPart I063_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_063_010_SAC, NULL };
+static int hf_063_010_SIC = -1;
+static const FieldPart I063_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_063_010_SIC, NULL };
+static const FieldPart *I063_010_PARTS[] = {
+ &I063_010_SAC,
+ &I063_010_SIC,
+ NULL
+};
+static const AsterixField I063_010 = { FIXED, 2, 0, 0, &hf_063_010, I063_010_PARTS, { NULL } };
+static int hf_063_015 = -1;
+static int hf_063_015_VALUE = -1;
+static const FieldPart I063_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_063_015_VALUE, NULL };
+static const FieldPart *I063_015_PARTS[] = {
+ &I063_015_VALUE,
+ NULL
+};
+static const AsterixField I063_015 = { FIXED, 1, 0, 0, &hf_063_015, I063_015_PARTS, { NULL } };
+static int hf_063_030 = -1;
+static int hf_063_030_VALUE = -1;
+static const FieldPart I063_030_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_063_030_VALUE, NULL };
+static const FieldPart *I063_030_PARTS[] = {
+ &I063_030_VALUE,
+ NULL
+};
+static const AsterixField I063_030 = { FIXED, 3, 0, 0, &hf_063_030, I063_030_PARTS, { NULL } };
+static int hf_063_050 = -1;
+static int hf_063_050_SAC = -1;
+static const FieldPart I063_050_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_063_050_SAC, NULL };
+static int hf_063_050_SIC = -1;
+static const FieldPart I063_050_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_063_050_SIC, NULL };
+static const FieldPart *I063_050_PARTS[] = {
+ &I063_050_SAC,
+ &I063_050_SIC,
+ NULL
+};
+static const AsterixField I063_050 = { FIXED, 2, 0, 0, &hf_063_050, I063_050_PARTS, { NULL } };
+static int hf_063_060 = -1;
+static int hf_063_060_CON = -1;
+static const value_string valstr_063_060_CON[] = {
+ { 0, "Operational" },
+ { 1, "Degraded" },
+ { 2, "Initialization" },
+ { 3, "Not currently connected" },
+ { 0, NULL }
+};
+static const FieldPart I063_060_CON = { 2, 1.0, FIELD_PART_UINT, &hf_063_060_CON, NULL };
+static int hf_063_060_PSR = -1;
+static const value_string valstr_063_060_PSR[] = {
+ { 0, "PSR GO" },
+ { 1, "PSR NOGO" },
+ { 0, NULL }
+};
+static const FieldPart I063_060_PSR = { 1, 1.0, FIELD_PART_UINT, &hf_063_060_PSR, NULL };
+static int hf_063_060_SSR = -1;
+static const value_string valstr_063_060_SSR[] = {
+ { 0, "SSR GO" },
+ { 1, "SSR NOGO" },
+ { 0, NULL }
+};
+static const FieldPart I063_060_SSR = { 1, 1.0, FIELD_PART_UINT, &hf_063_060_SSR, NULL };
+static int hf_063_060_MDS = -1;
+static const value_string valstr_063_060_MDS[] = {
+ { 0, "MDS GO" },
+ { 1, "MDS NOGO" },
+ { 0, NULL }
+};
+static const FieldPart I063_060_MDS = { 1, 1.0, FIELD_PART_UINT, &hf_063_060_MDS, NULL };
+static int hf_063_060_ADS = -1;
+static const value_string valstr_063_060_ADS[] = {
+ { 0, "ADS GO" },
+ { 1, "ADS NOGO" },
+ { 0, NULL }
+};
+static const FieldPart I063_060_ADS = { 1, 1.0, FIELD_PART_UINT, &hf_063_060_ADS, NULL };
+static int hf_063_060_MLT = -1;
+static const value_string valstr_063_060_MLT[] = {
+ { 0, "MLT GO" },
+ { 1, "MLT NOGO" },
+ { 0, NULL }
+};
+static const FieldPart I063_060_MLT = { 1, 1.0, FIELD_PART_UINT, &hf_063_060_MLT, NULL };
+static int hf_063_060_OPS = -1;
+static const value_string valstr_063_060_OPS[] = {
+ { 0, "System is released for operational use" },
+ { 1, "Operational use of System is inhibited" },
+ { 0, NULL }
+};
+static const FieldPart I063_060_OPS = { 1, 1.0, FIELD_PART_UINT, &hf_063_060_OPS, NULL };
+static int hf_063_060_ODP = -1;
+static const value_string valstr_063_060_ODP[] = {
+ { 0, "Default, no overload" },
+ { 1, "Overload in DP" },
+ { 0, NULL }
+};
+static const FieldPart I063_060_ODP = { 1, 1.0, FIELD_PART_UINT, &hf_063_060_ODP, NULL };
+static int hf_063_060_OXT = -1;
+static const value_string valstr_063_060_OXT[] = {
+ { 0, "Default, no overload" },
+ { 1, "Overload in transmission subsystem" },
+ { 0, NULL }
+};
+static const FieldPart I063_060_OXT = { 1, 1.0, FIELD_PART_UINT, &hf_063_060_OXT, NULL };
+static int hf_063_060_MSC = -1;
+static const value_string valstr_063_060_MSC[] = {
+ { 0, "Monitoring system connected" },
+ { 1, "Monitoring system disconnected" },
+ { 0, NULL }
+};
+static const FieldPart I063_060_MSC = { 1, 1.0, FIELD_PART_UINT, &hf_063_060_MSC, NULL };
+static int hf_063_060_TSV = -1;
+static const value_string valstr_063_060_TSV[] = {
+ { 0, "Valid" },
+ { 1, "Invalid" },
+ { 0, NULL }
+};
+static const FieldPart I063_060_TSV = { 1, 1.0, FIELD_PART_UINT, &hf_063_060_TSV, NULL };
+static int hf_063_060_NPW = -1;
+static const value_string valstr_063_060_NPW[] = {
+ { 0, "Default (no meaning)" },
+ { 1, "No plots being received" },
+ { 0, NULL }
+};
+static const FieldPart I063_060_NPW = { 1, 1.0, FIELD_PART_UINT, &hf_063_060_NPW, NULL };
+static const FieldPart *I063_060_PARTS[] = {
+ &I063_060_CON,
+ &I063_060_PSR,
+ &I063_060_SSR,
+ &I063_060_MDS,
+ &I063_060_ADS,
+ &I063_060_MLT,
+ &IXXX_FX,
+ &I063_060_OPS,
+ &I063_060_ODP,
+ &I063_060_OXT,
+ &I063_060_MSC,
+ &I063_060_TSV,
+ &I063_060_NPW,
+ &IXXX_1bit_spare,
+ &IXXX_FX,
+ NULL
+};
+static const AsterixField I063_060 = { FX, 1, 0, 0, &hf_063_060, I063_060_PARTS, { NULL } };
+static int hf_063_070 = -1;
+static int hf_063_070_VALUE = -1;
+static const FieldPart I063_070_VALUE = { 16, 1.0, FIELD_PART_FLOAT, &hf_063_070_VALUE, NULL };
+static const FieldPart *I063_070_PARTS[] = {
+ &I063_070_VALUE,
+ NULL
+};
+static const AsterixField I063_070 = { FIXED, 2, 0, 0, &hf_063_070, I063_070_PARTS, { NULL } };
+static int hf_063_080 = -1;
+static int hf_063_080_SRG = -1;
+static const FieldPart I063_080_SRG = { 16, 1e-05, FIELD_PART_FLOAT, &hf_063_080_SRG, NULL };
+static int hf_063_080_SRB = -1;
+static const FieldPart I063_080_SRB = { 16, 0.0078125, FIELD_PART_FLOAT, &hf_063_080_SRB, NULL };
+static const FieldPart *I063_080_PARTS[] = {
+ &I063_080_SRG,
+ &I063_080_SRB,
+ NULL
+};
+static const AsterixField I063_080 = { FIXED, 4, 0, 0, &hf_063_080, I063_080_PARTS, { NULL } };
+static int hf_063_081 = -1;
+static int hf_063_081_VALUE = -1;
+static const FieldPart I063_081_VALUE = { 16, 0.0054931640625, FIELD_PART_FLOAT, &hf_063_081_VALUE, NULL };
+static const FieldPart *I063_081_PARTS[] = {
+ &I063_081_VALUE,
+ NULL
+};
+static const AsterixField I063_081 = { FIXED, 2, 0, 0, &hf_063_081, I063_081_PARTS, { NULL } };
+static int hf_063_090 = -1;
+static int hf_063_090_PRG = -1;
+static const FieldPart I063_090_PRG = { 16, 1e-05, FIELD_PART_FLOAT, &hf_063_090_PRG, NULL };
+static int hf_063_090_PRB = -1;
+static const FieldPart I063_090_PRB = { 16, 0.0078125, FIELD_PART_FLOAT, &hf_063_090_PRB, NULL };
+static const FieldPart *I063_090_PARTS[] = {
+ &I063_090_PRG,
+ &I063_090_PRB,
+ NULL
+};
+static const AsterixField I063_090 = { FIXED, 4, 0, 0, &hf_063_090, I063_090_PARTS, { NULL } };
+static int hf_063_091 = -1;
+static int hf_063_091_VALUE = -1;
+static const FieldPart I063_091_VALUE = { 16, 0.0054931640625, FIELD_PART_FLOAT, &hf_063_091_VALUE, NULL };
+static const FieldPart *I063_091_PARTS[] = {
+ &I063_091_VALUE,
+ NULL
+};
+static const AsterixField I063_091 = { FIXED, 2, 0, 0, &hf_063_091, I063_091_PARTS, { NULL } };
+static int hf_063_092 = -1;
+static int hf_063_092_VALUE = -1;
+static const FieldPart I063_092_VALUE = { 16, 0.0054931640625, FIELD_PART_FLOAT, &hf_063_092_VALUE, NULL };
+static const FieldPart *I063_092_PARTS[] = {
+ &I063_092_VALUE,
+ NULL
+};
+static const AsterixField I063_092 = { FIXED, 2, 0, 0, &hf_063_092, I063_092_PARTS, { NULL } };
+static int hf_063_RE = -1;
+static const AsterixField I063_RE = { EXP, 0, 0, 1, &hf_063_RE, NULL, { NULL } };
+static int hf_063_SP = -1;
+static const AsterixField I063_SP = { EXP, 0, 0, 1, &hf_063_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I063_V1_6_uap[] = {
+ &I063_V1_6_010,
+ &I063_V1_6_015,
+ &I063_V1_6_030,
+ &I063_V1_6_050,
+ &I063_V1_6_060,
+ &I063_V1_6_070,
+ &I063_V1_6_080,
+ &I063_V1_6_081,
+ &I063_V1_6_090,
+ &I063_V1_6_091,
+ &I063_V1_6_092,
+ &IX_SPARE,
+ &I063_V1_6_RE,
+ &I063_V1_6_SP,
+ NULL
+};
+static const AsterixField **I063_V1_6[] = {
+ I063_V1_6_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I063_uap[] = {
+ &I063_010,
+ &I063_015,
+ &I063_030,
+ &I063_050,
+ &I063_060,
+ &I063_070,
+ &I063_080,
+ &I063_081,
+ &I063_090,
+ &I063_091,
+ &I063_092,
+ &IX_SPARE,
+ &I063_RE,
+ &I063_SP,
+ NULL
+};
+static const AsterixField **I063[] = {
+ I063_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 065, edition 1.4 */
+static int hf_065_V1_4_000 = -1;
+static int hf_065_V1_4_000_VALUE = -1;
+static const value_string valstr_065_V1_4_000_VALUE[] = {
+ { 1, "SDPS Status" },
+ { 2, "End of Batch" },
+ { 3, "Service Status Report" },
+ { 0, NULL }
+};
+static const FieldPart I065_V1_4_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_065_V1_4_000_VALUE, NULL };
+static const FieldPart *I065_V1_4_000_PARTS[] = {
+ &I065_V1_4_000_VALUE,
+ NULL
+};
+static const AsterixField I065_V1_4_000 = { FIXED, 1, 0, 0, &hf_065_V1_4_000, I065_V1_4_000_PARTS, { NULL } };
+static int hf_065_V1_4_010 = -1;
+static int hf_065_V1_4_010_SAC = -1;
+static const FieldPart I065_V1_4_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_065_V1_4_010_SAC, NULL };
+static int hf_065_V1_4_010_SIC = -1;
+static const FieldPart I065_V1_4_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_065_V1_4_010_SIC, NULL };
+static const FieldPart *I065_V1_4_010_PARTS[] = {
+ &I065_V1_4_010_SAC,
+ &I065_V1_4_010_SIC,
+ NULL
+};
+static const AsterixField I065_V1_4_010 = { FIXED, 2, 0, 0, &hf_065_V1_4_010, I065_V1_4_010_PARTS, { NULL } };
+static int hf_065_V1_4_015 = -1;
+static int hf_065_V1_4_015_VALUE = -1;
+static const FieldPart I065_V1_4_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_065_V1_4_015_VALUE, NULL };
+static const FieldPart *I065_V1_4_015_PARTS[] = {
+ &I065_V1_4_015_VALUE,
+ NULL
+};
+static const AsterixField I065_V1_4_015 = { FIXED, 1, 0, 0, &hf_065_V1_4_015, I065_V1_4_015_PARTS, { NULL } };
+static int hf_065_V1_4_020 = -1;
+static int hf_065_V1_4_020_VALUE = -1;
+static const FieldPart I065_V1_4_020_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_065_V1_4_020_VALUE, NULL };
+static const FieldPart *I065_V1_4_020_PARTS[] = {
+ &I065_V1_4_020_VALUE,
+ NULL
+};
+static const AsterixField I065_V1_4_020 = { FIXED, 1, 0, 0, &hf_065_V1_4_020, I065_V1_4_020_PARTS, { NULL } };
+static int hf_065_V1_4_030 = -1;
+static int hf_065_V1_4_030_VALUE = -1;
+static const FieldPart I065_V1_4_030_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_065_V1_4_030_VALUE, NULL };
+static const FieldPart *I065_V1_4_030_PARTS[] = {
+ &I065_V1_4_030_VALUE,
+ NULL
+};
+static const AsterixField I065_V1_4_030 = { FIXED, 3, 0, 0, &hf_065_V1_4_030, I065_V1_4_030_PARTS, { NULL } };
+static int hf_065_V1_4_040 = -1;
+static int hf_065_V1_4_040_NOGO = -1;
+static const value_string valstr_065_V1_4_040_NOGO[] = {
+ { 0, "Operational" },
+ { 1, "Degraded" },
+ { 2, "Not currently connected" },
+ { 3, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I065_V1_4_040_NOGO = { 2, 1.0, FIELD_PART_UINT, &hf_065_V1_4_040_NOGO, NULL };
+static int hf_065_V1_4_040_OVL = -1;
+static const value_string valstr_065_V1_4_040_OVL[] = {
+ { 0, "Default" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I065_V1_4_040_OVL = { 1, 1.0, FIELD_PART_UINT, &hf_065_V1_4_040_OVL, NULL };
+static int hf_065_V1_4_040_TSV = -1;
+static const value_string valstr_065_V1_4_040_TSV[] = {
+ { 0, "Default" },
+ { 1, "Invalid Time Source" },
+ { 0, NULL }
+};
+static const FieldPart I065_V1_4_040_TSV = { 1, 1.0, FIELD_PART_UINT, &hf_065_V1_4_040_TSV, NULL };
+static int hf_065_V1_4_040_PSS = -1;
+static const value_string valstr_065_V1_4_040_PSS[] = {
+ { 0, "Not applicable" },
+ { 1, "SDPS-1 selected" },
+ { 2, "SDPS-2 selected" },
+ { 3, "SDPS-3 selected" },
+ { 0, NULL }
+};
+static const FieldPart I065_V1_4_040_PSS = { 2, 1.0, FIELD_PART_UINT, &hf_065_V1_4_040_PSS, NULL };
+static int hf_065_V1_4_040_STTN = -1;
+static const FieldPart I065_V1_4_040_STTN = { 1, 1.0, FIELD_PART_HEX, &hf_065_V1_4_040_STTN, NULL };
+static const FieldPart *I065_V1_4_040_PARTS[] = {
+ &I065_V1_4_040_NOGO,
+ &I065_V1_4_040_OVL,
+ &I065_V1_4_040_TSV,
+ &I065_V1_4_040_PSS,
+ &I065_V1_4_040_STTN,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I065_V1_4_040 = { FIXED, 1, 0, 0, &hf_065_V1_4_040, I065_V1_4_040_PARTS, { NULL } };
+static int hf_065_V1_4_050 = -1;
+static int hf_065_V1_4_050_VALUE = -1;
+static const value_string valstr_065_V1_4_050_VALUE[] = {
+ { 1, "Service degradation" },
+ { 2, "Service degradation ended" },
+ { 3, "Main radar out of service" },
+ { 4, "Service interrupted by the operator" },
+ { 5, "Service interrupted due to contingency" },
+ { 6, "Ready for service restart after contingency" },
+ { 7, "Service ended by the operator" },
+ { 8, "Failure of user main radar" },
+ { 9, "Service restarted by the operator" },
+ { 10, "Main radar becoming operational" },
+ { 11, "Main radar becoming degraded" },
+ { 12, "Service continuity interrupted due to disconnection with adjacent unit" },
+ { 13, "Service continuity restarted" },
+ { 14, "Service synchronised on backup radar" },
+ { 15, "Service synchronised on main radar" },
+ { 16, "Main and backup radar, if any, failed" },
+ { 0, NULL }
+};
+static const FieldPart I065_V1_4_050_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_065_V1_4_050_VALUE, NULL };
+static const FieldPart *I065_V1_4_050_PARTS[] = {
+ &I065_V1_4_050_VALUE,
+ NULL
+};
+static const AsterixField I065_V1_4_050 = { FIXED, 1, 0, 0, &hf_065_V1_4_050, I065_V1_4_050_PARTS, { NULL } };
+static int hf_065_V1_4_RE = -1;
+static const AsterixField I065_V1_4_RE = { EXP, 0, 0, 1, &hf_065_V1_4_RE, NULL, { NULL } };
+static int hf_065_V1_4_SP = -1;
+static const AsterixField I065_V1_4_SP = { EXP, 0, 0, 1, &hf_065_V1_4_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I065_V1_4_uap[] = {
+ &I065_V1_4_010,
+ &I065_V1_4_000,
+ &I065_V1_4_015,
+ &I065_V1_4_030,
+ &I065_V1_4_020,
+ &I065_V1_4_040,
+ &I065_V1_4_050,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I065_V1_4_RE,
+ &I065_V1_4_SP,
+ NULL
+};
+static const AsterixField **I065_V1_4[] = {
+ I065_V1_4_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 065, edition 1.5 */
+static int hf_065_V1_5_000 = -1;
+static int hf_065_V1_5_000_VALUE = -1;
+static const value_string valstr_065_V1_5_000_VALUE[] = {
+ { 1, "SDPS Status" },
+ { 2, "End of Batch" },
+ { 3, "Service Status Report" },
+ { 0, NULL }
+};
+static const FieldPart I065_V1_5_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_065_V1_5_000_VALUE, NULL };
+static const FieldPart *I065_V1_5_000_PARTS[] = {
+ &I065_V1_5_000_VALUE,
+ NULL
+};
+static const AsterixField I065_V1_5_000 = { FIXED, 1, 0, 0, &hf_065_V1_5_000, I065_V1_5_000_PARTS, { NULL } };
+static int hf_065_V1_5_010 = -1;
+static int hf_065_V1_5_010_SAC = -1;
+static const FieldPart I065_V1_5_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_065_V1_5_010_SAC, NULL };
+static int hf_065_V1_5_010_SIC = -1;
+static const FieldPart I065_V1_5_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_065_V1_5_010_SIC, NULL };
+static const FieldPart *I065_V1_5_010_PARTS[] = {
+ &I065_V1_5_010_SAC,
+ &I065_V1_5_010_SIC,
+ NULL
+};
+static const AsterixField I065_V1_5_010 = { FIXED, 2, 0, 0, &hf_065_V1_5_010, I065_V1_5_010_PARTS, { NULL } };
+static int hf_065_V1_5_015 = -1;
+static int hf_065_V1_5_015_VALUE = -1;
+static const FieldPart I065_V1_5_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_065_V1_5_015_VALUE, NULL };
+static const FieldPart *I065_V1_5_015_PARTS[] = {
+ &I065_V1_5_015_VALUE,
+ NULL
+};
+static const AsterixField I065_V1_5_015 = { FIXED, 1, 0, 0, &hf_065_V1_5_015, I065_V1_5_015_PARTS, { NULL } };
+static int hf_065_V1_5_020 = -1;
+static int hf_065_V1_5_020_VALUE = -1;
+static const FieldPart I065_V1_5_020_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_065_V1_5_020_VALUE, NULL };
+static const FieldPart *I065_V1_5_020_PARTS[] = {
+ &I065_V1_5_020_VALUE,
+ NULL
+};
+static const AsterixField I065_V1_5_020 = { FIXED, 1, 0, 0, &hf_065_V1_5_020, I065_V1_5_020_PARTS, { NULL } };
+static int hf_065_V1_5_030 = -1;
+static int hf_065_V1_5_030_VALUE = -1;
+static const FieldPart I065_V1_5_030_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_065_V1_5_030_VALUE, NULL };
+static const FieldPart *I065_V1_5_030_PARTS[] = {
+ &I065_V1_5_030_VALUE,
+ NULL
+};
+static const AsterixField I065_V1_5_030 = { FIXED, 3, 0, 0, &hf_065_V1_5_030, I065_V1_5_030_PARTS, { NULL } };
+static int hf_065_V1_5_040 = -1;
+static int hf_065_V1_5_040_NOGO = -1;
+static const value_string valstr_065_V1_5_040_NOGO[] = {
+ { 0, "Operational" },
+ { 1, "Degraded" },
+ { 2, "Not currently connected" },
+ { 3, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I065_V1_5_040_NOGO = { 2, 1.0, FIELD_PART_UINT, &hf_065_V1_5_040_NOGO, NULL };
+static int hf_065_V1_5_040_OVL = -1;
+static const value_string valstr_065_V1_5_040_OVL[] = {
+ { 0, "Default" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I065_V1_5_040_OVL = { 1, 1.0, FIELD_PART_UINT, &hf_065_V1_5_040_OVL, NULL };
+static int hf_065_V1_5_040_TSV = -1;
+static const value_string valstr_065_V1_5_040_TSV[] = {
+ { 0, "Default" },
+ { 1, "Invalid Time Source" },
+ { 0, NULL }
+};
+static const FieldPart I065_V1_5_040_TSV = { 1, 1.0, FIELD_PART_UINT, &hf_065_V1_5_040_TSV, NULL };
+static int hf_065_V1_5_040_PSS = -1;
+static const value_string valstr_065_V1_5_040_PSS[] = {
+ { 0, "Not applicable" },
+ { 1, "SDPS-1 selected" },
+ { 2, "SDPS-2 selected" },
+ { 3, "SDPS-3 selected" },
+ { 0, NULL }
+};
+static const FieldPart I065_V1_5_040_PSS = { 2, 1.0, FIELD_PART_UINT, &hf_065_V1_5_040_PSS, NULL };
+static int hf_065_V1_5_040_STTN = -1;
+static const FieldPart I065_V1_5_040_STTN = { 1, 1.0, FIELD_PART_HEX, &hf_065_V1_5_040_STTN, NULL };
+static const FieldPart *I065_V1_5_040_PARTS[] = {
+ &I065_V1_5_040_NOGO,
+ &I065_V1_5_040_OVL,
+ &I065_V1_5_040_TSV,
+ &I065_V1_5_040_PSS,
+ &I065_V1_5_040_STTN,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I065_V1_5_040 = { FIXED, 1, 0, 0, &hf_065_V1_5_040, I065_V1_5_040_PARTS, { NULL } };
+static int hf_065_V1_5_050 = -1;
+static int hf_065_V1_5_050_VALUE = -1;
+static const value_string valstr_065_V1_5_050_VALUE[] = {
+ { 1, "Service degradation" },
+ { 2, "Service degradation ended" },
+ { 3, "Main radar out of service" },
+ { 4, "Service interrupted by the operator" },
+ { 5, "Service interrupted due to contingency" },
+ { 6, "Ready for service restart after contingency" },
+ { 7, "Service ended by the operator" },
+ { 8, "Failure of user main radar" },
+ { 9, "Service restarted by the operator" },
+ { 10, "Main radar becoming operational" },
+ { 11, "Main radar becoming degraded" },
+ { 12, "Service continuity interrupted due to disconnection with adjacent unit" },
+ { 13, "Service continuity restarted" },
+ { 14, "Service synchronised on backup radar" },
+ { 15, "Service synchronised on main radar" },
+ { 16, "Main and backup radar, if any, failed" },
+ { 0, NULL }
+};
+static const FieldPart I065_V1_5_050_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_065_V1_5_050_VALUE, NULL };
+static const FieldPart *I065_V1_5_050_PARTS[] = {
+ &I065_V1_5_050_VALUE,
+ NULL
+};
+static const AsterixField I065_V1_5_050 = { FIXED, 1, 0, 0, &hf_065_V1_5_050, I065_V1_5_050_PARTS, { NULL } };
+static int hf_065_V1_5_RE = -1;
+static const AsterixField I065_V1_5_RE = { EXP, 0, 0, 1, &hf_065_V1_5_RE, NULL, { NULL } };
+static int hf_065_V1_5_SP = -1;
+static const AsterixField I065_V1_5_SP = { EXP, 0, 0, 1, &hf_065_V1_5_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I065_V1_5_uap[] = {
+ &I065_V1_5_010,
+ &I065_V1_5_000,
+ &I065_V1_5_015,
+ &I065_V1_5_030,
+ &I065_V1_5_020,
+ &I065_V1_5_040,
+ &I065_V1_5_050,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I065_V1_5_RE,
+ &I065_V1_5_SP,
+ NULL
+};
+static const AsterixField **I065_V1_5[] = {
+ I065_V1_5_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 065, edition 1.6 */
+static int hf_065_V1_6_000 = -1;
+static int hf_065_V1_6_000_VALUE = -1;
+static const value_string valstr_065_V1_6_000_VALUE[] = {
+ { 1, "SDPS Status" },
+ { 2, "End of Batch" },
+ { 3, "Service Status Report" },
+ { 0, NULL }
+};
+static const FieldPart I065_V1_6_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_065_V1_6_000_VALUE, NULL };
+static const FieldPart *I065_V1_6_000_PARTS[] = {
+ &I065_V1_6_000_VALUE,
+ NULL
+};
+static const AsterixField I065_V1_6_000 = { FIXED, 1, 0, 0, &hf_065_V1_6_000, I065_V1_6_000_PARTS, { NULL } };
+static int hf_065_V1_6_010 = -1;
+static int hf_065_V1_6_010_SAC = -1;
+static const FieldPart I065_V1_6_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_065_V1_6_010_SAC, NULL };
+static int hf_065_V1_6_010_SIC = -1;
+static const FieldPart I065_V1_6_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_065_V1_6_010_SIC, NULL };
+static const FieldPart *I065_V1_6_010_PARTS[] = {
+ &I065_V1_6_010_SAC,
+ &I065_V1_6_010_SIC,
+ NULL
+};
+static const AsterixField I065_V1_6_010 = { FIXED, 2, 0, 0, &hf_065_V1_6_010, I065_V1_6_010_PARTS, { NULL } };
+static int hf_065_V1_6_015 = -1;
+static int hf_065_V1_6_015_VALUE = -1;
+static const FieldPart I065_V1_6_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_065_V1_6_015_VALUE, NULL };
+static const FieldPart *I065_V1_6_015_PARTS[] = {
+ &I065_V1_6_015_VALUE,
+ NULL
+};
+static const AsterixField I065_V1_6_015 = { FIXED, 1, 0, 0, &hf_065_V1_6_015, I065_V1_6_015_PARTS, { NULL } };
+static int hf_065_V1_6_020 = -1;
+static int hf_065_V1_6_020_VALUE = -1;
+static const FieldPart I065_V1_6_020_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_065_V1_6_020_VALUE, NULL };
+static const FieldPart *I065_V1_6_020_PARTS[] = {
+ &I065_V1_6_020_VALUE,
+ NULL
+};
+static const AsterixField I065_V1_6_020 = { FIXED, 1, 0, 0, &hf_065_V1_6_020, I065_V1_6_020_PARTS, { NULL } };
+static int hf_065_V1_6_030 = -1;
+static int hf_065_V1_6_030_VALUE = -1;
+static const FieldPart I065_V1_6_030_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_065_V1_6_030_VALUE, NULL };
+static const FieldPart *I065_V1_6_030_PARTS[] = {
+ &I065_V1_6_030_VALUE,
+ NULL
+};
+static const AsterixField I065_V1_6_030 = { FIXED, 3, 0, 0, &hf_065_V1_6_030, I065_V1_6_030_PARTS, { NULL } };
+static int hf_065_V1_6_040 = -1;
+static int hf_065_V1_6_040_NOGO = -1;
+static const value_string valstr_065_V1_6_040_NOGO[] = {
+ { 0, "Operational" },
+ { 1, "Degraded" },
+ { 2, "Not currently connected" },
+ { 3, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I065_V1_6_040_NOGO = { 2, 1.0, FIELD_PART_UINT, &hf_065_V1_6_040_NOGO, NULL };
+static int hf_065_V1_6_040_OVL = -1;
+static const value_string valstr_065_V1_6_040_OVL[] = {
+ { 0, "Default" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I065_V1_6_040_OVL = { 1, 1.0, FIELD_PART_UINT, &hf_065_V1_6_040_OVL, NULL };
+static int hf_065_V1_6_040_TSV = -1;
+static const value_string valstr_065_V1_6_040_TSV[] = {
+ { 0, "Default" },
+ { 1, "Invalid Time Source" },
+ { 0, NULL }
+};
+static const FieldPart I065_V1_6_040_TSV = { 1, 1.0, FIELD_PART_UINT, &hf_065_V1_6_040_TSV, NULL };
+static int hf_065_V1_6_040_PSS = -1;
+static const value_string valstr_065_V1_6_040_PSS[] = {
+ { 0, "Not applicable" },
+ { 1, "SDPS-1 selected" },
+ { 2, "SDPS-2 selected" },
+ { 3, "SDPS-3 selected" },
+ { 0, NULL }
+};
+static const FieldPart I065_V1_6_040_PSS = { 2, 1.0, FIELD_PART_UINT, &hf_065_V1_6_040_PSS, NULL };
+static int hf_065_V1_6_040_STTN = -1;
+static const FieldPart I065_V1_6_040_STTN = { 1, 1.0, FIELD_PART_HEX, &hf_065_V1_6_040_STTN, NULL };
+static const FieldPart *I065_V1_6_040_PARTS[] = {
+ &I065_V1_6_040_NOGO,
+ &I065_V1_6_040_OVL,
+ &I065_V1_6_040_TSV,
+ &I065_V1_6_040_PSS,
+ &I065_V1_6_040_STTN,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I065_V1_6_040 = { FIXED, 1, 0, 0, &hf_065_V1_6_040, I065_V1_6_040_PARTS, { NULL } };
+static int hf_065_V1_6_050 = -1;
+static int hf_065_V1_6_050_VALUE = -1;
+static const value_string valstr_065_V1_6_050_VALUE[] = {
+ { 1, "Service degradation" },
+ { 2, "Service degradation ended" },
+ { 3, "Main radar out of service" },
+ { 4, "Service interrupted by the operator" },
+ { 5, "Service interrupted due to contingency" },
+ { 6, "Ready for service restart after contingency" },
+ { 7, "Service ended by the operator" },
+ { 8, "Failure of user main radar" },
+ { 9, "Service restarted by the operator" },
+ { 10, "Main radar becoming operational" },
+ { 11, "Main radar becoming degraded" },
+ { 12, "Service continuity interrupted due to disconnection with adjacent unit" },
+ { 13, "Service continuity restarted" },
+ { 14, "Service synchronised on backup radar" },
+ { 15, "Service synchronised on main radar" },
+ { 16, "Main and backup radar, if any, failed" },
+ { 0, NULL }
+};
+static const FieldPart I065_V1_6_050_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_065_V1_6_050_VALUE, NULL };
+static const FieldPart *I065_V1_6_050_PARTS[] = {
+ &I065_V1_6_050_VALUE,
+ NULL
+};
+static const AsterixField I065_V1_6_050 = { FIXED, 1, 0, 0, &hf_065_V1_6_050, I065_V1_6_050_PARTS, { NULL } };
+static int hf_065_V1_6_RE = -1;
+static const AsterixField I065_V1_6_RE = { EXP, 0, 0, 1, &hf_065_V1_6_RE, NULL, { NULL } };
+static int hf_065_V1_6_SP = -1;
+static const AsterixField I065_V1_6_SP = { EXP, 0, 0, 1, &hf_065_V1_6_SP, NULL, { NULL } };
+
+/* Category 065, edition 1.6 (latest) */
+static int hf_065_000 = -1;
+static int hf_065_000_VALUE = -1;
+static const value_string valstr_065_000_VALUE[] = {
+ { 1, "SDPS Status" },
+ { 2, "End of Batch" },
+ { 3, "Service Status Report" },
+ { 0, NULL }
+};
+static const FieldPart I065_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_065_000_VALUE, NULL };
+static const FieldPart *I065_000_PARTS[] = {
+ &I065_000_VALUE,
+ NULL
+};
+static const AsterixField I065_000 = { FIXED, 1, 0, 0, &hf_065_000, I065_000_PARTS, { NULL } };
+static int hf_065_010 = -1;
+static int hf_065_010_SAC = -1;
+static const FieldPart I065_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_065_010_SAC, NULL };
+static int hf_065_010_SIC = -1;
+static const FieldPart I065_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_065_010_SIC, NULL };
+static const FieldPart *I065_010_PARTS[] = {
+ &I065_010_SAC,
+ &I065_010_SIC,
+ NULL
+};
+static const AsterixField I065_010 = { FIXED, 2, 0, 0, &hf_065_010, I065_010_PARTS, { NULL } };
+static int hf_065_015 = -1;
+static int hf_065_015_VALUE = -1;
+static const FieldPart I065_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_065_015_VALUE, NULL };
+static const FieldPart *I065_015_PARTS[] = {
+ &I065_015_VALUE,
+ NULL
+};
+static const AsterixField I065_015 = { FIXED, 1, 0, 0, &hf_065_015, I065_015_PARTS, { NULL } };
+static int hf_065_020 = -1;
+static int hf_065_020_VALUE = -1;
+static const FieldPart I065_020_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_065_020_VALUE, NULL };
+static const FieldPart *I065_020_PARTS[] = {
+ &I065_020_VALUE,
+ NULL
+};
+static const AsterixField I065_020 = { FIXED, 1, 0, 0, &hf_065_020, I065_020_PARTS, { NULL } };
+static int hf_065_030 = -1;
+static int hf_065_030_VALUE = -1;
+static const FieldPart I065_030_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_065_030_VALUE, NULL };
+static const FieldPart *I065_030_PARTS[] = {
+ &I065_030_VALUE,
+ NULL
+};
+static const AsterixField I065_030 = { FIXED, 3, 0, 0, &hf_065_030, I065_030_PARTS, { NULL } };
+static int hf_065_040 = -1;
+static int hf_065_040_NOGO = -1;
+static const value_string valstr_065_040_NOGO[] = {
+ { 0, "Operational" },
+ { 1, "Degraded" },
+ { 2, "Not currently connected" },
+ { 3, "Unknown" },
+ { 0, NULL }
+};
+static const FieldPart I065_040_NOGO = { 2, 1.0, FIELD_PART_UINT, &hf_065_040_NOGO, NULL };
+static int hf_065_040_OVL = -1;
+static const value_string valstr_065_040_OVL[] = {
+ { 0, "Default" },
+ { 1, "Overload" },
+ { 0, NULL }
+};
+static const FieldPart I065_040_OVL = { 1, 1.0, FIELD_PART_UINT, &hf_065_040_OVL, NULL };
+static int hf_065_040_TSV = -1;
+static const value_string valstr_065_040_TSV[] = {
+ { 0, "Default" },
+ { 1, "Invalid Time Source" },
+ { 0, NULL }
+};
+static const FieldPart I065_040_TSV = { 1, 1.0, FIELD_PART_UINT, &hf_065_040_TSV, NULL };
+static int hf_065_040_PSS = -1;
+static const value_string valstr_065_040_PSS[] = {
+ { 0, "Not applicable" },
+ { 1, "SDPS-1 selected" },
+ { 2, "SDPS-2 selected" },
+ { 3, "SDPS-3 selected" },
+ { 0, NULL }
+};
+static const FieldPart I065_040_PSS = { 2, 1.0, FIELD_PART_UINT, &hf_065_040_PSS, NULL };
+static int hf_065_040_STTN = -1;
+static const FieldPart I065_040_STTN = { 1, 1.0, FIELD_PART_HEX, &hf_065_040_STTN, NULL };
+static const FieldPart *I065_040_PARTS[] = {
+ &I065_040_NOGO,
+ &I065_040_OVL,
+ &I065_040_TSV,
+ &I065_040_PSS,
+ &I065_040_STTN,
+ &IXXX_1bit_spare,
+ NULL
+};
+static const AsterixField I065_040 = { FIXED, 1, 0, 0, &hf_065_040, I065_040_PARTS, { NULL } };
+static int hf_065_050 = -1;
+static int hf_065_050_VALUE = -1;
+static const value_string valstr_065_050_VALUE[] = {
+ { 1, "Service degradation" },
+ { 2, "Service degradation ended" },
+ { 3, "Main radar out of service" },
+ { 4, "Service interrupted by the operator" },
+ { 5, "Service interrupted due to contingency" },
+ { 6, "Ready for service restart after contingency" },
+ { 7, "Service ended by the operator" },
+ { 8, "Failure of user main radar" },
+ { 9, "Service restarted by the operator" },
+ { 10, "Main radar becoming operational" },
+ { 11, "Main radar becoming degraded" },
+ { 12, "Service continuity interrupted due to disconnection with adjacent unit" },
+ { 13, "Service continuity restarted" },
+ { 14, "Service synchronised on backup radar" },
+ { 15, "Service synchronised on main radar" },
+ { 16, "Main and backup radar, if any, failed" },
+ { 0, NULL }
+};
+static const FieldPart I065_050_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_065_050_VALUE, NULL };
+static const FieldPart *I065_050_PARTS[] = {
+ &I065_050_VALUE,
+ NULL
+};
+static const AsterixField I065_050 = { FIXED, 1, 0, 0, &hf_065_050, I065_050_PARTS, { NULL } };
+static int hf_065_RE = -1;
+static const AsterixField I065_RE = { EXP, 0, 0, 1, &hf_065_RE, NULL, { NULL } };
+static int hf_065_SP = -1;
+static const AsterixField I065_SP = { EXP, 0, 0, 1, &hf_065_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I065_V1_6_uap[] = {
+ &I065_V1_6_010,
+ &I065_V1_6_000,
+ &I065_V1_6_015,
+ &I065_V1_6_030,
+ &I065_V1_6_020,
+ &I065_V1_6_040,
+ &I065_V1_6_050,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I065_V1_6_RE,
+ &I065_V1_6_SP,
+ NULL
+};
+static const AsterixField **I065_V1_6[] = {
+ I065_V1_6_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I065_uap[] = {
+ &I065_010,
+ &I065_000,
+ &I065_015,
+ &I065_030,
+ &I065_020,
+ &I065_040,
+ &I065_050,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &IX_SPARE,
+ &I065_RE,
+ &I065_SP,
+ NULL
+};
+static const AsterixField **I065[] = {
+ I065_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 240, edition 1.3 */
+static int hf_240_V1_3_000 = -1;
+static int hf_240_V1_3_000_VALUE = -1;
+static const value_string valstr_240_V1_3_000_VALUE[] = {
+ { 1, "Video Summary message" },
+ { 2, "Video message" },
+ { 0, NULL }
+};
+static const FieldPart I240_V1_3_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_240_V1_3_000_VALUE, NULL };
+static const FieldPart *I240_V1_3_000_PARTS[] = {
+ &I240_V1_3_000_VALUE,
+ NULL
+};
+static const AsterixField I240_V1_3_000 = { FIXED, 1, 0, 0, &hf_240_V1_3_000, I240_V1_3_000_PARTS, { NULL } };
+static int hf_240_V1_3_010 = -1;
+static int hf_240_V1_3_010_SAC = -1;
+static const FieldPart I240_V1_3_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_240_V1_3_010_SAC, NULL };
+static int hf_240_V1_3_010_SIC = -1;
+static const FieldPart I240_V1_3_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_240_V1_3_010_SIC, NULL };
+static const FieldPart *I240_V1_3_010_PARTS[] = {
+ &I240_V1_3_010_SAC,
+ &I240_V1_3_010_SIC,
+ NULL
+};
+static const AsterixField I240_V1_3_010 = { FIXED, 2, 0, 0, &hf_240_V1_3_010, I240_V1_3_010_PARTS, { NULL } };
+static int hf_240_V1_3_020 = -1;
+static int hf_240_V1_3_020_VALUE = -1;
+static const FieldPart I240_V1_3_020_VALUE = { 32, 1.0, FIELD_PART_UINT, &hf_240_V1_3_020_VALUE, NULL };
+static const FieldPart *I240_V1_3_020_PARTS[] = {
+ &I240_V1_3_020_VALUE,
+ NULL
+};
+static const AsterixField I240_V1_3_020 = { FIXED, 4, 0, 0, &hf_240_V1_3_020, I240_V1_3_020_PARTS, { NULL } };
+static int hf_240_V1_3_030 = -1;
+static int hf_240_V1_3_030_VALUE = -1;
+static const FieldPart I240_V1_3_030_VALUE = { 8, 1.0, FIELD_PART_ASCII, &hf_240_V1_3_030_VALUE, NULL };
+static const FieldPart *I240_V1_3_030_PARTS[] = {
+ &I240_V1_3_030_VALUE,
+ NULL
+};
+static const AsterixField I240_V1_3_030 = { REPETITIVE, 1, 1, 0, &hf_240_V1_3_030, I240_V1_3_030_PARTS, { NULL } };
+static int hf_240_V1_3_040 = -1;
+static int hf_240_V1_3_040_STARTAZ = -1;
+static const FieldPart I240_V1_3_040_STARTAZ = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_240_V1_3_040_STARTAZ, NULL };
+static int hf_240_V1_3_040_ENDAZ = -1;
+static const FieldPart I240_V1_3_040_ENDAZ = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_240_V1_3_040_ENDAZ, NULL };
+static int hf_240_V1_3_040_STARTRG = -1;
+static const FieldPart I240_V1_3_040_STARTRG = { 32, 1.0, FIELD_PART_UINT, &hf_240_V1_3_040_STARTRG, NULL };
+static int hf_240_V1_3_040_CELLDUR = -1;
+static const FieldPart I240_V1_3_040_CELLDUR = { 32, 1.0, FIELD_PART_UFLOAT, &hf_240_V1_3_040_CELLDUR, NULL };
+static const FieldPart *I240_V1_3_040_PARTS[] = {
+ &I240_V1_3_040_STARTAZ,
+ &I240_V1_3_040_ENDAZ,
+ &I240_V1_3_040_STARTRG,
+ &I240_V1_3_040_CELLDUR,
+ NULL
+};
+static const AsterixField I240_V1_3_040 = { FIXED, 12, 0, 0, &hf_240_V1_3_040, I240_V1_3_040_PARTS, { NULL } };
+static int hf_240_V1_3_041 = -1;
+static int hf_240_V1_3_041_STARTAZ = -1;
+static const FieldPart I240_V1_3_041_STARTAZ = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_240_V1_3_041_STARTAZ, NULL };
+static int hf_240_V1_3_041_ENDAZ = -1;
+static const FieldPart I240_V1_3_041_ENDAZ = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_240_V1_3_041_ENDAZ, NULL };
+static int hf_240_V1_3_041_STARTRG = -1;
+static const FieldPart I240_V1_3_041_STARTRG = { 32, 1.0, FIELD_PART_UINT, &hf_240_V1_3_041_STARTRG, NULL };
+static int hf_240_V1_3_041_CELLDUR = -1;
+static const FieldPart I240_V1_3_041_CELLDUR = { 32, 1.0, FIELD_PART_UFLOAT, &hf_240_V1_3_041_CELLDUR, NULL };
+static const FieldPart *I240_V1_3_041_PARTS[] = {
+ &I240_V1_3_041_STARTAZ,
+ &I240_V1_3_041_ENDAZ,
+ &I240_V1_3_041_STARTRG,
+ &I240_V1_3_041_CELLDUR,
+ NULL
+};
+static const AsterixField I240_V1_3_041 = { FIXED, 12, 0, 0, &hf_240_V1_3_041, I240_V1_3_041_PARTS, { NULL } };
+static int hf_240_V1_3_048 = -1;
+static int hf_240_V1_3_048_C = -1;
+static const value_string valstr_240_V1_3_048_C[] = {
+ { 0, "No compression applied" },
+ { 1, "Compression applied" },
+ { 0, NULL }
+};
+static const FieldPart I240_V1_3_048_C = { 1, 1.0, FIELD_PART_UINT, &hf_240_V1_3_048_C, NULL };
+static int hf_240_V1_3_048_RES = -1;
+static const value_string valstr_240_V1_3_048_RES[] = {
+ { 1, "Monobit Resolution (1 bit)" },
+ { 2, "Low Resolution (2 bits)" },
+ { 3, "Medium Resolution (4 bits)" },
+ { 4, "High Resolution (8 bits)" },
+ { 5, "Very High Resolution (16 bits)" },
+ { 6, "Ultra High Resolution (32 bits)" },
+ { 0, NULL }
+};
+static const FieldPart I240_V1_3_048_RES = { 8, 1.0, FIELD_PART_UINT, &hf_240_V1_3_048_RES, NULL };
+static const FieldPart *I240_V1_3_048_PARTS[] = {
+ &I240_V1_3_048_C,
+ &IXXX_7bit_spare,
+ &I240_V1_3_048_RES,
+ NULL
+};
+static const AsterixField I240_V1_3_048 = { FIXED, 2, 0, 0, &hf_240_V1_3_048, I240_V1_3_048_PARTS, { NULL } };
+static int hf_240_V1_3_049 = -1;
+static int hf_240_V1_3_049_NBVB = -1;
+static const FieldPart I240_V1_3_049_NBVB = { 16, 1.0, FIELD_PART_UINT, &hf_240_V1_3_049_NBVB, NULL };
+static int hf_240_V1_3_049_NBCELLS = -1;
+static const FieldPart I240_V1_3_049_NBCELLS = { 24, 1.0, FIELD_PART_UINT, &hf_240_V1_3_049_NBCELLS, NULL };
+static const FieldPart *I240_V1_3_049_PARTS[] = {
+ &I240_V1_3_049_NBVB,
+ &I240_V1_3_049_NBCELLS,
+ NULL
+};
+static const AsterixField I240_V1_3_049 = { FIXED, 5, 0, 0, &hf_240_V1_3_049, I240_V1_3_049_PARTS, { NULL } };
+static int hf_240_V1_3_050 = -1;
+static int hf_240_V1_3_050_VALUE = -1;
+static const FieldPart I240_V1_3_050_VALUE = { 32, 1.0, FIELD_PART_HEX, &hf_240_V1_3_050_VALUE, NULL };
+static const FieldPart *I240_V1_3_050_PARTS[] = {
+ &I240_V1_3_050_VALUE,
+ NULL
+};
+static const AsterixField I240_V1_3_050 = { REPETITIVE, 4, 1, 0, &hf_240_V1_3_050, I240_V1_3_050_PARTS, { NULL } };
+static int hf_240_V1_3_051 = -1;
+static int hf_240_V1_3_051_VALUE = -1;
+static const FieldPart I240_V1_3_051_VALUE = { 512, 1.0, FIELD_PART_HEX, &hf_240_V1_3_051_VALUE, NULL };
+static const FieldPart *I240_V1_3_051_PARTS[] = {
+ &I240_V1_3_051_VALUE,
+ NULL
+};
+static const AsterixField I240_V1_3_051 = { REPETITIVE, 64, 1, 0, &hf_240_V1_3_051, I240_V1_3_051_PARTS, { NULL } };
+static int hf_240_V1_3_052 = -1;
+static int hf_240_V1_3_052_VALUE = -1;
+static const FieldPart I240_V1_3_052_VALUE = { 2048, 1.0, FIELD_PART_HEX, &hf_240_V1_3_052_VALUE, NULL };
+static const FieldPart *I240_V1_3_052_PARTS[] = {
+ &I240_V1_3_052_VALUE,
+ NULL
+};
+static const AsterixField I240_V1_3_052 = { REPETITIVE, 256, 1, 0, &hf_240_V1_3_052, I240_V1_3_052_PARTS, { NULL } };
+static int hf_240_V1_3_140 = -1;
+static int hf_240_V1_3_140_VALUE = -1;
+static const FieldPart I240_V1_3_140_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_240_V1_3_140_VALUE, NULL };
+static const FieldPart *I240_V1_3_140_PARTS[] = {
+ &I240_V1_3_140_VALUE,
+ NULL
+};
+static const AsterixField I240_V1_3_140 = { FIXED, 3, 0, 0, &hf_240_V1_3_140, I240_V1_3_140_PARTS, { NULL } };
+static int hf_240_V1_3_RE = -1;
+static const AsterixField I240_V1_3_RE = { EXP, 0, 0, 1, &hf_240_V1_3_RE, NULL, { NULL } };
+static int hf_240_V1_3_SP = -1;
+static const AsterixField I240_V1_3_SP = { EXP, 0, 0, 1, &hf_240_V1_3_SP, NULL, { NULL } };
+
+/* Category 240, edition 1.3 (latest) */
+static int hf_240_000 = -1;
+static int hf_240_000_VALUE = -1;
+static const value_string valstr_240_000_VALUE[] = {
+ { 1, "Video Summary message" },
+ { 2, "Video message" },
+ { 0, NULL }
+};
+static const FieldPart I240_000_VALUE = { 8, 1.0, FIELD_PART_UINT, &hf_240_000_VALUE, NULL };
+static const FieldPart *I240_000_PARTS[] = {
+ &I240_000_VALUE,
+ NULL
+};
+static const AsterixField I240_000 = { FIXED, 1, 0, 0, &hf_240_000, I240_000_PARTS, { NULL } };
+static int hf_240_010 = -1;
+static int hf_240_010_SAC = -1;
+static const FieldPart I240_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_240_010_SAC, NULL };
+static int hf_240_010_SIC = -1;
+static const FieldPart I240_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_240_010_SIC, NULL };
+static const FieldPart *I240_010_PARTS[] = {
+ &I240_010_SAC,
+ &I240_010_SIC,
+ NULL
+};
+static const AsterixField I240_010 = { FIXED, 2, 0, 0, &hf_240_010, I240_010_PARTS, { NULL } };
+static int hf_240_020 = -1;
+static int hf_240_020_VALUE = -1;
+static const FieldPart I240_020_VALUE = { 32, 1.0, FIELD_PART_UINT, &hf_240_020_VALUE, NULL };
+static const FieldPart *I240_020_PARTS[] = {
+ &I240_020_VALUE,
+ NULL
+};
+static const AsterixField I240_020 = { FIXED, 4, 0, 0, &hf_240_020, I240_020_PARTS, { NULL } };
+static int hf_240_030 = -1;
+static int hf_240_030_VALUE = -1;
+static const FieldPart I240_030_VALUE = { 8, 1.0, FIELD_PART_ASCII, &hf_240_030_VALUE, NULL };
+static const FieldPart *I240_030_PARTS[] = {
+ &I240_030_VALUE,
+ NULL
+};
+static const AsterixField I240_030 = { REPETITIVE, 1, 1, 0, &hf_240_030, I240_030_PARTS, { NULL } };
+static int hf_240_040 = -1;
+static int hf_240_040_STARTAZ = -1;
+static const FieldPart I240_040_STARTAZ = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_240_040_STARTAZ, NULL };
+static int hf_240_040_ENDAZ = -1;
+static const FieldPart I240_040_ENDAZ = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_240_040_ENDAZ, NULL };
+static int hf_240_040_STARTRG = -1;
+static const FieldPart I240_040_STARTRG = { 32, 1.0, FIELD_PART_UINT, &hf_240_040_STARTRG, NULL };
+static int hf_240_040_CELLDUR = -1;
+static const FieldPart I240_040_CELLDUR = { 32, 1.0, FIELD_PART_UFLOAT, &hf_240_040_CELLDUR, NULL };
+static const FieldPart *I240_040_PARTS[] = {
+ &I240_040_STARTAZ,
+ &I240_040_ENDAZ,
+ &I240_040_STARTRG,
+ &I240_040_CELLDUR,
+ NULL
+};
+static const AsterixField I240_040 = { FIXED, 12, 0, 0, &hf_240_040, I240_040_PARTS, { NULL } };
+static int hf_240_041 = -1;
+static int hf_240_041_STARTAZ = -1;
+static const FieldPart I240_041_STARTAZ = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_240_041_STARTAZ, NULL };
+static int hf_240_041_ENDAZ = -1;
+static const FieldPart I240_041_ENDAZ = { 16, 0.0054931640625, FIELD_PART_UFLOAT, &hf_240_041_ENDAZ, NULL };
+static int hf_240_041_STARTRG = -1;
+static const FieldPart I240_041_STARTRG = { 32, 1.0, FIELD_PART_UINT, &hf_240_041_STARTRG, NULL };
+static int hf_240_041_CELLDUR = -1;
+static const FieldPart I240_041_CELLDUR = { 32, 1.0, FIELD_PART_UFLOAT, &hf_240_041_CELLDUR, NULL };
+static const FieldPart *I240_041_PARTS[] = {
+ &I240_041_STARTAZ,
+ &I240_041_ENDAZ,
+ &I240_041_STARTRG,
+ &I240_041_CELLDUR,
+ NULL
+};
+static const AsterixField I240_041 = { FIXED, 12, 0, 0, &hf_240_041, I240_041_PARTS, { NULL } };
+static int hf_240_048 = -1;
+static int hf_240_048_C = -1;
+static const value_string valstr_240_048_C[] = {
+ { 0, "No compression applied" },
+ { 1, "Compression applied" },
+ { 0, NULL }
+};
+static const FieldPart I240_048_C = { 1, 1.0, FIELD_PART_UINT, &hf_240_048_C, NULL };
+static int hf_240_048_RES = -1;
+static const value_string valstr_240_048_RES[] = {
+ { 1, "Monobit Resolution (1 bit)" },
+ { 2, "Low Resolution (2 bits)" },
+ { 3, "Medium Resolution (4 bits)" },
+ { 4, "High Resolution (8 bits)" },
+ { 5, "Very High Resolution (16 bits)" },
+ { 6, "Ultra High Resolution (32 bits)" },
+ { 0, NULL }
+};
+static const FieldPart I240_048_RES = { 8, 1.0, FIELD_PART_UINT, &hf_240_048_RES, NULL };
+static const FieldPart *I240_048_PARTS[] = {
+ &I240_048_C,
+ &IXXX_7bit_spare,
+ &I240_048_RES,
+ NULL
+};
+static const AsterixField I240_048 = { FIXED, 2, 0, 0, &hf_240_048, I240_048_PARTS, { NULL } };
+static int hf_240_049 = -1;
+static int hf_240_049_NBVB = -1;
+static const FieldPart I240_049_NBVB = { 16, 1.0, FIELD_PART_UINT, &hf_240_049_NBVB, NULL };
+static int hf_240_049_NBCELLS = -1;
+static const FieldPart I240_049_NBCELLS = { 24, 1.0, FIELD_PART_UINT, &hf_240_049_NBCELLS, NULL };
+static const FieldPart *I240_049_PARTS[] = {
+ &I240_049_NBVB,
+ &I240_049_NBCELLS,
+ NULL
+};
+static const AsterixField I240_049 = { FIXED, 5, 0, 0, &hf_240_049, I240_049_PARTS, { NULL } };
+static int hf_240_050 = -1;
+static int hf_240_050_VALUE = -1;
+static const FieldPart I240_050_VALUE = { 32, 1.0, FIELD_PART_HEX, &hf_240_050_VALUE, NULL };
+static const FieldPart *I240_050_PARTS[] = {
+ &I240_050_VALUE,
+ NULL
+};
+static const AsterixField I240_050 = { REPETITIVE, 4, 1, 0, &hf_240_050, I240_050_PARTS, { NULL } };
+static int hf_240_051 = -1;
+static int hf_240_051_VALUE = -1;
+static const FieldPart I240_051_VALUE = { 512, 1.0, FIELD_PART_HEX, &hf_240_051_VALUE, NULL };
+static const FieldPart *I240_051_PARTS[] = {
+ &I240_051_VALUE,
+ NULL
+};
+static const AsterixField I240_051 = { REPETITIVE, 64, 1, 0, &hf_240_051, I240_051_PARTS, { NULL } };
+static int hf_240_052 = -1;
+static int hf_240_052_VALUE = -1;
+static const FieldPart I240_052_VALUE = { 2048, 1.0, FIELD_PART_HEX, &hf_240_052_VALUE, NULL };
+static const FieldPart *I240_052_PARTS[] = {
+ &I240_052_VALUE,
+ NULL
+};
+static const AsterixField I240_052 = { REPETITIVE, 256, 1, 0, &hf_240_052, I240_052_PARTS, { NULL } };
+static int hf_240_140 = -1;
+static int hf_240_140_VALUE = -1;
+static const FieldPart I240_140_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_240_140_VALUE, NULL };
+static const FieldPart *I240_140_PARTS[] = {
+ &I240_140_VALUE,
+ NULL
+};
+static const AsterixField I240_140 = { FIXED, 3, 0, 0, &hf_240_140, I240_140_PARTS, { NULL } };
+static int hf_240_RE = -1;
+static const AsterixField I240_RE = { EXP, 0, 0, 1, &hf_240_RE, NULL, { NULL } };
+static int hf_240_SP = -1;
+static const AsterixField I240_SP = { EXP, 0, 0, 1, &hf_240_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I240_V1_3_uap[] = {
+ &I240_V1_3_010,
+ &I240_V1_3_000,
+ &I240_V1_3_020,
+ &I240_V1_3_030,
+ &I240_V1_3_040,
+ &I240_V1_3_041,
+ &I240_V1_3_048,
+ &I240_V1_3_049,
+ &I240_V1_3_050,
+ &I240_V1_3_051,
+ &I240_V1_3_052,
+ &I240_V1_3_140,
+ &I240_V1_3_RE,
+ &I240_V1_3_SP,
+ NULL
+};
+static const AsterixField **I240_V1_3[] = {
+ I240_V1_3_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I240_uap[] = {
+ &I240_010,
+ &I240_000,
+ &I240_020,
+ &I240_030,
+ &I240_040,
+ &I240_041,
+ &I240_048,
+ &I240_049,
+ &I240_050,
+ &I240_051,
+ &I240_052,
+ &I240_140,
+ &I240_RE,
+ &I240_SP,
+ NULL
+};
+static const AsterixField **I240[] = {
+ I240_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 247, edition 1.2 */
+static int hf_247_V1_2_010 = -1;
+static int hf_247_V1_2_010_SAC = -1;
+static const FieldPart I247_V1_2_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_247_V1_2_010_SAC, NULL };
+static int hf_247_V1_2_010_SIC = -1;
+static const FieldPart I247_V1_2_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_247_V1_2_010_SIC, NULL };
+static const FieldPart *I247_V1_2_010_PARTS[] = {
+ &I247_V1_2_010_SAC,
+ &I247_V1_2_010_SIC,
+ NULL
+};
+static const AsterixField I247_V1_2_010 = { FIXED, 2, 0, 0, &hf_247_V1_2_010, I247_V1_2_010_PARTS, { NULL } };
+static int hf_247_V1_2_015 = -1;
+static int hf_247_V1_2_015_VALUE = -1;
+static const FieldPart I247_V1_2_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_247_V1_2_015_VALUE, NULL };
+static const FieldPart *I247_V1_2_015_PARTS[] = {
+ &I247_V1_2_015_VALUE,
+ NULL
+};
+static const AsterixField I247_V1_2_015 = { FIXED, 1, 0, 0, &hf_247_V1_2_015, I247_V1_2_015_PARTS, { NULL } };
+static int hf_247_V1_2_140 = -1;
+static int hf_247_V1_2_140_VALUE = -1;
+static const FieldPart I247_V1_2_140_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_247_V1_2_140_VALUE, NULL };
+static const FieldPart *I247_V1_2_140_PARTS[] = {
+ &I247_V1_2_140_VALUE,
+ NULL
+};
+static const AsterixField I247_V1_2_140 = { FIXED, 3, 0, 0, &hf_247_V1_2_140, I247_V1_2_140_PARTS, { NULL } };
+static int hf_247_V1_2_550 = -1;
+static int hf_247_V1_2_550_CAT = -1;
+static const FieldPart I247_V1_2_550_CAT = { 8, 1.0, FIELD_PART_UINT, &hf_247_V1_2_550_CAT, NULL };
+static int hf_247_V1_2_550_MAIN = -1;
+static const FieldPart I247_V1_2_550_MAIN = { 8, 1.0, FIELD_PART_UINT, &hf_247_V1_2_550_MAIN, NULL };
+static int hf_247_V1_2_550_SUB = -1;
+static const FieldPart I247_V1_2_550_SUB = { 8, 1.0, FIELD_PART_UINT, &hf_247_V1_2_550_SUB, NULL };
+static const FieldPart *I247_V1_2_550_PARTS[] = {
+ &I247_V1_2_550_CAT,
+ &I247_V1_2_550_MAIN,
+ &I247_V1_2_550_SUB,
+ NULL
+};
+static const AsterixField I247_V1_2_550 = { REPETITIVE, 3, 1, 0, &hf_247_V1_2_550, I247_V1_2_550_PARTS, { NULL } };
+static int hf_247_V1_2_RE = -1;
+static const AsterixField I247_V1_2_RE = { EXP, 0, 0, 1, &hf_247_V1_2_RE, NULL, { NULL } };
+static int hf_247_V1_2_SP = -1;
+static const AsterixField I247_V1_2_SP = { EXP, 0, 0, 1, &hf_247_V1_2_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I247_V1_2_uap[] = {
+ &I247_V1_2_010,
+ &I247_V1_2_015,
+ &I247_V1_2_140,
+ &I247_V1_2_550,
+ &IX_SPARE,
+ &I247_V1_2_SP,
+ &I247_V1_2_RE,
+ NULL
+};
+static const AsterixField **I247_V1_2[] = {
+ I247_V1_2_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+/* Category 247, edition 1.3 */
+static int hf_247_V1_3_010 = -1;
+static int hf_247_V1_3_010_SAC = -1;
+static const FieldPart I247_V1_3_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_247_V1_3_010_SAC, NULL };
+static int hf_247_V1_3_010_SIC = -1;
+static const FieldPart I247_V1_3_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_247_V1_3_010_SIC, NULL };
+static const FieldPart *I247_V1_3_010_PARTS[] = {
+ &I247_V1_3_010_SAC,
+ &I247_V1_3_010_SIC,
+ NULL
+};
+static const AsterixField I247_V1_3_010 = { FIXED, 2, 0, 0, &hf_247_V1_3_010, I247_V1_3_010_PARTS, { NULL } };
+static int hf_247_V1_3_015 = -1;
+static int hf_247_V1_3_015_VALUE = -1;
+static const FieldPart I247_V1_3_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_247_V1_3_015_VALUE, NULL };
+static const FieldPart *I247_V1_3_015_PARTS[] = {
+ &I247_V1_3_015_VALUE,
+ NULL
+};
+static const AsterixField I247_V1_3_015 = { FIXED, 1, 0, 0, &hf_247_V1_3_015, I247_V1_3_015_PARTS, { NULL } };
+static int hf_247_V1_3_140 = -1;
+static int hf_247_V1_3_140_VALUE = -1;
+static const FieldPart I247_V1_3_140_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_247_V1_3_140_VALUE, NULL };
+static const FieldPart *I247_V1_3_140_PARTS[] = {
+ &I247_V1_3_140_VALUE,
+ NULL
+};
+static const AsterixField I247_V1_3_140 = { FIXED, 3, 0, 0, &hf_247_V1_3_140, I247_V1_3_140_PARTS, { NULL } };
+static int hf_247_V1_3_550 = -1;
+static int hf_247_V1_3_550_CAT = -1;
+static const FieldPart I247_V1_3_550_CAT = { 8, 1.0, FIELD_PART_UINT, &hf_247_V1_3_550_CAT, NULL };
+static int hf_247_V1_3_550_MAIN = -1;
+static const FieldPart I247_V1_3_550_MAIN = { 8, 1.0, FIELD_PART_UINT, &hf_247_V1_3_550_MAIN, NULL };
+static int hf_247_V1_3_550_SUB = -1;
+static const FieldPart I247_V1_3_550_SUB = { 8, 1.0, FIELD_PART_UINT, &hf_247_V1_3_550_SUB, NULL };
+static const FieldPart *I247_V1_3_550_PARTS[] = {
+ &I247_V1_3_550_CAT,
+ &I247_V1_3_550_MAIN,
+ &I247_V1_3_550_SUB,
+ NULL
+};
+static const AsterixField I247_V1_3_550 = { REPETITIVE, 3, 1, 0, &hf_247_V1_3_550, I247_V1_3_550_PARTS, { NULL } };
+static int hf_247_V1_3_RE = -1;
+static const AsterixField I247_V1_3_RE = { EXP, 0, 0, 1, &hf_247_V1_3_RE, NULL, { NULL } };
+static int hf_247_V1_3_SP = -1;
+static const AsterixField I247_V1_3_SP = { EXP, 0, 0, 1, &hf_247_V1_3_SP, NULL, { NULL } };
+
+/* Category 247, edition 1.3 (latest) */
+static int hf_247_010 = -1;
+static int hf_247_010_SAC = -1;
+static const FieldPart I247_010_SAC = { 8, 1.0, FIELD_PART_HEX, &hf_247_010_SAC, NULL };
+static int hf_247_010_SIC = -1;
+static const FieldPart I247_010_SIC = { 8, 1.0, FIELD_PART_HEX, &hf_247_010_SIC, NULL };
+static const FieldPart *I247_010_PARTS[] = {
+ &I247_010_SAC,
+ &I247_010_SIC,
+ NULL
+};
+static const AsterixField I247_010 = { FIXED, 2, 0, 0, &hf_247_010, I247_010_PARTS, { NULL } };
+static int hf_247_015 = -1;
+static int hf_247_015_VALUE = -1;
+static const FieldPart I247_015_VALUE = { 8, 1.0, FIELD_PART_HEX, &hf_247_015_VALUE, NULL };
+static const FieldPart *I247_015_PARTS[] = {
+ &I247_015_VALUE,
+ NULL
+};
+static const AsterixField I247_015 = { FIXED, 1, 0, 0, &hf_247_015, I247_015_PARTS, { NULL } };
+static int hf_247_140 = -1;
+static int hf_247_140_VALUE = -1;
+static const FieldPart I247_140_VALUE = { 24, 0.0078125, FIELD_PART_UFLOAT, &hf_247_140_VALUE, NULL };
+static const FieldPart *I247_140_PARTS[] = {
+ &I247_140_VALUE,
+ NULL
+};
+static const AsterixField I247_140 = { FIXED, 3, 0, 0, &hf_247_140, I247_140_PARTS, { NULL } };
+static int hf_247_550 = -1;
+static int hf_247_550_CAT = -1;
+static const FieldPart I247_550_CAT = { 8, 1.0, FIELD_PART_UINT, &hf_247_550_CAT, NULL };
+static int hf_247_550_MAIN = -1;
+static const FieldPart I247_550_MAIN = { 8, 1.0, FIELD_PART_UINT, &hf_247_550_MAIN, NULL };
+static int hf_247_550_SUB = -1;
+static const FieldPart I247_550_SUB = { 8, 1.0, FIELD_PART_UINT, &hf_247_550_SUB, NULL };
+static const FieldPart *I247_550_PARTS[] = {
+ &I247_550_CAT,
+ &I247_550_MAIN,
+ &I247_550_SUB,
+ NULL
+};
+static const AsterixField I247_550 = { REPETITIVE, 3, 1, 0, &hf_247_550, I247_550_PARTS, { NULL } };
+static int hf_247_RE = -1;
+static const AsterixField I247_RE = { EXP, 0, 0, 1, &hf_247_RE, NULL, { NULL } };
+static int hf_247_SP = -1;
+static const AsterixField I247_SP = { EXP, 0, 0, 1, &hf_247_SP, NULL, { NULL } };
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I247_V1_3_uap[] = {
+ &I247_V1_3_010,
+ &I247_V1_3_015,
+ &I247_V1_3_140,
+ &I247_V1_3_550,
+ &IX_SPARE,
+ &I247_V1_3_SP,
+ &I247_V1_3_RE,
+ NULL
+};
+static const AsterixField **I247_V1_3[] = {
+ I247_V1_3_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField *I247_uap[] = {
+ &I247_010,
+ &I247_015,
+ &I247_140,
+ &I247_550,
+ &IX_SPARE,
+ &I247_SP,
+ &I247_RE,
+ NULL
+};
+static const AsterixField **I247[] = {
+ I247_uap,
+ NULL
+};
+DIAG_ON_PEDANTIC
+
+DIAG_OFF_PEDANTIC
+static const AsterixField ***I001all[] = { I001, I001_V1_4, I001_V1_3, I001_V1_2 };
+DIAG_ON_PEDANTIC
+
+static const enum_val_t I001_versions[] = {
+ { "I001", "Version 1.4 (latest)", 0 },
+ { "I001_v1_4", "Version 1.4", 1 },
+ { "I001_v1_3", "Version 1.3", 2 },
+ { "I001_v1_2", "Version 1.2", 3 },
+ { NULL, NULL, 0 }
+};
+
+DIAG_OFF_PEDANTIC
+static const AsterixField ***I002all[] = { I002, I002_V1_1, I002_V1_0 };
+DIAG_ON_PEDANTIC
+
+static const enum_val_t I002_versions[] = {
+ { "I002", "Version 1.1 (latest)", 0 },
+ { "I002_v1_1", "Version 1.1", 1 },
+ { "I002_v1_0", "Version 1.0", 2 },
+ { NULL, NULL, 0 }
+};
+
+DIAG_OFF_PEDANTIC
+static const AsterixField ***I004all[] = { I004, I004_V1_12 };
+DIAG_ON_PEDANTIC
+
+static const enum_val_t I004_versions[] = {
+ { "I004", "Version 1.12 (latest)", 0 },
+ { "I004_v1_12", "Version 1.12", 1 },
+ { NULL, NULL, 0 }
+};
+
+DIAG_OFF_PEDANTIC
+static const AsterixField ***I008all[] = { I008, I008_V1_3, I008_V1_2 };
+DIAG_ON_PEDANTIC
+
+static const enum_val_t I008_versions[] = {
+ { "I008", "Version 1.3 (latest)", 0 },
+ { "I008_v1_3", "Version 1.3", 1 },
+ { "I008_v1_2", "Version 1.2", 2 },
+ { NULL, NULL, 0 }
+};
+
+DIAG_OFF_PEDANTIC
+static const AsterixField ***I009all[] = { I009, I009_V2_1 };
+DIAG_ON_PEDANTIC
+
+static const enum_val_t I009_versions[] = {
+ { "I009", "Version 2.1 (latest)", 0 },
+ { "I009_v2_1", "Version 2.1", 1 },
+ { NULL, NULL, 0 }
+};
+
+DIAG_OFF_PEDANTIC
+static const AsterixField ***I010all[] = { I010, I010_V1_1 };
+DIAG_ON_PEDANTIC
+
+static const enum_val_t I010_versions[] = {
+ { "I010", "Version 1.1 (latest)", 0 },
+ { "I010_v1_1", "Version 1.1", 1 },
+ { NULL, NULL, 0 }
+};
+
+DIAG_OFF_PEDANTIC
+static const AsterixField ***I011all[] = { I011, I011_V1_3, I011_V1_2 };
+DIAG_ON_PEDANTIC
+
+static const enum_val_t I011_versions[] = {
+ { "I011", "Version 1.3 (latest)", 0 },
+ { "I011_v1_3", "Version 1.3", 1 },
+ { "I011_v1_2", "Version 1.2", 2 },
+ { NULL, NULL, 0 }
+};
+
+DIAG_OFF_PEDANTIC
+static const AsterixField ***I015all[] = { I015, I015_V1_1, I015_V1_0 };
+DIAG_ON_PEDANTIC
+
+static const enum_val_t I015_versions[] = {
+ { "I015", "Version 1.1 (latest)", 0 },
+ { "I015_v1_1", "Version 1.1", 1 },
+ { "I015_v1_0", "Version 1.0", 2 },
+ { NULL, NULL, 0 }
+};
+
+DIAG_OFF_PEDANTIC
+static const AsterixField ***I016all[] = { I016, I016_V1_0 };
+DIAG_ON_PEDANTIC
+
+static const enum_val_t I016_versions[] = {
+ { "I016", "Version 1.0 (latest)", 0 },
+ { "I016_v1_0", "Version 1.0", 1 },
+ { NULL, NULL, 0 }
+};
+
+DIAG_OFF_PEDANTIC
+static const AsterixField ***I018all[] = { I018, I018_V1_7 };
+DIAG_ON_PEDANTIC
+
+static const enum_val_t I018_versions[] = {
+ { "I018", "Version 1.7 (latest)", 0 },
+ { "I018_v1_7", "Version 1.7", 1 },
+ { NULL, NULL, 0 }
+};
+
+DIAG_OFF_PEDANTIC
+static const AsterixField ***I019all[] = { I019, I019_V1_3 };
+DIAG_ON_PEDANTIC
+
+static const enum_val_t I019_versions[] = {
+ { "I019", "Version 1.3 (latest)", 0 },
+ { "I019_v1_3", "Version 1.3", 1 },
+ { NULL, NULL, 0 }
+};
+
+DIAG_OFF_PEDANTIC
+static const AsterixField ***I020all[] = { I020, I020_V1_10, I020_V1_9 };
+DIAG_ON_PEDANTIC
+
+static const enum_val_t I020_versions[] = {
+ { "I020", "Version 1.10 (latest)", 0 },
+ { "I020_v1_10", "Version 1.10", 1 },
+ { "I020_v1_9", "Version 1.9", 2 },
+ { NULL, NULL, 0 }
+};
+
+DIAG_OFF_PEDANTIC
+static const AsterixField ***I021all[] = { I021, I021_V2_6, I021_V2_5, I021_V2_4, I021_V2_3, I021_V2_2, I021_V0_26, I021_V0_25, I021_V0_24, I021_V0_23 };
+DIAG_ON_PEDANTIC
+
+static const enum_val_t I021_versions[] = {
+ { "I021", "Version 2.6 (latest)", 0 },
+ { "I021_v2_6", "Version 2.6", 1 },
+ { "I021_v2_5", "Version 2.5", 2 },
+ { "I021_v2_4", "Version 2.4", 3 },
+ { "I021_v2_3", "Version 2.3", 4 },
+ { "I021_v2_2", "Version 2.2", 5 },
+ { "I021_v0_26", "Version 0.26", 6 },
+ { "I021_v0_25", "Version 0.25", 7 },
+ { "I021_v0_24", "Version 0.24", 8 },
+ { "I021_v0_23", "Version 0.23", 9 },
+ { NULL, NULL, 0 }
+};
+
+DIAG_OFF_PEDANTIC
+static const AsterixField ***I023all[] = { I023, I023_V1_3, I023_V1_2 };
+DIAG_ON_PEDANTIC
+
+static const enum_val_t I023_versions[] = {
+ { "I023", "Version 1.3 (latest)", 0 },
+ { "I023_v1_3", "Version 1.3", 1 },
+ { "I023_v1_2", "Version 1.2", 2 },
+ { NULL, NULL, 0 }
+};
+
+DIAG_OFF_PEDANTIC
+static const AsterixField ***I025all[] = { I025, I025_V1_5 };
+DIAG_ON_PEDANTIC
+
+static const enum_val_t I025_versions[] = {
+ { "I025", "Version 1.5 (latest)", 0 },
+ { "I025_v1_5", "Version 1.5", 1 },
+ { NULL, NULL, 0 }
+};
+
+DIAG_OFF_PEDANTIC
+static const AsterixField ***I032all[] = { I032, I032_V1_1 };
+DIAG_ON_PEDANTIC
+
+static const enum_val_t I032_versions[] = {
+ { "I032", "Version 1.1 (latest)", 0 },
+ { "I032_v1_1", "Version 1.1", 1 },
+ { NULL, NULL, 0 }
+};
+
+DIAG_OFF_PEDANTIC
+static const AsterixField ***I034all[] = { I034, I034_V1_29, I034_V1_28, I034_V1_27 };
+DIAG_ON_PEDANTIC
+
+static const enum_val_t I034_versions[] = {
+ { "I034", "Version 1.29 (latest)", 0 },
+ { "I034_v1_29", "Version 1.29", 1 },
+ { "I034_v1_28", "Version 1.28", 2 },
+ { "I034_v1_27", "Version 1.27", 3 },
+ { NULL, NULL, 0 }
+};
+
+DIAG_OFF_PEDANTIC
+static const AsterixField ***I048all[] = { I048, I048_V1_31, I048_V1_30, I048_V1_29, I048_V1_28, I048_V1_27 };
+DIAG_ON_PEDANTIC
+
+static const enum_val_t I048_versions[] = {
+ { "I048", "Version 1.31 (latest)", 0 },
+ { "I048_v1_31", "Version 1.31", 1 },
+ { "I048_v1_30", "Version 1.30", 2 },
+ { "I048_v1_29", "Version 1.29", 3 },
+ { "I048_v1_28", "Version 1.28", 4 },
+ { "I048_v1_27", "Version 1.27", 5 },
+ { NULL, NULL, 0 }
+};
+
+DIAG_OFF_PEDANTIC
+static const AsterixField ***I062all[] = { I062, I062_V1_19, I062_V1_18, I062_V1_17 };
+DIAG_ON_PEDANTIC
+
+static const enum_val_t I062_versions[] = {
+ { "I062", "Version 1.19 (latest)", 0 },
+ { "I062_v1_19", "Version 1.19", 1 },
+ { "I062_v1_18", "Version 1.18", 2 },
+ { "I062_v1_17", "Version 1.17", 3 },
+ { NULL, NULL, 0 }
+};
+
+DIAG_OFF_PEDANTIC
+static const AsterixField ***I063all[] = { I063, I063_V1_6 };
+DIAG_ON_PEDANTIC
+
+static const enum_val_t I063_versions[] = {
+ { "I063", "Version 1.6 (latest)", 0 },
+ { "I063_v1_6", "Version 1.6", 1 },
+ { NULL, NULL, 0 }
+};
+
+DIAG_OFF_PEDANTIC
+static const AsterixField ***I065all[] = { I065, I065_V1_6, I065_V1_5, I065_V1_4 };
+DIAG_ON_PEDANTIC
+
+static const enum_val_t I065_versions[] = {
+ { "I065", "Version 1.6 (latest)", 0 },
+ { "I065_v1_6", "Version 1.6", 1 },
+ { "I065_v1_5", "Version 1.5", 2 },
+ { "I065_v1_4", "Version 1.4", 3 },
+ { NULL, NULL, 0 }
+};
+
+DIAG_OFF_PEDANTIC
+static const AsterixField ***I240all[] = { I240, I240_V1_3 };
+DIAG_ON_PEDANTIC
+
+static const enum_val_t I240_versions[] = {
+ { "I240", "Version 1.3 (latest)", 0 },
+ { "I240_v1_3", "Version 1.3", 1 },
+ { NULL, NULL, 0 }
+};
+
+DIAG_OFF_PEDANTIC
+static const AsterixField ***I247all[] = { I247, I247_V1_3, I247_V1_2 };
+DIAG_ON_PEDANTIC
+
+static const enum_val_t I247_versions[] = {
+ { "I247", "Version 1.3 (latest)", 0 },
+ { "I247_v1_3", "Version 1.3", 1 },
+ { "I247_v1_2", "Version 1.2", 2 },
+ { NULL, NULL, 0 }
+};
+
+static const AsterixField ****categories[] = {
+ NULL, /* 000 */
+ I001all, /* 001 */
+ I002all, /* 002 */
+ NULL, /* 003 */
+ I004all, /* 004 */
+ NULL, /* 005 */
+ NULL, /* 006 */
+ NULL, /* 007 */
+ I008all, /* 008 */
+ I009all, /* 009 */
+ I010all, /* 010 */
+ I011all, /* 011 */
+ NULL, /* 012 */
+ NULL, /* 013 */
+ NULL, /* 014 */
+ I015all, /* 015 */
+ I016all, /* 016 */
+ NULL, /* 017 */
+ I018all, /* 018 */
+ I019all, /* 019 */
+ I020all, /* 020 */
+ I021all, /* 021 */
+ NULL, /* 022 */
+ I023all, /* 023 */
+ NULL, /* 024 */
+ I025all, /* 025 */
+ NULL, /* 026 */
+ NULL, /* 027 */
+ NULL, /* 028 */
+ NULL, /* 029 */
+ NULL, /* 030 */
+ NULL, /* 031 */
+ I032all, /* 032 */
+ NULL, /* 033 */
+ I034all, /* 034 */
+ NULL, /* 035 */
+ NULL, /* 036 */
+ NULL, /* 037 */
+ NULL, /* 038 */
+ NULL, /* 039 */
+ NULL, /* 040 */
+ NULL, /* 041 */
+ NULL, /* 042 */
+ NULL, /* 043 */
+ NULL, /* 044 */
+ NULL, /* 045 */
+ NULL, /* 046 */
+ NULL, /* 047 */
+ I048all, /* 048 */
+ NULL, /* 049 */
+ NULL, /* 050 */
+ NULL, /* 051 */
+ NULL, /* 052 */
+ NULL, /* 053 */
+ NULL, /* 054 */
+ NULL, /* 055 */
+ NULL, /* 056 */
+ NULL, /* 057 */
+ NULL, /* 058 */
+ NULL, /* 059 */
+ NULL, /* 060 */
+ NULL, /* 061 */
+ I062all, /* 062 */
+ I063all, /* 063 */
+ NULL, /* 064 */
+ I065all, /* 065 */
+ NULL, /* 066 */
+ NULL, /* 067 */
+ NULL, /* 068 */
+ NULL, /* 069 */
+ NULL, /* 070 */
+ NULL, /* 071 */
+ NULL, /* 072 */
+ NULL, /* 073 */
+ NULL, /* 074 */
+ NULL, /* 075 */
+ NULL, /* 076 */
+ NULL, /* 077 */
+ NULL, /* 078 */
+ NULL, /* 079 */
+ NULL, /* 080 */
+ NULL, /* 081 */
+ NULL, /* 082 */
+ NULL, /* 083 */
+ NULL, /* 084 */
+ NULL, /* 085 */
+ NULL, /* 086 */
+ NULL, /* 087 */
+ NULL, /* 088 */
+ NULL, /* 089 */
+ NULL, /* 090 */
+ NULL, /* 091 */
+ NULL, /* 092 */
+ NULL, /* 093 */
+ NULL, /* 094 */
+ NULL, /* 095 */
+ NULL, /* 096 */
+ NULL, /* 097 */
+ NULL, /* 098 */
+ NULL, /* 099 */
+ NULL, /* 100 */
+ NULL, /* 101 */
+ NULL, /* 102 */
+ NULL, /* 103 */
+ NULL, /* 104 */
+ NULL, /* 105 */
+ NULL, /* 106 */
+ NULL, /* 107 */
+ NULL, /* 108 */
+ NULL, /* 109 */
+ NULL, /* 110 */
+ NULL, /* 111 */
+ NULL, /* 112 */
+ NULL, /* 113 */
+ NULL, /* 114 */
+ NULL, /* 115 */
+ NULL, /* 116 */
+ NULL, /* 117 */
+ NULL, /* 118 */
+ NULL, /* 119 */
+ NULL, /* 120 */
+ NULL, /* 121 */
+ NULL, /* 122 */
+ NULL, /* 123 */
+ NULL, /* 124 */
+ NULL, /* 125 */
+ NULL, /* 126 */
+ NULL, /* 127 */
+ NULL, /* 128 */
+ NULL, /* 129 */
+ NULL, /* 130 */
+ NULL, /* 131 */
+ NULL, /* 132 */
+ NULL, /* 133 */
+ NULL, /* 134 */
+ NULL, /* 135 */
+ NULL, /* 136 */
+ NULL, /* 137 */
+ NULL, /* 138 */
+ NULL, /* 139 */
+ NULL, /* 140 */
+ NULL, /* 141 */
+ NULL, /* 142 */
+ NULL, /* 143 */
+ NULL, /* 144 */
+ NULL, /* 145 */
+ NULL, /* 146 */
+ NULL, /* 147 */
+ NULL, /* 148 */
+ NULL, /* 149 */
+ NULL, /* 150 */
+ NULL, /* 151 */
+ NULL, /* 152 */
+ NULL, /* 153 */
+ NULL, /* 154 */
+ NULL, /* 155 */
+ NULL, /* 156 */
+ NULL, /* 157 */
+ NULL, /* 158 */
+ NULL, /* 159 */
+ NULL, /* 160 */
+ NULL, /* 161 */
+ NULL, /* 162 */
+ NULL, /* 163 */
+ NULL, /* 164 */
+ NULL, /* 165 */
+ NULL, /* 166 */
+ NULL, /* 167 */
+ NULL, /* 168 */
+ NULL, /* 169 */
+ NULL, /* 170 */
+ NULL, /* 171 */
+ NULL, /* 172 */
+ NULL, /* 173 */
+ NULL, /* 174 */
+ NULL, /* 175 */
+ NULL, /* 176 */
+ NULL, /* 177 */
+ NULL, /* 178 */
+ NULL, /* 179 */
+ NULL, /* 180 */
+ NULL, /* 181 */
+ NULL, /* 182 */
+ NULL, /* 183 */
+ NULL, /* 184 */
+ NULL, /* 185 */
+ NULL, /* 186 */
+ NULL, /* 187 */
+ NULL, /* 188 */
+ NULL, /* 189 */
+ NULL, /* 190 */
+ NULL, /* 191 */
+ NULL, /* 192 */
+ NULL, /* 193 */
+ NULL, /* 194 */
+ NULL, /* 195 */
+ NULL, /* 196 */
+ NULL, /* 197 */
+ NULL, /* 198 */
+ NULL, /* 199 */
+ NULL, /* 200 */
+ NULL, /* 201 */
+ NULL, /* 202 */
+ NULL, /* 203 */
+ NULL, /* 204 */
+ NULL, /* 205 */
+ NULL, /* 206 */
+ NULL, /* 207 */
+ NULL, /* 208 */
+ NULL, /* 209 */
+ NULL, /* 210 */
+ NULL, /* 211 */
+ NULL, /* 212 */
+ NULL, /* 213 */
+ NULL, /* 214 */
+ NULL, /* 215 */
+ NULL, /* 216 */
+ NULL, /* 217 */
+ NULL, /* 218 */
+ NULL, /* 219 */
+ NULL, /* 220 */
+ NULL, /* 221 */
+ NULL, /* 222 */
+ NULL, /* 223 */
+ NULL, /* 224 */
+ NULL, /* 225 */
+ NULL, /* 226 */
+ NULL, /* 227 */
+ NULL, /* 228 */
+ NULL, /* 229 */
+ NULL, /* 230 */
+ NULL, /* 231 */
+ NULL, /* 232 */
+ NULL, /* 233 */
+ NULL, /* 234 */
+ NULL, /* 235 */
+ NULL, /* 236 */
+ NULL, /* 237 */
+ NULL, /* 238 */
+ NULL, /* 239 */
+ I240all, /* 240 */
+ NULL, /* 241 */
+ NULL, /* 242 */
+ NULL, /* 243 */
+ NULL, /* 244 */
+ NULL, /* 245 */
+ NULL, /* 246 */
+ I247all, /* 247 */
+ NULL, /* 248 */
+ NULL, /* 249 */
+ NULL, /* 250 */
+ NULL, /* 251 */
+ NULL, /* 252 */
+ NULL, /* 253 */
+ NULL, /* 254 */
+ NULL, /* 255 */
+ NULL
+};
+/* insert1 */
+
+/* settings which category version to use for each ASTERIX category */
+static int global_categories_version[] = {
+ 0, /* 000 */
+ 0, /* 001 */
+ 0, /* 002 */
+ 0, /* 003 */
+ 0, /* 004 */
+ 0, /* 005 */
+ 0, /* 006 */
+ 0, /* 007 */
+ 0, /* 008 */
+ 0, /* 009 */
+ 0, /* 010 */
+ 0, /* 011 */
+ 0, /* 012 */
+ 0, /* 013 */
+ 0, /* 014 */
+ 0, /* 015 */
+ 0, /* 016 */
+ 0, /* 017 */
+ 0, /* 018 */
+ 0, /* 019 */
+ 0, /* 020 */
+ 0, /* 021 */
+ 0, /* 022 */
+ 0, /* 023 */
+ 0, /* 024 */
+ 0, /* 025 */
+ 0, /* 026 */
+ 0, /* 027 */
+ 0, /* 028 */
+ 0, /* 029 */
+ 0, /* 030 */
+ 0, /* 031 */
+ 0, /* 032 */
+ 0, /* 033 */
+ 0, /* 034 */
+ 0, /* 035 */
+ 0, /* 036 */
+ 0, /* 037 */
+ 0, /* 038 */
+ 0, /* 039 */
+ 0, /* 040 */
+ 0, /* 041 */
+ 0, /* 042 */
+ 0, /* 043 */
+ 0, /* 044 */
+ 0, /* 045 */
+ 0, /* 046 */
+ 0, /* 047 */
+ 0, /* 048 */
+ 0, /* 049 */
+ 0, /* 050 */
+ 0, /* 051 */
+ 0, /* 052 */
+ 0, /* 053 */
+ 0, /* 054 */
+ 0, /* 055 */
+ 0, /* 056 */
+ 0, /* 057 */
+ 0, /* 058 */
+ 0, /* 059 */
+ 0, /* 060 */
+ 0, /* 061 */
+ 0, /* 062 */
+ 0, /* 063 */
+ 0, /* 064 */
+ 0, /* 065 */
+ 0, /* 066 */
+ 0, /* 067 */
+ 0, /* 068 */
+ 0, /* 069 */
+ 0, /* 070 */
+ 0, /* 071 */
+ 0, /* 072 */
+ 0, /* 073 */
+ 0, /* 074 */
+ 0, /* 075 */
+ 0, /* 076 */
+ 0, /* 077 */
+ 0, /* 078 */
+ 0, /* 079 */
+ 0, /* 080 */
+ 0, /* 081 */
+ 0, /* 082 */
+ 0, /* 083 */
+ 0, /* 084 */
+ 0, /* 085 */
+ 0, /* 086 */
+ 0, /* 087 */
+ 0, /* 088 */
+ 0, /* 089 */
+ 0, /* 090 */
+ 0, /* 091 */
+ 0, /* 092 */
+ 0, /* 093 */
+ 0, /* 094 */
+ 0, /* 095 */
+ 0, /* 096 */
+ 0, /* 097 */
+ 0, /* 098 */
+ 0, /* 099 */
+ 0, /* 100 */
+ 0, /* 101 */
+ 0, /* 102 */
+ 0, /* 103 */
+ 0, /* 104 */
+ 0, /* 105 */
+ 0, /* 106 */
+ 0, /* 107 */
+ 0, /* 108 */
+ 0, /* 109 */
+ 0, /* 110 */
+ 0, /* 111 */
+ 0, /* 112 */
+ 0, /* 113 */
+ 0, /* 114 */
+ 0, /* 115 */
+ 0, /* 116 */
+ 0, /* 117 */
+ 0, /* 118 */
+ 0, /* 119 */
+ 0, /* 120 */
+ 0, /* 121 */
+ 0, /* 122 */
+ 0, /* 123 */
+ 0, /* 124 */
+ 0, /* 125 */
+ 0, /* 126 */
+ 0, /* 127 */
+ 0, /* 128 */
+ 0, /* 129 */
+ 0, /* 130 */
+ 0, /* 131 */
+ 0, /* 132 */
+ 0, /* 133 */
+ 0, /* 134 */
+ 0, /* 135 */
+ 0, /* 136 */
+ 0, /* 137 */
+ 0, /* 138 */
+ 0, /* 139 */
+ 0, /* 140 */
+ 0, /* 141 */
+ 0, /* 142 */
+ 0, /* 143 */
+ 0, /* 144 */
+ 0, /* 145 */
+ 0, /* 146 */
+ 0, /* 147 */
+ 0, /* 148 */
+ 0, /* 149 */
+ 0, /* 150 */
+ 0, /* 151 */
+ 0, /* 152 */
+ 0, /* 153 */
+ 0, /* 154 */
+ 0, /* 155 */
+ 0, /* 156 */
+ 0, /* 157 */
+ 0, /* 158 */
+ 0, /* 159 */
+ 0, /* 160 */
+ 0, /* 161 */
+ 0, /* 162 */
+ 0, /* 163 */
+ 0, /* 164 */
+ 0, /* 165 */
+ 0, /* 166 */
+ 0, /* 167 */
+ 0, /* 168 */
+ 0, /* 169 */
+ 0, /* 170 */
+ 0, /* 171 */
+ 0, /* 172 */
+ 0, /* 173 */
+ 0, /* 174 */
+ 0, /* 175 */
+ 0, /* 176 */
+ 0, /* 177 */
+ 0, /* 178 */
+ 0, /* 179 */
+ 0, /* 180 */
+ 0, /* 181 */
+ 0, /* 182 */
+ 0, /* 183 */
+ 0, /* 184 */
+ 0, /* 185 */
+ 0, /* 186 */
+ 0, /* 187 */
+ 0, /* 188 */
+ 0, /* 189 */
+ 0, /* 190 */
+ 0, /* 191 */
+ 0, /* 192 */
+ 0, /* 193 */
+ 0, /* 194 */
+ 0, /* 195 */
+ 0, /* 196 */
+ 0, /* 197 */
+ 0, /* 198 */
+ 0, /* 199 */
+ 0, /* 200 */
+ 0, /* 201 */
+ 0, /* 202 */
+ 0, /* 203 */
+ 0, /* 204 */
+ 0, /* 205 */
+ 0, /* 206 */
+ 0, /* 207 */
+ 0, /* 208 */
+ 0, /* 209 */
+ 0, /* 210 */
+ 0, /* 211 */
+ 0, /* 212 */
+ 0, /* 213 */
+ 0, /* 214 */
+ 0, /* 215 */
+ 0, /* 216 */
+ 0, /* 217 */
+ 0, /* 218 */
+ 0, /* 219 */
+ 0, /* 220 */
+ 0, /* 221 */
+ 0, /* 222 */
+ 0, /* 223 */
+ 0, /* 224 */
+ 0, /* 225 */
+ 0, /* 226 */
+ 0, /* 227 */
+ 0, /* 228 */
+ 0, /* 229 */
+ 0, /* 230 */
+ 0, /* 231 */
+ 0, /* 232 */
+ 0, /* 233 */
+ 0, /* 234 */
+ 0, /* 235 */
+ 0, /* 236 */
+ 0, /* 237 */
+ 0, /* 238 */
+ 0, /* 239 */
+ 0, /* 240 */
+ 0, /* 241 */
+ 0, /* 242 */
+ 0, /* 243 */
+ 0, /* 244 */
+ 0, /* 245 */
+ 0, /* 246 */
+ 0, /* 247 */
+ 0, /* 248 */
+ 0, /* 249 */
+ 0, /* 250 */
+ 0, /* 251 */
+ 0, /* 252 */
+ 0, /* 253 */
+ 0, /* 254 */
+ 0 /* 255 */
+};
+
+static int dissect_asterix (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U_)
+{
+ col_set_str (pinfo->cinfo, COL_PROTOCOL, "ASTERIX");
+ col_clear (pinfo->cinfo, COL_INFO);
+
+ if (tree) { /* we are being asked for details */
+ dissect_asterix_packet (tvb, pinfo, tree);
+ }
+
+ return tvb_captured_length(tvb);
+}
+
+static void dissect_asterix_packet (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+{
+ unsigned i;
+ uint8_t category;
+ uint16_t length;
+ proto_item *asterix_packet_item;
+ proto_tree *asterix_packet_tree;
+
+ for (i = 0; i < tvb_reported_length (tvb); i += length + 3) {
+ /* all ASTERIX messages have the same structure:
+ *
+ * header:
+ *
+ * 1 byte category even though a category is referenced as I019,
+ * this is just stored as decimal 19 (i.e. 0x13)
+ * 2 bytes length the total length of this ASTERIX message, the
+ * length includes the size of the header.
+ *
+ * Note that the there was a structural change at
+ * one point that changes whether multiple
+ * records can occur after the header or not
+ * (each category specifies this explicitly. All
+ * of the currently supported categories can have
+ * multiple records so this implementation just
+ * assumes that is always the case)
+ *
+ * record (multiple records can exists):
+ *
+ * n bytes FSPEC the field specifier is a bit mask where the
+ * lowest bit of each byte is called the FX bit.
+ * When the FX bit is set this indicates that
+ * the FSPEC extends into the next byte.
+ * Any other bit indicates the presence of the
+ * field that owns that bit (as per the User
+ * Application Profile (UAP)).
+ * X bytes Field Y X is as per the specification for field Y.
+ * etc.
+ *
+ * The User Application Profile (UAP) is simply a mapping from the
+ * FSPEC to fields. Each category has its own UAP.
+ */
+ category = tvb_get_guint8 (tvb, i);
+ length = (tvb_get_guint8 (tvb, i + 1) << 8) + tvb_get_guint8 (tvb, i + 2) - 3; /* -3 for category and length */
+
+ asterix_packet_item = proto_tree_add_item (tree, proto_asterix, tvb, i, length + 3, ENC_NA);
+ proto_item_append_text (asterix_packet_item, ", Category %03d", category);
+ asterix_packet_tree = proto_item_add_subtree (asterix_packet_item, ett_asterix);
+ proto_tree_add_item (asterix_packet_tree, hf_asterix_category, tvb, i, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item (asterix_packet_tree, hf_asterix_length, tvb, i + 1, 2, ENC_BIG_ENDIAN);
+
+ dissect_asterix_data_block (tvb, pinfo, i + 3, asterix_packet_tree, category, length);
+ }
+}
+
+static void dissect_asterix_data_block (tvbuff_t *tvb, packet_info *pinfo, unsigned offset, proto_tree *tree, uint8_t category, int length)
+{
+ uint8_t active_uap;
+ int fspec_len, inner_offset, size, counter;
+ proto_item *asterix_message_item = NULL;
+ proto_tree *asterix_message_tree = NULL;
+
+ for (counter = 1, inner_offset = 0; inner_offset < length; counter++) {
+
+ /* This loop handles parsing of each ASTERIX record */
+
+ active_uap = asterix_get_active_uap (tvb, offset + inner_offset, category);
+ size = asterix_message_length (tvb, offset + inner_offset, category, active_uap);
+ if (size > 0) {
+ asterix_message_item = proto_tree_add_item (tree, hf_asterix_message, tvb, offset + inner_offset, size, ENC_NA);
+ proto_item_append_text (asterix_message_item, ", #%02d, length: %d", counter, size);
+ asterix_message_tree = proto_item_add_subtree (asterix_message_item, ett_asterix_message);
+ fspec_len = asterix_fspec_len (tvb, offset + inner_offset);
+ /*show_fspec (tvb, asterix_message_tree, offset + inner_offset, fspec_len);*/
+ proto_tree_add_item (asterix_message_tree, hf_asterix_fspec, tvb, offset + inner_offset, fspec_len, ENC_NA);
+
+ size = dissect_asterix_fields (tvb, pinfo, offset + inner_offset, asterix_message_tree, category, categories[category][global_categories_version[category]][active_uap]);
+
+ inner_offset += size + fspec_len;
+ }
+ else {
+ inner_offset = length;
+ }
+ }
+}
+
+static int dissect_asterix_fields (tvbuff_t *tvb, packet_info *pinfo, unsigned offset, proto_tree *tree, uint8_t category, const AsterixField *current_uap[])
+{
+ unsigned i, j, size, start, len, inner_offset, fspec_len;
+ uint64_t counter;
+ proto_item *asterix_field_item = NULL;
+ proto_tree *asterix_field_tree = NULL;
+ proto_item *asterix_field_item2 = NULL;
+ proto_tree *asterix_field_tree2 = NULL;
+
+ if (current_uap == NULL)
+ return 0;
+
+ for (i = 0, size = 0; current_uap[i] != NULL; i++) {
+ start = asterix_field_offset (tvb, offset, current_uap, i);
+ if (start > 0) {
+ len = asterix_field_length (tvb, offset + start, current_uap[i]);
+ size += len;
+ switch(current_uap[i]->type) {
+ case COMPOUND:
+ asterix_field_item = proto_tree_add_item (tree, *current_uap[i]->hf, tvb, offset + start, len, ENC_NA);
+ asterix_field_tree = proto_item_add_subtree (asterix_field_item, ett_asterix_subtree);
+ fspec_len = asterix_fspec_len (tvb, offset + start);
+ proto_tree_add_item (asterix_field_tree, hf_asterix_fspec, tvb, offset + start, fspec_len, ENC_NA);
+ dissect_asterix_fields (tvb, pinfo, offset + start, asterix_field_tree, category, (const AsterixField **)current_uap[i]->field);
+ break;
+ case REPETITIVE:
+ asterix_field_item = proto_tree_add_item (tree, *current_uap[i]->hf, tvb, offset + start, len, ENC_NA);
+ asterix_field_tree = proto_item_add_subtree (asterix_field_item, ett_asterix_subtree);
+ for (j = 0, counter = 0; j < current_uap[i]->repetition_counter_size; j++) {
+ counter = (counter << 8) + tvb_get_guint8 (tvb, offset + start + j);
+ }
+ proto_tree_add_item (asterix_field_tree, hf_counter, tvb, offset + start, current_uap[i]->repetition_counter_size, ENC_BIG_ENDIAN);
+ for (j = 0, inner_offset = 0; j < counter; j++, inner_offset += current_uap[i]->length) {
+ asterix_field_item2 = proto_tree_add_item (asterix_field_tree, *current_uap[i]->hf, tvb, offset + start + current_uap[i]->repetition_counter_size + inner_offset, current_uap[i]->length, ENC_NA);
+ asterix_field_tree2 = proto_item_add_subtree (asterix_field_item2, ett_asterix_subtree);
+ asterix_build_subtree (tvb, pinfo, offset + start + current_uap[i]->repetition_counter_size + inner_offset, asterix_field_tree2, current_uap[i]);
+ }
+ break;
+ /* currently not generated from asterix-spec*/
+ /*case EXP:
+ asterix_field_item = proto_tree_add_item (tree, *current_uap[i]->hf, tvb, offset + start, len, ENC_NA);
+ asterix_field_tree = proto_item_add_subtree (asterix_field_item, ett_asterix_subtree);
+ proto_tree_add_item (asterix_field_tree, hf_re_field_len, tvb, offset + start, 1, ENC_BIG_ENDIAN);
+ start++;
+ fspec_len = asterix_fspec_len (tvb, offset + start);
+ proto_tree_add_item (asterix_field_tree, hf_asterix_fspec, tvb, offset + start, fspec_len, ENC_NA);
+ dissect_asterix_fields (tvb, pinfo, offset + start, asterix_field_tree, category, (const AsterixField **)current_uap[i]->field);
+ break;*/
+ default: /* FIXED, FX, FX_1, FX_UAP */
+ asterix_field_item = proto_tree_add_item (tree, *current_uap[i]->hf, tvb, offset + start, len, ENC_NA);
+ asterix_field_tree = proto_item_add_subtree (asterix_field_item, ett_asterix_subtree);
+ asterix_build_subtree (tvb, pinfo, offset + start, asterix_field_tree, current_uap[i]);
+ break;
+ }
+ }
+ }
+ return size;
+}
+
+static void asterix_build_subtree (tvbuff_t *tvb, packet_info *pinfo, unsigned offset, proto_tree *parent, const AsterixField *field)
+{
+ header_field_info* hfi;
+ int bytes_in_type, byte_offset_of_mask;
+ int i, inner_offset, offset_in_tvb, length_in_tvb;
+ uint8_t go_on;
+ int64_t value;
+ char *str_buffer = NULL;
+ double scaling_factor = 1.0;
+ uint8_t *air_speed_im_bit;
+ if (field->part != NULL) {
+ for (i = 0, inner_offset = 0, go_on = 1; go_on && field->part[i] != NULL; i++) {
+ value = tvb_get_bits64 (tvb, offset * 8 + inner_offset, field->part[i]->bit_length, ENC_BIG_ENDIAN);
+ if (field->part[i]->hf != NULL) {
+ offset_in_tvb = offset + inner_offset / 8;
+ length_in_tvb = (inner_offset % 8 + field->part[i]->bit_length + 7) / 8;
+ switch (field->part[i]->type) {
+ case FIELD_PART_FX:
+ if (!value) go_on = 0;
+ /* Fall through */
+ case FIELD_PART_INT:
+ case FIELD_PART_UINT:
+ case FIELD_PART_HEX:
+ case FIELD_PART_ASCII:
+ case FIELD_PART_SQUAWK:
+ hfi = proto_registrar_get_nth (*field->part[i]->hf);
+ if (hfi->bitmask)
+ {
+ // for a small bit field to decode correctly with
+ // a mask that belongs to a large(r) one we need to
+ // re-adjust offset_in_tvb and length_in_tvb to
+ // correctly align with the given hf mask.
+ //
+ // E.g. the following would not decode correctly:
+ // { &hf_020_050_V, ... FT_UINT16, ... 0x8000, ...
+ // instead one would have to use
+ // { &hf_020_050_V, ... FT_UINT8, ... 0x80, ...
+ //
+ bytes_in_type = ftype_wire_size(hfi->type);
+ if (bytes_in_type > 1)
+ {
+ byte_offset_of_mask = bytes_in_type - (ws_ilog2 (hfi->bitmask) + 8)/8;
+ if (byte_offset_of_mask >= 0)
+ {
+ offset_in_tvb -= byte_offset_of_mask;
+ length_in_tvb = bytes_in_type;
+ }
+ }
+ }
+ proto_tree_add_item (parent, *field->part[i]->hf, tvb, offset_in_tvb, length_in_tvb, ENC_BIG_ENDIAN);
+ break;
+ case FIELD_PART_FLOAT:
+ twos_complement (&value, field->part[i]->bit_length);
+ /* Fall through */
+ case FIELD_PART_UFLOAT:
+ scaling_factor = field->part[i]->scaling_factor;
+ if (field->part[i]->format_string != NULL)
+ proto_tree_add_double_format_value (parent, *field->part[i]->hf, tvb, offset_in_tvb, length_in_tvb, value * scaling_factor, field->part[i]->format_string, value * scaling_factor);
+ else
+ proto_tree_add_double (parent, *field->part[i]->hf, tvb, offset_in_tvb, length_in_tvb, value * scaling_factor);
+ break;
+ case FIELD_PART_CALLSIGN:
+ str_buffer = wmem_strdup_printf(
+ pinfo->pool,
+ "%c%c%c%c%c%c%c%c",
+ AISCode[(value >> 42) & 63],
+ AISCode[(value >> 36) & 63],
+ AISCode[(value >> 30) & 63],
+ AISCode[(value >> 24) & 63],
+ AISCode[(value >> 18) & 63],
+ AISCode[(value >> 12) & 63],
+ AISCode[(value >> 6) & 63],
+ AISCode[value & 63]);
+ proto_tree_add_string (parent, *field->part[i]->hf, tvb, offset_in_tvb, length_in_tvb, str_buffer);
+ break;
+ case FIELD_PART_IAS_IM:
+ /* special processing for I021/150 and I062/380#4 because Air Speed depends on IM subfield */
+ air_speed_im_bit = wmem_new (pinfo->pool, uint8_t);
+ *air_speed_im_bit = (tvb_get_guint8 (tvb, offset_in_tvb) & 0x80) >> 7;
+ /* Save IM info for the packet. key = 21150. */
+ p_add_proto_data (pinfo->pool, pinfo, proto_asterix, 21150, air_speed_im_bit);
+ proto_tree_add_item (parent, *field->part[i]->hf, tvb, offset_in_tvb, length_in_tvb, ENC_BIG_ENDIAN);
+ break;
+ case FIELD_PART_IAS_ASPD:
+ /* special processing for I021/150 and I062/380#4 because Air Speed depends on IM subfield */
+ air_speed_im_bit = (uint8_t *)p_get_proto_data (pinfo->pool, pinfo, proto_asterix, 21150);
+ if (!air_speed_im_bit || *air_speed_im_bit == 0)
+ scaling_factor = 1.0/16384.0;
+ else
+ scaling_factor = 0.001;
+ proto_tree_add_double (parent, *field->part[i]->hf, tvb, offset_in_tvb, length_in_tvb, value * scaling_factor);
+ break;
+ }
+ }
+ inner_offset += field->part[i]->bit_length;
+ }
+ } /* if not null */
+}
+
+static uint8_t asterix_bit (uint8_t b, uint8_t bitNo)
+{
+ return bitNo < 8 && (b & (0x80 >> bitNo)) > 0;
+}
+
+/* Function makes int64_t two's complement.
+ * Only the bit_len bit are set in int64_t. All more significant
+ * bits need to be set to have proper two's complement.
+ * If the number is negative, all other bits must be set to 1.
+ * If the number is positive, all other bits must remain 0. */
+static void twos_complement (int64_t *v, int bit_len)
+{
+ if (*v & (G_GUINT64_CONSTANT(1) << (bit_len - 1))) {
+ *v |= (G_GUINT64_CONSTANT(0xffffffffffffffff) << bit_len);
+ }
+}
+
+static unsigned asterix_fspec_len (tvbuff_t *tvb, unsigned offset)
+{
+ unsigned i;
+ unsigned max_length = tvb_reported_length (tvb) - offset;
+ for (i = 0; (tvb_get_guint8 (tvb, offset + i) & 1) && i < max_length; i++);
+ return i + 1;
+}
+
+static uint8_t asterix_field_exists (tvbuff_t *tvb, unsigned offset, int bitIndex)
+{
+ uint8_t bitNo, i;
+ bitNo = bitIndex + bitIndex / 7;
+ for (i = 0; i < bitNo / 8; i++) {
+ if (!(tvb_get_guint8 (tvb, offset + i) & 1)) return 0;
+ }
+ return asterix_bit (tvb_get_guint8 (tvb, offset + i), bitNo % 8);
+}
+
+static int asterix_field_length (tvbuff_t *tvb, unsigned offset, const AsterixField *field)
+{
+ unsigned size;
+ uint64_t count;
+ uint8_t i;
+
+ size = 0;
+ switch(field->type) {
+ case FIXED:
+ size = field->length;
+ break;
+ case REPETITIVE:
+ for (i = 0, count = 0; i < field->repetition_counter_size && i < sizeof (count); i++)
+ count = (count << 8) + tvb_get_guint8 (tvb, offset + i);
+ size = (unsigned)(field->repetition_counter_size + count * field->length);
+ break;
+ case FX:
+ for (size = field->length + field->header_length; tvb_get_guint8 (tvb, offset + size - 1) & 1; size += field->length);
+ break;
+ case EXP:
+ for (i = 0, size = 0; i < field->header_length; i++) {
+ size = (size << 8) + tvb_get_guint8 (tvb, offset + i);
+ }
+ break;
+ case COMPOUND:
+ /* FSPEC */
+ for (size = 0; tvb_get_guint8 (tvb, offset + size) & 1; size++);
+ size++;
+
+ for (i = 0; field->field[i] != NULL; i++) {
+ if (asterix_field_exists (tvb, offset, i))
+ size += asterix_field_length (tvb, offset + size, field->field[i]);
+ }
+ break;
+ }
+ return size;
+}
+
+/* This works for category 001. For other it may require changes. */
+static uint8_t asterix_get_active_uap (tvbuff_t *tvb, unsigned offset, uint8_t category)
+{
+ int i, inner_offset;
+ AsterixField **current_uap;
+
+ if ((category == 1) && (categories[category] != NULL)) { /* if category is supported */
+ if (categories[category][global_categories_version[category]][1] != NULL) { /* if exists another uap */
+ current_uap = (AsterixField **)categories[category][global_categories_version[category]][0];
+ if (current_uap != NULL) {
+ inner_offset = asterix_fspec_len (tvb, offset);
+ for (i = 0; current_uap[i] != NULL; i++) {
+ if (asterix_field_exists (tvb, offset, i)) {
+ if (i == 1) { /* uap selector (I001/020) is always at index '1' */
+ return tvb_get_guint8 (tvb, offset + inner_offset) >> 7;
+ }
+ inner_offset += asterix_field_length (tvb, offset + inner_offset, current_uap[i]);
+ }
+ }
+ }
+ }
+ }
+ return 0;
+}
+
+static int asterix_field_offset (tvbuff_t *tvb, unsigned offset, const AsterixField *current_uap[], int field_index)
+{
+ int i, inner_offset;
+ inner_offset = 0;
+ if (asterix_field_exists (tvb, offset, field_index)) {
+ inner_offset = asterix_fspec_len (tvb, offset);
+ for (i = 0; i < field_index; i++) {
+ if (asterix_field_exists (tvb, offset, i))
+ inner_offset += asterix_field_length (tvb, offset + inner_offset, current_uap[i]);
+ }
+ }
+ return inner_offset;
+}
+
+static int asterix_message_length (tvbuff_t *tvb, unsigned offset, uint8_t category, uint8_t active_uap)
+{
+ int i, size;
+ AsterixField **current_uap;
+
+ if (categories[category] != NULL) { /* if category is supported */
+ current_uap = (AsterixField **)categories[category][global_categories_version[category]][active_uap];
+ if (current_uap != NULL) {
+ size = asterix_fspec_len (tvb, offset);
+ for (i = 0; current_uap[i] != NULL; i++) {
+ if (asterix_field_exists (tvb, offset, i)) {
+ size += asterix_field_length (tvb, offset + size, current_uap[i]);
+ }
+ }
+ return size;
+ }
+ }
+ return 0;
+}
+
+void proto_register_asterix (void)
+{
+ static hf_register_info hf[] = {
+ { &hf_asterix_category, { "Category", "asterix.category", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL } },
+ { &hf_asterix_length, { "Length", "asterix.length", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL } },
+ { &hf_asterix_message, { "Asterix message", "asterix.message", FT_NONE, BASE_NONE, NULL, 0x0, NULL, HFILL } },
+ { &hf_asterix_fspec, { "FSPEC", "asterix.fspec", FT_NONE, BASE_NONE, NULL, 0x0, NULL, HFILL } },
+ { &hf_re_field_len, { "RE LEN", "asterix.re_field_len", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL } },
+ { &hf_spare, { "Spare", "asterix.spare", FT_NONE, BASE_NONE, NULL, 0x0, NULL, HFILL } },
+ { &hf_counter, { "Counter", "asterix.counter", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL } },
+ { &hf_XXX_FX, { "FX", "asterix.FX", FT_UINT8, BASE_DEC, VALS (valstr_XXX_FX), 0x01, "Extension into next extent", HFILL } },
+/* insert2 */
+ { &hf_001_V1_2_010, { "010, Data Source Identifier", "asterix.001_V1_2_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_010_SAC, { "SAC, System Area Code", "asterix.001_V1_2_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_010_SIC, { "SIC, System Identification Code", "asterix.001_V1_2_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_020, { "020, Target Report Descriptor", "asterix.001_V1_2_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_020_TYP, { "TYP", "asterix.001_V1_2_020_TYP", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_020_TYP), 0x80, NULL, HFILL } },
+ { &hf_001_V1_2_020_SIM, { "SIM", "asterix.001_V1_2_020_SIM", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_020_SIM), 0x40, NULL, HFILL } },
+ { &hf_001_V1_2_020_SSRPSR, { "SSRPSR, Radar Detection in Last Antenna Scan", "asterix.001_V1_2_020_SSRPSR", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_020_SSRPSR), 0x30, NULL, HFILL } },
+ { &hf_001_V1_2_020_ANT, { "ANT", "asterix.001_V1_2_020_ANT", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_020_ANT), 0x08, NULL, HFILL } },
+ { &hf_001_V1_2_020_SPI, { "SPI", "asterix.001_V1_2_020_SPI", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_020_SPI), 0x04, NULL, HFILL } },
+ { &hf_001_V1_2_020_RAB, { "RAB", "asterix.001_V1_2_020_RAB", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_020_RAB), 0x02, NULL, HFILL } },
+ { &hf_001_V1_2_020_TST, { "TST", "asterix.001_V1_2_020_TST", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_020_TST), 0x80, NULL, HFILL } },
+ { &hf_001_V1_2_020_DS1DS2, { "DS1DS2, Radar Detection in Last Antenna Scan", "asterix.001_V1_2_020_DS1DS2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_020_DS1DS2), 0x60, NULL, HFILL } },
+ { &hf_001_V1_2_020_ME, { "ME", "asterix.001_V1_2_020_ME", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_020_ME), 0x10, NULL, HFILL } },
+ { &hf_001_V1_2_020_MI, { "MI", "asterix.001_V1_2_020_MI", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_020_MI), 0x08, NULL, HFILL } },
+ { &hf_001_V1_2_030, { "030, Warning/Error Conditions", "asterix.001_V1_2_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_030_Subitem, { "Subitem, Subitem", "asterix.001_V1_2_030_Subitem", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_030_Subitem), 0xfe, NULL, HFILL } },
+ { &hf_001_V1_2_040, { "040, Measured Position in Polar Co-ordinates", "asterix.001_V1_2_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_040_RHO, { "RHO, [NM]", "asterix.001_V1_2_040_RHO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_040_THETA, { "THETA, [°]", "asterix.001_V1_2_040_THETA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_042, { "042, Calculated Position in Cartesian Co-ordinates", "asterix.001_V1_2_042", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_042_X, { "X, X-Component, [NM]", "asterix.001_V1_2_042_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_042_Y, { "Y, Y-Component, [NM]", "asterix.001_V1_2_042_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_050, { "050, Mode-2 Code in Octal Representation", "asterix.001_V1_2_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_050_V, { "V", "asterix.001_V1_2_050_V", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_050_V), 0x80, NULL, HFILL } },
+ { &hf_001_V1_2_050_G, { "G", "asterix.001_V1_2_050_G", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_050_G), 0x40, NULL, HFILL } },
+ { &hf_001_V1_2_050_L, { "L", "asterix.001_V1_2_050_L", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_050_L), 0x20, NULL, HFILL } },
+ { &hf_001_V1_2_050_MODE2, { "MODE2, Mode-2 Code in Octal Representation", "asterix.001_V1_2_050_MODE2", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_001_V1_2_060, { "060, Mode-2 Code Confidence Indicator", "asterix.001_V1_2_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_060_QA4, { "QA4", "asterix.001_V1_2_060_QA4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_060_QA4), 0x08, NULL, HFILL } },
+ { &hf_001_V1_2_060_QA2, { "QA2", "asterix.001_V1_2_060_QA2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_060_QA2), 0x04, NULL, HFILL } },
+ { &hf_001_V1_2_060_QA1, { "QA1", "asterix.001_V1_2_060_QA1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_060_QA1), 0x02, NULL, HFILL } },
+ { &hf_001_V1_2_060_QB4, { "QB4", "asterix.001_V1_2_060_QB4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_060_QB4), 0x01, NULL, HFILL } },
+ { &hf_001_V1_2_060_QB2, { "QB2", "asterix.001_V1_2_060_QB2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_060_QB2), 0x80, NULL, HFILL } },
+ { &hf_001_V1_2_060_QB1, { "QB1", "asterix.001_V1_2_060_QB1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_060_QB1), 0x40, NULL, HFILL } },
+ { &hf_001_V1_2_060_QC4, { "QC4", "asterix.001_V1_2_060_QC4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_060_QC4), 0x20, NULL, HFILL } },
+ { &hf_001_V1_2_060_QC2, { "QC2", "asterix.001_V1_2_060_QC2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_060_QC2), 0x10, NULL, HFILL } },
+ { &hf_001_V1_2_060_QC1, { "QC1", "asterix.001_V1_2_060_QC1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_060_QC1), 0x08, NULL, HFILL } },
+ { &hf_001_V1_2_060_QD4, { "QD4", "asterix.001_V1_2_060_QD4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_060_QD4), 0x04, NULL, HFILL } },
+ { &hf_001_V1_2_060_QD2, { "QD2", "asterix.001_V1_2_060_QD2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_060_QD2), 0x02, NULL, HFILL } },
+ { &hf_001_V1_2_060_QD1, { "QD1", "asterix.001_V1_2_060_QD1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_060_QD1), 0x01, NULL, HFILL } },
+ { &hf_001_V1_2_070, { "070, Mode-3/A Code in Octal Representation", "asterix.001_V1_2_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_070_V, { "V", "asterix.001_V1_2_070_V", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_070_V), 0x80, NULL, HFILL } },
+ { &hf_001_V1_2_070_G, { "G", "asterix.001_V1_2_070_G", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_070_G), 0x40, NULL, HFILL } },
+ { &hf_001_V1_2_070_L, { "L", "asterix.001_V1_2_070_L", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_070_L), 0x20, NULL, HFILL } },
+ { &hf_001_V1_2_070_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.001_V1_2_070_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_001_V1_2_080, { "080, Mode-3/A Code Confidence Indicator", "asterix.001_V1_2_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_080_QA4, { "QA4", "asterix.001_V1_2_080_QA4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_080_QA4), 0x08, NULL, HFILL } },
+ { &hf_001_V1_2_080_QA2, { "QA2", "asterix.001_V1_2_080_QA2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_080_QA2), 0x04, NULL, HFILL } },
+ { &hf_001_V1_2_080_QA1, { "QA1", "asterix.001_V1_2_080_QA1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_080_QA1), 0x02, NULL, HFILL } },
+ { &hf_001_V1_2_080_QB4, { "QB4", "asterix.001_V1_2_080_QB4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_080_QB4), 0x01, NULL, HFILL } },
+ { &hf_001_V1_2_080_QB2, { "QB2", "asterix.001_V1_2_080_QB2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_080_QB2), 0x80, NULL, HFILL } },
+ { &hf_001_V1_2_080_QB1, { "QB1", "asterix.001_V1_2_080_QB1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_080_QB1), 0x40, NULL, HFILL } },
+ { &hf_001_V1_2_080_QC4, { "QC4", "asterix.001_V1_2_080_QC4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_080_QC4), 0x20, NULL, HFILL } },
+ { &hf_001_V1_2_080_QC2, { "QC2", "asterix.001_V1_2_080_QC2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_080_QC2), 0x10, NULL, HFILL } },
+ { &hf_001_V1_2_080_QC1, { "QC1", "asterix.001_V1_2_080_QC1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_080_QC1), 0x08, NULL, HFILL } },
+ { &hf_001_V1_2_080_QD4, { "QD4", "asterix.001_V1_2_080_QD4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_080_QD4), 0x04, NULL, HFILL } },
+ { &hf_001_V1_2_080_QD2, { "QD2", "asterix.001_V1_2_080_QD2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_080_QD2), 0x02, NULL, HFILL } },
+ { &hf_001_V1_2_080_QD1, { "QD1", "asterix.001_V1_2_080_QD1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_080_QD1), 0x01, NULL, HFILL } },
+ { &hf_001_V1_2_090, { "090, Mode-C Code in Binary Representation", "asterix.001_V1_2_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_090_V, { "V", "asterix.001_V1_2_090_V", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_090_V), 0x80, NULL, HFILL } },
+ { &hf_001_V1_2_090_G, { "G", "asterix.001_V1_2_090_G", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_090_G), 0x40, NULL, HFILL } },
+ { &hf_001_V1_2_090_HGT, { "HGT, Mode-C HEIGHT, [FL]", "asterix.001_V1_2_090_HGT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_100, { "100, Mode-C Code and Code Confidence Indicator", "asterix.001_V1_2_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_100_V, { "V", "asterix.001_V1_2_100_V", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_100_V), 0x80, NULL, HFILL } },
+ { &hf_001_V1_2_100_G, { "G", "asterix.001_V1_2_100_G", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_100_G), 0x40, NULL, HFILL } },
+ { &hf_001_V1_2_100_MODEC, { "MODEC, Mode-C Reply in Gray Notation", "asterix.001_V1_2_100_MODEC", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_001_V1_2_100_QC1, { "QC1", "asterix.001_V1_2_100_QC1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_100_QC1), 0x08, NULL, HFILL } },
+ { &hf_001_V1_2_100_QA1, { "QA1", "asterix.001_V1_2_100_QA1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_100_QA1), 0x04, NULL, HFILL } },
+ { &hf_001_V1_2_100_QC2, { "QC2", "asterix.001_V1_2_100_QC2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_100_QC2), 0x02, NULL, HFILL } },
+ { &hf_001_V1_2_100_QA2, { "QA2", "asterix.001_V1_2_100_QA2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_100_QA2), 0x01, NULL, HFILL } },
+ { &hf_001_V1_2_100_QC4, { "QC4", "asterix.001_V1_2_100_QC4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_100_QC4), 0x80, NULL, HFILL } },
+ { &hf_001_V1_2_100_QA4, { "QA4", "asterix.001_V1_2_100_QA4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_100_QA4), 0x40, NULL, HFILL } },
+ { &hf_001_V1_2_100_QB1, { "QB1", "asterix.001_V1_2_100_QB1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_100_QB1), 0x20, NULL, HFILL } },
+ { &hf_001_V1_2_100_QD1, { "QD1", "asterix.001_V1_2_100_QD1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_100_QD1), 0x10, NULL, HFILL } },
+ { &hf_001_V1_2_100_QB2, { "QB2", "asterix.001_V1_2_100_QB2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_100_QB2), 0x08, NULL, HFILL } },
+ { &hf_001_V1_2_100_QD2, { "QD2", "asterix.001_V1_2_100_QD2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_100_QD2), 0x04, NULL, HFILL } },
+ { &hf_001_V1_2_100_QB4, { "QB4", "asterix.001_V1_2_100_QB4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_100_QB4), 0x02, NULL, HFILL } },
+ { &hf_001_V1_2_100_QD4, { "QD4", "asterix.001_V1_2_100_QD4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_100_QD4), 0x01, NULL, HFILL } },
+ { &hf_001_V1_2_120, { "120, Measured Radial Doppler Speed", "asterix.001_V1_2_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_120_VALUE, { "Measured Radial Doppler Speed, [NM/s]", "asterix.001_V1_2_120_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_130, { "130, Radar Plot Characteristics", "asterix.001_V1_2_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_130_Subitem, { "Subitem, Subitem", "asterix.001_V1_2_130_Subitem", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_001_V1_2_131, { "131, Received Power", "asterix.001_V1_2_131", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_131_VALUE, { "Received Power, [dBm]", "asterix.001_V1_2_131_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_141, { "141, Truncated Time of Day", "asterix.001_V1_2_141", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_141_VALUE, { "Truncated Time of Day, [s]", "asterix.001_V1_2_141_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_150, { "150, Presence of X-Pulse", "asterix.001_V1_2_150", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_150_XA, { "XA", "asterix.001_V1_2_150_XA", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_150_XA), 0x80, NULL, HFILL } },
+ { &hf_001_V1_2_150_XC, { "XC", "asterix.001_V1_2_150_XC", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_150_XC), 0x20, NULL, HFILL } },
+ { &hf_001_V1_2_150_X2, { "X2", "asterix.001_V1_2_150_X2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_150_X2), 0x04, NULL, HFILL } },
+ { &hf_001_V1_2_161, { "161, Track Plot Number", "asterix.001_V1_2_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_161_VALUE, { "Track Plot Number", "asterix.001_V1_2_161_VALUE", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_170, { "170, Track Status", "asterix.001_V1_2_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_170_CON, { "CON", "asterix.001_V1_2_170_CON", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_170_CON), 0x80, NULL, HFILL } },
+ { &hf_001_V1_2_170_RAD, { "RAD", "asterix.001_V1_2_170_RAD", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_170_RAD), 0x40, NULL, HFILL } },
+ { &hf_001_V1_2_170_MAN, { "MAN", "asterix.001_V1_2_170_MAN", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_170_MAN), 0x20, NULL, HFILL } },
+ { &hf_001_V1_2_170_DOU, { "DOU", "asterix.001_V1_2_170_DOU", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_170_DOU), 0x10, NULL, HFILL } },
+ { &hf_001_V1_2_170_RDPC, { "RDPC, Radar Data Processing Chain", "asterix.001_V1_2_170_RDPC", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_170_RDPC), 0x08, NULL, HFILL } },
+ { &hf_001_V1_2_170_GHO, { "GHO", "asterix.001_V1_2_170_GHO", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_170_GHO), 0x02, NULL, HFILL } },
+ { &hf_001_V1_2_170_TRE, { "TRE", "asterix.001_V1_2_170_TRE", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_2_170_TRE), 0x80, NULL, HFILL } },
+ { &hf_001_V1_2_200, { "200, Calculated Track Velocity in Polar Co-ordinates", "asterix.001_V1_2_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_200_GSP, { "GSP, Calculated Groundspeed, [NM/s]", "asterix.001_V1_2_200_GSP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_200_HDG, { "HDG, Calculated Heading, [°]", "asterix.001_V1_2_200_HDG", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_210, { "210, Track Quality", "asterix.001_V1_2_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_2_210_Subitem, { "Subitem, Subitem", "asterix.001_V1_2_210_Subitem", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_001_V1_2_SP, { "SP, Special Purpose Field", "asterix.001_V1_2_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_010, { "010, Data Source Identifier", "asterix.001_V1_3_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_010_SAC, { "SAC, System Area Code", "asterix.001_V1_3_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_010_SIC, { "SIC, System Identification Code", "asterix.001_V1_3_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_020, { "020, Target Report Descriptor", "asterix.001_V1_3_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_020_TYP, { "TYP", "asterix.001_V1_3_020_TYP", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_020_TYP), 0x80, NULL, HFILL } },
+ { &hf_001_V1_3_020_SIM, { "SIM", "asterix.001_V1_3_020_SIM", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_020_SIM), 0x40, NULL, HFILL } },
+ { &hf_001_V1_3_020_SSRPSR, { "SSRPSR, Radar Detection in Last Antenna Scan", "asterix.001_V1_3_020_SSRPSR", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_020_SSRPSR), 0x30, NULL, HFILL } },
+ { &hf_001_V1_3_020_ANT, { "ANT", "asterix.001_V1_3_020_ANT", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_020_ANT), 0x08, NULL, HFILL } },
+ { &hf_001_V1_3_020_SPI, { "SPI", "asterix.001_V1_3_020_SPI", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_020_SPI), 0x04, NULL, HFILL } },
+ { &hf_001_V1_3_020_RAB, { "RAB", "asterix.001_V1_3_020_RAB", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_020_RAB), 0x02, NULL, HFILL } },
+ { &hf_001_V1_3_020_TST, { "TST", "asterix.001_V1_3_020_TST", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_020_TST), 0x80, NULL, HFILL } },
+ { &hf_001_V1_3_020_DS1DS2, { "DS1DS2, Radar Detection in Last Antenna Scan", "asterix.001_V1_3_020_DS1DS2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_020_DS1DS2), 0x60, NULL, HFILL } },
+ { &hf_001_V1_3_020_ME, { "ME", "asterix.001_V1_3_020_ME", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_020_ME), 0x10, NULL, HFILL } },
+ { &hf_001_V1_3_020_MI, { "MI", "asterix.001_V1_3_020_MI", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_020_MI), 0x08, NULL, HFILL } },
+ { &hf_001_V1_3_030, { "030, Warning/Error Conditions", "asterix.001_V1_3_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_030_Subitem, { "Subitem, Subitem", "asterix.001_V1_3_030_Subitem", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_030_Subitem), 0xfe, NULL, HFILL } },
+ { &hf_001_V1_3_040, { "040, Measured Position in Polar Co-ordinates", "asterix.001_V1_3_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_040_RHO, { "RHO, [NM]", "asterix.001_V1_3_040_RHO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_040_THETA, { "THETA, [°]", "asterix.001_V1_3_040_THETA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_042, { "042, Calculated Position in Cartesian Co-ordinates", "asterix.001_V1_3_042", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_042_X, { "X, X-Component, [NM]", "asterix.001_V1_3_042_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_042_Y, { "Y, Y-Component, [NM]", "asterix.001_V1_3_042_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_050, { "050, Mode-2 Code in Octal Representation", "asterix.001_V1_3_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_050_V, { "V", "asterix.001_V1_3_050_V", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_050_V), 0x80, NULL, HFILL } },
+ { &hf_001_V1_3_050_G, { "G", "asterix.001_V1_3_050_G", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_050_G), 0x40, NULL, HFILL } },
+ { &hf_001_V1_3_050_L, { "L", "asterix.001_V1_3_050_L", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_050_L), 0x20, NULL, HFILL } },
+ { &hf_001_V1_3_050_MODE2, { "MODE2, Mode-2 Code in Octal Representation", "asterix.001_V1_3_050_MODE2", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_001_V1_3_060, { "060, Mode-2 Code Confidence Indicator", "asterix.001_V1_3_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_060_QA4, { "QA4", "asterix.001_V1_3_060_QA4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_060_QA4), 0x08, NULL, HFILL } },
+ { &hf_001_V1_3_060_QA2, { "QA2", "asterix.001_V1_3_060_QA2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_060_QA2), 0x04, NULL, HFILL } },
+ { &hf_001_V1_3_060_QA1, { "QA1", "asterix.001_V1_3_060_QA1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_060_QA1), 0x02, NULL, HFILL } },
+ { &hf_001_V1_3_060_QB4, { "QB4", "asterix.001_V1_3_060_QB4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_060_QB4), 0x01, NULL, HFILL } },
+ { &hf_001_V1_3_060_QB2, { "QB2", "asterix.001_V1_3_060_QB2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_060_QB2), 0x80, NULL, HFILL } },
+ { &hf_001_V1_3_060_QB1, { "QB1", "asterix.001_V1_3_060_QB1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_060_QB1), 0x40, NULL, HFILL } },
+ { &hf_001_V1_3_060_QC4, { "QC4", "asterix.001_V1_3_060_QC4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_060_QC4), 0x20, NULL, HFILL } },
+ { &hf_001_V1_3_060_QC2, { "QC2", "asterix.001_V1_3_060_QC2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_060_QC2), 0x10, NULL, HFILL } },
+ { &hf_001_V1_3_060_QC1, { "QC1", "asterix.001_V1_3_060_QC1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_060_QC1), 0x08, NULL, HFILL } },
+ { &hf_001_V1_3_060_QD4, { "QD4", "asterix.001_V1_3_060_QD4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_060_QD4), 0x04, NULL, HFILL } },
+ { &hf_001_V1_3_060_QD2, { "QD2", "asterix.001_V1_3_060_QD2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_060_QD2), 0x02, NULL, HFILL } },
+ { &hf_001_V1_3_060_QD1, { "QD1", "asterix.001_V1_3_060_QD1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_060_QD1), 0x01, NULL, HFILL } },
+ { &hf_001_V1_3_070, { "070, Mode-3/A Code in Octal Representation", "asterix.001_V1_3_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_070_V, { "V", "asterix.001_V1_3_070_V", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_070_V), 0x80, NULL, HFILL } },
+ { &hf_001_V1_3_070_G, { "G", "asterix.001_V1_3_070_G", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_070_G), 0x40, NULL, HFILL } },
+ { &hf_001_V1_3_070_L, { "L", "asterix.001_V1_3_070_L", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_070_L), 0x20, NULL, HFILL } },
+ { &hf_001_V1_3_070_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.001_V1_3_070_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_001_V1_3_080, { "080, Mode-3/A Code Confidence Indicator", "asterix.001_V1_3_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_080_QA4, { "QA4", "asterix.001_V1_3_080_QA4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_080_QA4), 0x08, NULL, HFILL } },
+ { &hf_001_V1_3_080_QA2, { "QA2", "asterix.001_V1_3_080_QA2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_080_QA2), 0x04, NULL, HFILL } },
+ { &hf_001_V1_3_080_QA1, { "QA1", "asterix.001_V1_3_080_QA1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_080_QA1), 0x02, NULL, HFILL } },
+ { &hf_001_V1_3_080_QB4, { "QB4", "asterix.001_V1_3_080_QB4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_080_QB4), 0x01, NULL, HFILL } },
+ { &hf_001_V1_3_080_QB2, { "QB2", "asterix.001_V1_3_080_QB2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_080_QB2), 0x80, NULL, HFILL } },
+ { &hf_001_V1_3_080_QB1, { "QB1", "asterix.001_V1_3_080_QB1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_080_QB1), 0x40, NULL, HFILL } },
+ { &hf_001_V1_3_080_QC4, { "QC4", "asterix.001_V1_3_080_QC4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_080_QC4), 0x20, NULL, HFILL } },
+ { &hf_001_V1_3_080_QC2, { "QC2", "asterix.001_V1_3_080_QC2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_080_QC2), 0x10, NULL, HFILL } },
+ { &hf_001_V1_3_080_QC1, { "QC1", "asterix.001_V1_3_080_QC1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_080_QC1), 0x08, NULL, HFILL } },
+ { &hf_001_V1_3_080_QD4, { "QD4", "asterix.001_V1_3_080_QD4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_080_QD4), 0x04, NULL, HFILL } },
+ { &hf_001_V1_3_080_QD2, { "QD2", "asterix.001_V1_3_080_QD2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_080_QD2), 0x02, NULL, HFILL } },
+ { &hf_001_V1_3_080_QD1, { "QD1", "asterix.001_V1_3_080_QD1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_080_QD1), 0x01, NULL, HFILL } },
+ { &hf_001_V1_3_090, { "090, Mode-C Code in Binary Representation", "asterix.001_V1_3_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_090_V, { "V", "asterix.001_V1_3_090_V", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_090_V), 0x80, NULL, HFILL } },
+ { &hf_001_V1_3_090_G, { "G", "asterix.001_V1_3_090_G", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_090_G), 0x40, NULL, HFILL } },
+ { &hf_001_V1_3_090_HGT, { "HGT, Mode-C HEIGHT, [FL]", "asterix.001_V1_3_090_HGT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_100, { "100, Mode-C Code and Code Confidence Indicator", "asterix.001_V1_3_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_100_V, { "V", "asterix.001_V1_3_100_V", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_100_V), 0x80, NULL, HFILL } },
+ { &hf_001_V1_3_100_G, { "G", "asterix.001_V1_3_100_G", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_100_G), 0x40, NULL, HFILL } },
+ { &hf_001_V1_3_100_MODEC, { "MODEC, Mode-C Reply in Gray Notation", "asterix.001_V1_3_100_MODEC", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_001_V1_3_100_QC1, { "QC1", "asterix.001_V1_3_100_QC1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_100_QC1), 0x08, NULL, HFILL } },
+ { &hf_001_V1_3_100_QA1, { "QA1", "asterix.001_V1_3_100_QA1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_100_QA1), 0x04, NULL, HFILL } },
+ { &hf_001_V1_3_100_QC2, { "QC2", "asterix.001_V1_3_100_QC2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_100_QC2), 0x02, NULL, HFILL } },
+ { &hf_001_V1_3_100_QA2, { "QA2", "asterix.001_V1_3_100_QA2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_100_QA2), 0x01, NULL, HFILL } },
+ { &hf_001_V1_3_100_QC4, { "QC4", "asterix.001_V1_3_100_QC4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_100_QC4), 0x80, NULL, HFILL } },
+ { &hf_001_V1_3_100_QA4, { "QA4", "asterix.001_V1_3_100_QA4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_100_QA4), 0x40, NULL, HFILL } },
+ { &hf_001_V1_3_100_QB1, { "QB1", "asterix.001_V1_3_100_QB1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_100_QB1), 0x20, NULL, HFILL } },
+ { &hf_001_V1_3_100_QD1, { "QD1", "asterix.001_V1_3_100_QD1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_100_QD1), 0x10, NULL, HFILL } },
+ { &hf_001_V1_3_100_QB2, { "QB2", "asterix.001_V1_3_100_QB2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_100_QB2), 0x08, NULL, HFILL } },
+ { &hf_001_V1_3_100_QD2, { "QD2", "asterix.001_V1_3_100_QD2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_100_QD2), 0x04, NULL, HFILL } },
+ { &hf_001_V1_3_100_QB4, { "QB4", "asterix.001_V1_3_100_QB4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_100_QB4), 0x02, NULL, HFILL } },
+ { &hf_001_V1_3_100_QD4, { "QD4", "asterix.001_V1_3_100_QD4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_100_QD4), 0x01, NULL, HFILL } },
+ { &hf_001_V1_3_120, { "120, Measured Radial Doppler Speed", "asterix.001_V1_3_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_120_VALUE, { "Measured Radial Doppler Speed, [NM/s]", "asterix.001_V1_3_120_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_130, { "130, Radar Plot Characteristics", "asterix.001_V1_3_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_130_Subitem, { "Subitem, Subitem", "asterix.001_V1_3_130_Subitem", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_001_V1_3_131, { "131, Received Power", "asterix.001_V1_3_131", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_131_VALUE, { "Received Power, [dBm]", "asterix.001_V1_3_131_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_141, { "141, Truncated Time of Day", "asterix.001_V1_3_141", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_141_VALUE, { "Truncated Time of Day, [s]", "asterix.001_V1_3_141_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_150, { "150, Presence of X-Pulse", "asterix.001_V1_3_150", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_150_XA, { "XA", "asterix.001_V1_3_150_XA", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_150_XA), 0x80, NULL, HFILL } },
+ { &hf_001_V1_3_150_XC, { "XC", "asterix.001_V1_3_150_XC", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_150_XC), 0x20, NULL, HFILL } },
+ { &hf_001_V1_3_150_X2, { "X2", "asterix.001_V1_3_150_X2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_150_X2), 0x04, NULL, HFILL } },
+ { &hf_001_V1_3_161, { "161, Track Plot Number", "asterix.001_V1_3_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_161_VALUE, { "Track Plot Number", "asterix.001_V1_3_161_VALUE", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_170, { "170, Track Status", "asterix.001_V1_3_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_170_CON, { "CON", "asterix.001_V1_3_170_CON", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_170_CON), 0x80, NULL, HFILL } },
+ { &hf_001_V1_3_170_RAD, { "RAD", "asterix.001_V1_3_170_RAD", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_170_RAD), 0x40, NULL, HFILL } },
+ { &hf_001_V1_3_170_MAN, { "MAN", "asterix.001_V1_3_170_MAN", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_170_MAN), 0x20, NULL, HFILL } },
+ { &hf_001_V1_3_170_DOU, { "DOU", "asterix.001_V1_3_170_DOU", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_170_DOU), 0x10, NULL, HFILL } },
+ { &hf_001_V1_3_170_RDPC, { "RDPC, Radar Data Processing Chain", "asterix.001_V1_3_170_RDPC", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_170_RDPC), 0x08, NULL, HFILL } },
+ { &hf_001_V1_3_170_GHO, { "GHO", "asterix.001_V1_3_170_GHO", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_170_GHO), 0x02, NULL, HFILL } },
+ { &hf_001_V1_3_170_TRE, { "TRE", "asterix.001_V1_3_170_TRE", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_3_170_TRE), 0x80, NULL, HFILL } },
+ { &hf_001_V1_3_200, { "200, Calculated Track Velocity in Polar Co-ordinates", "asterix.001_V1_3_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_200_GSP, { "GSP, Calculated Groundspeed, [NM/s]", "asterix.001_V1_3_200_GSP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_200_HDG, { "HDG, Calculated Heading, [°]", "asterix.001_V1_3_200_HDG", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_210, { "210, Track Quality", "asterix.001_V1_3_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_3_210_Subitem, { "Subitem, Subitem", "asterix.001_V1_3_210_Subitem", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_001_V1_3_SP, { "SP, Special Purpose Field", "asterix.001_V1_3_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_010, { "010, Data Source Identifier", "asterix.001_V1_4_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_010_SAC, { "SAC, System Area Code", "asterix.001_V1_4_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_010_SIC, { "SIC, System Identification Code", "asterix.001_V1_4_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_020, { "020, Target Report Descriptor", "asterix.001_V1_4_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_020_TYP, { "TYP", "asterix.001_V1_4_020_TYP", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_020_TYP), 0x80, NULL, HFILL } },
+ { &hf_001_V1_4_020_SIM, { "SIM", "asterix.001_V1_4_020_SIM", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_020_SIM), 0x40, NULL, HFILL } },
+ { &hf_001_V1_4_020_SSRPSR, { "SSRPSR, Radar Detection in Last Antenna Scan", "asterix.001_V1_4_020_SSRPSR", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_020_SSRPSR), 0x30, NULL, HFILL } },
+ { &hf_001_V1_4_020_ANT, { "ANT", "asterix.001_V1_4_020_ANT", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_020_ANT), 0x08, NULL, HFILL } },
+ { &hf_001_V1_4_020_SPI, { "SPI", "asterix.001_V1_4_020_SPI", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_020_SPI), 0x04, NULL, HFILL } },
+ { &hf_001_V1_4_020_RAB, { "RAB", "asterix.001_V1_4_020_RAB", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_020_RAB), 0x02, NULL, HFILL } },
+ { &hf_001_V1_4_020_TST, { "TST", "asterix.001_V1_4_020_TST", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_020_TST), 0x80, NULL, HFILL } },
+ { &hf_001_V1_4_020_DS1DS2, { "DS1DS2, Radar Detection in Last Antenna Scan", "asterix.001_V1_4_020_DS1DS2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_020_DS1DS2), 0x60, NULL, HFILL } },
+ { &hf_001_V1_4_020_ME, { "ME", "asterix.001_V1_4_020_ME", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_020_ME), 0x10, NULL, HFILL } },
+ { &hf_001_V1_4_020_MI, { "MI", "asterix.001_V1_4_020_MI", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_020_MI), 0x08, NULL, HFILL } },
+ { &hf_001_V1_4_030, { "030, Warning/Error Conditions", "asterix.001_V1_4_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_030_Subitem, { "Subitem, Subitem", "asterix.001_V1_4_030_Subitem", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_030_Subitem), 0xfe, NULL, HFILL } },
+ { &hf_001_V1_4_040, { "040, Measured Position in Polar Co-ordinates", "asterix.001_V1_4_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_040_RHO, { "RHO, [NM]", "asterix.001_V1_4_040_RHO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_040_THETA, { "THETA, [°]", "asterix.001_V1_4_040_THETA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_042, { "042, Calculated Position in Cartesian Co-ordinates", "asterix.001_V1_4_042", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_042_X, { "X, X-Component, [NM]", "asterix.001_V1_4_042_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_042_Y, { "Y, Y-Component, [NM]", "asterix.001_V1_4_042_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_050, { "050, Mode-2 Code in Octal Representation", "asterix.001_V1_4_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_050_V, { "V", "asterix.001_V1_4_050_V", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_050_V), 0x80, NULL, HFILL } },
+ { &hf_001_V1_4_050_G, { "G", "asterix.001_V1_4_050_G", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_050_G), 0x40, NULL, HFILL } },
+ { &hf_001_V1_4_050_L, { "L", "asterix.001_V1_4_050_L", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_050_L), 0x20, NULL, HFILL } },
+ { &hf_001_V1_4_050_MODE2, { "MODE2, Mode-2 Code in Octal Representation", "asterix.001_V1_4_050_MODE2", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_001_V1_4_060, { "060, Mode-2 Code Confidence Indicator", "asterix.001_V1_4_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_060_QA4, { "QA4", "asterix.001_V1_4_060_QA4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_060_QA4), 0x08, NULL, HFILL } },
+ { &hf_001_V1_4_060_QA2, { "QA2", "asterix.001_V1_4_060_QA2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_060_QA2), 0x04, NULL, HFILL } },
+ { &hf_001_V1_4_060_QA1, { "QA1", "asterix.001_V1_4_060_QA1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_060_QA1), 0x02, NULL, HFILL } },
+ { &hf_001_V1_4_060_QB4, { "QB4", "asterix.001_V1_4_060_QB4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_060_QB4), 0x01, NULL, HFILL } },
+ { &hf_001_V1_4_060_QB2, { "QB2", "asterix.001_V1_4_060_QB2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_060_QB2), 0x80, NULL, HFILL } },
+ { &hf_001_V1_4_060_QB1, { "QB1", "asterix.001_V1_4_060_QB1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_060_QB1), 0x40, NULL, HFILL } },
+ { &hf_001_V1_4_060_QC4, { "QC4", "asterix.001_V1_4_060_QC4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_060_QC4), 0x20, NULL, HFILL } },
+ { &hf_001_V1_4_060_QC2, { "QC2", "asterix.001_V1_4_060_QC2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_060_QC2), 0x10, NULL, HFILL } },
+ { &hf_001_V1_4_060_QC1, { "QC1", "asterix.001_V1_4_060_QC1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_060_QC1), 0x08, NULL, HFILL } },
+ { &hf_001_V1_4_060_QD4, { "QD4", "asterix.001_V1_4_060_QD4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_060_QD4), 0x04, NULL, HFILL } },
+ { &hf_001_V1_4_060_QD2, { "QD2", "asterix.001_V1_4_060_QD2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_060_QD2), 0x02, NULL, HFILL } },
+ { &hf_001_V1_4_060_QD1, { "QD1", "asterix.001_V1_4_060_QD1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_060_QD1), 0x01, NULL, HFILL } },
+ { &hf_001_V1_4_070, { "070, Mode-3/A Code in Octal Representation", "asterix.001_V1_4_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_070_V, { "V", "asterix.001_V1_4_070_V", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_070_V), 0x80, NULL, HFILL } },
+ { &hf_001_V1_4_070_G, { "G", "asterix.001_V1_4_070_G", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_070_G), 0x40, NULL, HFILL } },
+ { &hf_001_V1_4_070_L, { "L", "asterix.001_V1_4_070_L", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_070_L), 0x20, NULL, HFILL } },
+ { &hf_001_V1_4_070_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.001_V1_4_070_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_001_V1_4_080, { "080, Mode-3/A Code Confidence Indicator", "asterix.001_V1_4_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_080_QA4, { "QA4", "asterix.001_V1_4_080_QA4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_080_QA4), 0x08, NULL, HFILL } },
+ { &hf_001_V1_4_080_QA2, { "QA2", "asterix.001_V1_4_080_QA2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_080_QA2), 0x04, NULL, HFILL } },
+ { &hf_001_V1_4_080_QA1, { "QA1", "asterix.001_V1_4_080_QA1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_080_QA1), 0x02, NULL, HFILL } },
+ { &hf_001_V1_4_080_QB4, { "QB4", "asterix.001_V1_4_080_QB4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_080_QB4), 0x01, NULL, HFILL } },
+ { &hf_001_V1_4_080_QB2, { "QB2", "asterix.001_V1_4_080_QB2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_080_QB2), 0x80, NULL, HFILL } },
+ { &hf_001_V1_4_080_QB1, { "QB1", "asterix.001_V1_4_080_QB1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_080_QB1), 0x40, NULL, HFILL } },
+ { &hf_001_V1_4_080_QC4, { "QC4", "asterix.001_V1_4_080_QC4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_080_QC4), 0x20, NULL, HFILL } },
+ { &hf_001_V1_4_080_QC2, { "QC2", "asterix.001_V1_4_080_QC2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_080_QC2), 0x10, NULL, HFILL } },
+ { &hf_001_V1_4_080_QC1, { "QC1", "asterix.001_V1_4_080_QC1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_080_QC1), 0x08, NULL, HFILL } },
+ { &hf_001_V1_4_080_QD4, { "QD4", "asterix.001_V1_4_080_QD4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_080_QD4), 0x04, NULL, HFILL } },
+ { &hf_001_V1_4_080_QD2, { "QD2", "asterix.001_V1_4_080_QD2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_080_QD2), 0x02, NULL, HFILL } },
+ { &hf_001_V1_4_080_QD1, { "QD1", "asterix.001_V1_4_080_QD1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_080_QD1), 0x01, NULL, HFILL } },
+ { &hf_001_V1_4_090, { "090, Mode-C Code in Binary Representation", "asterix.001_V1_4_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_090_V, { "V", "asterix.001_V1_4_090_V", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_090_V), 0x80, NULL, HFILL } },
+ { &hf_001_V1_4_090_G, { "G", "asterix.001_V1_4_090_G", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_090_G), 0x40, NULL, HFILL } },
+ { &hf_001_V1_4_090_HGT, { "HGT, Mode-C HEIGHT, [FL]", "asterix.001_V1_4_090_HGT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_100, { "100, Mode-C Code and Code Confidence Indicator", "asterix.001_V1_4_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_100_V, { "V", "asterix.001_V1_4_100_V", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_100_V), 0x80, NULL, HFILL } },
+ { &hf_001_V1_4_100_G, { "G", "asterix.001_V1_4_100_G", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_100_G), 0x40, NULL, HFILL } },
+ { &hf_001_V1_4_100_MODEC, { "MODEC, Mode-C Reply in Gray Notation", "asterix.001_V1_4_100_MODEC", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_001_V1_4_100_QC1, { "QC1", "asterix.001_V1_4_100_QC1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_100_QC1), 0x08, NULL, HFILL } },
+ { &hf_001_V1_4_100_QA1, { "QA1", "asterix.001_V1_4_100_QA1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_100_QA1), 0x04, NULL, HFILL } },
+ { &hf_001_V1_4_100_QC2, { "QC2", "asterix.001_V1_4_100_QC2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_100_QC2), 0x02, NULL, HFILL } },
+ { &hf_001_V1_4_100_QA2, { "QA2", "asterix.001_V1_4_100_QA2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_100_QA2), 0x01, NULL, HFILL } },
+ { &hf_001_V1_4_100_QC4, { "QC4", "asterix.001_V1_4_100_QC4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_100_QC4), 0x80, NULL, HFILL } },
+ { &hf_001_V1_4_100_QA4, { "QA4", "asterix.001_V1_4_100_QA4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_100_QA4), 0x40, NULL, HFILL } },
+ { &hf_001_V1_4_100_QB1, { "QB1", "asterix.001_V1_4_100_QB1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_100_QB1), 0x20, NULL, HFILL } },
+ { &hf_001_V1_4_100_QD1, { "QD1", "asterix.001_V1_4_100_QD1", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_100_QD1), 0x10, NULL, HFILL } },
+ { &hf_001_V1_4_100_QB2, { "QB2", "asterix.001_V1_4_100_QB2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_100_QB2), 0x08, NULL, HFILL } },
+ { &hf_001_V1_4_100_QD2, { "QD2", "asterix.001_V1_4_100_QD2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_100_QD2), 0x04, NULL, HFILL } },
+ { &hf_001_V1_4_100_QB4, { "QB4", "asterix.001_V1_4_100_QB4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_100_QB4), 0x02, NULL, HFILL } },
+ { &hf_001_V1_4_100_QD4, { "QD4", "asterix.001_V1_4_100_QD4", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_100_QD4), 0x01, NULL, HFILL } },
+ { &hf_001_V1_4_120, { "120, Measured Radial Doppler Speed", "asterix.001_V1_4_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_120_VALUE, { "Measured Radial Doppler Speed, [NM/s]", "asterix.001_V1_4_120_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_130, { "130, Radar Plot Characteristics", "asterix.001_V1_4_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_130_Subitem, { "Subitem, Subitem", "asterix.001_V1_4_130_Subitem", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_001_V1_4_131, { "131, Received Power", "asterix.001_V1_4_131", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_131_VALUE, { "Received Power, [dBm]", "asterix.001_V1_4_131_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_141, { "141, Truncated Time of Day", "asterix.001_V1_4_141", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_141_VALUE, { "Truncated Time of Day, [s]", "asterix.001_V1_4_141_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_150, { "150, Presence of X-Pulse", "asterix.001_V1_4_150", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_150_XA, { "XA", "asterix.001_V1_4_150_XA", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_150_XA), 0x80, NULL, HFILL } },
+ { &hf_001_V1_4_150_XC, { "XC", "asterix.001_V1_4_150_XC", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_150_XC), 0x20, NULL, HFILL } },
+ { &hf_001_V1_4_150_X2, { "X2", "asterix.001_V1_4_150_X2", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_150_X2), 0x04, NULL, HFILL } },
+ { &hf_001_V1_4_161, { "161, Track Plot Number", "asterix.001_V1_4_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_161_VALUE, { "Track Plot Number", "asterix.001_V1_4_161_VALUE", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_170, { "170, Track Status", "asterix.001_V1_4_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_170_CON, { "CON", "asterix.001_V1_4_170_CON", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_170_CON), 0x80, NULL, HFILL } },
+ { &hf_001_V1_4_170_RAD, { "RAD", "asterix.001_V1_4_170_RAD", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_170_RAD), 0x40, NULL, HFILL } },
+ { &hf_001_V1_4_170_MAN, { "MAN", "asterix.001_V1_4_170_MAN", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_170_MAN), 0x20, NULL, HFILL } },
+ { &hf_001_V1_4_170_DOU, { "DOU", "asterix.001_V1_4_170_DOU", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_170_DOU), 0x10, NULL, HFILL } },
+ { &hf_001_V1_4_170_RDPC, { "RDPC, Radar Data Processing Chain", "asterix.001_V1_4_170_RDPC", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_170_RDPC), 0x08, NULL, HFILL } },
+ { &hf_001_V1_4_170_GHO, { "GHO", "asterix.001_V1_4_170_GHO", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_170_GHO), 0x02, NULL, HFILL } },
+ { &hf_001_V1_4_170_TRE, { "TRE", "asterix.001_V1_4_170_TRE", FT_UINT8, BASE_DEC, VALS (valstr_001_V1_4_170_TRE), 0x80, NULL, HFILL } },
+ { &hf_001_V1_4_200, { "200, Calculated Track Velocity in Polar Co-ordinates", "asterix.001_V1_4_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_200_GSP, { "GSP, Calculated Groundspeed, [NM/s]", "asterix.001_V1_4_200_GSP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_200_HDG, { "HDG, Calculated Heading, [°]", "asterix.001_V1_4_200_HDG", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_210, { "210, Track Quality", "asterix.001_V1_4_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_V1_4_210_Subitem, { "Subitem, Subitem", "asterix.001_V1_4_210_Subitem", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_001_V1_4_SP, { "SP, Special Purpose Field", "asterix.001_V1_4_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_010, { "010, Data Source Identifier", "asterix.001_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_010_SAC, { "SAC, System Area Code", "asterix.001_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_010_SIC, { "SIC, System Identification Code", "asterix.001_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_020, { "020, Target Report Descriptor", "asterix.001_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_020_TYP, { "TYP", "asterix.001_020_TYP", FT_UINT8, BASE_DEC, VALS (valstr_001_020_TYP), 0x80, NULL, HFILL } },
+ { &hf_001_020_SIM, { "SIM", "asterix.001_020_SIM", FT_UINT8, BASE_DEC, VALS (valstr_001_020_SIM), 0x40, NULL, HFILL } },
+ { &hf_001_020_SSRPSR, { "SSRPSR, Radar Detection in Last Antenna Scan", "asterix.001_020_SSRPSR", FT_UINT8, BASE_DEC, VALS (valstr_001_020_SSRPSR), 0x30, NULL, HFILL } },
+ { &hf_001_020_ANT, { "ANT", "asterix.001_020_ANT", FT_UINT8, BASE_DEC, VALS (valstr_001_020_ANT), 0x08, NULL, HFILL } },
+ { &hf_001_020_SPI, { "SPI", "asterix.001_020_SPI", FT_UINT8, BASE_DEC, VALS (valstr_001_020_SPI), 0x04, NULL, HFILL } },
+ { &hf_001_020_RAB, { "RAB", "asterix.001_020_RAB", FT_UINT8, BASE_DEC, VALS (valstr_001_020_RAB), 0x02, NULL, HFILL } },
+ { &hf_001_020_TST, { "TST", "asterix.001_020_TST", FT_UINT8, BASE_DEC, VALS (valstr_001_020_TST), 0x80, NULL, HFILL } },
+ { &hf_001_020_DS1DS2, { "DS1DS2, Radar Detection in Last Antenna Scan", "asterix.001_020_DS1DS2", FT_UINT8, BASE_DEC, VALS (valstr_001_020_DS1DS2), 0x60, NULL, HFILL } },
+ { &hf_001_020_ME, { "ME", "asterix.001_020_ME", FT_UINT8, BASE_DEC, VALS (valstr_001_020_ME), 0x10, NULL, HFILL } },
+ { &hf_001_020_MI, { "MI", "asterix.001_020_MI", FT_UINT8, BASE_DEC, VALS (valstr_001_020_MI), 0x08, NULL, HFILL } },
+ { &hf_001_030, { "030, Warning/Error Conditions", "asterix.001_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_030_Subitem, { "Subitem, Subitem", "asterix.001_030_Subitem", FT_UINT8, BASE_DEC, VALS (valstr_001_030_Subitem), 0xfe, NULL, HFILL } },
+ { &hf_001_040, { "040, Measured Position in Polar Co-ordinates", "asterix.001_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_040_RHO, { "RHO, [NM]", "asterix.001_040_RHO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_040_THETA, { "THETA, [°]", "asterix.001_040_THETA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_042, { "042, Calculated Position in Cartesian Co-ordinates", "asterix.001_042", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_042_X, { "X, X-Component, [NM]", "asterix.001_042_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_042_Y, { "Y, Y-Component, [NM]", "asterix.001_042_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_050, { "050, Mode-2 Code in Octal Representation", "asterix.001_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_050_V, { "V", "asterix.001_050_V", FT_UINT8, BASE_DEC, VALS (valstr_001_050_V), 0x80, NULL, HFILL } },
+ { &hf_001_050_G, { "G", "asterix.001_050_G", FT_UINT8, BASE_DEC, VALS (valstr_001_050_G), 0x40, NULL, HFILL } },
+ { &hf_001_050_L, { "L", "asterix.001_050_L", FT_UINT8, BASE_DEC, VALS (valstr_001_050_L), 0x20, NULL, HFILL } },
+ { &hf_001_050_MODE2, { "MODE2, Mode-2 Code in Octal Representation", "asterix.001_050_MODE2", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_001_060, { "060, Mode-2 Code Confidence Indicator", "asterix.001_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_060_QA4, { "QA4", "asterix.001_060_QA4", FT_UINT8, BASE_DEC, VALS (valstr_001_060_QA4), 0x08, NULL, HFILL } },
+ { &hf_001_060_QA2, { "QA2", "asterix.001_060_QA2", FT_UINT8, BASE_DEC, VALS (valstr_001_060_QA2), 0x04, NULL, HFILL } },
+ { &hf_001_060_QA1, { "QA1", "asterix.001_060_QA1", FT_UINT8, BASE_DEC, VALS (valstr_001_060_QA1), 0x02, NULL, HFILL } },
+ { &hf_001_060_QB4, { "QB4", "asterix.001_060_QB4", FT_UINT8, BASE_DEC, VALS (valstr_001_060_QB4), 0x01, NULL, HFILL } },
+ { &hf_001_060_QB2, { "QB2", "asterix.001_060_QB2", FT_UINT8, BASE_DEC, VALS (valstr_001_060_QB2), 0x80, NULL, HFILL } },
+ { &hf_001_060_QB1, { "QB1", "asterix.001_060_QB1", FT_UINT8, BASE_DEC, VALS (valstr_001_060_QB1), 0x40, NULL, HFILL } },
+ { &hf_001_060_QC4, { "QC4", "asterix.001_060_QC4", FT_UINT8, BASE_DEC, VALS (valstr_001_060_QC4), 0x20, NULL, HFILL } },
+ { &hf_001_060_QC2, { "QC2", "asterix.001_060_QC2", FT_UINT8, BASE_DEC, VALS (valstr_001_060_QC2), 0x10, NULL, HFILL } },
+ { &hf_001_060_QC1, { "QC1", "asterix.001_060_QC1", FT_UINT8, BASE_DEC, VALS (valstr_001_060_QC1), 0x08, NULL, HFILL } },
+ { &hf_001_060_QD4, { "QD4", "asterix.001_060_QD4", FT_UINT8, BASE_DEC, VALS (valstr_001_060_QD4), 0x04, NULL, HFILL } },
+ { &hf_001_060_QD2, { "QD2", "asterix.001_060_QD2", FT_UINT8, BASE_DEC, VALS (valstr_001_060_QD2), 0x02, NULL, HFILL } },
+ { &hf_001_060_QD1, { "QD1", "asterix.001_060_QD1", FT_UINT8, BASE_DEC, VALS (valstr_001_060_QD1), 0x01, NULL, HFILL } },
+ { &hf_001_070, { "070, Mode-3/A Code in Octal Representation", "asterix.001_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_070_V, { "V", "asterix.001_070_V", FT_UINT8, BASE_DEC, VALS (valstr_001_070_V), 0x80, NULL, HFILL } },
+ { &hf_001_070_G, { "G", "asterix.001_070_G", FT_UINT8, BASE_DEC, VALS (valstr_001_070_G), 0x40, NULL, HFILL } },
+ { &hf_001_070_L, { "L", "asterix.001_070_L", FT_UINT8, BASE_DEC, VALS (valstr_001_070_L), 0x20, NULL, HFILL } },
+ { &hf_001_070_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.001_070_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_001_080, { "080, Mode-3/A Code Confidence Indicator", "asterix.001_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_080_QA4, { "QA4", "asterix.001_080_QA4", FT_UINT8, BASE_DEC, VALS (valstr_001_080_QA4), 0x08, NULL, HFILL } },
+ { &hf_001_080_QA2, { "QA2", "asterix.001_080_QA2", FT_UINT8, BASE_DEC, VALS (valstr_001_080_QA2), 0x04, NULL, HFILL } },
+ { &hf_001_080_QA1, { "QA1", "asterix.001_080_QA1", FT_UINT8, BASE_DEC, VALS (valstr_001_080_QA1), 0x02, NULL, HFILL } },
+ { &hf_001_080_QB4, { "QB4", "asterix.001_080_QB4", FT_UINT8, BASE_DEC, VALS (valstr_001_080_QB4), 0x01, NULL, HFILL } },
+ { &hf_001_080_QB2, { "QB2", "asterix.001_080_QB2", FT_UINT8, BASE_DEC, VALS (valstr_001_080_QB2), 0x80, NULL, HFILL } },
+ { &hf_001_080_QB1, { "QB1", "asterix.001_080_QB1", FT_UINT8, BASE_DEC, VALS (valstr_001_080_QB1), 0x40, NULL, HFILL } },
+ { &hf_001_080_QC4, { "QC4", "asterix.001_080_QC4", FT_UINT8, BASE_DEC, VALS (valstr_001_080_QC4), 0x20, NULL, HFILL } },
+ { &hf_001_080_QC2, { "QC2", "asterix.001_080_QC2", FT_UINT8, BASE_DEC, VALS (valstr_001_080_QC2), 0x10, NULL, HFILL } },
+ { &hf_001_080_QC1, { "QC1", "asterix.001_080_QC1", FT_UINT8, BASE_DEC, VALS (valstr_001_080_QC1), 0x08, NULL, HFILL } },
+ { &hf_001_080_QD4, { "QD4", "asterix.001_080_QD4", FT_UINT8, BASE_DEC, VALS (valstr_001_080_QD4), 0x04, NULL, HFILL } },
+ { &hf_001_080_QD2, { "QD2", "asterix.001_080_QD2", FT_UINT8, BASE_DEC, VALS (valstr_001_080_QD2), 0x02, NULL, HFILL } },
+ { &hf_001_080_QD1, { "QD1", "asterix.001_080_QD1", FT_UINT8, BASE_DEC, VALS (valstr_001_080_QD1), 0x01, NULL, HFILL } },
+ { &hf_001_090, { "090, Mode-C Code in Binary Representation", "asterix.001_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_090_V, { "V", "asterix.001_090_V", FT_UINT8, BASE_DEC, VALS (valstr_001_090_V), 0x80, NULL, HFILL } },
+ { &hf_001_090_G, { "G", "asterix.001_090_G", FT_UINT8, BASE_DEC, VALS (valstr_001_090_G), 0x40, NULL, HFILL } },
+ { &hf_001_090_HGT, { "HGT, Mode-C HEIGHT, [FL]", "asterix.001_090_HGT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_100, { "100, Mode-C Code and Code Confidence Indicator", "asterix.001_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_100_V, { "V", "asterix.001_100_V", FT_UINT8, BASE_DEC, VALS (valstr_001_100_V), 0x80, NULL, HFILL } },
+ { &hf_001_100_G, { "G", "asterix.001_100_G", FT_UINT8, BASE_DEC, VALS (valstr_001_100_G), 0x40, NULL, HFILL } },
+ { &hf_001_100_MODEC, { "MODEC, Mode-C Reply in Gray Notation", "asterix.001_100_MODEC", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_001_100_QC1, { "QC1", "asterix.001_100_QC1", FT_UINT8, BASE_DEC, VALS (valstr_001_100_QC1), 0x08, NULL, HFILL } },
+ { &hf_001_100_QA1, { "QA1", "asterix.001_100_QA1", FT_UINT8, BASE_DEC, VALS (valstr_001_100_QA1), 0x04, NULL, HFILL } },
+ { &hf_001_100_QC2, { "QC2", "asterix.001_100_QC2", FT_UINT8, BASE_DEC, VALS (valstr_001_100_QC2), 0x02, NULL, HFILL } },
+ { &hf_001_100_QA2, { "QA2", "asterix.001_100_QA2", FT_UINT8, BASE_DEC, VALS (valstr_001_100_QA2), 0x01, NULL, HFILL } },
+ { &hf_001_100_QC4, { "QC4", "asterix.001_100_QC4", FT_UINT8, BASE_DEC, VALS (valstr_001_100_QC4), 0x80, NULL, HFILL } },
+ { &hf_001_100_QA4, { "QA4", "asterix.001_100_QA4", FT_UINT8, BASE_DEC, VALS (valstr_001_100_QA4), 0x40, NULL, HFILL } },
+ { &hf_001_100_QB1, { "QB1", "asterix.001_100_QB1", FT_UINT8, BASE_DEC, VALS (valstr_001_100_QB1), 0x20, NULL, HFILL } },
+ { &hf_001_100_QD1, { "QD1", "asterix.001_100_QD1", FT_UINT8, BASE_DEC, VALS (valstr_001_100_QD1), 0x10, NULL, HFILL } },
+ { &hf_001_100_QB2, { "QB2", "asterix.001_100_QB2", FT_UINT8, BASE_DEC, VALS (valstr_001_100_QB2), 0x08, NULL, HFILL } },
+ { &hf_001_100_QD2, { "QD2", "asterix.001_100_QD2", FT_UINT8, BASE_DEC, VALS (valstr_001_100_QD2), 0x04, NULL, HFILL } },
+ { &hf_001_100_QB4, { "QB4", "asterix.001_100_QB4", FT_UINT8, BASE_DEC, VALS (valstr_001_100_QB4), 0x02, NULL, HFILL } },
+ { &hf_001_100_QD4, { "QD4", "asterix.001_100_QD4", FT_UINT8, BASE_DEC, VALS (valstr_001_100_QD4), 0x01, NULL, HFILL } },
+ { &hf_001_120, { "120, Measured Radial Doppler Speed", "asterix.001_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_120_VALUE, { "Measured Radial Doppler Speed, [NM/s]", "asterix.001_120_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_130, { "130, Radar Plot Characteristics", "asterix.001_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_130_Subitem, { "Subitem, Subitem", "asterix.001_130_Subitem", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_001_131, { "131, Received Power", "asterix.001_131", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_131_VALUE, { "Received Power, [dBm]", "asterix.001_131_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_141, { "141, Truncated Time of Day", "asterix.001_141", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_141_VALUE, { "Truncated Time of Day, [s]", "asterix.001_141_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_150, { "150, Presence of X-Pulse", "asterix.001_150", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_150_XA, { "XA", "asterix.001_150_XA", FT_UINT8, BASE_DEC, VALS (valstr_001_150_XA), 0x80, NULL, HFILL } },
+ { &hf_001_150_XC, { "XC", "asterix.001_150_XC", FT_UINT8, BASE_DEC, VALS (valstr_001_150_XC), 0x20, NULL, HFILL } },
+ { &hf_001_150_X2, { "X2", "asterix.001_150_X2", FT_UINT8, BASE_DEC, VALS (valstr_001_150_X2), 0x04, NULL, HFILL } },
+ { &hf_001_161, { "161, Track Plot Number", "asterix.001_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_161_VALUE, { "Track Plot Number", "asterix.001_161_VALUE", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_170, { "170, Track Status", "asterix.001_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_170_CON, { "CON", "asterix.001_170_CON", FT_UINT8, BASE_DEC, VALS (valstr_001_170_CON), 0x80, NULL, HFILL } },
+ { &hf_001_170_RAD, { "RAD", "asterix.001_170_RAD", FT_UINT8, BASE_DEC, VALS (valstr_001_170_RAD), 0x40, NULL, HFILL } },
+ { &hf_001_170_MAN, { "MAN", "asterix.001_170_MAN", FT_UINT8, BASE_DEC, VALS (valstr_001_170_MAN), 0x20, NULL, HFILL } },
+ { &hf_001_170_DOU, { "DOU", "asterix.001_170_DOU", FT_UINT8, BASE_DEC, VALS (valstr_001_170_DOU), 0x10, NULL, HFILL } },
+ { &hf_001_170_RDPC, { "RDPC, Radar Data Processing Chain", "asterix.001_170_RDPC", FT_UINT8, BASE_DEC, VALS (valstr_001_170_RDPC), 0x08, NULL, HFILL } },
+ { &hf_001_170_GHO, { "GHO", "asterix.001_170_GHO", FT_UINT8, BASE_DEC, VALS (valstr_001_170_GHO), 0x02, NULL, HFILL } },
+ { &hf_001_170_TRE, { "TRE", "asterix.001_170_TRE", FT_UINT8, BASE_DEC, VALS (valstr_001_170_TRE), 0x80, NULL, HFILL } },
+ { &hf_001_200, { "200, Calculated Track Velocity in Polar Co-ordinates", "asterix.001_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_200_GSP, { "GSP, Calculated Groundspeed, [NM/s]", "asterix.001_200_GSP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_200_HDG, { "HDG, Calculated Heading, [°]", "asterix.001_200_HDG", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_210, { "210, Track Quality", "asterix.001_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_001_210_Subitem, { "Subitem, Subitem", "asterix.001_210_Subitem", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_001_SP, { "SP, Special Purpose Field", "asterix.001_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_000, { "000, Message Type", "asterix.002_V1_0_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_000_VALUE, { "Message Type", "asterix.002_V1_0_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_002_V1_0_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_010, { "010, Data Source Identifier", "asterix.002_V1_0_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_010_SAC, { "SAC, System Area Code", "asterix.002_V1_0_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_010_SIC, { "SIC, System Identification Code", "asterix.002_V1_0_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_020, { "020, Sector Number", "asterix.002_V1_0_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_020_VALUE, { "Sector Number, [°]", "asterix.002_V1_0_020_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_030, { "030, Time of Day", "asterix.002_V1_0_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_030_VALUE, { "Time of Day, [s]", "asterix.002_V1_0_030_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_041, { "041, Antenna Rotation Speed", "asterix.002_V1_0_041", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_041_VALUE, { "Antenna Rotation Speed, [s]", "asterix.002_V1_0_041_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_050, { "050, Station Configuration Status", "asterix.002_V1_0_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_050_Subitem, { "Subitem, Subitem", "asterix.002_V1_0_050_Subitem", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_002_V1_0_060, { "060, Station Processing Mode", "asterix.002_V1_0_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_060_Subitem, { "Subitem, Subitem", "asterix.002_V1_0_060_Subitem", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_002_V1_0_070, { "070, Plot Count Values", "asterix.002_V1_0_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_070_A, { "A, Aerial Identification", "asterix.002_V1_0_070_A", FT_UINT8, BASE_DEC, VALS (valstr_002_V1_0_070_A), 0x80, NULL, HFILL } },
+ { &hf_002_V1_0_070_IDENT, { "IDENT", "asterix.002_V1_0_070_IDENT", FT_UINT8, BASE_DEC, VALS (valstr_002_V1_0_070_IDENT), 0x7c, NULL, HFILL } },
+ { &hf_002_V1_0_070_COUNTER, { "COUNTER", "asterix.002_V1_0_070_COUNTER", FT_UINT16, BASE_DEC, NULL, 0x03ff, NULL, HFILL } },
+ { &hf_002_V1_0_080, { "080, Warning/Error Conditions", "asterix.002_V1_0_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_080_Subitem, { "Subitem, Subitem", "asterix.002_V1_0_080_Subitem", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_002_V1_0_090, { "090, Collimation Error", "asterix.002_V1_0_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_090_RE, { "RE, Range Error, [NM]", "asterix.002_V1_0_090_RE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_090_AE, { "AE, Azimuth Error, [°]", "asterix.002_V1_0_090_AE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_100, { "100, Dynamic Window Type 1", "asterix.002_V1_0_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_100_RS, { "RS, Rho Start, [NM]", "asterix.002_V1_0_100_RS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_100_RE, { "RE, Rho End, [NM]", "asterix.002_V1_0_100_RE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_100_TS, { "TS, Theta Start, [°]", "asterix.002_V1_0_100_TS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_100_TE, { "TE, Theta End, [°]", "asterix.002_V1_0_100_TE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_0_SP, { "SP, Special Purpose Field", "asterix.002_V1_0_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_000, { "000, Message Type", "asterix.002_V1_1_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_000_VALUE, { "Message Type", "asterix.002_V1_1_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_002_V1_1_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_010, { "010, Data Source Identifier", "asterix.002_V1_1_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_010_SAC, { "SAC, System Area Code", "asterix.002_V1_1_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_010_SIC, { "SIC, System Identification Code", "asterix.002_V1_1_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_020, { "020, Sector Number", "asterix.002_V1_1_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_020_VALUE, { "Sector Number, [°]", "asterix.002_V1_1_020_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_030, { "030, Time of Day", "asterix.002_V1_1_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_030_VALUE, { "Time of Day, [s]", "asterix.002_V1_1_030_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_041, { "041, Antenna Rotation Speed", "asterix.002_V1_1_041", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_041_VALUE, { "Antenna Rotation Speed, [s]", "asterix.002_V1_1_041_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_050, { "050, Station Configuration Status", "asterix.002_V1_1_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_050_Subitem, { "Subitem, Subitem", "asterix.002_V1_1_050_Subitem", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_002_V1_1_060, { "060, Station Processing Mode", "asterix.002_V1_1_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_060_Subitem, { "Subitem, Subitem", "asterix.002_V1_1_060_Subitem", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_002_V1_1_070, { "070, Plot Count Values", "asterix.002_V1_1_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_070_A, { "A, Aerial Identification", "asterix.002_V1_1_070_A", FT_UINT8, BASE_DEC, VALS (valstr_002_V1_1_070_A), 0x80, NULL, HFILL } },
+ { &hf_002_V1_1_070_IDENT, { "IDENT", "asterix.002_V1_1_070_IDENT", FT_UINT8, BASE_DEC, VALS (valstr_002_V1_1_070_IDENT), 0x7c, NULL, HFILL } },
+ { &hf_002_V1_1_070_COUNTER, { "COUNTER", "asterix.002_V1_1_070_COUNTER", FT_UINT16, BASE_DEC, NULL, 0x03ff, NULL, HFILL } },
+ { &hf_002_V1_1_080, { "080, Warning/Error Conditions", "asterix.002_V1_1_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_080_Subitem, { "Subitem, Subitem", "asterix.002_V1_1_080_Subitem", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_002_V1_1_090, { "090, Collimation Error", "asterix.002_V1_1_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_090_RE, { "RE, Range Error, [NM]", "asterix.002_V1_1_090_RE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_090_AE, { "AE, Azimuth Error, [°]", "asterix.002_V1_1_090_AE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_100, { "100, Dynamic Window Type 1", "asterix.002_V1_1_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_100_RS, { "RS, Rho Start, [NM]", "asterix.002_V1_1_100_RS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_100_RE, { "RE, Rho End, [NM]", "asterix.002_V1_1_100_RE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_100_TS, { "TS, Theta Start, [°]", "asterix.002_V1_1_100_TS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_100_TE, { "TE, Theta End, [°]", "asterix.002_V1_1_100_TE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_V1_1_SP, { "SP, Special Purpose Field", "asterix.002_V1_1_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_000, { "000, Message Type", "asterix.002_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_000_VALUE, { "Message Type", "asterix.002_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_002_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_002_010, { "010, Data Source Identifier", "asterix.002_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_010_SAC, { "SAC, System Area Code", "asterix.002_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_010_SIC, { "SIC, System Identification Code", "asterix.002_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_020, { "020, Sector Number", "asterix.002_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_020_VALUE, { "Sector Number, [°]", "asterix.002_020_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_030, { "030, Time of Day", "asterix.002_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_030_VALUE, { "Time of Day, [s]", "asterix.002_030_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_041, { "041, Antenna Rotation Speed", "asterix.002_041", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_041_VALUE, { "Antenna Rotation Speed, [s]", "asterix.002_041_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_050, { "050, Station Configuration Status", "asterix.002_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_050_Subitem, { "Subitem, Subitem", "asterix.002_050_Subitem", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_002_060, { "060, Station Processing Mode", "asterix.002_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_060_Subitem, { "Subitem, Subitem", "asterix.002_060_Subitem", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_002_070, { "070, Plot Count Values", "asterix.002_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_070_A, { "A, Aerial Identification", "asterix.002_070_A", FT_UINT8, BASE_DEC, VALS (valstr_002_070_A), 0x80, NULL, HFILL } },
+ { &hf_002_070_IDENT, { "IDENT", "asterix.002_070_IDENT", FT_UINT8, BASE_DEC, VALS (valstr_002_070_IDENT), 0x7c, NULL, HFILL } },
+ { &hf_002_070_COUNTER, { "COUNTER", "asterix.002_070_COUNTER", FT_UINT16, BASE_DEC, NULL, 0x03ff, NULL, HFILL } },
+ { &hf_002_080, { "080, Warning/Error Conditions", "asterix.002_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_080_Subitem, { "Subitem, Subitem", "asterix.002_080_Subitem", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_002_090, { "090, Collimation Error", "asterix.002_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_090_RE, { "RE, Range Error, [NM]", "asterix.002_090_RE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_090_AE, { "AE, Azimuth Error, [°]", "asterix.002_090_AE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_100, { "100, Dynamic Window Type 1", "asterix.002_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_100_RS, { "RS, Rho Start, [NM]", "asterix.002_100_RS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_100_RE, { "RE, Rho End, [NM]", "asterix.002_100_RE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_100_TS, { "TS, Theta Start, [°]", "asterix.002_100_TS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_100_TE, { "TE, Theta End, [°]", "asterix.002_100_TE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_002_SP, { "SP, Special Purpose Field", "asterix.002_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_000, { "000, Message Type", "asterix.004_V1_12_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_000_VALUE, { "Message Type", "asterix.004_V1_12_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_010, { "010, Data Source Identifier", "asterix.004_V1_12_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_010_SAC, { "SAC, System Area Code", "asterix.004_V1_12_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_010_SIC, { "SIC, System Identification Code", "asterix.004_V1_12_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_015, { "015, SDPS Identifier", "asterix.004_V1_12_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_015_SAC, { "SAC, System Area Code", "asterix.004_V1_12_015_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_015_SIC, { "SIC, System Identification Code", "asterix.004_V1_12_015_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_020, { "020, Time of Message", "asterix.004_V1_12_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_020_VALUE, { "Time of Message, [s]", "asterix.004_V1_12_020_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_030, { "030, Track Number 1", "asterix.004_V1_12_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_030_VALUE, { "Track Number 1", "asterix.004_V1_12_030_VALUE", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_035, { "035, Track Number 2", "asterix.004_V1_12_035", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_035_VALUE, { "Track Number 2", "asterix.004_V1_12_035_VALUE", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_040, { "040, Alert Identifier", "asterix.004_V1_12_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_040_VALUE, { "Alert Identifier", "asterix.004_V1_12_040_VALUE", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_045, { "045, Alert Status", "asterix.004_V1_12_045", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_045_STAT, { "STAT, Status of the Alert", "asterix.004_V1_12_045_STAT", FT_UINT8, BASE_DEC, NULL, 0x0e, NULL, HFILL } },
+ { &hf_004_V1_12_060, { "060, Safety Net Function and System Status", "asterix.004_V1_12_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_060_MRVA, { "MRVA", "asterix.004_V1_12_060_MRVA", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_MRVA), 0x80, NULL, HFILL } },
+ { &hf_004_V1_12_060_RAMLD, { "RAMLD", "asterix.004_V1_12_060_RAMLD", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_RAMLD), 0x40, NULL, HFILL } },
+ { &hf_004_V1_12_060_RAMHD, { "RAMHD", "asterix.004_V1_12_060_RAMHD", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_RAMHD), 0x20, NULL, HFILL } },
+ { &hf_004_V1_12_060_MSAW, { "MSAW", "asterix.004_V1_12_060_MSAW", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_MSAW), 0x10, NULL, HFILL } },
+ { &hf_004_V1_12_060_APW, { "APW", "asterix.004_V1_12_060_APW", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_APW), 0x08, NULL, HFILL } },
+ { &hf_004_V1_12_060_CLAM, { "CLAM", "asterix.004_V1_12_060_CLAM", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_CLAM), 0x04, NULL, HFILL } },
+ { &hf_004_V1_12_060_STCA, { "STCA", "asterix.004_V1_12_060_STCA", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_STCA), 0x02, NULL, HFILL } },
+ { &hf_004_V1_12_060_APM, { "APM", "asterix.004_V1_12_060_APM", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_APM), 0x80, NULL, HFILL } },
+ { &hf_004_V1_12_060_RIMCA, { "RIMCA", "asterix.004_V1_12_060_RIMCA", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_RIMCA), 0x40, NULL, HFILL } },
+ { &hf_004_V1_12_060_ACASRA, { "ACASRA", "asterix.004_V1_12_060_ACASRA", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_ACASRA), 0x20, NULL, HFILL } },
+ { &hf_004_V1_12_060_NTCA, { "NTCA", "asterix.004_V1_12_060_NTCA", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_NTCA), 0x10, NULL, HFILL } },
+ { &hf_004_V1_12_060_DG, { "DG", "asterix.004_V1_12_060_DG", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_DG), 0x08, NULL, HFILL } },
+ { &hf_004_V1_12_060_OF, { "OF", "asterix.004_V1_12_060_OF", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_OF), 0x04, NULL, HFILL } },
+ { &hf_004_V1_12_060_OL, { "OL", "asterix.004_V1_12_060_OL", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_OL), 0x02, NULL, HFILL } },
+ { &hf_004_V1_12_060_AIW, { "AIW", "asterix.004_V1_12_060_AIW", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_AIW), 0x80, NULL, HFILL } },
+ { &hf_004_V1_12_060_PAIW, { "PAIW", "asterix.004_V1_12_060_PAIW", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_PAIW), 0x40, NULL, HFILL } },
+ { &hf_004_V1_12_060_OCAT, { "OCAT", "asterix.004_V1_12_060_OCAT", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_OCAT), 0x20, NULL, HFILL } },
+ { &hf_004_V1_12_060_SAM, { "SAM", "asterix.004_V1_12_060_SAM", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_SAM), 0x10, NULL, HFILL } },
+ { &hf_004_V1_12_060_VCD, { "VCD", "asterix.004_V1_12_060_VCD", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_VCD), 0x08, NULL, HFILL } },
+ { &hf_004_V1_12_060_CHAM, { "CHAM", "asterix.004_V1_12_060_CHAM", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_CHAM), 0x04, NULL, HFILL } },
+ { &hf_004_V1_12_060_DSAM, { "DSAM", "asterix.004_V1_12_060_DSAM", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_DSAM), 0x02, NULL, HFILL } },
+ { &hf_004_V1_12_060_DBPSMARR, { "DBPSMARR", "asterix.004_V1_12_060_DBPSMARR", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_DBPSMARR), 0x80, NULL, HFILL } },
+ { &hf_004_V1_12_060_DBPSMDEP, { "DBPSMDEP", "asterix.004_V1_12_060_DBPSMDEP", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_DBPSMDEP), 0x40, NULL, HFILL } },
+ { &hf_004_V1_12_060_DBPSMTL, { "DBPSMTL", "asterix.004_V1_12_060_DBPSMTL", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_DBPSMTL), 0x20, NULL, HFILL } },
+ { &hf_004_V1_12_060_VRAMCRM, { "VRAMCRM", "asterix.004_V1_12_060_VRAMCRM", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_VRAMCRM), 0x10, NULL, HFILL } },
+ { &hf_004_V1_12_060_VRAMVTM, { "VRAMVTM", "asterix.004_V1_12_060_VRAMVTM", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_VRAMVTM), 0x08, NULL, HFILL } },
+ { &hf_004_V1_12_060_VRAMVRM, { "VRAMVRM", "asterix.004_V1_12_060_VRAMVRM", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_VRAMVRM), 0x04, NULL, HFILL } },
+ { &hf_004_V1_12_060_HAMHD, { "HAMHD", "asterix.004_V1_12_060_HAMHD", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_HAMHD), 0x02, NULL, HFILL } },
+ { &hf_004_V1_12_060_HAMRD, { "HAMRD", "asterix.004_V1_12_060_HAMRD", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_HAMRD), 0x80, NULL, HFILL } },
+ { &hf_004_V1_12_060_HAMVD, { "HAMVD", "asterix.004_V1_12_060_HAMVD", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_HAMVD), 0x40, NULL, HFILL } },
+ { &hf_004_V1_12_060_HVI, { "HVI", "asterix.004_V1_12_060_HVI", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_HVI), 0x20, NULL, HFILL } },
+ { &hf_004_V1_12_060_LTW, { "LTW", "asterix.004_V1_12_060_LTW", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_LTW), 0x10, NULL, HFILL } },
+ { &hf_004_V1_12_060_VPM, { "VPM", "asterix.004_V1_12_060_VPM", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_VPM), 0x08, NULL, HFILL } },
+ { &hf_004_V1_12_060_TTA, { "TTA", "asterix.004_V1_12_060_TTA", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_TTA), 0x04, NULL, HFILL } },
+ { &hf_004_V1_12_060_CRA, { "CRA", "asterix.004_V1_12_060_CRA", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_CRA), 0x02, NULL, HFILL } },
+ { &hf_004_V1_12_060_ASM, { "ASM", "asterix.004_V1_12_060_ASM", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_ASM), 0x80, NULL, HFILL } },
+ { &hf_004_V1_12_060_IAVM, { "IAVM", "asterix.004_V1_12_060_IAVM", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_IAVM), 0x40, NULL, HFILL } },
+ { &hf_004_V1_12_060_FTD, { "FTD", "asterix.004_V1_12_060_FTD", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_FTD), 0x20, NULL, HFILL } },
+ { &hf_004_V1_12_060_ITD, { "ITD", "asterix.004_V1_12_060_ITD", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_ITD), 0x10, NULL, HFILL } },
+ { &hf_004_V1_12_060_IIA, { "IIA", "asterix.004_V1_12_060_IIA", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_IIA), 0x08, NULL, HFILL } },
+ { &hf_004_V1_12_060_SQW, { "SQW", "asterix.004_V1_12_060_SQW", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_SQW), 0x04, NULL, HFILL } },
+ { &hf_004_V1_12_060_CUW, { "CUW", "asterix.004_V1_12_060_CUW", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_CUW), 0x02, NULL, HFILL } },
+ { &hf_004_V1_12_060_CATC, { "CATC", "asterix.004_V1_12_060_CATC", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_CATC), 0x80, NULL, HFILL } },
+ { &hf_004_V1_12_060_NOCLR, { "NOCLR", "asterix.004_V1_12_060_NOCLR", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_NOCLR), 0x40, NULL, HFILL } },
+ { &hf_004_V1_12_060_NOMOV, { "NOMOV", "asterix.004_V1_12_060_NOMOV", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_NOMOV), 0x20, NULL, HFILL } },
+ { &hf_004_V1_12_060_NOH, { "NOH", "asterix.004_V1_12_060_NOH", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_NOH), 0x10, NULL, HFILL } },
+ { &hf_004_V1_12_060_WRTY, { "WRTY", "asterix.004_V1_12_060_WRTY", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_WRTY), 0x08, NULL, HFILL } },
+ { &hf_004_V1_12_060_STOCC, { "STOCC", "asterix.004_V1_12_060_STOCC", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_STOCC), 0x04, NULL, HFILL } },
+ { &hf_004_V1_12_060_ONGOING, { "ONGOING", "asterix.004_V1_12_060_ONGOING", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_060_ONGOING), 0x02, NULL, HFILL } },
+ { &hf_004_V1_12_070, { "070, Conflict Timing and Separation", "asterix.004_V1_12_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_070_TC, { "TC, Time to Conflict", "asterix.004_V1_12_070_TC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_070_TC_VALUE, { "Time to Conflict, [s]", "asterix.004_V1_12_070_TC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_070_TCA, { "TCA, Time to Closest Approach", "asterix.004_V1_12_070_TCA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_070_TCA_VALUE, { "Time to Closest Approach, [s]", "asterix.004_V1_12_070_TCA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_070_CHS, { "CHS, Current Horizontal Separation", "asterix.004_V1_12_070_CHS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_070_CHS_VALUE, { "Current Horizontal Separation, [m]", "asterix.004_V1_12_070_CHS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_070_MHS, { "MHS, Estimated Minimum Horizontal Separation", "asterix.004_V1_12_070_MHS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_070_MHS_VALUE, { "Estimated Minimum Horizontal Separation, [m]", "asterix.004_V1_12_070_MHS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_070_CVS, { "CVS, Current Vertical Separation", "asterix.004_V1_12_070_CVS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_070_CVS_VALUE, { "Current Vertical Separation, [ft]", "asterix.004_V1_12_070_CVS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_070_MVS, { "MVS, Estimated Minimum Vertical Separation", "asterix.004_V1_12_070_MVS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_070_MVS_VALUE, { "Estimated Minimum Vertical Separation, [ft]", "asterix.004_V1_12_070_MVS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_074, { "074, Longitudinal Deviation", "asterix.004_V1_12_074", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_074_VALUE, { "Longitudinal Deviation, [m]", "asterix.004_V1_12_074_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_075, { "075, Transversal Distance Deviation", "asterix.004_V1_12_075", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_075_VALUE, { "Transversal Distance Deviation, [m]", "asterix.004_V1_12_075_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_076, { "076, Vertical Deviation", "asterix.004_V1_12_076", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_076_VALUE, { "Vertical Deviation, [ft]", "asterix.004_V1_12_076_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_100, { "100, Area Definition", "asterix.004_V1_12_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_100_AN, { "AN, Area Name", "asterix.004_V1_12_100_AN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_100_AN_VALUE, { "Area Name", "asterix.004_V1_12_100_AN_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_100_CAN, { "CAN, Crossing Area Name", "asterix.004_V1_12_100_CAN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_100_CAN_VALUE, { "Crossing Area Name", "asterix.004_V1_12_100_CAN_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_100_RT1, { "RT1, Runway/Taxiway Designator 1", "asterix.004_V1_12_100_RT1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_100_RT1_VALUE, { "Runway/Taxiway Designator 1", "asterix.004_V1_12_100_RT1_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_100_RT2, { "RT2, Runway/Taxiway Designator 2", "asterix.004_V1_12_100_RT2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_100_RT2_VALUE, { "Runway/Taxiway Designator 2", "asterix.004_V1_12_100_RT2_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_100_SB, { "SB, Stop Bar Designator", "asterix.004_V1_12_100_SB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_100_SB_VALUE, { "Stop Bar Designator", "asterix.004_V1_12_100_SB_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_100_G, { "G, Gate Designator", "asterix.004_V1_12_100_G", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_100_G_VALUE, { "Gate Designator", "asterix.004_V1_12_100_G_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_110, { "110, FDPS Sector Control Identification", "asterix.004_V1_12_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_110_CEN, { "CEN", "asterix.004_V1_12_110_CEN", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_110_POS, { "POS", "asterix.004_V1_12_110_POS", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_120, { "120, Conflict Characteristics", "asterix.004_V1_12_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_120_CN, { "CN, Conflict Nature", "asterix.004_V1_12_120_CN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_120_CN_MAS, { "MAS, Conflict Location in Military Airspace", "asterix.004_V1_12_120_CN_MAS", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_120_CN_MAS), 0x80, NULL, HFILL } },
+ { &hf_004_V1_12_120_CN_CAS, { "CAS, Conflict Location in Civil Airspace", "asterix.004_V1_12_120_CN_CAS", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_120_CN_CAS), 0x40, NULL, HFILL } },
+ { &hf_004_V1_12_120_CN_FLD, { "FLD, Fast Lateral Divergence", "asterix.004_V1_12_120_CN_FLD", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_120_CN_FLD), 0x20, NULL, HFILL } },
+ { &hf_004_V1_12_120_CN_FVD, { "FVD, Fast Vertical Divergence", "asterix.004_V1_12_120_CN_FVD", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_120_CN_FVD), 0x10, NULL, HFILL } },
+ { &hf_004_V1_12_120_CN_TYPE, { "TYPE, Type of Separation Infringement", "asterix.004_V1_12_120_CN_TYPE", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_120_CN_TYPE), 0x08, NULL, HFILL } },
+ { &hf_004_V1_12_120_CN_CROSS, { "CROSS, Crossing Test", "asterix.004_V1_12_120_CN_CROSS", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_120_CN_CROSS), 0x04, NULL, HFILL } },
+ { &hf_004_V1_12_120_CN_DIV, { "DIV, Divergence Test", "asterix.004_V1_12_120_CN_DIV", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_120_CN_DIV), 0x02, NULL, HFILL } },
+ { &hf_004_V1_12_120_CN_RRC, { "RRC, Runway/Runway Crossing in RIMCAS", "asterix.004_V1_12_120_CN_RRC", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_120_CN_RRC), 0x80, NULL, HFILL } },
+ { &hf_004_V1_12_120_CN_RTC, { "RTC, Runway/Taxiway Crossing in RIMCAS", "asterix.004_V1_12_120_CN_RTC", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_120_CN_RTC), 0x40, NULL, HFILL } },
+ { &hf_004_V1_12_120_CN_MRVA, { "MRVA", "asterix.004_V1_12_120_CN_MRVA", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_120_CN_MRVA), 0x20, NULL, HFILL } },
+ { &hf_004_V1_12_120_CN_VRAMCRM, { "VRAMCRM", "asterix.004_V1_12_120_CN_VRAMCRM", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_120_CN_VRAMCRM), 0x10, NULL, HFILL } },
+ { &hf_004_V1_12_120_CN_VRAMVRM, { "VRAMVRM", "asterix.004_V1_12_120_CN_VRAMVRM", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_120_CN_VRAMVRM), 0x08, NULL, HFILL } },
+ { &hf_004_V1_12_120_CN_VRAMVTM, { "VRAMVTM", "asterix.004_V1_12_120_CN_VRAMVTM", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_120_CN_VRAMVTM), 0x04, NULL, HFILL } },
+ { &hf_004_V1_12_120_CN_HAMHD, { "HAMHD", "asterix.004_V1_12_120_CN_HAMHD", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_120_CN_HAMHD), 0x02, NULL, HFILL } },
+ { &hf_004_V1_12_120_CN_HAMRD, { "HAMRD", "asterix.004_V1_12_120_CN_HAMRD", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_120_CN_HAMRD), 0x80, NULL, HFILL } },
+ { &hf_004_V1_12_120_CN_HAMVD, { "HAMVD", "asterix.004_V1_12_120_CN_HAMVD", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_120_CN_HAMVD), 0x40, NULL, HFILL } },
+ { &hf_004_V1_12_120_CN_DBPSMARR, { "DBPSMARR", "asterix.004_V1_12_120_CN_DBPSMARR", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_120_CN_DBPSMARR), 0x20, NULL, HFILL } },
+ { &hf_004_V1_12_120_CN_DBPSMDEP, { "DBPSMDEP", "asterix.004_V1_12_120_CN_DBPSMDEP", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_120_CN_DBPSMDEP), 0x10, NULL, HFILL } },
+ { &hf_004_V1_12_120_CN_DBPSMTL, { "DBPSMTL", "asterix.004_V1_12_120_CN_DBPSMTL", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_120_CN_DBPSMTL), 0x08, NULL, HFILL } },
+ { &hf_004_V1_12_120_CN_AIW, { "AIW", "asterix.004_V1_12_120_CN_AIW", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_120_CN_AIW), 0x04, NULL, HFILL } },
+ { &hf_004_V1_12_120_CC, { "CC, Conflict Classification", "asterix.004_V1_12_120_CC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_120_CC_TID, { "TID, Identification of Conflict Categories Definition Table", "asterix.004_V1_12_120_CC_TID", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_004_V1_12_120_CC_CP, { "CP, Conflict Properties Class", "asterix.004_V1_12_120_CC_CP", FT_UINT8, BASE_DEC, NULL, 0x0e, NULL, HFILL } },
+ { &hf_004_V1_12_120_CC_CS, { "CS, Conflict Severity", "asterix.004_V1_12_120_CC_CS", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_120_CC_CS), 0x01, NULL, HFILL } },
+ { &hf_004_V1_12_120_CP, { "CP, Conflict Probability", "asterix.004_V1_12_120_CP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_120_CP_VALUE, { "Conflict Probability, [%]", "asterix.004_V1_12_120_CP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_120_CD, { "CD, Conflict Duration", "asterix.004_V1_12_120_CD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_120_CD_VALUE, { "Conflict Duration, [s]", "asterix.004_V1_12_120_CD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_170, { "170, Aircraft Identification and Characteristics 1", "asterix.004_V1_12_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_170_AI1, { "AI1, Aircraft Identifier (in 7 Characters) of Aircraft 1 Involved in the Conflict", "asterix.004_V1_12_170_AI1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_170_AI1_VALUE, { "Aircraft Identifier (in 7 Characters) of Aircraft 1 Involved in the Conflict", "asterix.004_V1_12_170_AI1_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_170_M31, { "M31, Mode 3/A Code Aircraft 1", "asterix.004_V1_12_170_M31", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_170_M31_MODE3A, { "MODE3A, Mode-3/A Code (Converted Into Octal Representation) of Aircraft 1 Involved in the Conflict", "asterix.004_V1_12_170_M31_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_004_V1_12_170_CPW, { "CPW, Predicted Conflict Position Target 1 in WGS-84 Coordinates", "asterix.004_V1_12_170_CPW", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_170_CPW_LAT, { "LAT, In WGS-84 in Two’s Complement, [°]", "asterix.004_V1_12_170_CPW_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_170_CPW_LON, { "LON, In WGS-84 in Two’s Complement, [°]", "asterix.004_V1_12_170_CPW_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_170_CPW_ALT, { "ALT, Altitude of Predicted Conflict, [ft]", "asterix.004_V1_12_170_CPW_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_170_CPC, { "CPC, Predicted Conflict Position for the Aircraft 1 Involved in the Conflict", "asterix.004_V1_12_170_CPC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_170_CPC_X, { "X, Starting X-position of the Conflict, [m]", "asterix.004_V1_12_170_CPC_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_170_CPC_Y, { "Y, Starting Y-position of the Conflict, [m]", "asterix.004_V1_12_170_CPC_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_170_CPC_Z, { "Z, Starting Z-position of the Conflict, [ft]", "asterix.004_V1_12_170_CPC_Z", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_170_TT1, { "TT1, Time to Runway Threshold for First Approaching Aircraft in a RIMCA", "asterix.004_V1_12_170_TT1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_170_TT1_VALUE, { "Time to Runway Threshold for First Approaching Aircraft in a RIMCA, [s]", "asterix.004_V1_12_170_TT1_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_170_DT1, { "DT1, Distance to Runway Threshold for Aircraft 1 Involved in a RIMCA", "asterix.004_V1_12_170_DT1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_170_DT1_VALUE, { "Distance to Runway Threshold for Aircraft 1 Involved in a RIMCA, [m]", "asterix.004_V1_12_170_DT1_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_170_AC1, { "AC1, Characteristics of Aircraft 1 Involved in the Conflict", "asterix.004_V1_12_170_AC1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_170_AC1_GATOAT, { "GATOAT, Identification of Conflict Categories Definition Table", "asterix.004_V1_12_170_AC1_GATOAT", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_170_AC1_GATOAT), 0xc0, NULL, HFILL } },
+ { &hf_004_V1_12_170_AC1_FR1FR2, { "FR1FR2, Flight Rules", "asterix.004_V1_12_170_AC1_FR1FR2", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_170_AC1_FR1FR2), 0x30, NULL, HFILL } },
+ { &hf_004_V1_12_170_AC1_RVSM, { "RVSM", "asterix.004_V1_12_170_AC1_RVSM", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_170_AC1_RVSM), 0x0c, NULL, HFILL } },
+ { &hf_004_V1_12_170_AC1_HPR, { "HPR", "asterix.004_V1_12_170_AC1_HPR", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_170_AC1_HPR), 0x02, NULL, HFILL } },
+ { &hf_004_V1_12_170_AC1_CDM, { "CDM, Climbing/Descending Mode", "asterix.004_V1_12_170_AC1_CDM", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_170_AC1_CDM), 0xc0, NULL, HFILL } },
+ { &hf_004_V1_12_170_AC1_PRI, { "PRI", "asterix.004_V1_12_170_AC1_PRI", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_170_AC1_PRI), 0x20, NULL, HFILL } },
+ { &hf_004_V1_12_170_AC1_GV, { "GV", "asterix.004_V1_12_170_AC1_GV", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_170_AC1_GV), 0x10, NULL, HFILL } },
+ { &hf_004_V1_12_170_MS1, { "MS1, Aircraft Identification Downloaded from Aircraft 1 Involved in the Conflict If Equipped with a Mode-S Transponder", "asterix.004_V1_12_170_MS1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_170_MS1_VALUE, { "Aircraft Identification Downloaded from Aircraft 1 Involved in the Conflict If Equipped with a Mode-S Transponder", "asterix.004_V1_12_170_MS1_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_170_FP1, { "FP1, Number of the Flight Plan Correlated to Aircraft 1 Involved in the Conflict", "asterix.004_V1_12_170_FP1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_170_FP1_NBR, { "NBR", "asterix.004_V1_12_170_FP1_NBR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_170_CF1, { "CF1, Cleared Flight Level for Aircraft 1 Involved in the Conflict", "asterix.004_V1_12_170_CF1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_170_CF1_VALUE, { "Cleared Flight Level for Aircraft 1 Involved in the Conflict, [FL]", "asterix.004_V1_12_170_CF1_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_171, { "171, Aircraft Identification and Characteristics 2", "asterix.004_V1_12_171", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_171_AI2, { "AI2, Aircraft Identifier (in 7 Characters) of Aircraft 2 Involved in the Conflict", "asterix.004_V1_12_171_AI2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_171_AI2_VALUE, { "Aircraft Identifier (in 7 Characters) of Aircraft 2 Involved in the Conflict", "asterix.004_V1_12_171_AI2_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_171_M32, { "M32, Mode 3/A Code Aircraft 2", "asterix.004_V1_12_171_M32", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_171_M32_MODE3A, { "MODE3A, Mode-3/A Code (Converted Into Octal Representation) of Aircraft 2 Involved in the Conflict", "asterix.004_V1_12_171_M32_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_004_V1_12_171_CPW, { "CPW, Predicted Conflict Position Target 2 in WGS-84 Coordinates", "asterix.004_V1_12_171_CPW", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_171_CPW_LAT, { "LAT, In WGS-84 in Two’s Complement, [°]", "asterix.004_V1_12_171_CPW_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_171_CPW_LON, { "LON, In WGS-84 in Two’s Complement, [°]", "asterix.004_V1_12_171_CPW_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_171_CPW_ALT, { "ALT, Altitude of Predicted Conflict, [ft]", "asterix.004_V1_12_171_CPW_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_171_CPL, { "CPL, Predicted Conflict Position for the Aircraft 2 Involved in the Conflict", "asterix.004_V1_12_171_CPL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_171_CPL_X, { "X, Starting X-position of the Conflict, [m]", "asterix.004_V1_12_171_CPL_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_171_CPL_Y, { "Y, Starting Y-position of the Conflict, [m]", "asterix.004_V1_12_171_CPL_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_171_CPL_Z, { "Z, Starting Z-position of the Conflict, [ft]", "asterix.004_V1_12_171_CPL_Z", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_171_TT2, { "TT2, Time to Runway Threshold for Second Approaching Aircraft in a RIMCA", "asterix.004_V1_12_171_TT2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_171_TT2_VALUE, { "Time to Runway Threshold for Second Approaching Aircraft in a RIMCA, [s]", "asterix.004_V1_12_171_TT2_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_171_DT2, { "DT2, Distance to Runway Threshold for Aircraft 2 Involved in a RIMCA", "asterix.004_V1_12_171_DT2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_171_DT2_VALUE, { "Distance to Runway Threshold for Aircraft 2 Involved in a RIMCA, [m]", "asterix.004_V1_12_171_DT2_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_171_AC2, { "AC2, Characteristics of Aircraft 2 Involved in the Conflict", "asterix.004_V1_12_171_AC2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_171_AC2_GATOAT, { "GATOAT, Identification of Conflict Categories Definition Table", "asterix.004_V1_12_171_AC2_GATOAT", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_171_AC2_GATOAT), 0xc0, NULL, HFILL } },
+ { &hf_004_V1_12_171_AC2_FR1FR2, { "FR1FR2, Flight Rules", "asterix.004_V1_12_171_AC2_FR1FR2", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_171_AC2_FR1FR2), 0x30, NULL, HFILL } },
+ { &hf_004_V1_12_171_AC2_RVSM, { "RVSM", "asterix.004_V1_12_171_AC2_RVSM", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_171_AC2_RVSM), 0x0c, NULL, HFILL } },
+ { &hf_004_V1_12_171_AC2_HPR, { "HPR", "asterix.004_V1_12_171_AC2_HPR", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_171_AC2_HPR), 0x02, NULL, HFILL } },
+ { &hf_004_V1_12_171_AC2_CDM, { "CDM, Climbing/Descending Mode", "asterix.004_V1_12_171_AC2_CDM", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_171_AC2_CDM), 0xc0, NULL, HFILL } },
+ { &hf_004_V1_12_171_AC2_PRI, { "PRI", "asterix.004_V1_12_171_AC2_PRI", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_171_AC2_PRI), 0x20, NULL, HFILL } },
+ { &hf_004_V1_12_171_AC2_GV, { "GV", "asterix.004_V1_12_171_AC2_GV", FT_UINT8, BASE_DEC, VALS (valstr_004_V1_12_171_AC2_GV), 0x10, NULL, HFILL } },
+ { &hf_004_V1_12_171_MS2, { "MS2, Aircraft Identification Downloaded From Aircraft 2 Involved in the Conflict If Eequipped With a Mode-S Transponder", "asterix.004_V1_12_171_MS2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_171_MS2_VALUE, { "Aircraft Identification Downloaded From Aircraft 2 Involved in the Conflict If Eequipped With a Mode-S Transponder", "asterix.004_V1_12_171_MS2_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_171_FP2, { "FP2, Number of the Flight Plan Correlated to Aircraft 2 Involved in the Conflict", "asterix.004_V1_12_171_FP2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_171_FP2_NBR, { "NBR", "asterix.004_V1_12_171_FP2_NBR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_171_CF2, { "CF2, Cleared Flight Level for Aircraft 2 Involved in the Conflict", "asterix.004_V1_12_171_CF2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_171_CF2_VALUE, { "Cleared Flight Level for Aircraft 2 Involved in the Conflict, [FL]", "asterix.004_V1_12_171_CF2_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_RE, { "RE, Reserved Expansion Field", "asterix.004_V1_12_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_V1_12_SP, { "SP, Special Purpose Field", "asterix.004_V1_12_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_000, { "000, Message Type", "asterix.004_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_000_VALUE, { "Message Type", "asterix.004_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_004_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_004_010, { "010, Data Source Identifier", "asterix.004_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_010_SAC, { "SAC, System Area Code", "asterix.004_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_010_SIC, { "SIC, System Identification Code", "asterix.004_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_015, { "015, SDPS Identifier", "asterix.004_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_015_SAC, { "SAC, System Area Code", "asterix.004_015_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_015_SIC, { "SIC, System Identification Code", "asterix.004_015_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_020, { "020, Time of Message", "asterix.004_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_020_VALUE, { "Time of Message, [s]", "asterix.004_020_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_030, { "030, Track Number 1", "asterix.004_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_030_VALUE, { "Track Number 1", "asterix.004_030_VALUE", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_035, { "035, Track Number 2", "asterix.004_035", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_035_VALUE, { "Track Number 2", "asterix.004_035_VALUE", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_040, { "040, Alert Identifier", "asterix.004_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_040_VALUE, { "Alert Identifier", "asterix.004_040_VALUE", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_045, { "045, Alert Status", "asterix.004_045", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_045_STAT, { "STAT, Status of the Alert", "asterix.004_045_STAT", FT_UINT8, BASE_DEC, NULL, 0x0e, NULL, HFILL } },
+ { &hf_004_060, { "060, Safety Net Function and System Status", "asterix.004_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_060_MRVA, { "MRVA", "asterix.004_060_MRVA", FT_UINT8, BASE_DEC, VALS (valstr_004_060_MRVA), 0x80, NULL, HFILL } },
+ { &hf_004_060_RAMLD, { "RAMLD", "asterix.004_060_RAMLD", FT_UINT8, BASE_DEC, VALS (valstr_004_060_RAMLD), 0x40, NULL, HFILL } },
+ { &hf_004_060_RAMHD, { "RAMHD", "asterix.004_060_RAMHD", FT_UINT8, BASE_DEC, VALS (valstr_004_060_RAMHD), 0x20, NULL, HFILL } },
+ { &hf_004_060_MSAW, { "MSAW", "asterix.004_060_MSAW", FT_UINT8, BASE_DEC, VALS (valstr_004_060_MSAW), 0x10, NULL, HFILL } },
+ { &hf_004_060_APW, { "APW", "asterix.004_060_APW", FT_UINT8, BASE_DEC, VALS (valstr_004_060_APW), 0x08, NULL, HFILL } },
+ { &hf_004_060_CLAM, { "CLAM", "asterix.004_060_CLAM", FT_UINT8, BASE_DEC, VALS (valstr_004_060_CLAM), 0x04, NULL, HFILL } },
+ { &hf_004_060_STCA, { "STCA", "asterix.004_060_STCA", FT_UINT8, BASE_DEC, VALS (valstr_004_060_STCA), 0x02, NULL, HFILL } },
+ { &hf_004_060_APM, { "APM", "asterix.004_060_APM", FT_UINT8, BASE_DEC, VALS (valstr_004_060_APM), 0x80, NULL, HFILL } },
+ { &hf_004_060_RIMCA, { "RIMCA", "asterix.004_060_RIMCA", FT_UINT8, BASE_DEC, VALS (valstr_004_060_RIMCA), 0x40, NULL, HFILL } },
+ { &hf_004_060_ACASRA, { "ACASRA", "asterix.004_060_ACASRA", FT_UINT8, BASE_DEC, VALS (valstr_004_060_ACASRA), 0x20, NULL, HFILL } },
+ { &hf_004_060_NTCA, { "NTCA", "asterix.004_060_NTCA", FT_UINT8, BASE_DEC, VALS (valstr_004_060_NTCA), 0x10, NULL, HFILL } },
+ { &hf_004_060_DG, { "DG", "asterix.004_060_DG", FT_UINT8, BASE_DEC, VALS (valstr_004_060_DG), 0x08, NULL, HFILL } },
+ { &hf_004_060_OF, { "OF", "asterix.004_060_OF", FT_UINT8, BASE_DEC, VALS (valstr_004_060_OF), 0x04, NULL, HFILL } },
+ { &hf_004_060_OL, { "OL", "asterix.004_060_OL", FT_UINT8, BASE_DEC, VALS (valstr_004_060_OL), 0x02, NULL, HFILL } },
+ { &hf_004_060_AIW, { "AIW", "asterix.004_060_AIW", FT_UINT8, BASE_DEC, VALS (valstr_004_060_AIW), 0x80, NULL, HFILL } },
+ { &hf_004_060_PAIW, { "PAIW", "asterix.004_060_PAIW", FT_UINT8, BASE_DEC, VALS (valstr_004_060_PAIW), 0x40, NULL, HFILL } },
+ { &hf_004_060_OCAT, { "OCAT", "asterix.004_060_OCAT", FT_UINT8, BASE_DEC, VALS (valstr_004_060_OCAT), 0x20, NULL, HFILL } },
+ { &hf_004_060_SAM, { "SAM", "asterix.004_060_SAM", FT_UINT8, BASE_DEC, VALS (valstr_004_060_SAM), 0x10, NULL, HFILL } },
+ { &hf_004_060_VCD, { "VCD", "asterix.004_060_VCD", FT_UINT8, BASE_DEC, VALS (valstr_004_060_VCD), 0x08, NULL, HFILL } },
+ { &hf_004_060_CHAM, { "CHAM", "asterix.004_060_CHAM", FT_UINT8, BASE_DEC, VALS (valstr_004_060_CHAM), 0x04, NULL, HFILL } },
+ { &hf_004_060_DSAM, { "DSAM", "asterix.004_060_DSAM", FT_UINT8, BASE_DEC, VALS (valstr_004_060_DSAM), 0x02, NULL, HFILL } },
+ { &hf_004_060_DBPSMARR, { "DBPSMARR", "asterix.004_060_DBPSMARR", FT_UINT8, BASE_DEC, VALS (valstr_004_060_DBPSMARR), 0x80, NULL, HFILL } },
+ { &hf_004_060_DBPSMDEP, { "DBPSMDEP", "asterix.004_060_DBPSMDEP", FT_UINT8, BASE_DEC, VALS (valstr_004_060_DBPSMDEP), 0x40, NULL, HFILL } },
+ { &hf_004_060_DBPSMTL, { "DBPSMTL", "asterix.004_060_DBPSMTL", FT_UINT8, BASE_DEC, VALS (valstr_004_060_DBPSMTL), 0x20, NULL, HFILL } },
+ { &hf_004_060_VRAMCRM, { "VRAMCRM", "asterix.004_060_VRAMCRM", FT_UINT8, BASE_DEC, VALS (valstr_004_060_VRAMCRM), 0x10, NULL, HFILL } },
+ { &hf_004_060_VRAMVTM, { "VRAMVTM", "asterix.004_060_VRAMVTM", FT_UINT8, BASE_DEC, VALS (valstr_004_060_VRAMVTM), 0x08, NULL, HFILL } },
+ { &hf_004_060_VRAMVRM, { "VRAMVRM", "asterix.004_060_VRAMVRM", FT_UINT8, BASE_DEC, VALS (valstr_004_060_VRAMVRM), 0x04, NULL, HFILL } },
+ { &hf_004_060_HAMHD, { "HAMHD", "asterix.004_060_HAMHD", FT_UINT8, BASE_DEC, VALS (valstr_004_060_HAMHD), 0x02, NULL, HFILL } },
+ { &hf_004_060_HAMRD, { "HAMRD", "asterix.004_060_HAMRD", FT_UINT8, BASE_DEC, VALS (valstr_004_060_HAMRD), 0x80, NULL, HFILL } },
+ { &hf_004_060_HAMVD, { "HAMVD", "asterix.004_060_HAMVD", FT_UINT8, BASE_DEC, VALS (valstr_004_060_HAMVD), 0x40, NULL, HFILL } },
+ { &hf_004_060_HVI, { "HVI", "asterix.004_060_HVI", FT_UINT8, BASE_DEC, VALS (valstr_004_060_HVI), 0x20, NULL, HFILL } },
+ { &hf_004_060_LTW, { "LTW", "asterix.004_060_LTW", FT_UINT8, BASE_DEC, VALS (valstr_004_060_LTW), 0x10, NULL, HFILL } },
+ { &hf_004_060_VPM, { "VPM", "asterix.004_060_VPM", FT_UINT8, BASE_DEC, VALS (valstr_004_060_VPM), 0x08, NULL, HFILL } },
+ { &hf_004_060_TTA, { "TTA", "asterix.004_060_TTA", FT_UINT8, BASE_DEC, VALS (valstr_004_060_TTA), 0x04, NULL, HFILL } },
+ { &hf_004_060_CRA, { "CRA", "asterix.004_060_CRA", FT_UINT8, BASE_DEC, VALS (valstr_004_060_CRA), 0x02, NULL, HFILL } },
+ { &hf_004_060_ASM, { "ASM", "asterix.004_060_ASM", FT_UINT8, BASE_DEC, VALS (valstr_004_060_ASM), 0x80, NULL, HFILL } },
+ { &hf_004_060_IAVM, { "IAVM", "asterix.004_060_IAVM", FT_UINT8, BASE_DEC, VALS (valstr_004_060_IAVM), 0x40, NULL, HFILL } },
+ { &hf_004_060_FTD, { "FTD", "asterix.004_060_FTD", FT_UINT8, BASE_DEC, VALS (valstr_004_060_FTD), 0x20, NULL, HFILL } },
+ { &hf_004_060_ITD, { "ITD", "asterix.004_060_ITD", FT_UINT8, BASE_DEC, VALS (valstr_004_060_ITD), 0x10, NULL, HFILL } },
+ { &hf_004_060_IIA, { "IIA", "asterix.004_060_IIA", FT_UINT8, BASE_DEC, VALS (valstr_004_060_IIA), 0x08, NULL, HFILL } },
+ { &hf_004_060_SQW, { "SQW", "asterix.004_060_SQW", FT_UINT8, BASE_DEC, VALS (valstr_004_060_SQW), 0x04, NULL, HFILL } },
+ { &hf_004_060_CUW, { "CUW", "asterix.004_060_CUW", FT_UINT8, BASE_DEC, VALS (valstr_004_060_CUW), 0x02, NULL, HFILL } },
+ { &hf_004_060_CATC, { "CATC", "asterix.004_060_CATC", FT_UINT8, BASE_DEC, VALS (valstr_004_060_CATC), 0x80, NULL, HFILL } },
+ { &hf_004_060_NOCLR, { "NOCLR", "asterix.004_060_NOCLR", FT_UINT8, BASE_DEC, VALS (valstr_004_060_NOCLR), 0x40, NULL, HFILL } },
+ { &hf_004_060_NOMOV, { "NOMOV", "asterix.004_060_NOMOV", FT_UINT8, BASE_DEC, VALS (valstr_004_060_NOMOV), 0x20, NULL, HFILL } },
+ { &hf_004_060_NOH, { "NOH", "asterix.004_060_NOH", FT_UINT8, BASE_DEC, VALS (valstr_004_060_NOH), 0x10, NULL, HFILL } },
+ { &hf_004_060_WRTY, { "WRTY", "asterix.004_060_WRTY", FT_UINT8, BASE_DEC, VALS (valstr_004_060_WRTY), 0x08, NULL, HFILL } },
+ { &hf_004_060_STOCC, { "STOCC", "asterix.004_060_STOCC", FT_UINT8, BASE_DEC, VALS (valstr_004_060_STOCC), 0x04, NULL, HFILL } },
+ { &hf_004_060_ONGOING, { "ONGOING", "asterix.004_060_ONGOING", FT_UINT8, BASE_DEC, VALS (valstr_004_060_ONGOING), 0x02, NULL, HFILL } },
+ { &hf_004_070, { "070, Conflict Timing and Separation", "asterix.004_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_070_TC, { "TC, Time to Conflict", "asterix.004_070_TC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_070_TC_VALUE, { "Time to Conflict, [s]", "asterix.004_070_TC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_070_TCA, { "TCA, Time to Closest Approach", "asterix.004_070_TCA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_070_TCA_VALUE, { "Time to Closest Approach, [s]", "asterix.004_070_TCA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_070_CHS, { "CHS, Current Horizontal Separation", "asterix.004_070_CHS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_070_CHS_VALUE, { "Current Horizontal Separation, [m]", "asterix.004_070_CHS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_070_MHS, { "MHS, Estimated Minimum Horizontal Separation", "asterix.004_070_MHS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_070_MHS_VALUE, { "Estimated Minimum Horizontal Separation, [m]", "asterix.004_070_MHS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_070_CVS, { "CVS, Current Vertical Separation", "asterix.004_070_CVS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_070_CVS_VALUE, { "Current Vertical Separation, [ft]", "asterix.004_070_CVS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_070_MVS, { "MVS, Estimated Minimum Vertical Separation", "asterix.004_070_MVS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_070_MVS_VALUE, { "Estimated Minimum Vertical Separation, [ft]", "asterix.004_070_MVS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_074, { "074, Longitudinal Deviation", "asterix.004_074", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_074_VALUE, { "Longitudinal Deviation, [m]", "asterix.004_074_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_075, { "075, Transversal Distance Deviation", "asterix.004_075", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_075_VALUE, { "Transversal Distance Deviation, [m]", "asterix.004_075_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_076, { "076, Vertical Deviation", "asterix.004_076", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_076_VALUE, { "Vertical Deviation, [ft]", "asterix.004_076_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_100, { "100, Area Definition", "asterix.004_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_100_AN, { "AN, Area Name", "asterix.004_100_AN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_100_AN_VALUE, { "Area Name", "asterix.004_100_AN_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_100_CAN, { "CAN, Crossing Area Name", "asterix.004_100_CAN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_100_CAN_VALUE, { "Crossing Area Name", "asterix.004_100_CAN_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_100_RT1, { "RT1, Runway/Taxiway Designator 1", "asterix.004_100_RT1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_100_RT1_VALUE, { "Runway/Taxiway Designator 1", "asterix.004_100_RT1_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_100_RT2, { "RT2, Runway/Taxiway Designator 2", "asterix.004_100_RT2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_100_RT2_VALUE, { "Runway/Taxiway Designator 2", "asterix.004_100_RT2_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_100_SB, { "SB, Stop Bar Designator", "asterix.004_100_SB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_100_SB_VALUE, { "Stop Bar Designator", "asterix.004_100_SB_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_100_G, { "G, Gate Designator", "asterix.004_100_G", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_100_G_VALUE, { "Gate Designator", "asterix.004_100_G_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_110, { "110, FDPS Sector Control Identification", "asterix.004_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_110_CEN, { "CEN", "asterix.004_110_CEN", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_110_POS, { "POS", "asterix.004_110_POS", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_120, { "120, Conflict Characteristics", "asterix.004_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_120_CN, { "CN, Conflict Nature", "asterix.004_120_CN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_120_CN_MAS, { "MAS, Conflict Location in Military Airspace", "asterix.004_120_CN_MAS", FT_UINT8, BASE_DEC, VALS (valstr_004_120_CN_MAS), 0x80, NULL, HFILL } },
+ { &hf_004_120_CN_CAS, { "CAS, Conflict Location in Civil Airspace", "asterix.004_120_CN_CAS", FT_UINT8, BASE_DEC, VALS (valstr_004_120_CN_CAS), 0x40, NULL, HFILL } },
+ { &hf_004_120_CN_FLD, { "FLD, Fast Lateral Divergence", "asterix.004_120_CN_FLD", FT_UINT8, BASE_DEC, VALS (valstr_004_120_CN_FLD), 0x20, NULL, HFILL } },
+ { &hf_004_120_CN_FVD, { "FVD, Fast Vertical Divergence", "asterix.004_120_CN_FVD", FT_UINT8, BASE_DEC, VALS (valstr_004_120_CN_FVD), 0x10, NULL, HFILL } },
+ { &hf_004_120_CN_TYPE, { "TYPE, Type of Separation Infringement", "asterix.004_120_CN_TYPE", FT_UINT8, BASE_DEC, VALS (valstr_004_120_CN_TYPE), 0x08, NULL, HFILL } },
+ { &hf_004_120_CN_CROSS, { "CROSS, Crossing Test", "asterix.004_120_CN_CROSS", FT_UINT8, BASE_DEC, VALS (valstr_004_120_CN_CROSS), 0x04, NULL, HFILL } },
+ { &hf_004_120_CN_DIV, { "DIV, Divergence Test", "asterix.004_120_CN_DIV", FT_UINT8, BASE_DEC, VALS (valstr_004_120_CN_DIV), 0x02, NULL, HFILL } },
+ { &hf_004_120_CN_RRC, { "RRC, Runway/Runway Crossing in RIMCAS", "asterix.004_120_CN_RRC", FT_UINT8, BASE_DEC, VALS (valstr_004_120_CN_RRC), 0x80, NULL, HFILL } },
+ { &hf_004_120_CN_RTC, { "RTC, Runway/Taxiway Crossing in RIMCAS", "asterix.004_120_CN_RTC", FT_UINT8, BASE_DEC, VALS (valstr_004_120_CN_RTC), 0x40, NULL, HFILL } },
+ { &hf_004_120_CN_MRVA, { "MRVA", "asterix.004_120_CN_MRVA", FT_UINT8, BASE_DEC, VALS (valstr_004_120_CN_MRVA), 0x20, NULL, HFILL } },
+ { &hf_004_120_CN_VRAMCRM, { "VRAMCRM", "asterix.004_120_CN_VRAMCRM", FT_UINT8, BASE_DEC, VALS (valstr_004_120_CN_VRAMCRM), 0x10, NULL, HFILL } },
+ { &hf_004_120_CN_VRAMVRM, { "VRAMVRM", "asterix.004_120_CN_VRAMVRM", FT_UINT8, BASE_DEC, VALS (valstr_004_120_CN_VRAMVRM), 0x08, NULL, HFILL } },
+ { &hf_004_120_CN_VRAMVTM, { "VRAMVTM", "asterix.004_120_CN_VRAMVTM", FT_UINT8, BASE_DEC, VALS (valstr_004_120_CN_VRAMVTM), 0x04, NULL, HFILL } },
+ { &hf_004_120_CN_HAMHD, { "HAMHD", "asterix.004_120_CN_HAMHD", FT_UINT8, BASE_DEC, VALS (valstr_004_120_CN_HAMHD), 0x02, NULL, HFILL } },
+ { &hf_004_120_CN_HAMRD, { "HAMRD", "asterix.004_120_CN_HAMRD", FT_UINT8, BASE_DEC, VALS (valstr_004_120_CN_HAMRD), 0x80, NULL, HFILL } },
+ { &hf_004_120_CN_HAMVD, { "HAMVD", "asterix.004_120_CN_HAMVD", FT_UINT8, BASE_DEC, VALS (valstr_004_120_CN_HAMVD), 0x40, NULL, HFILL } },
+ { &hf_004_120_CN_DBPSMARR, { "DBPSMARR", "asterix.004_120_CN_DBPSMARR", FT_UINT8, BASE_DEC, VALS (valstr_004_120_CN_DBPSMARR), 0x20, NULL, HFILL } },
+ { &hf_004_120_CN_DBPSMDEP, { "DBPSMDEP", "asterix.004_120_CN_DBPSMDEP", FT_UINT8, BASE_DEC, VALS (valstr_004_120_CN_DBPSMDEP), 0x10, NULL, HFILL } },
+ { &hf_004_120_CN_DBPSMTL, { "DBPSMTL", "asterix.004_120_CN_DBPSMTL", FT_UINT8, BASE_DEC, VALS (valstr_004_120_CN_DBPSMTL), 0x08, NULL, HFILL } },
+ { &hf_004_120_CN_AIW, { "AIW", "asterix.004_120_CN_AIW", FT_UINT8, BASE_DEC, VALS (valstr_004_120_CN_AIW), 0x04, NULL, HFILL } },
+ { &hf_004_120_CC, { "CC, Conflict Classification", "asterix.004_120_CC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_120_CC_TID, { "TID, Identification of Conflict Categories Definition Table", "asterix.004_120_CC_TID", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_004_120_CC_CP, { "CP, Conflict Properties Class", "asterix.004_120_CC_CP", FT_UINT8, BASE_DEC, NULL, 0x0e, NULL, HFILL } },
+ { &hf_004_120_CC_CS, { "CS, Conflict Severity", "asterix.004_120_CC_CS", FT_UINT8, BASE_DEC, VALS (valstr_004_120_CC_CS), 0x01, NULL, HFILL } },
+ { &hf_004_120_CP, { "CP, Conflict Probability", "asterix.004_120_CP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_120_CP_VALUE, { "Conflict Probability, [%]", "asterix.004_120_CP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_120_CD, { "CD, Conflict Duration", "asterix.004_120_CD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_120_CD_VALUE, { "Conflict Duration, [s]", "asterix.004_120_CD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_170, { "170, Aircraft Identification and Characteristics 1", "asterix.004_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_170_AI1, { "AI1, Aircraft Identifier (in 7 Characters) of Aircraft 1 Involved in the Conflict", "asterix.004_170_AI1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_170_AI1_VALUE, { "Aircraft Identifier (in 7 Characters) of Aircraft 1 Involved in the Conflict", "asterix.004_170_AI1_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_170_M31, { "M31, Mode 3/A Code Aircraft 1", "asterix.004_170_M31", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_170_M31_MODE3A, { "MODE3A, Mode-3/A Code (Converted Into Octal Representation) of Aircraft 1 Involved in the Conflict", "asterix.004_170_M31_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_004_170_CPW, { "CPW, Predicted Conflict Position Target 1 in WGS-84 Coordinates", "asterix.004_170_CPW", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_170_CPW_LAT, { "LAT, In WGS-84 in Two’s Complement, [°]", "asterix.004_170_CPW_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_170_CPW_LON, { "LON, In WGS-84 in Two’s Complement, [°]", "asterix.004_170_CPW_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_170_CPW_ALT, { "ALT, Altitude of Predicted Conflict, [ft]", "asterix.004_170_CPW_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_170_CPC, { "CPC, Predicted Conflict Position for the Aircraft 1 Involved in the Conflict", "asterix.004_170_CPC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_170_CPC_X, { "X, Starting X-position of the Conflict, [m]", "asterix.004_170_CPC_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_170_CPC_Y, { "Y, Starting Y-position of the Conflict, [m]", "asterix.004_170_CPC_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_170_CPC_Z, { "Z, Starting Z-position of the Conflict, [ft]", "asterix.004_170_CPC_Z", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_170_TT1, { "TT1, Time to Runway Threshold for First Approaching Aircraft in a RIMCA", "asterix.004_170_TT1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_170_TT1_VALUE, { "Time to Runway Threshold for First Approaching Aircraft in a RIMCA, [s]", "asterix.004_170_TT1_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_170_DT1, { "DT1, Distance to Runway Threshold for Aircraft 1 Involved in a RIMCA", "asterix.004_170_DT1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_170_DT1_VALUE, { "Distance to Runway Threshold for Aircraft 1 Involved in a RIMCA, [m]", "asterix.004_170_DT1_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_170_AC1, { "AC1, Characteristics of Aircraft 1 Involved in the Conflict", "asterix.004_170_AC1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_170_AC1_GATOAT, { "GATOAT, Identification of Conflict Categories Definition Table", "asterix.004_170_AC1_GATOAT", FT_UINT8, BASE_DEC, VALS (valstr_004_170_AC1_GATOAT), 0xc0, NULL, HFILL } },
+ { &hf_004_170_AC1_FR1FR2, { "FR1FR2, Flight Rules", "asterix.004_170_AC1_FR1FR2", FT_UINT8, BASE_DEC, VALS (valstr_004_170_AC1_FR1FR2), 0x30, NULL, HFILL } },
+ { &hf_004_170_AC1_RVSM, { "RVSM", "asterix.004_170_AC1_RVSM", FT_UINT8, BASE_DEC, VALS (valstr_004_170_AC1_RVSM), 0x0c, NULL, HFILL } },
+ { &hf_004_170_AC1_HPR, { "HPR", "asterix.004_170_AC1_HPR", FT_UINT8, BASE_DEC, VALS (valstr_004_170_AC1_HPR), 0x02, NULL, HFILL } },
+ { &hf_004_170_AC1_CDM, { "CDM, Climbing/Descending Mode", "asterix.004_170_AC1_CDM", FT_UINT8, BASE_DEC, VALS (valstr_004_170_AC1_CDM), 0xc0, NULL, HFILL } },
+ { &hf_004_170_AC1_PRI, { "PRI", "asterix.004_170_AC1_PRI", FT_UINT8, BASE_DEC, VALS (valstr_004_170_AC1_PRI), 0x20, NULL, HFILL } },
+ { &hf_004_170_AC1_GV, { "GV", "asterix.004_170_AC1_GV", FT_UINT8, BASE_DEC, VALS (valstr_004_170_AC1_GV), 0x10, NULL, HFILL } },
+ { &hf_004_170_MS1, { "MS1, Aircraft Identification Downloaded from Aircraft 1 Involved in the Conflict If Equipped with a Mode-S Transponder", "asterix.004_170_MS1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_170_MS1_VALUE, { "Aircraft Identification Downloaded from Aircraft 1 Involved in the Conflict If Equipped with a Mode-S Transponder", "asterix.004_170_MS1_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_170_FP1, { "FP1, Number of the Flight Plan Correlated to Aircraft 1 Involved in the Conflict", "asterix.004_170_FP1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_170_FP1_NBR, { "NBR", "asterix.004_170_FP1_NBR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_170_CF1, { "CF1, Cleared Flight Level for Aircraft 1 Involved in the Conflict", "asterix.004_170_CF1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_170_CF1_VALUE, { "Cleared Flight Level for Aircraft 1 Involved in the Conflict, [FL]", "asterix.004_170_CF1_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_171, { "171, Aircraft Identification and Characteristics 2", "asterix.004_171", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_171_AI2, { "AI2, Aircraft Identifier (in 7 Characters) of Aircraft 2 Involved in the Conflict", "asterix.004_171_AI2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_171_AI2_VALUE, { "Aircraft Identifier (in 7 Characters) of Aircraft 2 Involved in the Conflict", "asterix.004_171_AI2_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_171_M32, { "M32, Mode 3/A Code Aircraft 2", "asterix.004_171_M32", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_171_M32_MODE3A, { "MODE3A, Mode-3/A Code (Converted Into Octal Representation) of Aircraft 2 Involved in the Conflict", "asterix.004_171_M32_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_004_171_CPW, { "CPW, Predicted Conflict Position Target 2 in WGS-84 Coordinates", "asterix.004_171_CPW", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_171_CPW_LAT, { "LAT, In WGS-84 in Two’s Complement, [°]", "asterix.004_171_CPW_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_171_CPW_LON, { "LON, In WGS-84 in Two’s Complement, [°]", "asterix.004_171_CPW_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_171_CPW_ALT, { "ALT, Altitude of Predicted Conflict, [ft]", "asterix.004_171_CPW_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_171_CPL, { "CPL, Predicted Conflict Position for the Aircraft 2 Involved in the Conflict", "asterix.004_171_CPL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_171_CPL_X, { "X, Starting X-position of the Conflict, [m]", "asterix.004_171_CPL_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_171_CPL_Y, { "Y, Starting Y-position of the Conflict, [m]", "asterix.004_171_CPL_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_171_CPL_Z, { "Z, Starting Z-position of the Conflict, [ft]", "asterix.004_171_CPL_Z", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_171_TT2, { "TT2, Time to Runway Threshold for Second Approaching Aircraft in a RIMCA", "asterix.004_171_TT2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_171_TT2_VALUE, { "Time to Runway Threshold for Second Approaching Aircraft in a RIMCA, [s]", "asterix.004_171_TT2_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_171_DT2, { "DT2, Distance to Runway Threshold for Aircraft 2 Involved in a RIMCA", "asterix.004_171_DT2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_171_DT2_VALUE, { "Distance to Runway Threshold for Aircraft 2 Involved in a RIMCA, [m]", "asterix.004_171_DT2_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_171_AC2, { "AC2, Characteristics of Aircraft 2 Involved in the Conflict", "asterix.004_171_AC2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_171_AC2_GATOAT, { "GATOAT, Identification of Conflict Categories Definition Table", "asterix.004_171_AC2_GATOAT", FT_UINT8, BASE_DEC, VALS (valstr_004_171_AC2_GATOAT), 0xc0, NULL, HFILL } },
+ { &hf_004_171_AC2_FR1FR2, { "FR1FR2, Flight Rules", "asterix.004_171_AC2_FR1FR2", FT_UINT8, BASE_DEC, VALS (valstr_004_171_AC2_FR1FR2), 0x30, NULL, HFILL } },
+ { &hf_004_171_AC2_RVSM, { "RVSM", "asterix.004_171_AC2_RVSM", FT_UINT8, BASE_DEC, VALS (valstr_004_171_AC2_RVSM), 0x0c, NULL, HFILL } },
+ { &hf_004_171_AC2_HPR, { "HPR", "asterix.004_171_AC2_HPR", FT_UINT8, BASE_DEC, VALS (valstr_004_171_AC2_HPR), 0x02, NULL, HFILL } },
+ { &hf_004_171_AC2_CDM, { "CDM, Climbing/Descending Mode", "asterix.004_171_AC2_CDM", FT_UINT8, BASE_DEC, VALS (valstr_004_171_AC2_CDM), 0xc0, NULL, HFILL } },
+ { &hf_004_171_AC2_PRI, { "PRI", "asterix.004_171_AC2_PRI", FT_UINT8, BASE_DEC, VALS (valstr_004_171_AC2_PRI), 0x20, NULL, HFILL } },
+ { &hf_004_171_AC2_GV, { "GV", "asterix.004_171_AC2_GV", FT_UINT8, BASE_DEC, VALS (valstr_004_171_AC2_GV), 0x10, NULL, HFILL } },
+ { &hf_004_171_MS2, { "MS2, Aircraft Identification Downloaded From Aircraft 2 Involved in the Conflict If Eequipped With a Mode-S Transponder", "asterix.004_171_MS2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_171_MS2_VALUE, { "Aircraft Identification Downloaded From Aircraft 2 Involved in the Conflict If Eequipped With a Mode-S Transponder", "asterix.004_171_MS2_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_171_FP2, { "FP2, Number of the Flight Plan Correlated to Aircraft 2 Involved in the Conflict", "asterix.004_171_FP2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_171_FP2_NBR, { "NBR", "asterix.004_171_FP2_NBR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_171_CF2, { "CF2, Cleared Flight Level for Aircraft 2 Involved in the Conflict", "asterix.004_171_CF2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_171_CF2_VALUE, { "Cleared Flight Level for Aircraft 2 Involved in the Conflict, [FL]", "asterix.004_171_CF2_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_RE, { "RE, Reserved Expansion Field", "asterix.004_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_004_SP, { "SP, Special Purpose Field", "asterix.004_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_000, { "000, Message Type", "asterix.008_V1_2_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_000_VALUE, { "Message Type", "asterix.008_V1_2_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_008_V1_2_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_010, { "010, Data Source Identifier", "asterix.008_V1_2_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_010_SAC, { "SAC, System Area Code", "asterix.008_V1_2_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_010_SIC, { "SIC, System Identification Code", "asterix.008_V1_2_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_020, { "020, Vector Qualifier", "asterix.008_V1_2_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_020_ORG, { "ORG", "asterix.008_V1_2_020_ORG", FT_UINT8, BASE_DEC, VALS (valstr_008_V1_2_020_ORG), 0x80, NULL, HFILL } },
+ { &hf_008_V1_2_020_I, { "I, Intensity Level", "asterix.008_V1_2_020_I", FT_UINT8, BASE_DEC, NULL, 0x70, NULL, HFILL } },
+ { &hf_008_V1_2_020_S, { "S, Shading Orientation with Respect to North", "asterix.008_V1_2_020_S", FT_UINT8, BASE_DEC, VALS (valstr_008_V1_2_020_S), 0x0e, NULL, HFILL } },
+ { &hf_008_V1_2_020_TST, { "TST", "asterix.008_V1_2_020_TST", FT_UINT8, BASE_DEC, VALS (valstr_008_V1_2_020_TST), 0x04, NULL, HFILL } },
+ { &hf_008_V1_2_020_ER, { "ER", "asterix.008_V1_2_020_ER", FT_UINT8, BASE_DEC, VALS (valstr_008_V1_2_020_ER), 0x02, NULL, HFILL } },
+ { &hf_008_V1_2_034, { "034, Sequence of Polar Vectors in SPF Notation", "asterix.008_V1_2_034", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_034_STR, { "STR, Start Range", "asterix.008_V1_2_034_STR", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_034_ENDR, { "ENDR, End Range", "asterix.008_V1_2_034_ENDR", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_034_AZ, { "AZ, Azimuth, [°]", "asterix.008_V1_2_034_AZ", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_036, { "036, Sequence of Cartesian Vectors in SPF Notation", "asterix.008_V1_2_036", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_036_X, { "X, X-Component", "asterix.008_V1_2_036_X", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_036_Y, { "Y, Y-Component", "asterix.008_V1_2_036_Y", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_036_LENGTH, { "LENGTH, Length", "asterix.008_V1_2_036_LENGTH", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_038, { "038, Sequence of Weather Vectors in SPF Notation", "asterix.008_V1_2_038", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_038_X1, { "X1, X1-Component", "asterix.008_V1_2_038_X1", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_038_Y1, { "Y1, Y1-Component", "asterix.008_V1_2_038_Y1", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_038_X2, { "X2, X2-Component", "asterix.008_V1_2_038_X2", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_038_Y2, { "Y2, Y2-Component", "asterix.008_V1_2_038_Y2", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_040, { "040, Contour Identifier", "asterix.008_V1_2_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_040_ORG, { "ORG", "asterix.008_V1_2_040_ORG", FT_UINT8, BASE_DEC, VALS (valstr_008_V1_2_040_ORG), 0x80, NULL, HFILL } },
+ { &hf_008_V1_2_040_I, { "I, Intensity Level", "asterix.008_V1_2_040_I", FT_UINT8, BASE_DEC, NULL, 0x70, NULL, HFILL } },
+ { &hf_008_V1_2_040_FSTLST, { "FSTLST", "asterix.008_V1_2_040_FSTLST", FT_UINT8, BASE_DEC, VALS (valstr_008_V1_2_040_FSTLST), 0x03, NULL, HFILL } },
+ { &hf_008_V1_2_040_CSN, { "CSN, Contour Serial Number", "asterix.008_V1_2_040_CSN", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_050, { "050, Sequence of Contour Points in SPF Notation", "asterix.008_V1_2_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_050_X1, { "X1", "asterix.008_V1_2_050_X1", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_050_Y1, { "Y1", "asterix.008_V1_2_050_Y1", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_090, { "090, Time of Day", "asterix.008_V1_2_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_090_VALUE, { "Time of Day, [s]", "asterix.008_V1_2_090_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_100, { "100, Processing Status", "asterix.008_V1_2_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_100_F, { "F, Scaling Factor", "asterix.008_V1_2_100_F", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_100_R, { "R, Current Reduction Stage in Use", "asterix.008_V1_2_100_R", FT_UINT8, BASE_DEC, NULL, 0x07, NULL, HFILL } },
+ { &hf_008_V1_2_100_Q, { "Q, Processing Parameters", "asterix.008_V1_2_100_Q", FT_UINT16, BASE_DEC, NULL, 0xfffe, NULL, HFILL } },
+ { &hf_008_V1_2_110, { "110, Station Configuration Status", "asterix.008_V1_2_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_110_Subitem, { "Subitem, Subitem", "asterix.008_V1_2_110_Subitem", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_008_V1_2_120, { "120, Total Number of Items Constituting One Weather Picture", "asterix.008_V1_2_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_120_VALUE, { "Total Number of Items Constituting One Weather Picture", "asterix.008_V1_2_120_VALUE", FT_UINT16, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_2_SP, { "SP, Special Purpose Field", "asterix.008_V1_2_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_000, { "000, Message Type", "asterix.008_V1_3_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_000_VALUE, { "Message Type", "asterix.008_V1_3_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_008_V1_3_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_010, { "010, Data Source Identifier", "asterix.008_V1_3_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_010_SAC, { "SAC, System Area Code", "asterix.008_V1_3_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_010_SIC, { "SIC, System Identification Code", "asterix.008_V1_3_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_020, { "020, Vector Qualifier", "asterix.008_V1_3_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_020_ORG, { "ORG", "asterix.008_V1_3_020_ORG", FT_UINT8, BASE_DEC, VALS (valstr_008_V1_3_020_ORG), 0x80, NULL, HFILL } },
+ { &hf_008_V1_3_020_I, { "I, Intensity Level", "asterix.008_V1_3_020_I", FT_UINT8, BASE_DEC, NULL, 0x70, NULL, HFILL } },
+ { &hf_008_V1_3_020_S, { "S, Shading Orientation with Respect to North", "asterix.008_V1_3_020_S", FT_UINT8, BASE_DEC, VALS (valstr_008_V1_3_020_S), 0x0e, NULL, HFILL } },
+ { &hf_008_V1_3_020_TST, { "TST", "asterix.008_V1_3_020_TST", FT_UINT8, BASE_DEC, VALS (valstr_008_V1_3_020_TST), 0x04, NULL, HFILL } },
+ { &hf_008_V1_3_020_ER, { "ER", "asterix.008_V1_3_020_ER", FT_UINT8, BASE_DEC, VALS (valstr_008_V1_3_020_ER), 0x02, NULL, HFILL } },
+ { &hf_008_V1_3_034, { "034, Sequence of Polar Vectors in SPF Notation", "asterix.008_V1_3_034", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_034_STR, { "STR, Start Range", "asterix.008_V1_3_034_STR", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_034_ENDR, { "ENDR, End Range", "asterix.008_V1_3_034_ENDR", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_034_AZ, { "AZ, Azimuth, [°]", "asterix.008_V1_3_034_AZ", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_036, { "036, Sequence of Cartesian Vectors in SPF Notation", "asterix.008_V1_3_036", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_036_X, { "X, X-Component", "asterix.008_V1_3_036_X", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_036_Y, { "Y, Y-Component", "asterix.008_V1_3_036_Y", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_036_LENGTH, { "LENGTH, Length", "asterix.008_V1_3_036_LENGTH", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_038, { "038, Sequence of Weather Vectors in SPF Notation", "asterix.008_V1_3_038", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_038_X1, { "X1, X1-Component", "asterix.008_V1_3_038_X1", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_038_Y1, { "Y1, Y1-Component", "asterix.008_V1_3_038_Y1", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_038_X2, { "X2, X2-Component", "asterix.008_V1_3_038_X2", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_038_Y2, { "Y2, Y2-Component", "asterix.008_V1_3_038_Y2", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_040, { "040, Contour Identifier", "asterix.008_V1_3_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_040_ORG, { "ORG", "asterix.008_V1_3_040_ORG", FT_UINT8, BASE_DEC, VALS (valstr_008_V1_3_040_ORG), 0x80, NULL, HFILL } },
+ { &hf_008_V1_3_040_I, { "I, Intensity Level", "asterix.008_V1_3_040_I", FT_UINT8, BASE_DEC, NULL, 0x70, NULL, HFILL } },
+ { &hf_008_V1_3_040_FSTLST, { "FSTLST", "asterix.008_V1_3_040_FSTLST", FT_UINT8, BASE_DEC, VALS (valstr_008_V1_3_040_FSTLST), 0x03, NULL, HFILL } },
+ { &hf_008_V1_3_040_CSN, { "CSN, Contour Serial Number", "asterix.008_V1_3_040_CSN", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_050, { "050, Sequence of Contour Points in SPF Notation", "asterix.008_V1_3_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_050_X1, { "X1", "asterix.008_V1_3_050_X1", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_050_Y1, { "Y1", "asterix.008_V1_3_050_Y1", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_090, { "090, Time of Day", "asterix.008_V1_3_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_090_VALUE, { "Time of Day, [s]", "asterix.008_V1_3_090_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_100, { "100, Processing Status", "asterix.008_V1_3_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_100_F, { "F, Scaling Factor", "asterix.008_V1_3_100_F", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_100_R, { "R, Current Reduction Stage in Use", "asterix.008_V1_3_100_R", FT_UINT8, BASE_DEC, NULL, 0x07, NULL, HFILL } },
+ { &hf_008_V1_3_100_Q, { "Q, Processing Parameters", "asterix.008_V1_3_100_Q", FT_UINT16, BASE_DEC, NULL, 0xfffe, NULL, HFILL } },
+ { &hf_008_V1_3_110, { "110, Station Configuration Status", "asterix.008_V1_3_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_110_Subitem, { "Subitem, Subitem", "asterix.008_V1_3_110_Subitem", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_008_V1_3_120, { "120, Total Number of Items Constituting One Weather Picture", "asterix.008_V1_3_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_120_VALUE, { "Total Number of Items Constituting One Weather Picture", "asterix.008_V1_3_120_VALUE", FT_UINT16, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_V1_3_SP, { "SP, Special Purpose Field", "asterix.008_V1_3_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_000, { "000, Message Type", "asterix.008_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_000_VALUE, { "Message Type", "asterix.008_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_008_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_008_010, { "010, Data Source Identifier", "asterix.008_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_010_SAC, { "SAC, System Area Code", "asterix.008_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_010_SIC, { "SIC, System Identification Code", "asterix.008_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_020, { "020, Vector Qualifier", "asterix.008_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_020_ORG, { "ORG", "asterix.008_020_ORG", FT_UINT8, BASE_DEC, VALS (valstr_008_020_ORG), 0x80, NULL, HFILL } },
+ { &hf_008_020_I, { "I, Intensity Level", "asterix.008_020_I", FT_UINT8, BASE_DEC, NULL, 0x70, NULL, HFILL } },
+ { &hf_008_020_S, { "S, Shading Orientation with Respect to North", "asterix.008_020_S", FT_UINT8, BASE_DEC, VALS (valstr_008_020_S), 0x0e, NULL, HFILL } },
+ { &hf_008_020_TST, { "TST", "asterix.008_020_TST", FT_UINT8, BASE_DEC, VALS (valstr_008_020_TST), 0x04, NULL, HFILL } },
+ { &hf_008_020_ER, { "ER", "asterix.008_020_ER", FT_UINT8, BASE_DEC, VALS (valstr_008_020_ER), 0x02, NULL, HFILL } },
+ { &hf_008_034, { "034, Sequence of Polar Vectors in SPF Notation", "asterix.008_034", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_034_STR, { "STR, Start Range", "asterix.008_034_STR", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_034_ENDR, { "ENDR, End Range", "asterix.008_034_ENDR", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_034_AZ, { "AZ, Azimuth, [°]", "asterix.008_034_AZ", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_036, { "036, Sequence of Cartesian Vectors in SPF Notation", "asterix.008_036", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_036_X, { "X, X-Component", "asterix.008_036_X", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_036_Y, { "Y, Y-Component", "asterix.008_036_Y", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_036_LENGTH, { "LENGTH, Length", "asterix.008_036_LENGTH", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_038, { "038, Sequence of Weather Vectors in SPF Notation", "asterix.008_038", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_038_X1, { "X1, X1-Component", "asterix.008_038_X1", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_038_Y1, { "Y1, Y1-Component", "asterix.008_038_Y1", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_038_X2, { "X2, X2-Component", "asterix.008_038_X2", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_038_Y2, { "Y2, Y2-Component", "asterix.008_038_Y2", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_040, { "040, Contour Identifier", "asterix.008_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_040_ORG, { "ORG", "asterix.008_040_ORG", FT_UINT8, BASE_DEC, VALS (valstr_008_040_ORG), 0x80, NULL, HFILL } },
+ { &hf_008_040_I, { "I, Intensity Level", "asterix.008_040_I", FT_UINT8, BASE_DEC, NULL, 0x70, NULL, HFILL } },
+ { &hf_008_040_FSTLST, { "FSTLST", "asterix.008_040_FSTLST", FT_UINT8, BASE_DEC, VALS (valstr_008_040_FSTLST), 0x03, NULL, HFILL } },
+ { &hf_008_040_CSN, { "CSN, Contour Serial Number", "asterix.008_040_CSN", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_050, { "050, Sequence of Contour Points in SPF Notation", "asterix.008_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_050_X1, { "X1", "asterix.008_050_X1", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_050_Y1, { "Y1", "asterix.008_050_Y1", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_090, { "090, Time of Day", "asterix.008_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_090_VALUE, { "Time of Day, [s]", "asterix.008_090_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_100, { "100, Processing Status", "asterix.008_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_100_F, { "F, Scaling Factor", "asterix.008_100_F", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_100_R, { "R, Current Reduction Stage in Use", "asterix.008_100_R", FT_UINT8, BASE_DEC, NULL, 0x07, NULL, HFILL } },
+ { &hf_008_100_Q, { "Q, Processing Parameters", "asterix.008_100_Q", FT_UINT16, BASE_DEC, NULL, 0xfffe, NULL, HFILL } },
+ { &hf_008_110, { "110, Station Configuration Status", "asterix.008_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_110_Subitem, { "Subitem, Subitem", "asterix.008_110_Subitem", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_008_120, { "120, Total Number of Items Constituting One Weather Picture", "asterix.008_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_120_VALUE, { "Total Number of Items Constituting One Weather Picture", "asterix.008_120_VALUE", FT_UINT16, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_008_SP, { "SP, Special Purpose Field", "asterix.008_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_V2_1_000, { "000, Message Type", "asterix.009_V2_1_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_V2_1_000_VALUE, { "Message Type", "asterix.009_V2_1_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_009_V2_1_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_009_V2_1_010, { "010, Data Source Identifier", "asterix.009_V2_1_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_V2_1_010_SAC, { "SAC, System Area Code", "asterix.009_V2_1_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_V2_1_010_SIC, { "SIC, System Identification Code", "asterix.009_V2_1_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_V2_1_020, { "020, Vector Qualifier", "asterix.009_V2_1_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_V2_1_020_ORG, { "ORG", "asterix.009_V2_1_020_ORG", FT_UINT8, BASE_DEC, VALS (valstr_009_V2_1_020_ORG), 0x80, NULL, HFILL } },
+ { &hf_009_V2_1_020_I, { "I, Intensity Level", "asterix.009_V2_1_020_I", FT_UINT8, BASE_DEC, NULL, 0x70, NULL, HFILL } },
+ { &hf_009_V2_1_020_S, { "S, Shading Orientation with Respect to North", "asterix.009_V2_1_020_S", FT_UINT8, BASE_DEC, VALS (valstr_009_V2_1_020_S), 0x0e, NULL, HFILL } },
+ { &hf_009_V2_1_030, { "030, Sequence of Cartesian Vectors", "asterix.009_V2_1_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_V2_1_030_X, { "X, X-coordinate, [NM]", "asterix.009_V2_1_030_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_V2_1_030_Y, { "Y, Y-coordinate, [NM]", "asterix.009_V2_1_030_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_V2_1_030_L, { "L, Vector Length", "asterix.009_V2_1_030_L", FT_UINT16, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_V2_1_060, { "060, Synchronisation/Control Signal", "asterix.009_V2_1_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_V2_1_060_SN, { "SN, Step Number", "asterix.009_V2_1_060_SN", FT_UINT8, BASE_DEC, NULL, 0xfc, NULL, HFILL } },
+ { &hf_009_V2_1_070, { "070, Time of Day", "asterix.009_V2_1_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_V2_1_070_VALUE, { "Time of Day, [s]", "asterix.009_V2_1_070_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_V2_1_080, { "080, Processing Status", "asterix.009_V2_1_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_V2_1_080_F, { "F, Scaling Factor", "asterix.009_V2_1_080_F", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_V2_1_080_R, { "R, Current Reduction Stage in Use", "asterix.009_V2_1_080_R", FT_UINT8, BASE_DEC, NULL, 0x07, NULL, HFILL } },
+ { &hf_009_V2_1_080_Q, { "Q, Processing Parameters", "asterix.009_V2_1_080_Q", FT_UINT16, BASE_DEC, NULL, 0xfffe, NULL, HFILL } },
+ { &hf_009_V2_1_090, { "090, Radar Configuration and Status", "asterix.009_V2_1_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_V2_1_090_SAC, { "SAC, SAC of Radar Concerned", "asterix.009_V2_1_090_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_V2_1_090_SIC, { "SIC, SIC of Radar Concerned", "asterix.009_V2_1_090_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_V2_1_090_CP, { "CP, Circular Polarisation", "asterix.009_V2_1_090_CP", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_009_V2_1_090_WO, { "WO, Weather Channel Overload", "asterix.009_V2_1_090_WO", FT_UINT8, BASE_DEC, NULL, 0x08, NULL, HFILL } },
+ { &hf_009_V2_1_090_R, { "R, Reduction Step in Use By Radar Concerned", "asterix.009_V2_1_090_R", FT_UINT8, BASE_DEC, NULL, 0x07, NULL, HFILL } },
+ { &hf_009_V2_1_100, { "100, Vector Count", "asterix.009_V2_1_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_V2_1_100_VALUE, { "Vector Count", "asterix.009_V2_1_100_VALUE", FT_UINT16, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_000, { "000, Message Type", "asterix.009_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_000_VALUE, { "Message Type", "asterix.009_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_009_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_009_010, { "010, Data Source Identifier", "asterix.009_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_010_SAC, { "SAC, System Area Code", "asterix.009_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_010_SIC, { "SIC, System Identification Code", "asterix.009_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_020, { "020, Vector Qualifier", "asterix.009_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_020_ORG, { "ORG", "asterix.009_020_ORG", FT_UINT8, BASE_DEC, VALS (valstr_009_020_ORG), 0x80, NULL, HFILL } },
+ { &hf_009_020_I, { "I, Intensity Level", "asterix.009_020_I", FT_UINT8, BASE_DEC, NULL, 0x70, NULL, HFILL } },
+ { &hf_009_020_S, { "S, Shading Orientation with Respect to North", "asterix.009_020_S", FT_UINT8, BASE_DEC, VALS (valstr_009_020_S), 0x0e, NULL, HFILL } },
+ { &hf_009_030, { "030, Sequence of Cartesian Vectors", "asterix.009_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_030_X, { "X, X-coordinate, [NM]", "asterix.009_030_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_030_Y, { "Y, Y-coordinate, [NM]", "asterix.009_030_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_030_L, { "L, Vector Length", "asterix.009_030_L", FT_UINT16, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_060, { "060, Synchronisation/Control Signal", "asterix.009_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_060_SN, { "SN, Step Number", "asterix.009_060_SN", FT_UINT8, BASE_DEC, NULL, 0xfc, NULL, HFILL } },
+ { &hf_009_070, { "070, Time of Day", "asterix.009_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_070_VALUE, { "Time of Day, [s]", "asterix.009_070_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_080, { "080, Processing Status", "asterix.009_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_080_F, { "F, Scaling Factor", "asterix.009_080_F", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_080_R, { "R, Current Reduction Stage in Use", "asterix.009_080_R", FT_UINT8, BASE_DEC, NULL, 0x07, NULL, HFILL } },
+ { &hf_009_080_Q, { "Q, Processing Parameters", "asterix.009_080_Q", FT_UINT16, BASE_DEC, NULL, 0xfffe, NULL, HFILL } },
+ { &hf_009_090, { "090, Radar Configuration and Status", "asterix.009_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_090_SAC, { "SAC, SAC of Radar Concerned", "asterix.009_090_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_090_SIC, { "SIC, SIC of Radar Concerned", "asterix.009_090_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_090_CP, { "CP, Circular Polarisation", "asterix.009_090_CP", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_009_090_WO, { "WO, Weather Channel Overload", "asterix.009_090_WO", FT_UINT8, BASE_DEC, NULL, 0x08, NULL, HFILL } },
+ { &hf_009_090_R, { "R, Reduction Step in Use By Radar Concerned", "asterix.009_090_R", FT_UINT8, BASE_DEC, NULL, 0x07, NULL, HFILL } },
+ { &hf_009_100, { "100, Vector Count", "asterix.009_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_009_100_VALUE, { "Vector Count", "asterix.009_100_VALUE", FT_UINT16, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_000, { "000, Message Type", "asterix.010_V1_1_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_000_VALUE, { "Message Type", "asterix.010_V1_1_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_010, { "010, Data Source Identifier", "asterix.010_V1_1_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_010_SAC, { "SAC, System Area Code", "asterix.010_V1_1_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_010_SIC, { "SIC, System Identification Code", "asterix.010_V1_1_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_020, { "020, Target Report Descriptor", "asterix.010_V1_1_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_020_TYP, { "TYP", "asterix.010_V1_1_020_TYP", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_020_TYP), 0xe0, NULL, HFILL } },
+ { &hf_010_V1_1_020_DCR, { "DCR", "asterix.010_V1_1_020_DCR", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_020_DCR), 0x10, NULL, HFILL } },
+ { &hf_010_V1_1_020_CHN, { "CHN", "asterix.010_V1_1_020_CHN", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_020_CHN), 0x08, NULL, HFILL } },
+ { &hf_010_V1_1_020_GBS, { "GBS", "asterix.010_V1_1_020_GBS", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_020_GBS), 0x04, NULL, HFILL } },
+ { &hf_010_V1_1_020_CRT, { "CRT", "asterix.010_V1_1_020_CRT", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_020_CRT), 0x02, NULL, HFILL } },
+ { &hf_010_V1_1_020_SIM, { "SIM", "asterix.010_V1_1_020_SIM", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_020_SIM), 0x80, NULL, HFILL } },
+ { &hf_010_V1_1_020_TST, { "TST", "asterix.010_V1_1_020_TST", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_020_TST), 0x40, NULL, HFILL } },
+ { &hf_010_V1_1_020_RAB, { "RAB", "asterix.010_V1_1_020_RAB", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_020_RAB), 0x20, NULL, HFILL } },
+ { &hf_010_V1_1_020_LOP, { "LOP", "asterix.010_V1_1_020_LOP", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_020_LOP), 0x18, NULL, HFILL } },
+ { &hf_010_V1_1_020_TOT, { "TOT", "asterix.010_V1_1_020_TOT", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_020_TOT), 0x06, NULL, HFILL } },
+ { &hf_010_V1_1_020_SPI, { "SPI", "asterix.010_V1_1_020_SPI", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_020_SPI), 0x80, NULL, HFILL } },
+ { &hf_010_V1_1_040, { "040, Measured Position in Polar Co-ordinates", "asterix.010_V1_1_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_040_RHO, { "RHO, RHO, [m]", "asterix.010_V1_1_040_RHO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_040_TH, { "TH, Theta, [°]", "asterix.010_V1_1_040_TH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_041, { "041, Position in WGS-84 Co-ordinates", "asterix.010_V1_1_041", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_041_LAT, { "LAT, Latitude, [°]", "asterix.010_V1_1_041_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_041_LON, { "LON, Longitude, [°]", "asterix.010_V1_1_041_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_042, { "042, Position in Cartesian Co-ordinates", "asterix.010_V1_1_042", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_042_X, { "X, X Coordinate, [m]", "asterix.010_V1_1_042_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_042_Y, { "Y, Y Coordinate, [m]", "asterix.010_V1_1_042_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_060, { "060, Mode-3/A Code in Octal Representation", "asterix.010_V1_1_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_060_V, { "V, Validated", "asterix.010_V1_1_060_V", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_060_V), 0x80, NULL, HFILL } },
+ { &hf_010_V1_1_060_G, { "G, Garbled", "asterix.010_V1_1_060_G", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_060_G), 0x40, NULL, HFILL } },
+ { &hf_010_V1_1_060_L, { "L", "asterix.010_V1_1_060_L", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_060_L), 0x20, NULL, HFILL } },
+ { &hf_010_V1_1_060_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.010_V1_1_060_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_010_V1_1_090, { "090, Flight Level in Binary Representation", "asterix.010_V1_1_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_090_V, { "V, Validated", "asterix.010_V1_1_090_V", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_090_V), 0x80, NULL, HFILL } },
+ { &hf_010_V1_1_090_G, { "G, Garbled", "asterix.010_V1_1_090_G", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_090_G), 0x40, NULL, HFILL } },
+ { &hf_010_V1_1_090_FL, { "FL, Flight Level, [FL]", "asterix.010_V1_1_090_FL", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_091, { "091, Measured Height", "asterix.010_V1_1_091", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_091_VALUE, { "Measured Height, [ft]", "asterix.010_V1_1_091_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_131, { "131, Amplitude of Primary Plot", "asterix.010_V1_1_131", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_131_VALUE, { "Amplitude of Primary Plot", "asterix.010_V1_1_131_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_140, { "140, Time of Day", "asterix.010_V1_1_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_140_VALUE, { "Time of Day, [s]", "asterix.010_V1_1_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_161, { "161, Track Number", "asterix.010_V1_1_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_161_TRK, { "TRK, Track Number", "asterix.010_V1_1_161_TRK", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_010_V1_1_170, { "170, Track Status", "asterix.010_V1_1_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_170_CNF, { "CNF", "asterix.010_V1_1_170_CNF", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_170_CNF), 0x80, NULL, HFILL } },
+ { &hf_010_V1_1_170_TRE, { "TRE", "asterix.010_V1_1_170_TRE", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_170_TRE), 0x40, NULL, HFILL } },
+ { &hf_010_V1_1_170_CST, { "CST", "asterix.010_V1_1_170_CST", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_170_CST), 0x30, NULL, HFILL } },
+ { &hf_010_V1_1_170_MAH, { "MAH", "asterix.010_V1_1_170_MAH", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_170_MAH), 0x08, NULL, HFILL } },
+ { &hf_010_V1_1_170_TCC, { "TCC", "asterix.010_V1_1_170_TCC", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_170_TCC), 0x04, NULL, HFILL } },
+ { &hf_010_V1_1_170_STH, { "STH", "asterix.010_V1_1_170_STH", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_170_STH), 0x02, NULL, HFILL } },
+ { &hf_010_V1_1_170_TOM, { "TOM", "asterix.010_V1_1_170_TOM", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_170_TOM), 0xc0, NULL, HFILL } },
+ { &hf_010_V1_1_170_DOU, { "DOU", "asterix.010_V1_1_170_DOU", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_170_DOU), 0x38, NULL, HFILL } },
+ { &hf_010_V1_1_170_MRS, { "MRS", "asterix.010_V1_1_170_MRS", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_170_MRS), 0x06, NULL, HFILL } },
+ { &hf_010_V1_1_170_GHO, { "GHO", "asterix.010_V1_1_170_GHO", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_170_GHO), 0x80, NULL, HFILL } },
+ { &hf_010_V1_1_200, { "200, Calculated Track Velocity in Polar Co-ordinates", "asterix.010_V1_1_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_200_GSP, { "GSP, Ground Speed, [NM/s]", "asterix.010_V1_1_200_GSP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_200_TRA, { "TRA, Track Angle, [°]", "asterix.010_V1_1_200_TRA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_202, { "202, Calculated Track Velocity in Cartesian Co-ordinates", "asterix.010_V1_1_202", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_202_VX, { "VX, X Velocity, [m/s]", "asterix.010_V1_1_202_VX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_202_VY, { "VY, Y Velocity, [m/s]", "asterix.010_V1_1_202_VY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_210, { "210, Calculated Acceleration", "asterix.010_V1_1_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_210_AX, { "AX, X Acceleration, [m/s2]", "asterix.010_V1_1_210_AX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_210_AY, { "AY, Y Acceleration, [m/s2]", "asterix.010_V1_1_210_AY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_220, { "220, Target Address", "asterix.010_V1_1_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_220_VALUE, { "Target Address", "asterix.010_V1_1_220_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_245, { "245, Target Identification", "asterix.010_V1_1_245", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_245_STI, { "STI", "asterix.010_V1_1_245_STI", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_245_STI), 0xc0, NULL, HFILL } },
+ { &hf_010_V1_1_245_CHR, { "CHR, Characters 1-8 (Coded on 6 Bits Each) Defining Target Identification", "asterix.010_V1_1_245_CHR", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_250, { "250, Mode S MB Data", "asterix.010_V1_1_250", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_250_MBDATA, { "MBDATA", "asterix.010_V1_1_250_MBDATA", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_250_BDS1, { "BDS1", "asterix.010_V1_1_250_BDS1", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_010_V1_1_250_BDS2, { "BDS2", "asterix.010_V1_1_250_BDS2", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_010_V1_1_270, { "270, Target Size and Orientation", "asterix.010_V1_1_270", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_270_LENGTH, { "LENGTH, Length, [m]", "asterix.010_V1_1_270_LENGTH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_270_ORIENTATION, { "ORIENTATION, Orientation, [°]", "asterix.010_V1_1_270_ORIENTATION", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_270_WIDTH, { "WIDTH, Width, [m]", "asterix.010_V1_1_270_WIDTH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_280, { "280, Presence", "asterix.010_V1_1_280", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_280_DRHO, { "DRHO, [m]", "asterix.010_V1_1_280_DRHO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_280_DTHETA, { "DTHETA, [°]", "asterix.010_V1_1_280_DTHETA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_300, { "300, Vehicle Fleet Identification", "asterix.010_V1_1_300", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_300_VALUE, { "Vehicle Fleet Identification", "asterix.010_V1_1_300_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_300_VALUE), 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_310, { "310, Pre-programmed Message", "asterix.010_V1_1_310", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_310_TRB, { "TRB", "asterix.010_V1_1_310_TRB", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_310_TRB), 0x80, NULL, HFILL } },
+ { &hf_010_V1_1_310_MSG, { "MSG", "asterix.010_V1_1_310_MSG", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_310_MSG), 0x7f, NULL, HFILL } },
+ { &hf_010_V1_1_500, { "500, Standard Deviation of Position", "asterix.010_V1_1_500", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_500_DEVX, { "DEVX, Standard Deviation of X Component, [m]", "asterix.010_V1_1_500_DEVX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_500_DEVY, { "DEVY, Standard Deviation of Y Component, [m]", "asterix.010_V1_1_500_DEVY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_500_COVXY, { "COVXY, Covariance in Two’s Complement Form, [m]", "asterix.010_V1_1_500_COVXY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_550, { "550, System Status", "asterix.010_V1_1_550", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_550_NOGO, { "NOGO, Operational Release Status of the System", "asterix.010_V1_1_550_NOGO", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_550_NOGO), 0xc0, NULL, HFILL } },
+ { &hf_010_V1_1_550_OVL, { "OVL, Overload Indicator", "asterix.010_V1_1_550_OVL", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_550_OVL), 0x20, NULL, HFILL } },
+ { &hf_010_V1_1_550_TSV, { "TSV, Time Source Validity", "asterix.010_V1_1_550_TSV", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_550_TSV), 0x10, NULL, HFILL } },
+ { &hf_010_V1_1_550_DIV, { "DIV", "asterix.010_V1_1_550_DIV", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_550_DIV), 0x08, NULL, HFILL } },
+ { &hf_010_V1_1_550_TTF, { "TTF", "asterix.010_V1_1_550_TTF", FT_UINT8, BASE_DEC, VALS (valstr_010_V1_1_550_TTF), 0x04, NULL, HFILL } },
+ { &hf_010_V1_1_RE, { "RE, Reserved Expansion Field", "asterix.010_V1_1_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_V1_1_SP, { "SP, Special Purpose Field", "asterix.010_V1_1_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_000, { "000, Message Type", "asterix.010_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_000_VALUE, { "Message Type", "asterix.010_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_010_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_010_010, { "010, Data Source Identifier", "asterix.010_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_010_SAC, { "SAC, System Area Code", "asterix.010_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_010_SIC, { "SIC, System Identification Code", "asterix.010_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_020, { "020, Target Report Descriptor", "asterix.010_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_020_TYP, { "TYP", "asterix.010_020_TYP", FT_UINT8, BASE_DEC, VALS (valstr_010_020_TYP), 0xe0, NULL, HFILL } },
+ { &hf_010_020_DCR, { "DCR", "asterix.010_020_DCR", FT_UINT8, BASE_DEC, VALS (valstr_010_020_DCR), 0x10, NULL, HFILL } },
+ { &hf_010_020_CHN, { "CHN", "asterix.010_020_CHN", FT_UINT8, BASE_DEC, VALS (valstr_010_020_CHN), 0x08, NULL, HFILL } },
+ { &hf_010_020_GBS, { "GBS", "asterix.010_020_GBS", FT_UINT8, BASE_DEC, VALS (valstr_010_020_GBS), 0x04, NULL, HFILL } },
+ { &hf_010_020_CRT, { "CRT", "asterix.010_020_CRT", FT_UINT8, BASE_DEC, VALS (valstr_010_020_CRT), 0x02, NULL, HFILL } },
+ { &hf_010_020_SIM, { "SIM", "asterix.010_020_SIM", FT_UINT8, BASE_DEC, VALS (valstr_010_020_SIM), 0x80, NULL, HFILL } },
+ { &hf_010_020_TST, { "TST", "asterix.010_020_TST", FT_UINT8, BASE_DEC, VALS (valstr_010_020_TST), 0x40, NULL, HFILL } },
+ { &hf_010_020_RAB, { "RAB", "asterix.010_020_RAB", FT_UINT8, BASE_DEC, VALS (valstr_010_020_RAB), 0x20, NULL, HFILL } },
+ { &hf_010_020_LOP, { "LOP", "asterix.010_020_LOP", FT_UINT8, BASE_DEC, VALS (valstr_010_020_LOP), 0x18, NULL, HFILL } },
+ { &hf_010_020_TOT, { "TOT", "asterix.010_020_TOT", FT_UINT8, BASE_DEC, VALS (valstr_010_020_TOT), 0x06, NULL, HFILL } },
+ { &hf_010_020_SPI, { "SPI", "asterix.010_020_SPI", FT_UINT8, BASE_DEC, VALS (valstr_010_020_SPI), 0x80, NULL, HFILL } },
+ { &hf_010_040, { "040, Measured Position in Polar Co-ordinates", "asterix.010_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_040_RHO, { "RHO, RHO, [m]", "asterix.010_040_RHO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_040_TH, { "TH, Theta, [°]", "asterix.010_040_TH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_041, { "041, Position in WGS-84 Co-ordinates", "asterix.010_041", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_041_LAT, { "LAT, Latitude, [°]", "asterix.010_041_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_041_LON, { "LON, Longitude, [°]", "asterix.010_041_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_042, { "042, Position in Cartesian Co-ordinates", "asterix.010_042", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_042_X, { "X, X Coordinate, [m]", "asterix.010_042_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_042_Y, { "Y, Y Coordinate, [m]", "asterix.010_042_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_060, { "060, Mode-3/A Code in Octal Representation", "asterix.010_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_060_V, { "V, Validated", "asterix.010_060_V", FT_UINT8, BASE_DEC, VALS (valstr_010_060_V), 0x80, NULL, HFILL } },
+ { &hf_010_060_G, { "G, Garbled", "asterix.010_060_G", FT_UINT8, BASE_DEC, VALS (valstr_010_060_G), 0x40, NULL, HFILL } },
+ { &hf_010_060_L, { "L", "asterix.010_060_L", FT_UINT8, BASE_DEC, VALS (valstr_010_060_L), 0x20, NULL, HFILL } },
+ { &hf_010_060_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.010_060_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_010_090, { "090, Flight Level in Binary Representation", "asterix.010_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_090_V, { "V, Validated", "asterix.010_090_V", FT_UINT8, BASE_DEC, VALS (valstr_010_090_V), 0x80, NULL, HFILL } },
+ { &hf_010_090_G, { "G, Garbled", "asterix.010_090_G", FT_UINT8, BASE_DEC, VALS (valstr_010_090_G), 0x40, NULL, HFILL } },
+ { &hf_010_090_FL, { "FL, Flight Level, [FL]", "asterix.010_090_FL", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_091, { "091, Measured Height", "asterix.010_091", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_091_VALUE, { "Measured Height, [ft]", "asterix.010_091_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_131, { "131, Amplitude of Primary Plot", "asterix.010_131", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_131_VALUE, { "Amplitude of Primary Plot", "asterix.010_131_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_140, { "140, Time of Day", "asterix.010_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_140_VALUE, { "Time of Day, [s]", "asterix.010_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_161, { "161, Track Number", "asterix.010_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_161_TRK, { "TRK, Track Number", "asterix.010_161_TRK", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_010_170, { "170, Track Status", "asterix.010_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_170_CNF, { "CNF", "asterix.010_170_CNF", FT_UINT8, BASE_DEC, VALS (valstr_010_170_CNF), 0x80, NULL, HFILL } },
+ { &hf_010_170_TRE, { "TRE", "asterix.010_170_TRE", FT_UINT8, BASE_DEC, VALS (valstr_010_170_TRE), 0x40, NULL, HFILL } },
+ { &hf_010_170_CST, { "CST", "asterix.010_170_CST", FT_UINT8, BASE_DEC, VALS (valstr_010_170_CST), 0x30, NULL, HFILL } },
+ { &hf_010_170_MAH, { "MAH", "asterix.010_170_MAH", FT_UINT8, BASE_DEC, VALS (valstr_010_170_MAH), 0x08, NULL, HFILL } },
+ { &hf_010_170_TCC, { "TCC", "asterix.010_170_TCC", FT_UINT8, BASE_DEC, VALS (valstr_010_170_TCC), 0x04, NULL, HFILL } },
+ { &hf_010_170_STH, { "STH", "asterix.010_170_STH", FT_UINT8, BASE_DEC, VALS (valstr_010_170_STH), 0x02, NULL, HFILL } },
+ { &hf_010_170_TOM, { "TOM", "asterix.010_170_TOM", FT_UINT8, BASE_DEC, VALS (valstr_010_170_TOM), 0xc0, NULL, HFILL } },
+ { &hf_010_170_DOU, { "DOU", "asterix.010_170_DOU", FT_UINT8, BASE_DEC, VALS (valstr_010_170_DOU), 0x38, NULL, HFILL } },
+ { &hf_010_170_MRS, { "MRS", "asterix.010_170_MRS", FT_UINT8, BASE_DEC, VALS (valstr_010_170_MRS), 0x06, NULL, HFILL } },
+ { &hf_010_170_GHO, { "GHO", "asterix.010_170_GHO", FT_UINT8, BASE_DEC, VALS (valstr_010_170_GHO), 0x80, NULL, HFILL } },
+ { &hf_010_200, { "200, Calculated Track Velocity in Polar Co-ordinates", "asterix.010_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_200_GSP, { "GSP, Ground Speed, [NM/s]", "asterix.010_200_GSP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_200_TRA, { "TRA, Track Angle, [°]", "asterix.010_200_TRA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_202, { "202, Calculated Track Velocity in Cartesian Co-ordinates", "asterix.010_202", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_202_VX, { "VX, X Velocity, [m/s]", "asterix.010_202_VX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_202_VY, { "VY, Y Velocity, [m/s]", "asterix.010_202_VY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_210, { "210, Calculated Acceleration", "asterix.010_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_210_AX, { "AX, X Acceleration, [m/s2]", "asterix.010_210_AX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_210_AY, { "AY, Y Acceleration, [m/s2]", "asterix.010_210_AY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_220, { "220, Target Address", "asterix.010_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_220_VALUE, { "Target Address", "asterix.010_220_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_245, { "245, Target Identification", "asterix.010_245", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_245_STI, { "STI", "asterix.010_245_STI", FT_UINT8, BASE_DEC, VALS (valstr_010_245_STI), 0xc0, NULL, HFILL } },
+ { &hf_010_245_CHR, { "CHR, Characters 1-8 (Coded on 6 Bits Each) Defining Target Identification", "asterix.010_245_CHR", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_250, { "250, Mode S MB Data", "asterix.010_250", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_250_MBDATA, { "MBDATA", "asterix.010_250_MBDATA", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_250_BDS1, { "BDS1", "asterix.010_250_BDS1", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_010_250_BDS2, { "BDS2", "asterix.010_250_BDS2", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_010_270, { "270, Target Size and Orientation", "asterix.010_270", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_270_LENGTH, { "LENGTH, Length, [m]", "asterix.010_270_LENGTH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_270_ORIENTATION, { "ORIENTATION, Orientation, [°]", "asterix.010_270_ORIENTATION", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_270_WIDTH, { "WIDTH, Width, [m]", "asterix.010_270_WIDTH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_280, { "280, Presence", "asterix.010_280", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_280_DRHO, { "DRHO, [m]", "asterix.010_280_DRHO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_280_DTHETA, { "DTHETA, [°]", "asterix.010_280_DTHETA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_300, { "300, Vehicle Fleet Identification", "asterix.010_300", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_300_VALUE, { "Vehicle Fleet Identification", "asterix.010_300_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_010_300_VALUE), 0x00, NULL, HFILL } },
+ { &hf_010_310, { "310, Pre-programmed Message", "asterix.010_310", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_310_TRB, { "TRB", "asterix.010_310_TRB", FT_UINT8, BASE_DEC, VALS (valstr_010_310_TRB), 0x80, NULL, HFILL } },
+ { &hf_010_310_MSG, { "MSG", "asterix.010_310_MSG", FT_UINT8, BASE_DEC, VALS (valstr_010_310_MSG), 0x7f, NULL, HFILL } },
+ { &hf_010_500, { "500, Standard Deviation of Position", "asterix.010_500", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_500_DEVX, { "DEVX, Standard Deviation of X Component, [m]", "asterix.010_500_DEVX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_500_DEVY, { "DEVY, Standard Deviation of Y Component, [m]", "asterix.010_500_DEVY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_500_COVXY, { "COVXY, Covariance in Two’s Complement Form, [m]", "asterix.010_500_COVXY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_550, { "550, System Status", "asterix.010_550", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_550_NOGO, { "NOGO, Operational Release Status of the System", "asterix.010_550_NOGO", FT_UINT8, BASE_DEC, VALS (valstr_010_550_NOGO), 0xc0, NULL, HFILL } },
+ { &hf_010_550_OVL, { "OVL, Overload Indicator", "asterix.010_550_OVL", FT_UINT8, BASE_DEC, VALS (valstr_010_550_OVL), 0x20, NULL, HFILL } },
+ { &hf_010_550_TSV, { "TSV, Time Source Validity", "asterix.010_550_TSV", FT_UINT8, BASE_DEC, VALS (valstr_010_550_TSV), 0x10, NULL, HFILL } },
+ { &hf_010_550_DIV, { "DIV", "asterix.010_550_DIV", FT_UINT8, BASE_DEC, VALS (valstr_010_550_DIV), 0x08, NULL, HFILL } },
+ { &hf_010_550_TTF, { "TTF", "asterix.010_550_TTF", FT_UINT8, BASE_DEC, VALS (valstr_010_550_TTF), 0x04, NULL, HFILL } },
+ { &hf_010_RE, { "RE, Reserved Expansion Field", "asterix.010_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_010_SP, { "SP, Special Purpose Field", "asterix.010_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_000, { "000, Message Type", "asterix.011_V1_2_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_000_VALUE, { "Message Type", "asterix.011_V1_2_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_010, { "010, Data Source Identifier", "asterix.011_V1_2_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_010_SAC, { "SAC, System Area Code Fixed to Zero", "asterix.011_V1_2_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_010_SIC, { "SIC, System Identification Code", "asterix.011_V1_2_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_015, { "015, Service Identification", "asterix.011_V1_2_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_015_VALUE, { "Service Identification", "asterix.011_V1_2_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_041, { "041, Position in WGS-84 Coordinates", "asterix.011_V1_2_041", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_041_LAT, { "LAT, Latitude in WGS-84 in Two's Complement, [°]", "asterix.011_V1_2_041_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_041_LON, { "LON, Longitude in WGS-84 in Two's Complement, [°]", "asterix.011_V1_2_041_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_042, { "042, Calculated Position in Cartesian Co-ordinates", "asterix.011_V1_2_042", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_042_X, { "X, X-Component, [m]", "asterix.011_V1_2_042_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_042_Y, { "Y, Y-Component, [m]", "asterix.011_V1_2_042_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_060, { "060, Mode-3/A Code in Octal Representation", "asterix.011_V1_2_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_060_MOD3A, { "MOD3A, Mode-3/A Reply in Octal Representation", "asterix.011_V1_2_060_MOD3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_011_V1_2_090, { "090, Measured Flight Level", "asterix.011_V1_2_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_090_VALUE, { "Measured Flight Level, [FL]", "asterix.011_V1_2_090_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_092, { "092, Calculated Track Geometric Altitude", "asterix.011_V1_2_092", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_092_VALUE, { "Calculated Track Geometric Altitude, [ft]", "asterix.011_V1_2_092_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_093, { "093, Calculated Track Barometric Altitude", "asterix.011_V1_2_093", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_093_QNH, { "QNH, QNH Correction Applied", "asterix.011_V1_2_093_QNH", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_093_QNH), 0x80, NULL, HFILL } },
+ { &hf_011_V1_2_093_CTBA, { "CTBA, Calculated Track Barometric Altitude, [FL]", "asterix.011_V1_2_093_CTBA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_140, { "140, Time of Track Information", "asterix.011_V1_2_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_140_VALUE, { "Time of Track Information, [s]", "asterix.011_V1_2_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_161, { "161, Track Number", "asterix.011_V1_2_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_161_FTN, { "FTN, Fusion Track Number", "asterix.011_V1_2_161_FTN", FT_UINT16, BASE_DEC, NULL, 0x7fff, NULL, HFILL } },
+ { &hf_011_V1_2_170, { "170, Track Status", "asterix.011_V1_2_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_170_MON, { "MON", "asterix.011_V1_2_170_MON", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_170_MON), 0x80, NULL, HFILL } },
+ { &hf_011_V1_2_170_GBS, { "GBS", "asterix.011_V1_2_170_GBS", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_170_GBS), 0x40, NULL, HFILL } },
+ { &hf_011_V1_2_170_MRH, { "MRH", "asterix.011_V1_2_170_MRH", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_170_MRH), 0x20, NULL, HFILL } },
+ { &hf_011_V1_2_170_SRC, { "SRC", "asterix.011_V1_2_170_SRC", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_170_SRC), 0x1c, NULL, HFILL } },
+ { &hf_011_V1_2_170_CNF, { "CNF", "asterix.011_V1_2_170_CNF", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_170_CNF), 0x02, NULL, HFILL } },
+ { &hf_011_V1_2_170_SIM, { "SIM", "asterix.011_V1_2_170_SIM", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_170_SIM), 0x80, NULL, HFILL } },
+ { &hf_011_V1_2_170_TSE, { "TSE", "asterix.011_V1_2_170_TSE", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_170_TSE), 0x40, NULL, HFILL } },
+ { &hf_011_V1_2_170_TSB, { "TSB", "asterix.011_V1_2_170_TSB", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_170_TSB), 0x20, NULL, HFILL } },
+ { &hf_011_V1_2_170_FRIFOE, { "FRIFOE", "asterix.011_V1_2_170_FRIFOE", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_170_FRIFOE), 0x18, NULL, HFILL } },
+ { &hf_011_V1_2_170_ME, { "ME", "asterix.011_V1_2_170_ME", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_170_ME), 0x04, NULL, HFILL } },
+ { &hf_011_V1_2_170_MI, { "MI", "asterix.011_V1_2_170_MI", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_170_MI), 0x02, NULL, HFILL } },
+ { &hf_011_V1_2_170_AMA, { "AMA", "asterix.011_V1_2_170_AMA", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_170_AMA), 0x80, NULL, HFILL } },
+ { &hf_011_V1_2_170_SPI, { "SPI", "asterix.011_V1_2_170_SPI", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_170_SPI), 0x40, NULL, HFILL } },
+ { &hf_011_V1_2_170_CST, { "CST", "asterix.011_V1_2_170_CST", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_170_CST), 0x20, NULL, HFILL } },
+ { &hf_011_V1_2_170_FPC, { "FPC", "asterix.011_V1_2_170_FPC", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_170_FPC), 0x10, NULL, HFILL } },
+ { &hf_011_V1_2_170_AFF, { "AFF", "asterix.011_V1_2_170_AFF", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_170_AFF), 0x08, NULL, HFILL } },
+ { &hf_011_V1_2_202, { "202, Calculated Track Velocity in Cartesian Coordinates", "asterix.011_V1_2_202", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_202_VX, { "VX, Vx, [m/s]", "asterix.011_V1_2_202_VX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_202_VY, { "VY, Vy, [m/s]", "asterix.011_V1_2_202_VY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_210, { "210, Calculated Acceleration", "asterix.011_V1_2_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_210_AX, { "AX, Ax, [m/s2]", "asterix.011_V1_2_210_AX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_210_AY, { "AY, Ay, [m/s2]", "asterix.011_V1_2_210_AY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_215, { "215, Calculated Rate Of Climb/Descent", "asterix.011_V1_2_215", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_215_VALUE, { "Calculated Rate Of Climb/Descent, [ft/min]", "asterix.011_V1_2_215_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_245, { "245, Target Identification", "asterix.011_V1_2_245", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_245_STI, { "STI", "asterix.011_V1_2_245_STI", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_245_STI), 0xc0, NULL, HFILL } },
+ { &hf_011_V1_2_245_TID, { "TID, Target Identification", "asterix.011_V1_2_245_TID", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_270, { "270, Target Size and Orientation", "asterix.011_V1_2_270", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_270_LENGTH, { "LENGTH, Length, [m]", "asterix.011_V1_2_270_LENGTH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_270_ORIENTATION, { "ORIENTATION, Orientation, [°]", "asterix.011_V1_2_270_ORIENTATION", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_270_WIDTH, { "WIDTH, Width, [m]", "asterix.011_V1_2_270_WIDTH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290, { "290, System Track Update Ages", "asterix.011_V1_2_290", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_PSR, { "PSR, Age of The Last Primary Detection Used to Update the Track", "asterix.011_V1_2_290_PSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_PSR_VALUE, { "Age of The Last Primary Detection Used to Update the Track, [s]", "asterix.011_V1_2_290_PSR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_SSR, { "SSR, Age of the Last Secondary Detection Used to Update the Track", "asterix.011_V1_2_290_SSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_SSR_VALUE, { "Age of the Last Secondary Detection Used to Update the Track, [s]", "asterix.011_V1_2_290_SSR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_MDA, { "MDA, Age of the Last Mode A Detection Used to Update the Track", "asterix.011_V1_2_290_MDA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_MDA_VALUE, { "Age of the Last Mode A Detection Used to Update the Track, [s]", "asterix.011_V1_2_290_MDA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_MFL, { "MFL, Age of the Last Mode C Detection Used to Update the Track", "asterix.011_V1_2_290_MFL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_MFL_VALUE, { "Age of the Last Mode C Detection Used to Update the Track, [s]", "asterix.011_V1_2_290_MFL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_MDS, { "MDS, Age of the Last Mode S Detection Used to Update the Track", "asterix.011_V1_2_290_MDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_MDS_VALUE, { "Age of the Last Mode S Detection Used to Update the Track, [s]", "asterix.011_V1_2_290_MDS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_ADS, { "ADS, Age of the Last ADS Report Used to Update the Track", "asterix.011_V1_2_290_ADS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_ADS_VALUE, { "Age of the Last ADS Report Used to Update the Track, [s]", "asterix.011_V1_2_290_ADS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_ADB, { "ADB, Age of the Last ADS-B Report Used to Update the Track", "asterix.011_V1_2_290_ADB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_ADB_VALUE, { "Age of the Last ADS-B Report Used to Update the Track, [s]", "asterix.011_V1_2_290_ADB_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_MD1, { "MD1, Age of the Last Valid Mode 1 Used to Update the Track", "asterix.011_V1_2_290_MD1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_MD1_VALUE, { "Age of the Last Valid Mode 1 Used to Update the Track, [s]", "asterix.011_V1_2_290_MD1_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_MD2, { "MD2, Age of the Last Mode 2 Used to Update the Track", "asterix.011_V1_2_290_MD2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_MD2_VALUE, { "Age of the Last Mode 2 Used to Update the Track, [s]", "asterix.011_V1_2_290_MD2_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_LOP, { "LOP, Age of the Last Magentic Loop Detection", "asterix.011_V1_2_290_LOP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_LOP_VALUE, { "Age of the Last Magentic Loop Detection, [s]", "asterix.011_V1_2_290_LOP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_TRK, { "TRK, Actual Track Age Since First Occurrence", "asterix.011_V1_2_290_TRK", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_TRK_VALUE, { "Actual Track Age Since First Occurrence, [s]", "asterix.011_V1_2_290_TRK_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_MUL, { "MUL, Age of the Last Multilateration Detection", "asterix.011_V1_2_290_MUL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_290_MUL_VALUE, { "Age of the Last Multilateration Detection, [s]", "asterix.011_V1_2_290_MUL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_300, { "300, Vehicle Fleet Identification", "asterix.011_V1_2_300", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_300_VALUE, { "Vehicle Fleet Identification", "asterix.011_V1_2_300_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_300_VALUE), 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_310, { "310, Pre-programmed Message", "asterix.011_V1_2_310", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_310_TRB, { "TRB, In Trouble", "asterix.011_V1_2_310_TRB", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_310_TRB), 0x80, NULL, HFILL } },
+ { &hf_011_V1_2_310_MSG, { "MSG, Message", "asterix.011_V1_2_310_MSG", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_310_MSG), 0x7f, NULL, HFILL } },
+ { &hf_011_V1_2_380, { "380, Mode-S / ADS-B Related Data", "asterix.011_V1_2_380", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_380_MB, { "MB, BDS", "asterix.011_V1_2_380_MB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_380_MB_VALUE, { "BDS", "asterix.011_V1_2_380_MB_VALUE", FT_UINT64, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_380_ADR, { "ADR, 24 Bits Aircraft Address", "asterix.011_V1_2_380_ADR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_380_ADR_VALUE, { "24 Bits Aircraft Address", "asterix.011_V1_2_380_ADR_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_380_COMACAS, { "COMACAS, Communications/ACAS Capability and Flight Status", "asterix.011_V1_2_380_COMACAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_380_COMACAS_COM, { "COM, Communications Capability of the Transponder", "asterix.011_V1_2_380_COMACAS_COM", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_380_COMACAS_COM), 0xe0, NULL, HFILL } },
+ { &hf_011_V1_2_380_COMACAS_STAT, { "STAT, Flight Status", "asterix.011_V1_2_380_COMACAS_STAT", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_380_COMACAS_STAT), 0x1e, NULL, HFILL } },
+ { &hf_011_V1_2_380_COMACAS_SSC, { "SSC, Specific Service Capability", "asterix.011_V1_2_380_COMACAS_SSC", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_380_COMACAS_SSC), 0x80, NULL, HFILL } },
+ { &hf_011_V1_2_380_COMACAS_ARC, { "ARC, Altitude Reporting Capability", "asterix.011_V1_2_380_COMACAS_ARC", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_380_COMACAS_ARC), 0x40, NULL, HFILL } },
+ { &hf_011_V1_2_380_COMACAS_AIC, { "AIC, Aircraft Identification Capability", "asterix.011_V1_2_380_COMACAS_AIC", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_380_COMACAS_AIC), 0x20, NULL, HFILL } },
+ { &hf_011_V1_2_380_COMACAS_B1A, { "B1A, BDS 1,0 Bit 16", "asterix.011_V1_2_380_COMACAS_B1A", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_011_V1_2_380_COMACAS_B1B, { "B1B, BDS 1,0 Bit 37/40", "asterix.011_V1_2_380_COMACAS_B1B", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_011_V1_2_380_COMACAS_AC, { "AC, ACAS Operational", "asterix.011_V1_2_380_COMACAS_AC", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_380_COMACAS_AC), 0x80, NULL, HFILL } },
+ { &hf_011_V1_2_380_COMACAS_MN, { "MN, Multiple Navigational Aids Operating", "asterix.011_V1_2_380_COMACAS_MN", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_380_COMACAS_MN), 0x40, NULL, HFILL } },
+ { &hf_011_V1_2_380_COMACAS_DC, { "DC, Differential Correction", "asterix.011_V1_2_380_COMACAS_DC", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_380_COMACAS_DC), 0x20, NULL, HFILL } },
+ { &hf_011_V1_2_380_ACT, { "ACT, Aircraft Derived Aircraft Type", "asterix.011_V1_2_380_ACT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_380_ACT_VALUE, { "Aircraft Derived Aircraft Type", "asterix.011_V1_2_380_ACT_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_380_ECAT, { "ECAT, Emitter Category", "asterix.011_V1_2_380_ECAT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_380_ECAT_VALUE, { "Emitter Category", "asterix.011_V1_2_380_ECAT_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_380_ECAT_VALUE), 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_380_AVTECH, { "AVTECH, Available Technologies", "asterix.011_V1_2_380_AVTECH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_380_AVTECH_VDL, { "VDL, VDL Mode 4", "asterix.011_V1_2_380_AVTECH_VDL", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_380_AVTECH_VDL), 0x80, NULL, HFILL } },
+ { &hf_011_V1_2_380_AVTECH_MDS, { "MDS, Mode S", "asterix.011_V1_2_380_AVTECH_MDS", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_380_AVTECH_MDS), 0x40, NULL, HFILL } },
+ { &hf_011_V1_2_380_AVTECH_UAT, { "UAT, UAT", "asterix.011_V1_2_380_AVTECH_UAT", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_380_AVTECH_UAT), 0x20, NULL, HFILL } },
+ { &hf_011_V1_2_390, { "390, Flight Plan Related Data", "asterix.011_V1_2_390", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_FPPSID, { "FPPSID, FPPS Identification Tag", "asterix.011_V1_2_390_FPPSID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_FPPSID_SAC, { "SAC, System Area Code", "asterix.011_V1_2_390_FPPSID_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_FPPSID_SIC, { "SIC, System Identity Code", "asterix.011_V1_2_390_FPPSID_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_CSN, { "CSN, Callsign", "asterix.011_V1_2_390_CSN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_CSN_VALUE, { "Callsign", "asterix.011_V1_2_390_CSN_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_IFPSFLIGHTID, { "IFPSFLIGHTID, IFPS_FLIGHT_ID", "asterix.011_V1_2_390_IFPSFLIGHTID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_IFPSFLIGHTID_TYP, { "TYP, IFPS Flight ID Type", "asterix.011_V1_2_390_IFPSFLIGHTID_TYP", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_390_IFPSFLIGHTID_TYP), 0xc0, NULL, HFILL } },
+ { &hf_011_V1_2_390_IFPSFLIGHTID_NBR, { "NBR, IFPS Flight ID Number", "asterix.011_V1_2_390_IFPSFLIGHTID_NBR", FT_UINT32, BASE_DEC, NULL, 0x07ffffff, NULL, HFILL } },
+ { &hf_011_V1_2_390_FLIGHTCAT, { "FLIGHTCAT, Flight Category", "asterix.011_V1_2_390_FLIGHTCAT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_FLIGHTCAT_GATOAT, { "GATOAT, Flight Type", "asterix.011_V1_2_390_FLIGHTCAT_GATOAT", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_390_FLIGHTCAT_GATOAT), 0xc0, NULL, HFILL } },
+ { &hf_011_V1_2_390_FLIGHTCAT_FR1FR2, { "FR1FR2, Flight Rules", "asterix.011_V1_2_390_FLIGHTCAT_FR1FR2", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_390_FLIGHTCAT_FR1FR2), 0x30, NULL, HFILL } },
+ { &hf_011_V1_2_390_FLIGHTCAT_RVSM, { "RVSM, RVSM", "asterix.011_V1_2_390_FLIGHTCAT_RVSM", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_390_FLIGHTCAT_RVSM), 0x0c, NULL, HFILL } },
+ { &hf_011_V1_2_390_FLIGHTCAT_HPR, { "HPR, Flight Priority", "asterix.011_V1_2_390_FLIGHTCAT_HPR", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_390_FLIGHTCAT_HPR), 0x02, NULL, HFILL } },
+ { &hf_011_V1_2_390_TOA, { "TOA, Type of Aircraft", "asterix.011_V1_2_390_TOA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_TOA_VALUE, { "Type of Aircraft", "asterix.011_V1_2_390_TOA_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_WTC, { "WTC, Wake Turbulence Category", "asterix.011_V1_2_390_WTC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_WTC_VALUE, { "Wake Turbulence Category", "asterix.011_V1_2_390_WTC_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_390_WTC_VALUE), 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_ADEP, { "ADEP, Departure Airport", "asterix.011_V1_2_390_ADEP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_ADEP_VALUE, { "Departure Airport", "asterix.011_V1_2_390_ADEP_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_ADES, { "ADES, Destination Airport", "asterix.011_V1_2_390_ADES", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_ADES_VALUE, { "Destination Airport", "asterix.011_V1_2_390_ADES_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_RWY, { "RWY, Runway Designation", "asterix.011_V1_2_390_RWY", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_RWY_VALUE, { "Runway Designation", "asterix.011_V1_2_390_RWY_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_CFL, { "CFL, Current Cleared Flight Level", "asterix.011_V1_2_390_CFL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_CFL_VALUE, { "Current Cleared Flight Level, [FL]", "asterix.011_V1_2_390_CFL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_CCP, { "CCP, Current Control Position", "asterix.011_V1_2_390_CCP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_CCP_CENTRE, { "CENTRE, 8-bit Group Identification Code", "asterix.011_V1_2_390_CCP_CENTRE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_CCP_POSITION, { "POSITION, 8-bit Control Position Identification Code", "asterix.011_V1_2_390_CCP_POSITION", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_TOD, { "TOD, Time of Departure", "asterix.011_V1_2_390_TOD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_TOD_TYP, { "TYP, Time Type", "asterix.011_V1_2_390_TOD_TYP", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_390_TOD_TYP), 0xf8, NULL, HFILL } },
+ { &hf_011_V1_2_390_TOD_DAY, { "DAY, Day", "asterix.011_V1_2_390_TOD_DAY", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_390_TOD_DAY), 0x06, NULL, HFILL } },
+ { &hf_011_V1_2_390_TOD_HOR, { "HOR, Hours, from 0 to 23", "asterix.011_V1_2_390_TOD_HOR", FT_UINT8, BASE_DEC, NULL, 0x1f, NULL, HFILL } },
+ { &hf_011_V1_2_390_TOD_MIN, { "MIN, Minutes, from 0 to 59", "asterix.011_V1_2_390_TOD_MIN", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_011_V1_2_390_TOD_AVS, { "AVS, Seconds Available", "asterix.011_V1_2_390_TOD_AVS", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_390_TOD_AVS), 0x80, NULL, HFILL } },
+ { &hf_011_V1_2_390_TOD_SEC, { "SEC, Seconds, from 0 to 59", "asterix.011_V1_2_390_TOD_SEC", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_011_V1_2_390_AST, { "AST, Aircraft Stand", "asterix.011_V1_2_390_AST", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_AST_VALUE, { "Aircraft Stand", "asterix.011_V1_2_390_AST_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_STS, { "STS, Stand Status", "asterix.011_V1_2_390_STS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_390_STS_EMP, { "EMP, Stand Empty", "asterix.011_V1_2_390_STS_EMP", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_390_STS_EMP), 0xc0, NULL, HFILL } },
+ { &hf_011_V1_2_390_STS_AVL, { "AVL, Stand Available", "asterix.011_V1_2_390_STS_AVL", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_390_STS_AVL), 0x30, NULL, HFILL } },
+ { &hf_011_V1_2_430, { "430, Phase of Flight", "asterix.011_V1_2_430", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_430_VALUE, { "Phase of Flight", "asterix.011_V1_2_430_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_430_VALUE), 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_500, { "500, Estimated Accuracies", "asterix.011_V1_2_500", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_500_APC, { "APC, Estimated Accuracy Of Track Position (Cartesian)", "asterix.011_V1_2_500_APC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_500_APC_X, { "X, Estimated Accuracy of the Calculated Position of X Component, [m]", "asterix.011_V1_2_500_APC_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_500_APC_Y, { "Y, Estimated Accuracy of the Calculated Position of Y Component, [m]", "asterix.011_V1_2_500_APC_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_500_APW, { "APW, Estimated Accuracy Of Track Position (WGS84)", "asterix.011_V1_2_500_APW", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_500_APW_LAT, { "LAT, APW Latitude Component Accuracy, [°]", "asterix.011_V1_2_500_APW_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_500_APW_LON, { "LON, APW Longitude Component Accuracy, [°]", "asterix.011_V1_2_500_APW_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_500_ATH, { "ATH, Estimated Accuracy Of Track Height", "asterix.011_V1_2_500_ATH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_500_ATH_VALUE, { "Estimated Accuracy Of Track Height, [m]", "asterix.011_V1_2_500_ATH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_500_AVC, { "AVC, Estimated Accuracy Of Track Velocity (Cartesian)", "asterix.011_V1_2_500_AVC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_500_AVC_X, { "X, Estimated Accuracy of the Calculated Velocity of X Component, [m/s]", "asterix.011_V1_2_500_AVC_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_500_AVC_Y, { "Y, Estimated Accuracy of the Calculated Velocity of Y Component, [m/s]", "asterix.011_V1_2_500_AVC_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_500_ARC, { "ARC, Estimated Accuracy Of Rate Of Climb / Descent", "asterix.011_V1_2_500_ARC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_500_ARC_VALUE, { "Estimated Accuracy Of Rate Of Climb / Descent, [m/s]", "asterix.011_V1_2_500_ARC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_500_AAC, { "AAC, Estimated Accuracy Of Acceleration (Cartesian)", "asterix.011_V1_2_500_AAC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_500_AAC_X, { "X, Estimated Accuracy Of Acceleration of X Component, [m/s2]", "asterix.011_V1_2_500_AAC_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_500_AAC_Y, { "Y, Estimated Accuracy Of Acceleration of Y Component, [m/s2]", "asterix.011_V1_2_500_AAC_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_600, { "600, Alert Messages", "asterix.011_V1_2_600", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_600_ACK, { "ACK, Alert Acknowleged", "asterix.011_V1_2_600_ACK", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_600_ACK), 0x80, NULL, HFILL } },
+ { &hf_011_V1_2_600_SVR, { "SVR, Alert Severity", "asterix.011_V1_2_600_SVR", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_600_SVR), 0x60, NULL, HFILL } },
+ { &hf_011_V1_2_600_AT, { "AT, Alert Type", "asterix.011_V1_2_600_AT", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_600_AN, { "AN, Alert Number", "asterix.011_V1_2_600_AN", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_605, { "605, Tracks in Alert", "asterix.011_V1_2_605", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_605_FTN, { "FTN, Fusion Track Number", "asterix.011_V1_2_605_FTN", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_011_V1_2_610, { "610, Holdbar Status", "asterix.011_V1_2_610", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_610_BKN, { "BKN, Bank Number", "asterix.011_V1_2_610_BKN", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_011_V1_2_610_I1, { "I1, Indicator 1", "asterix.011_V1_2_610_I1", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_610_I1), 0x08, NULL, HFILL } },
+ { &hf_011_V1_2_610_I2, { "I2, Indicator 2", "asterix.011_V1_2_610_I2", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_610_I2), 0x04, NULL, HFILL } },
+ { &hf_011_V1_2_610_I3, { "I3, Indicator 3", "asterix.011_V1_2_610_I3", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_610_I3), 0x02, NULL, HFILL } },
+ { &hf_011_V1_2_610_I4, { "I4, Indicator 4", "asterix.011_V1_2_610_I4", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_610_I4), 0x01, NULL, HFILL } },
+ { &hf_011_V1_2_610_I5, { "I5, Indicator 5", "asterix.011_V1_2_610_I5", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_610_I5), 0x80, NULL, HFILL } },
+ { &hf_011_V1_2_610_I6, { "I6, Indicator 6", "asterix.011_V1_2_610_I6", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_610_I6), 0x40, NULL, HFILL } },
+ { &hf_011_V1_2_610_I7, { "I7, Indicator 7", "asterix.011_V1_2_610_I7", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_610_I7), 0x20, NULL, HFILL } },
+ { &hf_011_V1_2_610_I8, { "I8, Indicator 8", "asterix.011_V1_2_610_I8", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_610_I8), 0x10, NULL, HFILL } },
+ { &hf_011_V1_2_610_I9, { "I9, Indicator 9", "asterix.011_V1_2_610_I9", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_610_I9), 0x08, NULL, HFILL } },
+ { &hf_011_V1_2_610_I10, { "I10, Indicator 10", "asterix.011_V1_2_610_I10", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_610_I10), 0x04, NULL, HFILL } },
+ { &hf_011_V1_2_610_I11, { "I11, Indicator 11", "asterix.011_V1_2_610_I11", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_610_I11), 0x02, NULL, HFILL } },
+ { &hf_011_V1_2_610_I12, { "I12, Indicator 12", "asterix.011_V1_2_610_I12", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_2_610_I12), 0x01, NULL, HFILL } },
+ { &hf_011_V1_2_SP, { "SP, Special Purpose Field", "asterix.011_V1_2_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_2_RE, { "RE, Reserved Expansion Field", "asterix.011_V1_2_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_000, { "000, Message Type", "asterix.011_V1_3_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_000_VALUE, { "Message Type", "asterix.011_V1_3_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_010, { "010, Data Source Identifier", "asterix.011_V1_3_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_010_SAC, { "SAC, System Area Code Fixed to Zero", "asterix.011_V1_3_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_010_SIC, { "SIC, System Identification Code", "asterix.011_V1_3_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_015, { "015, Service Identification", "asterix.011_V1_3_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_015_VALUE, { "Service Identification", "asterix.011_V1_3_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_041, { "041, Position in WGS-84 Coordinates", "asterix.011_V1_3_041", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_041_LAT, { "LAT, Latitude in WGS-84 in Two's Complement, [°]", "asterix.011_V1_3_041_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_041_LON, { "LON, Longitude in WGS-84 in Two's Complement, [°]", "asterix.011_V1_3_041_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_042, { "042, Calculated Position in Cartesian Co-ordinates", "asterix.011_V1_3_042", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_042_X, { "X, X-Component, [m]", "asterix.011_V1_3_042_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_042_Y, { "Y, Y-Component, [m]", "asterix.011_V1_3_042_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_060, { "060, Mode-3/A Code in Octal Representation", "asterix.011_V1_3_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_060_MOD3A, { "MOD3A, Mode-3/A Reply in Octal Representation", "asterix.011_V1_3_060_MOD3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_011_V1_3_090, { "090, Measured Flight Level", "asterix.011_V1_3_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_090_VALUE, { "Measured Flight Level, [FL]", "asterix.011_V1_3_090_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_092, { "092, Calculated Track Geometric Altitude", "asterix.011_V1_3_092", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_092_VALUE, { "Calculated Track Geometric Altitude, [ft]", "asterix.011_V1_3_092_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_093, { "093, Calculated Track Barometric Altitude", "asterix.011_V1_3_093", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_093_QNH, { "QNH, QNH Correction Applied", "asterix.011_V1_3_093_QNH", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_093_QNH), 0x80, NULL, HFILL } },
+ { &hf_011_V1_3_093_CTBA, { "CTBA, Calculated Track Barometric Altitude, [FL]", "asterix.011_V1_3_093_CTBA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_140, { "140, Time of Track Information", "asterix.011_V1_3_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_140_VALUE, { "Time of Track Information, [s]", "asterix.011_V1_3_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_161, { "161, Track Number", "asterix.011_V1_3_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_161_FTN, { "FTN, Fusion Track Number", "asterix.011_V1_3_161_FTN", FT_UINT16, BASE_DEC, NULL, 0x7fff, NULL, HFILL } },
+ { &hf_011_V1_3_170, { "170, Track Status", "asterix.011_V1_3_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_170_MON, { "MON", "asterix.011_V1_3_170_MON", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_170_MON), 0x80, NULL, HFILL } },
+ { &hf_011_V1_3_170_GBS, { "GBS", "asterix.011_V1_3_170_GBS", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_170_GBS), 0x40, NULL, HFILL } },
+ { &hf_011_V1_3_170_MRH, { "MRH", "asterix.011_V1_3_170_MRH", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_170_MRH), 0x20, NULL, HFILL } },
+ { &hf_011_V1_3_170_SRC, { "SRC", "asterix.011_V1_3_170_SRC", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_170_SRC), 0x1c, NULL, HFILL } },
+ { &hf_011_V1_3_170_CNF, { "CNF", "asterix.011_V1_3_170_CNF", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_170_CNF), 0x02, NULL, HFILL } },
+ { &hf_011_V1_3_170_SIM, { "SIM", "asterix.011_V1_3_170_SIM", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_170_SIM), 0x80, NULL, HFILL } },
+ { &hf_011_V1_3_170_TSE, { "TSE", "asterix.011_V1_3_170_TSE", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_170_TSE), 0x40, NULL, HFILL } },
+ { &hf_011_V1_3_170_TSB, { "TSB", "asterix.011_V1_3_170_TSB", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_170_TSB), 0x20, NULL, HFILL } },
+ { &hf_011_V1_3_170_FRIFOE, { "FRIFOE", "asterix.011_V1_3_170_FRIFOE", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_170_FRIFOE), 0x18, NULL, HFILL } },
+ { &hf_011_V1_3_170_ME, { "ME", "asterix.011_V1_3_170_ME", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_170_ME), 0x04, NULL, HFILL } },
+ { &hf_011_V1_3_170_MI, { "MI", "asterix.011_V1_3_170_MI", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_170_MI), 0x02, NULL, HFILL } },
+ { &hf_011_V1_3_170_AMA, { "AMA", "asterix.011_V1_3_170_AMA", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_170_AMA), 0x80, NULL, HFILL } },
+ { &hf_011_V1_3_170_SPI, { "SPI", "asterix.011_V1_3_170_SPI", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_170_SPI), 0x40, NULL, HFILL } },
+ { &hf_011_V1_3_170_CST, { "CST", "asterix.011_V1_3_170_CST", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_170_CST), 0x20, NULL, HFILL } },
+ { &hf_011_V1_3_170_FPC, { "FPC", "asterix.011_V1_3_170_FPC", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_170_FPC), 0x10, NULL, HFILL } },
+ { &hf_011_V1_3_170_AFF, { "AFF", "asterix.011_V1_3_170_AFF", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_170_AFF), 0x08, NULL, HFILL } },
+ { &hf_011_V1_3_170_PSR, { "PSR", "asterix.011_V1_3_170_PSR", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_170_PSR), 0x40, NULL, HFILL } },
+ { &hf_011_V1_3_170_SSR, { "SSR", "asterix.011_V1_3_170_SSR", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_170_SSR), 0x20, NULL, HFILL } },
+ { &hf_011_V1_3_170_MDS, { "MDS", "asterix.011_V1_3_170_MDS", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_170_MDS), 0x10, NULL, HFILL } },
+ { &hf_011_V1_3_170_ADS, { "ADS", "asterix.011_V1_3_170_ADS", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_170_ADS), 0x08, NULL, HFILL } },
+ { &hf_011_V1_3_170_SUC, { "SUC", "asterix.011_V1_3_170_SUC", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_170_SUC), 0x04, NULL, HFILL } },
+ { &hf_011_V1_3_170_AAC, { "AAC", "asterix.011_V1_3_170_AAC", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_170_AAC), 0x02, NULL, HFILL } },
+ { &hf_011_V1_3_202, { "202, Calculated Track Velocity in Cartesian Coordinates", "asterix.011_V1_3_202", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_202_VX, { "VX, Vx, [m/s]", "asterix.011_V1_3_202_VX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_202_VY, { "VY, Vy, [m/s]", "asterix.011_V1_3_202_VY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_210, { "210, Calculated Acceleration", "asterix.011_V1_3_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_210_AX, { "AX, Ax, [m/s2]", "asterix.011_V1_3_210_AX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_210_AY, { "AY, Ay, [m/s2]", "asterix.011_V1_3_210_AY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_215, { "215, Calculated Rate Of Climb/Descent", "asterix.011_V1_3_215", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_215_VALUE, { "Calculated Rate Of Climb/Descent, [ft/min]", "asterix.011_V1_3_215_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_245, { "245, Target Identification", "asterix.011_V1_3_245", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_245_STI, { "STI", "asterix.011_V1_3_245_STI", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_245_STI), 0xc0, NULL, HFILL } },
+ { &hf_011_V1_3_245_TID, { "TID, Target Identification", "asterix.011_V1_3_245_TID", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_270, { "270, Target Size and Orientation", "asterix.011_V1_3_270", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_270_LENGTH, { "LENGTH, Length, [m]", "asterix.011_V1_3_270_LENGTH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_270_ORIENTATION, { "ORIENTATION, Orientation, [°]", "asterix.011_V1_3_270_ORIENTATION", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_270_WIDTH, { "WIDTH, Width, [m]", "asterix.011_V1_3_270_WIDTH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290, { "290, System Track Update Ages", "asterix.011_V1_3_290", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_PSR, { "PSR, Age of the Last Primary Report Used to Update the Track", "asterix.011_V1_3_290_PSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_PSR_VALUE, { "Age of the Last Primary Report Used to Update the Track, [s]", "asterix.011_V1_3_290_PSR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_SSR, { "SSR, Age of the Last Secondary Report Used to Update the Track", "asterix.011_V1_3_290_SSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_SSR_VALUE, { "Age of the Last Secondary Report Used to Update the Track, [s]", "asterix.011_V1_3_290_SSR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_MDA, { "MDA, Age of the Last Valid Mode A Report Used to Update the Track", "asterix.011_V1_3_290_MDA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_MDA_VALUE, { "Age of the Last Valid Mode A Report Used to Update the Track, [s]", "asterix.011_V1_3_290_MDA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_MFL, { "MFL, Age of the Last Valid and Credible Mode C Used to Update the Track", "asterix.011_V1_3_290_MFL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_MFL_VALUE, { "Age of the Last Valid and Credible Mode C Used to Update the Track, [s]", "asterix.011_V1_3_290_MFL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_MDS, { "MDS, Age of the Last Mode S Report Used to Update the Track", "asterix.011_V1_3_290_MDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_MDS_VALUE, { "Age of the Last Mode S Report Used to Update the Track, [s]", "asterix.011_V1_3_290_MDS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_ADS, { "ADS, Age of the Last ADS Report Used to Update the Track", "asterix.011_V1_3_290_ADS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_ADS_VALUE, { "Age of the Last ADS Report Used to Update the Track, [s]", "asterix.011_V1_3_290_ADS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_ADB, { "ADB, Age of the Last ADS-B Report Used to Update the Track", "asterix.011_V1_3_290_ADB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_ADB_VALUE, { "Age of the Last ADS-B Report Used to Update the Track, [s]", "asterix.011_V1_3_290_ADB_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_MD1, { "MD1, Age of the Last Valid Mode 1 Used to Update the Track", "asterix.011_V1_3_290_MD1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_MD1_VALUE, { "Age of the Last Valid Mode 1 Used to Update the Track, [s]", "asterix.011_V1_3_290_MD1_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_MD2, { "MD2, Age of the Last Valid Mode 2 Used to Update the Track", "asterix.011_V1_3_290_MD2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_MD2_VALUE, { "Age of the Last Valid Mode 2 Used to Update the Track, [s]", "asterix.011_V1_3_290_MD2_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_LOP, { "LOP, Age of the Last Magentic Loop Detection", "asterix.011_V1_3_290_LOP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_LOP_VALUE, { "Age of the Last Magentic Loop Detection, [s]", "asterix.011_V1_3_290_LOP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_TRK, { "TRK, Actual Track Age Since First Occurrence", "asterix.011_V1_3_290_TRK", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_TRK_VALUE, { "Actual Track Age Since First Occurrence, [s]", "asterix.011_V1_3_290_TRK_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_MUL, { "MUL, Age of the Last Multilateration Detection", "asterix.011_V1_3_290_MUL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_290_MUL_VALUE, { "Age of the Last Multilateration Detection, [s]", "asterix.011_V1_3_290_MUL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_300, { "300, Vehicle Fleet Identification", "asterix.011_V1_3_300", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_300_VALUE, { "Vehicle Fleet Identification", "asterix.011_V1_3_300_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_300_VALUE), 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_310, { "310, Pre-programmed Message", "asterix.011_V1_3_310", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_310_TRB, { "TRB, In Trouble", "asterix.011_V1_3_310_TRB", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_310_TRB), 0x80, NULL, HFILL } },
+ { &hf_011_V1_3_310_MSG, { "MSG, Message", "asterix.011_V1_3_310_MSG", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_310_MSG), 0x7f, NULL, HFILL } },
+ { &hf_011_V1_3_380, { "380, Mode-S / ADS-B Related Data", "asterix.011_V1_3_380", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_380_MB, { "MB, BDS", "asterix.011_V1_3_380_MB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_380_MB_VALUE, { "BDS", "asterix.011_V1_3_380_MB_VALUE", FT_UINT64, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_380_ADR, { "ADR, 24 Bits Aircraft Address", "asterix.011_V1_3_380_ADR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_380_ADR_VALUE, { "24 Bits Aircraft Address", "asterix.011_V1_3_380_ADR_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_380_COMACAS, { "COMACAS, Communications/ACAS Capability and Flight Status", "asterix.011_V1_3_380_COMACAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_380_COMACAS_COM, { "COM, Communications Capability of the Transponder", "asterix.011_V1_3_380_COMACAS_COM", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_380_COMACAS_COM), 0xe0, NULL, HFILL } },
+ { &hf_011_V1_3_380_COMACAS_STAT, { "STAT, Flight Status", "asterix.011_V1_3_380_COMACAS_STAT", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_380_COMACAS_STAT), 0x1e, NULL, HFILL } },
+ { &hf_011_V1_3_380_COMACAS_SSC, { "SSC, Specific Service Capability", "asterix.011_V1_3_380_COMACAS_SSC", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_380_COMACAS_SSC), 0x80, NULL, HFILL } },
+ { &hf_011_V1_3_380_COMACAS_ARC, { "ARC, Altitude Reporting Capability", "asterix.011_V1_3_380_COMACAS_ARC", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_380_COMACAS_ARC), 0x40, NULL, HFILL } },
+ { &hf_011_V1_3_380_COMACAS_AIC, { "AIC, Aircraft Identification Capability", "asterix.011_V1_3_380_COMACAS_AIC", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_380_COMACAS_AIC), 0x20, NULL, HFILL } },
+ { &hf_011_V1_3_380_COMACAS_B1A, { "B1A, BDS 1,0 Bit 16", "asterix.011_V1_3_380_COMACAS_B1A", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_011_V1_3_380_COMACAS_B1B, { "B1B, BDS 1,0 Bit 37/40", "asterix.011_V1_3_380_COMACAS_B1B", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_011_V1_3_380_COMACAS_AC, { "AC, ACAS Operational", "asterix.011_V1_3_380_COMACAS_AC", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_380_COMACAS_AC), 0x80, NULL, HFILL } },
+ { &hf_011_V1_3_380_COMACAS_MN, { "MN, Multiple Navigational Aids Operating", "asterix.011_V1_3_380_COMACAS_MN", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_380_COMACAS_MN), 0x40, NULL, HFILL } },
+ { &hf_011_V1_3_380_COMACAS_DC, { "DC, Differential Correction", "asterix.011_V1_3_380_COMACAS_DC", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_380_COMACAS_DC), 0x20, NULL, HFILL } },
+ { &hf_011_V1_3_380_ACT, { "ACT, Aircraft Derived Aircraft Type", "asterix.011_V1_3_380_ACT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_380_ACT_VALUE, { "Aircraft Derived Aircraft Type", "asterix.011_V1_3_380_ACT_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_380_ECAT, { "ECAT, Emitter Category", "asterix.011_V1_3_380_ECAT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_380_ECAT_VALUE, { "Emitter Category", "asterix.011_V1_3_380_ECAT_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_380_ECAT_VALUE), 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_380_AVTECH, { "AVTECH, Available Technologies", "asterix.011_V1_3_380_AVTECH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_380_AVTECH_VDL, { "VDL, VDL Mode 4", "asterix.011_V1_3_380_AVTECH_VDL", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_380_AVTECH_VDL), 0x80, NULL, HFILL } },
+ { &hf_011_V1_3_380_AVTECH_MDS, { "MDS, Mode S", "asterix.011_V1_3_380_AVTECH_MDS", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_380_AVTECH_MDS), 0x40, NULL, HFILL } },
+ { &hf_011_V1_3_380_AVTECH_UAT, { "UAT, UAT", "asterix.011_V1_3_380_AVTECH_UAT", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_380_AVTECH_UAT), 0x20, NULL, HFILL } },
+ { &hf_011_V1_3_390, { "390, Flight Plan Related Data", "asterix.011_V1_3_390", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_FPPSID, { "FPPSID, FPPS Identification Tag", "asterix.011_V1_3_390_FPPSID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_FPPSID_SAC, { "SAC, System Area Code", "asterix.011_V1_3_390_FPPSID_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_FPPSID_SIC, { "SIC, System Identity Code", "asterix.011_V1_3_390_FPPSID_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_CSN, { "CSN, Callsign", "asterix.011_V1_3_390_CSN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_CSN_VALUE, { "Callsign", "asterix.011_V1_3_390_CSN_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_IFPSFLIGHTID, { "IFPSFLIGHTID, IFPS_FLIGHT_ID", "asterix.011_V1_3_390_IFPSFLIGHTID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_IFPSFLIGHTID_TYP, { "TYP, IFPS Flight ID Type", "asterix.011_V1_3_390_IFPSFLIGHTID_TYP", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_390_IFPSFLIGHTID_TYP), 0xc0, NULL, HFILL } },
+ { &hf_011_V1_3_390_IFPSFLIGHTID_NBR, { "NBR, IFPS Flight ID Number", "asterix.011_V1_3_390_IFPSFLIGHTID_NBR", FT_UINT32, BASE_DEC, NULL, 0x07ffffff, NULL, HFILL } },
+ { &hf_011_V1_3_390_FLIGHTCAT, { "FLIGHTCAT, Flight Category", "asterix.011_V1_3_390_FLIGHTCAT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_FLIGHTCAT_GATOAT, { "GATOAT, Flight Type", "asterix.011_V1_3_390_FLIGHTCAT_GATOAT", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_390_FLIGHTCAT_GATOAT), 0xc0, NULL, HFILL } },
+ { &hf_011_V1_3_390_FLIGHTCAT_FR1FR2, { "FR1FR2, Flight Rules", "asterix.011_V1_3_390_FLIGHTCAT_FR1FR2", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_390_FLIGHTCAT_FR1FR2), 0x30, NULL, HFILL } },
+ { &hf_011_V1_3_390_FLIGHTCAT_RVSM, { "RVSM, RVSM", "asterix.011_V1_3_390_FLIGHTCAT_RVSM", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_390_FLIGHTCAT_RVSM), 0x0c, NULL, HFILL } },
+ { &hf_011_V1_3_390_FLIGHTCAT_HPR, { "HPR, Flight Priority", "asterix.011_V1_3_390_FLIGHTCAT_HPR", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_390_FLIGHTCAT_HPR), 0x02, NULL, HFILL } },
+ { &hf_011_V1_3_390_TOA, { "TOA, Type of Aircraft", "asterix.011_V1_3_390_TOA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_TOA_VALUE, { "Type of Aircraft", "asterix.011_V1_3_390_TOA_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_WTC, { "WTC, Wake Turbulence Category", "asterix.011_V1_3_390_WTC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_WTC_VALUE, { "Wake Turbulence Category", "asterix.011_V1_3_390_WTC_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_390_WTC_VALUE), 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_ADEP, { "ADEP, Departure Airport", "asterix.011_V1_3_390_ADEP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_ADEP_VALUE, { "Departure Airport", "asterix.011_V1_3_390_ADEP_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_ADES, { "ADES, Destination Airport", "asterix.011_V1_3_390_ADES", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_ADES_VALUE, { "Destination Airport", "asterix.011_V1_3_390_ADES_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_RWY, { "RWY, Runway Designation", "asterix.011_V1_3_390_RWY", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_RWY_VALUE, { "Runway Designation", "asterix.011_V1_3_390_RWY_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_CFL, { "CFL, Current Cleared Flight Level", "asterix.011_V1_3_390_CFL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_CFL_VALUE, { "Current Cleared Flight Level, [FL]", "asterix.011_V1_3_390_CFL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_CCP, { "CCP, Current Control Position", "asterix.011_V1_3_390_CCP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_CCP_CENTRE, { "CENTRE, 8-bit Group Identification Code", "asterix.011_V1_3_390_CCP_CENTRE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_CCP_POSITION, { "POSITION, 8-bit Control Position Identification Code", "asterix.011_V1_3_390_CCP_POSITION", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_TOD, { "TOD, Time of Departure", "asterix.011_V1_3_390_TOD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_TOD_TYP, { "TYP, Time Type", "asterix.011_V1_3_390_TOD_TYP", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_390_TOD_TYP), 0xf8, NULL, HFILL } },
+ { &hf_011_V1_3_390_TOD_DAY, { "DAY, Day", "asterix.011_V1_3_390_TOD_DAY", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_390_TOD_DAY), 0x06, NULL, HFILL } },
+ { &hf_011_V1_3_390_TOD_HOR, { "HOR, Hours, from 0 to 23", "asterix.011_V1_3_390_TOD_HOR", FT_UINT8, BASE_DEC, NULL, 0x1f, NULL, HFILL } },
+ { &hf_011_V1_3_390_TOD_MIN, { "MIN, Minutes, from 0 to 59", "asterix.011_V1_3_390_TOD_MIN", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_011_V1_3_390_TOD_AVS, { "AVS, Seconds Available", "asterix.011_V1_3_390_TOD_AVS", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_390_TOD_AVS), 0x80, NULL, HFILL } },
+ { &hf_011_V1_3_390_TOD_SEC, { "SEC, Seconds, from 0 to 59", "asterix.011_V1_3_390_TOD_SEC", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_011_V1_3_390_AST, { "AST, Aircraft Stand", "asterix.011_V1_3_390_AST", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_AST_VALUE, { "Aircraft Stand", "asterix.011_V1_3_390_AST_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_STS, { "STS, Stand Status", "asterix.011_V1_3_390_STS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_390_STS_EMP, { "EMP, Stand Empty", "asterix.011_V1_3_390_STS_EMP", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_390_STS_EMP), 0xc0, NULL, HFILL } },
+ { &hf_011_V1_3_390_STS_AVL, { "AVL, Stand Available", "asterix.011_V1_3_390_STS_AVL", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_390_STS_AVL), 0x30, NULL, HFILL } },
+ { &hf_011_V1_3_430, { "430, Phase of Flight", "asterix.011_V1_3_430", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_430_VALUE, { "Phase of Flight", "asterix.011_V1_3_430_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_430_VALUE), 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_500, { "500, Estimated Accuracies", "asterix.011_V1_3_500", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_500_APC, { "APC, Estimated Accuracy Of Track Position (Cartesian)", "asterix.011_V1_3_500_APC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_500_APC_X, { "X, Estimated Accuracy of the Calculated Position of X Component, [m]", "asterix.011_V1_3_500_APC_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_500_APC_Y, { "Y, Estimated Accuracy of the Calculated Position of Y Component, [m]", "asterix.011_V1_3_500_APC_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_500_APW, { "APW, Estimated Accuracy Of Track Position (WGS84)", "asterix.011_V1_3_500_APW", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_500_APW_LAT, { "LAT, APW Latitude Component Accuracy, [°]", "asterix.011_V1_3_500_APW_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_500_APW_LON, { "LON, APW Longitude Component Accuracy, [°]", "asterix.011_V1_3_500_APW_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_500_ATH, { "ATH, Estimated Accuracy Of Track Height", "asterix.011_V1_3_500_ATH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_500_ATH_VALUE, { "Estimated Accuracy Of Track Height, [m]", "asterix.011_V1_3_500_ATH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_500_AVC, { "AVC, Estimated Accuracy Of Track Velocity (Cartesian)", "asterix.011_V1_3_500_AVC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_500_AVC_X, { "X, Estimated Accuracy of the Calculated Velocity of X Component, [m/s]", "asterix.011_V1_3_500_AVC_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_500_AVC_Y, { "Y, Estimated Accuracy of the Calculated Velocity of Y Component, [m/s]", "asterix.011_V1_3_500_AVC_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_500_ARC, { "ARC, Estimated Accuracy Of Rate Of Climb / Descent", "asterix.011_V1_3_500_ARC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_500_ARC_VALUE, { "Estimated Accuracy Of Rate Of Climb / Descent, [m/s]", "asterix.011_V1_3_500_ARC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_500_AAC, { "AAC, Estimated Accuracy Of Acceleration (Cartesian)", "asterix.011_V1_3_500_AAC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_500_AAC_X, { "X, Estimated Accuracy Of Acceleration of X Component, [m/s2]", "asterix.011_V1_3_500_AAC_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_500_AAC_Y, { "Y, Estimated Accuracy Of Acceleration of Y Component, [m/s2]", "asterix.011_V1_3_500_AAC_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_600, { "600, Alert Messages", "asterix.011_V1_3_600", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_600_ACK, { "ACK, Alert Acknowleged", "asterix.011_V1_3_600_ACK", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_600_ACK), 0x80, NULL, HFILL } },
+ { &hf_011_V1_3_600_SVR, { "SVR, Alert Severity", "asterix.011_V1_3_600_SVR", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_600_SVR), 0x60, NULL, HFILL } },
+ { &hf_011_V1_3_600_AT, { "AT, Alert Type", "asterix.011_V1_3_600_AT", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_600_AN, { "AN, Alert Number", "asterix.011_V1_3_600_AN", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_605, { "605, Tracks in Alert", "asterix.011_V1_3_605", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_605_FTN, { "FTN, Fusion Track Number", "asterix.011_V1_3_605_FTN", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_011_V1_3_610, { "610, Holdbar Status", "asterix.011_V1_3_610", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_610_BKN, { "BKN, Bank Number", "asterix.011_V1_3_610_BKN", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_011_V1_3_610_I1, { "I1, Indicator 1", "asterix.011_V1_3_610_I1", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_610_I1), 0x08, NULL, HFILL } },
+ { &hf_011_V1_3_610_I2, { "I2, Indicator 2", "asterix.011_V1_3_610_I2", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_610_I2), 0x04, NULL, HFILL } },
+ { &hf_011_V1_3_610_I3, { "I3, Indicator 3", "asterix.011_V1_3_610_I3", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_610_I3), 0x02, NULL, HFILL } },
+ { &hf_011_V1_3_610_I4, { "I4, Indicator 4", "asterix.011_V1_3_610_I4", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_610_I4), 0x01, NULL, HFILL } },
+ { &hf_011_V1_3_610_I5, { "I5, Indicator 5", "asterix.011_V1_3_610_I5", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_610_I5), 0x80, NULL, HFILL } },
+ { &hf_011_V1_3_610_I6, { "I6, Indicator 6", "asterix.011_V1_3_610_I6", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_610_I6), 0x40, NULL, HFILL } },
+ { &hf_011_V1_3_610_I7, { "I7, Indicator 7", "asterix.011_V1_3_610_I7", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_610_I7), 0x20, NULL, HFILL } },
+ { &hf_011_V1_3_610_I8, { "I8, Indicator 8", "asterix.011_V1_3_610_I8", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_610_I8), 0x10, NULL, HFILL } },
+ { &hf_011_V1_3_610_I9, { "I9, Indicator 9", "asterix.011_V1_3_610_I9", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_610_I9), 0x08, NULL, HFILL } },
+ { &hf_011_V1_3_610_I10, { "I10, Indicator 10", "asterix.011_V1_3_610_I10", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_610_I10), 0x04, NULL, HFILL } },
+ { &hf_011_V1_3_610_I11, { "I11, Indicator 11", "asterix.011_V1_3_610_I11", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_610_I11), 0x02, NULL, HFILL } },
+ { &hf_011_V1_3_610_I12, { "I12, Indicator 12", "asterix.011_V1_3_610_I12", FT_UINT8, BASE_DEC, VALS (valstr_011_V1_3_610_I12), 0x01, NULL, HFILL } },
+ { &hf_011_V1_3_SP, { "SP, Special Purpose Field", "asterix.011_V1_3_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_V1_3_RE, { "RE, Reserved Expansion Field", "asterix.011_V1_3_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_000, { "000, Message Type", "asterix.011_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_000_VALUE, { "Message Type", "asterix.011_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_011_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_011_010, { "010, Data Source Identifier", "asterix.011_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_010_SAC, { "SAC, System Area Code Fixed to Zero", "asterix.011_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_010_SIC, { "SIC, System Identification Code", "asterix.011_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_015, { "015, Service Identification", "asterix.011_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_015_VALUE, { "Service Identification", "asterix.011_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_041, { "041, Position in WGS-84 Coordinates", "asterix.011_041", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_041_LAT, { "LAT, Latitude in WGS-84 in Two's Complement, [°]", "asterix.011_041_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_041_LON, { "LON, Longitude in WGS-84 in Two's Complement, [°]", "asterix.011_041_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_042, { "042, Calculated Position in Cartesian Co-ordinates", "asterix.011_042", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_042_X, { "X, X-Component, [m]", "asterix.011_042_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_042_Y, { "Y, Y-Component, [m]", "asterix.011_042_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_060, { "060, Mode-3/A Code in Octal Representation", "asterix.011_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_060_MOD3A, { "MOD3A, Mode-3/A Reply in Octal Representation", "asterix.011_060_MOD3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_011_090, { "090, Measured Flight Level", "asterix.011_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_090_VALUE, { "Measured Flight Level, [FL]", "asterix.011_090_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_092, { "092, Calculated Track Geometric Altitude", "asterix.011_092", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_092_VALUE, { "Calculated Track Geometric Altitude, [ft]", "asterix.011_092_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_093, { "093, Calculated Track Barometric Altitude", "asterix.011_093", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_093_QNH, { "QNH, QNH Correction Applied", "asterix.011_093_QNH", FT_UINT8, BASE_DEC, VALS (valstr_011_093_QNH), 0x80, NULL, HFILL } },
+ { &hf_011_093_CTBA, { "CTBA, Calculated Track Barometric Altitude, [FL]", "asterix.011_093_CTBA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_140, { "140, Time of Track Information", "asterix.011_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_140_VALUE, { "Time of Track Information, [s]", "asterix.011_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_161, { "161, Track Number", "asterix.011_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_161_FTN, { "FTN, Fusion Track Number", "asterix.011_161_FTN", FT_UINT16, BASE_DEC, NULL, 0x7fff, NULL, HFILL } },
+ { &hf_011_170, { "170, Track Status", "asterix.011_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_170_MON, { "MON", "asterix.011_170_MON", FT_UINT8, BASE_DEC, VALS (valstr_011_170_MON), 0x80, NULL, HFILL } },
+ { &hf_011_170_GBS, { "GBS", "asterix.011_170_GBS", FT_UINT8, BASE_DEC, VALS (valstr_011_170_GBS), 0x40, NULL, HFILL } },
+ { &hf_011_170_MRH, { "MRH", "asterix.011_170_MRH", FT_UINT8, BASE_DEC, VALS (valstr_011_170_MRH), 0x20, NULL, HFILL } },
+ { &hf_011_170_SRC, { "SRC", "asterix.011_170_SRC", FT_UINT8, BASE_DEC, VALS (valstr_011_170_SRC), 0x1c, NULL, HFILL } },
+ { &hf_011_170_CNF, { "CNF", "asterix.011_170_CNF", FT_UINT8, BASE_DEC, VALS (valstr_011_170_CNF), 0x02, NULL, HFILL } },
+ { &hf_011_170_SIM, { "SIM", "asterix.011_170_SIM", FT_UINT8, BASE_DEC, VALS (valstr_011_170_SIM), 0x80, NULL, HFILL } },
+ { &hf_011_170_TSE, { "TSE", "asterix.011_170_TSE", FT_UINT8, BASE_DEC, VALS (valstr_011_170_TSE), 0x40, NULL, HFILL } },
+ { &hf_011_170_TSB, { "TSB", "asterix.011_170_TSB", FT_UINT8, BASE_DEC, VALS (valstr_011_170_TSB), 0x20, NULL, HFILL } },
+ { &hf_011_170_FRIFOE, { "FRIFOE", "asterix.011_170_FRIFOE", FT_UINT8, BASE_DEC, VALS (valstr_011_170_FRIFOE), 0x18, NULL, HFILL } },
+ { &hf_011_170_ME, { "ME", "asterix.011_170_ME", FT_UINT8, BASE_DEC, VALS (valstr_011_170_ME), 0x04, NULL, HFILL } },
+ { &hf_011_170_MI, { "MI", "asterix.011_170_MI", FT_UINT8, BASE_DEC, VALS (valstr_011_170_MI), 0x02, NULL, HFILL } },
+ { &hf_011_170_AMA, { "AMA", "asterix.011_170_AMA", FT_UINT8, BASE_DEC, VALS (valstr_011_170_AMA), 0x80, NULL, HFILL } },
+ { &hf_011_170_SPI, { "SPI", "asterix.011_170_SPI", FT_UINT8, BASE_DEC, VALS (valstr_011_170_SPI), 0x40, NULL, HFILL } },
+ { &hf_011_170_CST, { "CST", "asterix.011_170_CST", FT_UINT8, BASE_DEC, VALS (valstr_011_170_CST), 0x20, NULL, HFILL } },
+ { &hf_011_170_FPC, { "FPC", "asterix.011_170_FPC", FT_UINT8, BASE_DEC, VALS (valstr_011_170_FPC), 0x10, NULL, HFILL } },
+ { &hf_011_170_AFF, { "AFF", "asterix.011_170_AFF", FT_UINT8, BASE_DEC, VALS (valstr_011_170_AFF), 0x08, NULL, HFILL } },
+ { &hf_011_170_PSR, { "PSR", "asterix.011_170_PSR", FT_UINT8, BASE_DEC, VALS (valstr_011_170_PSR), 0x40, NULL, HFILL } },
+ { &hf_011_170_SSR, { "SSR", "asterix.011_170_SSR", FT_UINT8, BASE_DEC, VALS (valstr_011_170_SSR), 0x20, NULL, HFILL } },
+ { &hf_011_170_MDS, { "MDS", "asterix.011_170_MDS", FT_UINT8, BASE_DEC, VALS (valstr_011_170_MDS), 0x10, NULL, HFILL } },
+ { &hf_011_170_ADS, { "ADS", "asterix.011_170_ADS", FT_UINT8, BASE_DEC, VALS (valstr_011_170_ADS), 0x08, NULL, HFILL } },
+ { &hf_011_170_SUC, { "SUC", "asterix.011_170_SUC", FT_UINT8, BASE_DEC, VALS (valstr_011_170_SUC), 0x04, NULL, HFILL } },
+ { &hf_011_170_AAC, { "AAC", "asterix.011_170_AAC", FT_UINT8, BASE_DEC, VALS (valstr_011_170_AAC), 0x02, NULL, HFILL } },
+ { &hf_011_202, { "202, Calculated Track Velocity in Cartesian Coordinates", "asterix.011_202", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_202_VX, { "VX, Vx, [m/s]", "asterix.011_202_VX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_202_VY, { "VY, Vy, [m/s]", "asterix.011_202_VY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_210, { "210, Calculated Acceleration", "asterix.011_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_210_AX, { "AX, Ax, [m/s2]", "asterix.011_210_AX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_210_AY, { "AY, Ay, [m/s2]", "asterix.011_210_AY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_215, { "215, Calculated Rate Of Climb/Descent", "asterix.011_215", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_215_VALUE, { "Calculated Rate Of Climb/Descent, [ft/min]", "asterix.011_215_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_245, { "245, Target Identification", "asterix.011_245", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_245_STI, { "STI", "asterix.011_245_STI", FT_UINT8, BASE_DEC, VALS (valstr_011_245_STI), 0xc0, NULL, HFILL } },
+ { &hf_011_245_TID, { "TID, Target Identification", "asterix.011_245_TID", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_270, { "270, Target Size and Orientation", "asterix.011_270", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_270_LENGTH, { "LENGTH, Length, [m]", "asterix.011_270_LENGTH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_270_ORIENTATION, { "ORIENTATION, Orientation, [°]", "asterix.011_270_ORIENTATION", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_270_WIDTH, { "WIDTH, Width, [m]", "asterix.011_270_WIDTH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290, { "290, System Track Update Ages", "asterix.011_290", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_PSR, { "PSR, Age of the Last Primary Report Used to Update the Track", "asterix.011_290_PSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_PSR_VALUE, { "Age of the Last Primary Report Used to Update the Track, [s]", "asterix.011_290_PSR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_SSR, { "SSR, Age of the Last Secondary Report Used to Update the Track", "asterix.011_290_SSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_SSR_VALUE, { "Age of the Last Secondary Report Used to Update the Track, [s]", "asterix.011_290_SSR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_MDA, { "MDA, Age of the Last Valid Mode A Report Used to Update the Track", "asterix.011_290_MDA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_MDA_VALUE, { "Age of the Last Valid Mode A Report Used to Update the Track, [s]", "asterix.011_290_MDA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_MFL, { "MFL, Age of the Last Valid and Credible Mode C Used to Update the Track", "asterix.011_290_MFL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_MFL_VALUE, { "Age of the Last Valid and Credible Mode C Used to Update the Track, [s]", "asterix.011_290_MFL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_MDS, { "MDS, Age of the Last Mode S Report Used to Update the Track", "asterix.011_290_MDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_MDS_VALUE, { "Age of the Last Mode S Report Used to Update the Track, [s]", "asterix.011_290_MDS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_ADS, { "ADS, Age of the Last ADS Report Used to Update the Track", "asterix.011_290_ADS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_ADS_VALUE, { "Age of the Last ADS Report Used to Update the Track, [s]", "asterix.011_290_ADS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_ADB, { "ADB, Age of the Last ADS-B Report Used to Update the Track", "asterix.011_290_ADB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_ADB_VALUE, { "Age of the Last ADS-B Report Used to Update the Track, [s]", "asterix.011_290_ADB_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_MD1, { "MD1, Age of the Last Valid Mode 1 Used to Update the Track", "asterix.011_290_MD1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_MD1_VALUE, { "Age of the Last Valid Mode 1 Used to Update the Track, [s]", "asterix.011_290_MD1_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_MD2, { "MD2, Age of the Last Valid Mode 2 Used to Update the Track", "asterix.011_290_MD2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_MD2_VALUE, { "Age of the Last Valid Mode 2 Used to Update the Track, [s]", "asterix.011_290_MD2_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_LOP, { "LOP, Age of the Last Magentic Loop Detection", "asterix.011_290_LOP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_LOP_VALUE, { "Age of the Last Magentic Loop Detection, [s]", "asterix.011_290_LOP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_TRK, { "TRK, Actual Track Age Since First Occurrence", "asterix.011_290_TRK", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_TRK_VALUE, { "Actual Track Age Since First Occurrence, [s]", "asterix.011_290_TRK_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_MUL, { "MUL, Age of the Last Multilateration Detection", "asterix.011_290_MUL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_290_MUL_VALUE, { "Age of the Last Multilateration Detection, [s]", "asterix.011_290_MUL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_300, { "300, Vehicle Fleet Identification", "asterix.011_300", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_300_VALUE, { "Vehicle Fleet Identification", "asterix.011_300_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_011_300_VALUE), 0x00, NULL, HFILL } },
+ { &hf_011_310, { "310, Pre-programmed Message", "asterix.011_310", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_310_TRB, { "TRB, In Trouble", "asterix.011_310_TRB", FT_UINT8, BASE_DEC, VALS (valstr_011_310_TRB), 0x80, NULL, HFILL } },
+ { &hf_011_310_MSG, { "MSG, Message", "asterix.011_310_MSG", FT_UINT8, BASE_DEC, VALS (valstr_011_310_MSG), 0x7f, NULL, HFILL } },
+ { &hf_011_380, { "380, Mode-S / ADS-B Related Data", "asterix.011_380", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_380_MB, { "MB, BDS", "asterix.011_380_MB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_380_MB_VALUE, { "BDS", "asterix.011_380_MB_VALUE", FT_UINT64, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_380_ADR, { "ADR, 24 Bits Aircraft Address", "asterix.011_380_ADR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_380_ADR_VALUE, { "24 Bits Aircraft Address", "asterix.011_380_ADR_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_380_COMACAS, { "COMACAS, Communications/ACAS Capability and Flight Status", "asterix.011_380_COMACAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_380_COMACAS_COM, { "COM, Communications Capability of the Transponder", "asterix.011_380_COMACAS_COM", FT_UINT8, BASE_DEC, VALS (valstr_011_380_COMACAS_COM), 0xe0, NULL, HFILL } },
+ { &hf_011_380_COMACAS_STAT, { "STAT, Flight Status", "asterix.011_380_COMACAS_STAT", FT_UINT8, BASE_DEC, VALS (valstr_011_380_COMACAS_STAT), 0x1e, NULL, HFILL } },
+ { &hf_011_380_COMACAS_SSC, { "SSC, Specific Service Capability", "asterix.011_380_COMACAS_SSC", FT_UINT8, BASE_DEC, VALS (valstr_011_380_COMACAS_SSC), 0x80, NULL, HFILL } },
+ { &hf_011_380_COMACAS_ARC, { "ARC, Altitude Reporting Capability", "asterix.011_380_COMACAS_ARC", FT_UINT8, BASE_DEC, VALS (valstr_011_380_COMACAS_ARC), 0x40, NULL, HFILL } },
+ { &hf_011_380_COMACAS_AIC, { "AIC, Aircraft Identification Capability", "asterix.011_380_COMACAS_AIC", FT_UINT8, BASE_DEC, VALS (valstr_011_380_COMACAS_AIC), 0x20, NULL, HFILL } },
+ { &hf_011_380_COMACAS_B1A, { "B1A, BDS 1,0 Bit 16", "asterix.011_380_COMACAS_B1A", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_011_380_COMACAS_B1B, { "B1B, BDS 1,0 Bit 37/40", "asterix.011_380_COMACAS_B1B", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_011_380_COMACAS_AC, { "AC, ACAS Operational", "asterix.011_380_COMACAS_AC", FT_UINT8, BASE_DEC, VALS (valstr_011_380_COMACAS_AC), 0x80, NULL, HFILL } },
+ { &hf_011_380_COMACAS_MN, { "MN, Multiple Navigational Aids Operating", "asterix.011_380_COMACAS_MN", FT_UINT8, BASE_DEC, VALS (valstr_011_380_COMACAS_MN), 0x40, NULL, HFILL } },
+ { &hf_011_380_COMACAS_DC, { "DC, Differential Correction", "asterix.011_380_COMACAS_DC", FT_UINT8, BASE_DEC, VALS (valstr_011_380_COMACAS_DC), 0x20, NULL, HFILL } },
+ { &hf_011_380_ACT, { "ACT, Aircraft Derived Aircraft Type", "asterix.011_380_ACT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_380_ACT_VALUE, { "Aircraft Derived Aircraft Type", "asterix.011_380_ACT_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_380_ECAT, { "ECAT, Emitter Category", "asterix.011_380_ECAT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_380_ECAT_VALUE, { "Emitter Category", "asterix.011_380_ECAT_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_011_380_ECAT_VALUE), 0x00, NULL, HFILL } },
+ { &hf_011_380_AVTECH, { "AVTECH, Available Technologies", "asterix.011_380_AVTECH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_380_AVTECH_VDL, { "VDL, VDL Mode 4", "asterix.011_380_AVTECH_VDL", FT_UINT8, BASE_DEC, VALS (valstr_011_380_AVTECH_VDL), 0x80, NULL, HFILL } },
+ { &hf_011_380_AVTECH_MDS, { "MDS, Mode S", "asterix.011_380_AVTECH_MDS", FT_UINT8, BASE_DEC, VALS (valstr_011_380_AVTECH_MDS), 0x40, NULL, HFILL } },
+ { &hf_011_380_AVTECH_UAT, { "UAT, UAT", "asterix.011_380_AVTECH_UAT", FT_UINT8, BASE_DEC, VALS (valstr_011_380_AVTECH_UAT), 0x20, NULL, HFILL } },
+ { &hf_011_390, { "390, Flight Plan Related Data", "asterix.011_390", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_FPPSID, { "FPPSID, FPPS Identification Tag", "asterix.011_390_FPPSID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_FPPSID_SAC, { "SAC, System Area Code", "asterix.011_390_FPPSID_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_FPPSID_SIC, { "SIC, System Identity Code", "asterix.011_390_FPPSID_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_CSN, { "CSN, Callsign", "asterix.011_390_CSN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_CSN_VALUE, { "Callsign", "asterix.011_390_CSN_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_IFPSFLIGHTID, { "IFPSFLIGHTID, IFPS_FLIGHT_ID", "asterix.011_390_IFPSFLIGHTID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_IFPSFLIGHTID_TYP, { "TYP, IFPS Flight ID Type", "asterix.011_390_IFPSFLIGHTID_TYP", FT_UINT8, BASE_DEC, VALS (valstr_011_390_IFPSFLIGHTID_TYP), 0xc0, NULL, HFILL } },
+ { &hf_011_390_IFPSFLIGHTID_NBR, { "NBR, IFPS Flight ID Number", "asterix.011_390_IFPSFLIGHTID_NBR", FT_UINT32, BASE_DEC, NULL, 0x07ffffff, NULL, HFILL } },
+ { &hf_011_390_FLIGHTCAT, { "FLIGHTCAT, Flight Category", "asterix.011_390_FLIGHTCAT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_FLIGHTCAT_GATOAT, { "GATOAT, Flight Type", "asterix.011_390_FLIGHTCAT_GATOAT", FT_UINT8, BASE_DEC, VALS (valstr_011_390_FLIGHTCAT_GATOAT), 0xc0, NULL, HFILL } },
+ { &hf_011_390_FLIGHTCAT_FR1FR2, { "FR1FR2, Flight Rules", "asterix.011_390_FLIGHTCAT_FR1FR2", FT_UINT8, BASE_DEC, VALS (valstr_011_390_FLIGHTCAT_FR1FR2), 0x30, NULL, HFILL } },
+ { &hf_011_390_FLIGHTCAT_RVSM, { "RVSM, RVSM", "asterix.011_390_FLIGHTCAT_RVSM", FT_UINT8, BASE_DEC, VALS (valstr_011_390_FLIGHTCAT_RVSM), 0x0c, NULL, HFILL } },
+ { &hf_011_390_FLIGHTCAT_HPR, { "HPR, Flight Priority", "asterix.011_390_FLIGHTCAT_HPR", FT_UINT8, BASE_DEC, VALS (valstr_011_390_FLIGHTCAT_HPR), 0x02, NULL, HFILL } },
+ { &hf_011_390_TOA, { "TOA, Type of Aircraft", "asterix.011_390_TOA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_TOA_VALUE, { "Type of Aircraft", "asterix.011_390_TOA_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_WTC, { "WTC, Wake Turbulence Category", "asterix.011_390_WTC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_WTC_VALUE, { "Wake Turbulence Category", "asterix.011_390_WTC_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_011_390_WTC_VALUE), 0x00, NULL, HFILL } },
+ { &hf_011_390_ADEP, { "ADEP, Departure Airport", "asterix.011_390_ADEP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_ADEP_VALUE, { "Departure Airport", "asterix.011_390_ADEP_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_ADES, { "ADES, Destination Airport", "asterix.011_390_ADES", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_ADES_VALUE, { "Destination Airport", "asterix.011_390_ADES_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_RWY, { "RWY, Runway Designation", "asterix.011_390_RWY", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_RWY_VALUE, { "Runway Designation", "asterix.011_390_RWY_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_CFL, { "CFL, Current Cleared Flight Level", "asterix.011_390_CFL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_CFL_VALUE, { "Current Cleared Flight Level, [FL]", "asterix.011_390_CFL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_CCP, { "CCP, Current Control Position", "asterix.011_390_CCP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_CCP_CENTRE, { "CENTRE, 8-bit Group Identification Code", "asterix.011_390_CCP_CENTRE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_CCP_POSITION, { "POSITION, 8-bit Control Position Identification Code", "asterix.011_390_CCP_POSITION", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_TOD, { "TOD, Time of Departure", "asterix.011_390_TOD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_TOD_TYP, { "TYP, Time Type", "asterix.011_390_TOD_TYP", FT_UINT8, BASE_DEC, VALS (valstr_011_390_TOD_TYP), 0xf8, NULL, HFILL } },
+ { &hf_011_390_TOD_DAY, { "DAY, Day", "asterix.011_390_TOD_DAY", FT_UINT8, BASE_DEC, VALS (valstr_011_390_TOD_DAY), 0x06, NULL, HFILL } },
+ { &hf_011_390_TOD_HOR, { "HOR, Hours, from 0 to 23", "asterix.011_390_TOD_HOR", FT_UINT8, BASE_DEC, NULL, 0x1f, NULL, HFILL } },
+ { &hf_011_390_TOD_MIN, { "MIN, Minutes, from 0 to 59", "asterix.011_390_TOD_MIN", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_011_390_TOD_AVS, { "AVS, Seconds Available", "asterix.011_390_TOD_AVS", FT_UINT8, BASE_DEC, VALS (valstr_011_390_TOD_AVS), 0x80, NULL, HFILL } },
+ { &hf_011_390_TOD_SEC, { "SEC, Seconds, from 0 to 59", "asterix.011_390_TOD_SEC", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_011_390_AST, { "AST, Aircraft Stand", "asterix.011_390_AST", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_AST_VALUE, { "Aircraft Stand", "asterix.011_390_AST_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_STS, { "STS, Stand Status", "asterix.011_390_STS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_390_STS_EMP, { "EMP, Stand Empty", "asterix.011_390_STS_EMP", FT_UINT8, BASE_DEC, VALS (valstr_011_390_STS_EMP), 0xc0, NULL, HFILL } },
+ { &hf_011_390_STS_AVL, { "AVL, Stand Available", "asterix.011_390_STS_AVL", FT_UINT8, BASE_DEC, VALS (valstr_011_390_STS_AVL), 0x30, NULL, HFILL } },
+ { &hf_011_430, { "430, Phase of Flight", "asterix.011_430", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_430_VALUE, { "Phase of Flight", "asterix.011_430_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_011_430_VALUE), 0x00, NULL, HFILL } },
+ { &hf_011_500, { "500, Estimated Accuracies", "asterix.011_500", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_500_APC, { "APC, Estimated Accuracy Of Track Position (Cartesian)", "asterix.011_500_APC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_500_APC_X, { "X, Estimated Accuracy of the Calculated Position of X Component, [m]", "asterix.011_500_APC_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_500_APC_Y, { "Y, Estimated Accuracy of the Calculated Position of Y Component, [m]", "asterix.011_500_APC_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_500_APW, { "APW, Estimated Accuracy Of Track Position (WGS84)", "asterix.011_500_APW", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_500_APW_LAT, { "LAT, APW Latitude Component Accuracy, [°]", "asterix.011_500_APW_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_500_APW_LON, { "LON, APW Longitude Component Accuracy, [°]", "asterix.011_500_APW_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_500_ATH, { "ATH, Estimated Accuracy Of Track Height", "asterix.011_500_ATH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_500_ATH_VALUE, { "Estimated Accuracy Of Track Height, [m]", "asterix.011_500_ATH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_500_AVC, { "AVC, Estimated Accuracy Of Track Velocity (Cartesian)", "asterix.011_500_AVC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_500_AVC_X, { "X, Estimated Accuracy of the Calculated Velocity of X Component, [m/s]", "asterix.011_500_AVC_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_500_AVC_Y, { "Y, Estimated Accuracy of the Calculated Velocity of Y Component, [m/s]", "asterix.011_500_AVC_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_500_ARC, { "ARC, Estimated Accuracy Of Rate Of Climb / Descent", "asterix.011_500_ARC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_500_ARC_VALUE, { "Estimated Accuracy Of Rate Of Climb / Descent, [m/s]", "asterix.011_500_ARC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_500_AAC, { "AAC, Estimated Accuracy Of Acceleration (Cartesian)", "asterix.011_500_AAC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_500_AAC_X, { "X, Estimated Accuracy Of Acceleration of X Component, [m/s2]", "asterix.011_500_AAC_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_500_AAC_Y, { "Y, Estimated Accuracy Of Acceleration of Y Component, [m/s2]", "asterix.011_500_AAC_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_600, { "600, Alert Messages", "asterix.011_600", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_600_ACK, { "ACK, Alert Acknowleged", "asterix.011_600_ACK", FT_UINT8, BASE_DEC, VALS (valstr_011_600_ACK), 0x80, NULL, HFILL } },
+ { &hf_011_600_SVR, { "SVR, Alert Severity", "asterix.011_600_SVR", FT_UINT8, BASE_DEC, VALS (valstr_011_600_SVR), 0x60, NULL, HFILL } },
+ { &hf_011_600_AT, { "AT, Alert Type", "asterix.011_600_AT", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_600_AN, { "AN, Alert Number", "asterix.011_600_AN", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_605, { "605, Tracks in Alert", "asterix.011_605", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_605_FTN, { "FTN, Fusion Track Number", "asterix.011_605_FTN", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_011_610, { "610, Holdbar Status", "asterix.011_610", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_610_BKN, { "BKN, Bank Number", "asterix.011_610_BKN", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_011_610_I1, { "I1, Indicator 1", "asterix.011_610_I1", FT_UINT8, BASE_DEC, VALS (valstr_011_610_I1), 0x08, NULL, HFILL } },
+ { &hf_011_610_I2, { "I2, Indicator 2", "asterix.011_610_I2", FT_UINT8, BASE_DEC, VALS (valstr_011_610_I2), 0x04, NULL, HFILL } },
+ { &hf_011_610_I3, { "I3, Indicator 3", "asterix.011_610_I3", FT_UINT8, BASE_DEC, VALS (valstr_011_610_I3), 0x02, NULL, HFILL } },
+ { &hf_011_610_I4, { "I4, Indicator 4", "asterix.011_610_I4", FT_UINT8, BASE_DEC, VALS (valstr_011_610_I4), 0x01, NULL, HFILL } },
+ { &hf_011_610_I5, { "I5, Indicator 5", "asterix.011_610_I5", FT_UINT8, BASE_DEC, VALS (valstr_011_610_I5), 0x80, NULL, HFILL } },
+ { &hf_011_610_I6, { "I6, Indicator 6", "asterix.011_610_I6", FT_UINT8, BASE_DEC, VALS (valstr_011_610_I6), 0x40, NULL, HFILL } },
+ { &hf_011_610_I7, { "I7, Indicator 7", "asterix.011_610_I7", FT_UINT8, BASE_DEC, VALS (valstr_011_610_I7), 0x20, NULL, HFILL } },
+ { &hf_011_610_I8, { "I8, Indicator 8", "asterix.011_610_I8", FT_UINT8, BASE_DEC, VALS (valstr_011_610_I8), 0x10, NULL, HFILL } },
+ { &hf_011_610_I9, { "I9, Indicator 9", "asterix.011_610_I9", FT_UINT8, BASE_DEC, VALS (valstr_011_610_I9), 0x08, NULL, HFILL } },
+ { &hf_011_610_I10, { "I10, Indicator 10", "asterix.011_610_I10", FT_UINT8, BASE_DEC, VALS (valstr_011_610_I10), 0x04, NULL, HFILL } },
+ { &hf_011_610_I11, { "I11, Indicator 11", "asterix.011_610_I11", FT_UINT8, BASE_DEC, VALS (valstr_011_610_I11), 0x02, NULL, HFILL } },
+ { &hf_011_610_I12, { "I12, Indicator 12", "asterix.011_610_I12", FT_UINT8, BASE_DEC, VALS (valstr_011_610_I12), 0x01, NULL, HFILL } },
+ { &hf_011_SP, { "SP, Special Purpose Field", "asterix.011_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_011_RE, { "RE, Reserved Expansion Field", "asterix.011_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_000, { "000, Message Type", "asterix.015_V1_0_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_000_MT, { "MT, Message Type", "asterix.015_V1_0_000_MT", FT_UINT8, BASE_DEC, VALS (valstr_015_V1_0_000_MT), 0xfe, NULL, HFILL } },
+ { &hf_015_V1_0_000_RG, { "RG, Report Generation", "asterix.015_V1_0_000_RG", FT_UINT8, BASE_DEC, VALS (valstr_015_V1_0_000_RG), 0x01, NULL, HFILL } },
+ { &hf_015_V1_0_010, { "010, Data Source Identifier", "asterix.015_V1_0_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_010_SAC, { "SAC, System Area Code", "asterix.015_V1_0_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_010_SIC, { "SIC, System Identification Code", "asterix.015_V1_0_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_015, { "015, Service Identification", "asterix.015_V1_0_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_015_VALUE, { "Service Identification", "asterix.015_V1_0_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_020, { "020, Target Report Descriptor", "asterix.015_V1_0_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_020_MOMU, { "MOMU, Mono-Static Target Report or Multi-Static Target Report", "asterix.015_V1_0_020_MOMU", FT_UINT8, BASE_DEC, VALS (valstr_015_V1_0_020_MOMU), 0xc0, NULL, HFILL } },
+ { &hf_015_V1_0_020_TTAX, { "TTAX, Target Taxonomy", "asterix.015_V1_0_020_TTAX", FT_UINT8, BASE_DEC, VALS (valstr_015_V1_0_020_TTAX), 0x30, NULL, HFILL } },
+ { &hf_015_V1_0_020_SCD, { "SCD, Scanning Direction", "asterix.015_V1_0_020_SCD", FT_UINT8, BASE_DEC, VALS (valstr_015_V1_0_020_SCD), 0x0c, NULL, HFILL } },
+ { &hf_015_V1_0_030, { "030, Warning/Error Conditions", "asterix.015_V1_0_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_030_Subitem, { "Subitem, Subitem", "asterix.015_V1_0_030_Subitem", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_015_V1_0_050, { "050, Update Period", "asterix.015_V1_0_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_050_UPD, { "UPD, Update Period, [s]", "asterix.015_V1_0_050_UPD", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_145, { "145, Time of Applicability", "asterix.015_V1_0_145", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_145_VALUE, { "Time of Applicability, [s]", "asterix.015_V1_0_145_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_161, { "161, Track/Plot Number", "asterix.015_V1_0_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_161_VALUE, { "Track/Plot Number", "asterix.015_V1_0_161_VALUE", FT_UINT16, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_170, { "170, Track/Plot Status", "asterix.015_V1_0_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_170_BIZ, { "BIZ", "asterix.015_V1_0_170_BIZ", FT_UINT8, BASE_DEC, VALS (valstr_015_V1_0_170_BIZ), 0x80, NULL, HFILL } },
+ { &hf_015_V1_0_170_BAZ, { "BAZ", "asterix.015_V1_0_170_BAZ", FT_UINT8, BASE_DEC, VALS (valstr_015_V1_0_170_BAZ), 0x40, NULL, HFILL } },
+ { &hf_015_V1_0_170_TUR, { "TUR", "asterix.015_V1_0_170_TUR", FT_UINT8, BASE_DEC, VALS (valstr_015_V1_0_170_TUR), 0x20, NULL, HFILL } },
+ { &hf_015_V1_0_170_CSTP, { "CSTP, Coasted - Position", "asterix.015_V1_0_170_CSTP", FT_UINT8, BASE_DEC, VALS (valstr_015_V1_0_170_CSTP), 0x08, NULL, HFILL } },
+ { &hf_015_V1_0_170_CSTH, { "CSTH, Coasted – Height", "asterix.015_V1_0_170_CSTH", FT_UINT8, BASE_DEC, VALS (valstr_015_V1_0_170_CSTH), 0x04, NULL, HFILL } },
+ { &hf_015_V1_0_170_CNF, { "CNF, Confirmed vs. Tentative Track", "asterix.015_V1_0_170_CNF", FT_UINT8, BASE_DEC, VALS (valstr_015_V1_0_170_CNF), 0x02, NULL, HFILL } },
+ { &hf_015_V1_0_270, { "270, Target Size & Orientation", "asterix.015_V1_0_270", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_270_LEN, { "LEN, Target Length", "asterix.015_V1_0_270_LEN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_270_LEN_VALUE, { "Target Length, [m]", "asterix.015_V1_0_270_LEN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_270_WDT, { "WDT, Target Width", "asterix.015_V1_0_270_WDT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_270_WDT_VALUE, { "Target Width, [m]", "asterix.015_V1_0_270_WDT_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_270_HGT, { "HGT, Target Height", "asterix.015_V1_0_270_HGT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_270_HGT_VALUE, { "Target Height, [m]", "asterix.015_V1_0_270_HGT_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_270_ORT, { "ORT, Target Orientation", "asterix.015_V1_0_270_ORT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_270_ORT_VALUE, { "Target Orientation, [°]", "asterix.015_V1_0_270_ORT_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_300, { "300, Object Classification", "asterix.015_V1_0_300", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_300_CLS, { "CLS, Classification", "asterix.015_V1_0_300_CLS", FT_UINT16, BASE_DEC, NULL, 0xff80, NULL, HFILL } },
+ { &hf_015_V1_0_300_PRB, { "PRB, Probability", "asterix.015_V1_0_300_PRB", FT_UINT8, BASE_DEC, NULL, 0x7f, NULL, HFILL } },
+ { &hf_015_V1_0_400, { "400, Measurement Identifier", "asterix.015_V1_0_400", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_400_PID, { "PID, Pair Identifier", "asterix.015_V1_0_400_PID", FT_UINT16, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_400_ON, { "ON, Observation Number", "asterix.015_V1_0_400_ON", FT_UINT24, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_480, { "480, Associations", "asterix.015_V1_0_480", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_480_VALUE, { "Associations", "asterix.015_V1_0_480_VALUE", FT_UINT40, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_600, { "600, Horizontal Position Information", "asterix.015_V1_0_600", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_600_P84, { "P84, Horizontal Position in WGS-84 Coordinates", "asterix.015_V1_0_600_P84", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_600_P84_LATITUDE, { "LATITUDE, [°]", "asterix.015_V1_0_600_P84_LATITUDE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_600_P84_LONGITUDE, { "LONGITUDE, [°]", "asterix.015_V1_0_600_P84_LONGITUDE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_600_HPR, { "HPR, Horizontal Position Resolution", "asterix.015_V1_0_600_HPR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_600_HPR_RSHPX, { "RSHPX, [m]", "asterix.015_V1_0_600_HPR_RSHPX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_600_HPR_RSHPY, { "RSHPY, [m]", "asterix.015_V1_0_600_HPR_RSHPY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_600_HPR_CORSHPXY, { "CORSHPXY", "asterix.015_V1_0_600_HPR_CORSHPXY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_600_HPP, { "HPP, Horizontal Position Precision", "asterix.015_V1_0_600_HPP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_600_HPP_SDHPX, { "SDHPX, [m]", "asterix.015_V1_0_600_HPP_SDHPX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_600_HPP_SDHPY, { "SDHPY, [m]", "asterix.015_V1_0_600_HPP_SDHPY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_600_HPP_COSDHPXY, { "COSDHPXY", "asterix.015_V1_0_600_HPP_COSDHPXY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_601, { "601, Geometric Height Information", "asterix.015_V1_0_601", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_601_GH, { "GH, Geometric Height (WGS-84)", "asterix.015_V1_0_601_GH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_601_GH_VALUE, { "Geometric Height (WGS-84), [m]", "asterix.015_V1_0_601_GH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_601_RSGH, { "RSGH, Geometric Height Resolution", "asterix.015_V1_0_601_RSGH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_601_RSGH_VALUE, { "Geometric Height Resolution, [m]", "asterix.015_V1_0_601_RSGH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_601_SDGH, { "SDGH, Geometric Height Precision", "asterix.015_V1_0_601_SDGH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_601_SDGH_VALUE, { "Geometric Height Precision, [m]", "asterix.015_V1_0_601_SDGH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_601_CI6, { "CI6, Confidence Interval for Geometric Height (67%)", "asterix.015_V1_0_601_CI6", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_601_CI6_UCI6, { "UCI6, [m]", "asterix.015_V1_0_601_CI6_UCI6", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_601_CI6_LCI6, { "LCI6, [m]", "asterix.015_V1_0_601_CI6_LCI6", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_601_CI9, { "CI9, Confidence Interval for Geometric Height (95%)", "asterix.015_V1_0_601_CI9", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_601_CI9_UCI9, { "UCI9, [m]", "asterix.015_V1_0_601_CI9_UCI9", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_601_CI9_LCI9, { "LCI9, [m]", "asterix.015_V1_0_601_CI9_LCI9", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_601_COGHHP, { "COGHHP, Correlation of Geometric Height and Horizontal Position", "asterix.015_V1_0_601_COGHHP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_601_COGHHP_X, { "X", "asterix.015_V1_0_601_COGHHP_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_601_COGHHP_Y, { "Y", "asterix.015_V1_0_601_COGHHP_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_601_COGHHV, { "COGHHV, Correlation of Geometric Height and Horizontal Velocity", "asterix.015_V1_0_601_COGHHV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_601_COGHHV_X, { "X", "asterix.015_V1_0_601_COGHHV_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_601_COGHHV_Y, { "Y", "asterix.015_V1_0_601_COGHHV_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_601_COGHHA, { "COGHHA, Correlation of Geometric Height and Horizontal Acceleration", "asterix.015_V1_0_601_COGHHA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_601_COGHHA_X, { "X", "asterix.015_V1_0_601_COGHHA_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_601_COGHHA_Y, { "Y", "asterix.015_V1_0_601_COGHHA_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_602, { "602, Horizontal Velocity Information", "asterix.015_V1_0_602", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_602_HV, { "HV, Horizontal Velocity Vector", "asterix.015_V1_0_602_HV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_602_HV_X, { "X, [m/s]", "asterix.015_V1_0_602_HV_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_602_HV_Y, { "Y, [m/s]", "asterix.015_V1_0_602_HV_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_602_RSHV, { "RSHV, Horizontal Velocity Resolution", "asterix.015_V1_0_602_RSHV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_602_RSHV_X, { "X, [m/s]", "asterix.015_V1_0_602_RSHV_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_602_RSHV_Y, { "Y, [m/s]", "asterix.015_V1_0_602_RSHV_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_602_RSHV_CORSHVXY, { "CORSHVXY", "asterix.015_V1_0_602_RSHV_CORSHVXY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_602_SDHV, { "SDHV, Horizontal Velocity Precision", "asterix.015_V1_0_602_SDHV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_602_SDHV_X, { "X, [m/s]", "asterix.015_V1_0_602_SDHV_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_602_SDHV_Y, { "Y, [m/s]", "asterix.015_V1_0_602_SDHV_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_602_SDHV_COHVXY, { "COHVXY", "asterix.015_V1_0_602_SDHV_COHVXY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_602_COHVHP, { "COHVHP, Correlation of Horizontal Velocity and Horizontal Position", "asterix.015_V1_0_602_COHVHP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_602_COHVHP_COHVXHPX, { "COHVXHPX", "asterix.015_V1_0_602_COHVHP_COHVXHPX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_602_COHVHP_COHVXHPY, { "COHVXHPY", "asterix.015_V1_0_602_COHVHP_COHVXHPY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_602_COHVHP_COHVYHPX, { "COHVYHPX", "asterix.015_V1_0_602_COHVHP_COHVYHPX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_602_COHVHP_COHVYHPY, { "COHVYHPY", "asterix.015_V1_0_602_COHVHP_COHVYHPY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_603, { "603, Horizontal Acceleration Information", "asterix.015_V1_0_603", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_603_HA, { "HA, Horizontal Acceleration Vector", "asterix.015_V1_0_603_HA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_603_HA_X, { "X, [m/s2]", "asterix.015_V1_0_603_HA_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_603_HA_Y, { "Y, [m/s2]", "asterix.015_V1_0_603_HA_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_603_SDHA, { "SDHA, Horizontal Acceleration Precision", "asterix.015_V1_0_603_SDHA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_603_SDHA_X, { "X, [m/s2]", "asterix.015_V1_0_603_SDHA_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_603_SDHA_Y, { "Y, [m/s2]", "asterix.015_V1_0_603_SDHA_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_603_SDHA_COHAXY, { "COHAXY", "asterix.015_V1_0_603_SDHA_COHAXY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_603_COHAHP, { "COHAHP, Correlation of Horizontal Acceleration and Horizontal Position", "asterix.015_V1_0_603_COHAHP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_603_COHAHP_COHAXHPX, { "COHAXHPX", "asterix.015_V1_0_603_COHAHP_COHAXHPX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_603_COHAHP_COHAXHPY, { "COHAXHPY", "asterix.015_V1_0_603_COHAHP_COHAXHPY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_603_COHAHP_COHAYHPX, { "COHAYHPX", "asterix.015_V1_0_603_COHAHP_COHAYHPX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_603_COHAHP_COAYHPY, { "COAYHPY", "asterix.015_V1_0_603_COHAHP_COAYHPY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_603_COHAHV, { "COHAHV, Correlation of Horizontal Acceleration and Horizontal Velocity", "asterix.015_V1_0_603_COHAHV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_603_COHAHV_COHAXHVX, { "COHAXHVX", "asterix.015_V1_0_603_COHAHV_COHAXHVX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_603_COHAHV_COHAXHVY, { "COHAXHVY", "asterix.015_V1_0_603_COHAHV_COHAXHVY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_603_COHAHV_COHAYHVX, { "COHAYHVX", "asterix.015_V1_0_603_COHAHV_COHAYHVX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_603_COHAHV_COHAYHVY, { "COHAYHVY", "asterix.015_V1_0_603_COHAHV_COHAYHVY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_604, { "604, Vertical Velocity Information", "asterix.015_V1_0_604", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_604_VV, { "VV, Vertical Velocity", "asterix.015_V1_0_604_VV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_604_VV_VALUE, { "Vertical Velocity, [m/s]", "asterix.015_V1_0_604_VV_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_604_RSVV, { "RSVV, Vertical Velocity Resolution", "asterix.015_V1_0_604_RSVV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_604_RSVV_VALUE, { "Vertical Velocity Resolution, [m/s]", "asterix.015_V1_0_604_RSVV_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_604_SDVV, { "SDVV, Vertical Velocity Precision", "asterix.015_V1_0_604_SDVV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_604_SDVV_SDVV, { "SDVV, [m/s]", "asterix.015_V1_0_604_SDVV_SDVV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_604_SDVV_COVVGH, { "COVVGH", "asterix.015_V1_0_604_SDVV_COVVGH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_604_COVVHP, { "COVVHP, Correlation of Vertical Velocity and Horizontal Position", "asterix.015_V1_0_604_COVVHP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_604_COVVHP_X, { "X", "asterix.015_V1_0_604_COVVHP_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_604_COVVHP_Y, { "Y", "asterix.015_V1_0_604_COVVHP_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_604_COVVHV, { "COVVHV, Correlation of Vertical Velocity and Horizontal Velocity", "asterix.015_V1_0_604_COVVHV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_604_COVVHV_X, { "X", "asterix.015_V1_0_604_COVVHV_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_604_COVVHV_Y, { "Y", "asterix.015_V1_0_604_COVVHV_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_604_COVVHA, { "COVVHA, Correlation of Vertical Velocity and Horizontal Acceleration", "asterix.015_V1_0_604_COVVHA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_604_COVVHA_X, { "X", "asterix.015_V1_0_604_COVVHA_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_604_COVVHA_Y, { "Y", "asterix.015_V1_0_604_COVVHA_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_605, { "605, Vertical Velocity Information", "asterix.015_V1_0_605", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_605_VA, { "VA, Vertical Acceleration", "asterix.015_V1_0_605_VA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_605_VA_VALUE, { "Vertical Acceleration, [m/s2]", "asterix.015_V1_0_605_VA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_605_RSVA, { "RSVA, Vertical Acceleration Precision", "asterix.015_V1_0_605_RSVA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_605_RSVA_SDVA, { "SDVA, [m/s2]", "asterix.015_V1_0_605_RSVA_SDVA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_605_RSVA_COVAGH, { "COVAGH", "asterix.015_V1_0_605_RSVA_COVAGH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_605_RSVA_COVAVV, { "COVAVV", "asterix.015_V1_0_605_RSVA_COVAVV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_605_COVAHP, { "COVAHP, Correlation of Vertical Acceleration and Horizontal Position", "asterix.015_V1_0_605_COVAHP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_605_COVAHP_X, { "X", "asterix.015_V1_0_605_COVAHP_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_605_COVAHP_Y, { "Y", "asterix.015_V1_0_605_COVAHP_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_605_COVAHV, { "COVAHV, Correlation of Vertical Acceleration and Horizontal Velocity", "asterix.015_V1_0_605_COVAHV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_605_COVAHV_X, { "X", "asterix.015_V1_0_605_COVAHV_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_605_COVAHV_Y, { "Y", "asterix.015_V1_0_605_COVAHV_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_605_COVAHA, { "COVAHA, Correlation of Vertical Acceleration and Horizontal Acceleration", "asterix.015_V1_0_605_COVAHA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_605_COVAHA_X, { "X", "asterix.015_V1_0_605_COVAHA_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_605_COVAHA_Y, { "Y", "asterix.015_V1_0_605_COVAHA_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_625, { "625, Range Information", "asterix.015_V1_0_625", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_625_R, { "R, Range", "asterix.015_V1_0_625_R", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_625_R_VALUE, { "Range, [m]", "asterix.015_V1_0_625_R_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_625_RSR, { "RSR, Range Resolution", "asterix.015_V1_0_625_RSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_625_RSR_VALUE, { "Range Resolution, [m]", "asterix.015_V1_0_625_RSR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_625_SDR, { "SDR, Range Precision", "asterix.015_V1_0_625_SDR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_625_SDR_VALUE, { "Range Precision, [m]", "asterix.015_V1_0_625_SDR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_625_RR, { "RR, Range Rate", "asterix.015_V1_0_625_RR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_625_RR_VALUE, { "Range Rate, [m/s]", "asterix.015_V1_0_625_RR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_625_RSRR, { "RSRR, Range Rate Resolution", "asterix.015_V1_0_625_RSRR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_625_RSRR_VALUE, { "Range Rate Resolution, [m/s]", "asterix.015_V1_0_625_RSRR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_625_SDRR, { "SDRR, Range Rate Precision", "asterix.015_V1_0_625_SDRR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_625_SDRR_SDRR, { "SDRR, [m/s]", "asterix.015_V1_0_625_SDRR_SDRR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_625_SDRR_CORRR, { "CORRR", "asterix.015_V1_0_625_SDRR_CORRR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_625_RA, { "RA, Range Acceleration", "asterix.015_V1_0_625_RA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_625_RA_VALUE, { "Range Acceleration, [m/s2]", "asterix.015_V1_0_625_RA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_625_SDRA, { "SDRA, Range Acceleration Precision", "asterix.015_V1_0_625_SDRA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_625_SDRA_SDRA, { "SDRA, [m/s2]", "asterix.015_V1_0_625_SDRA_SDRA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_625_SDRA_CORAR, { "CORAR", "asterix.015_V1_0_625_SDRA_CORAR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_625_SDRA_CORARR, { "CORARR", "asterix.015_V1_0_625_SDRA_CORARR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_626, { "626, Doppler Information", "asterix.015_V1_0_626", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_626_DV, { "DV, Doppler Velocity", "asterix.015_V1_0_626_DV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_626_DV_VALUE, { "Doppler Velocity, [m/s]", "asterix.015_V1_0_626_DV_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_626_SDDV, { "SDDV, Precision of Doppler Velocity", "asterix.015_V1_0_626_SDDV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_626_SDDV_VALUE, { "Precision of Doppler Velocity, [m/s]", "asterix.015_V1_0_626_SDDV_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_626_DA, { "DA, Doppler Acceleration", "asterix.015_V1_0_626_DA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_626_DA_VALUE, { "Doppler Acceleration, [m/s2]", "asterix.015_V1_0_626_DA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_626_SDDA, { "SDDA, Precision of Doppler Acceleration", "asterix.015_V1_0_626_SDDA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_626_SDDA_SDDA, { "SDDA, [m/s2]", "asterix.015_V1_0_626_SDDA_SDDA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_626_SDDA_CODADV, { "CODADV", "asterix.015_V1_0_626_SDDA_CODADV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_626_CODVR, { "CODVR, Correlation of Doppler Velocity and Range", "asterix.015_V1_0_626_CODVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_626_CODVR_VALUE, { "Correlation of Doppler Velocity and Range", "asterix.015_V1_0_626_CODVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_626_CODVRR, { "CODVRR, Correlation of Doppler Velocity and Range Rate", "asterix.015_V1_0_626_CODVRR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_626_CODVRR_VALUE, { "Correlation of Doppler Velocity and Range Rate", "asterix.015_V1_0_626_CODVRR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_626_CODVRA, { "CODVRA, Correlation of Doppler Velocity and Range Acceleration", "asterix.015_V1_0_626_CODVRA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_626_CODVRA_VALUE, { "Correlation of Doppler Velocity and Range Acceleration", "asterix.015_V1_0_626_CODVRA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_626_CODAR, { "CODAR, Correlation of Doppler Acceleration and Range", "asterix.015_V1_0_626_CODAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_626_CODAR_VALUE, { "Correlation of Doppler Acceleration and Range", "asterix.015_V1_0_626_CODAR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_626_CODARR, { "CODARR, Correlation of Doppler Acceleration and Range Rate", "asterix.015_V1_0_626_CODARR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_626_CODARR_VALUE, { "Correlation of Doppler Acceleration and Range Rate", "asterix.015_V1_0_626_CODARR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_626_CODARA, { "CODARA, Correlation of Doppler Acceleration and Range Acceleration", "asterix.015_V1_0_626_CODARA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_626_CODARA_VALUE, { "Correlation of Doppler Acceleration and Range Acceleration", "asterix.015_V1_0_626_CODARA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_627, { "627, Azimuth Information", "asterix.015_V1_0_627", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_627_AZ, { "AZ, Azimuth", "asterix.015_V1_0_627_AZ", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_627_AZ_VALUE, { "Azimuth, [°]", "asterix.015_V1_0_627_AZ_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_627_RSAZ, { "RSAZ, Azimuth Resolution", "asterix.015_V1_0_627_RSAZ", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_627_RSAZ_VALUE, { "Azimuth Resolution, [°]", "asterix.015_V1_0_627_RSAZ_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_627_SDASZ, { "SDASZ, Standard Deviation of Azimuth", "asterix.015_V1_0_627_SDASZ", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_627_SDASZ_VALUE, { "Standard Deviation of Azimuth, [°]", "asterix.015_V1_0_627_SDASZ_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_627_AZR, { "AZR, Azimuth Rate", "asterix.015_V1_0_627_AZR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_627_AZR_VALUE, { "Azimuth Rate, [°]", "asterix.015_V1_0_627_AZR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_627_SDAZR, { "SDAZR, Standard Deviation of Azimuth Rate", "asterix.015_V1_0_627_SDAZR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_627_SDAZR_SDAZR, { "SDAZR, [°]", "asterix.015_V1_0_627_SDAZR_SDAZR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_627_SDAZR_COAZRAZ, { "COAZRAZ", "asterix.015_V1_0_627_SDAZR_COAZRAZ", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_627_AZEX, { "AZEX, Azimuth Extent", "asterix.015_V1_0_627_AZEX", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_627_AZEX_S, { "S, [°]", "asterix.015_V1_0_627_AZEX_S", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_627_AZEX_E, { "E, [°]", "asterix.015_V1_0_627_AZEX_E", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_628, { "628, Elevation Information", "asterix.015_V1_0_628", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_628_EL, { "EL, Elevation", "asterix.015_V1_0_628_EL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_628_EL_VALUE, { "Elevation, [°]", "asterix.015_V1_0_628_EL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_628_RSEL, { "RSEL, Elevation Resolution", "asterix.015_V1_0_628_RSEL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_628_RSEL_VALUE, { "Elevation Resolution, [°]", "asterix.015_V1_0_628_RSEL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_628_SDEL, { "SDEL, Standard Deviation of Elevation", "asterix.015_V1_0_628_SDEL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_628_SDEL_VALUE, { "Standard Deviation of Elevation, [°]", "asterix.015_V1_0_628_SDEL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_628_ER, { "ER, Elevation Rate", "asterix.015_V1_0_628_ER", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_628_ER_VALUE, { "Elevation Rate, [°/s]", "asterix.015_V1_0_628_ER_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_628_SDER, { "SDER, Standard Deviation of Elevation Rate", "asterix.015_V1_0_628_SDER", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_628_SDER_SDELR, { "SDELR, [°/s]", "asterix.015_V1_0_628_SDER_SDELR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_628_SDER_COELREL, { "COELREL", "asterix.015_V1_0_628_SDER_COELREL", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_628_ELEX, { "ELEX, Elevation Extent", "asterix.015_V1_0_628_ELEX", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_628_ELEX_S, { "S, [°]", "asterix.015_V1_0_628_ELEX_S", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_628_ELEX_E, { "E, [°]", "asterix.015_V1_0_628_ELEX_E", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_630, { "630, Path Quality", "asterix.015_V1_0_630", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_630_DPP, { "DPP, Direct Path - Power", "asterix.015_V1_0_630_DPP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_630_DPP_VALUE, { "Direct Path - Power, [dB]", "asterix.015_V1_0_630_DPP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_630_DPS, { "DPS, Direct Path - Signal to Noise Ratio (SNR)", "asterix.015_V1_0_630_DPS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_630_DPS_VALUE, { "Direct Path - Signal to Noise Ratio (SNR), [dB]", "asterix.015_V1_0_630_DPS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_630_RPP, { "RPP, Reflected Path - Power", "asterix.015_V1_0_630_RPP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_630_RPP_RPP, { "RPP, [dB]", "asterix.015_V1_0_630_RPP_RPP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_630_RPS, { "RPS, Reflected Path - Signal to Noise Ratio (SNR)", "asterix.015_V1_0_630_RPS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_630_RPS_VALUE, { "Reflected Path - Signal to Noise Ratio (SNR), [dB]", "asterix.015_V1_0_630_RPS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_631, { "631, Contour (Azimuth, Elevation Angle, Range Extent)", "asterix.015_V1_0_631", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_631_AZCON, { "AZCON, [°]", "asterix.015_V1_0_631_AZCON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_631_ELCON, { "ELCON, [°]", "asterix.015_V1_0_631_ELCON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_631_RGCONSTOP, { "RGCONSTOP, [m]", "asterix.015_V1_0_631_RGCONSTOP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_631_RGCONSTART, { "RGCONSTART, [m]", "asterix.015_V1_0_631_RGCONSTART", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_0_SP, { "SP, Special Purpose Field", "asterix.015_V1_0_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_000, { "000, Message Type", "asterix.015_V1_1_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_000_MT, { "MT, Message Type", "asterix.015_V1_1_000_MT", FT_UINT8, BASE_DEC, VALS (valstr_015_V1_1_000_MT), 0xfe, NULL, HFILL } },
+ { &hf_015_V1_1_000_RG, { "RG, Report Generation", "asterix.015_V1_1_000_RG", FT_UINT8, BASE_DEC, VALS (valstr_015_V1_1_000_RG), 0x01, NULL, HFILL } },
+ { &hf_015_V1_1_010, { "010, Data Source Identifier", "asterix.015_V1_1_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_010_SAC, { "SAC, System Area Code", "asterix.015_V1_1_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_010_SIC, { "SIC, System Identification Code", "asterix.015_V1_1_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_015, { "015, Service Identification", "asterix.015_V1_1_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_015_VALUE, { "Service Identification", "asterix.015_V1_1_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_020, { "020, Target Report Descriptor", "asterix.015_V1_1_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_020_MOMU, { "MOMU, Mono-Static Target Report or Multi-Static Target Report", "asterix.015_V1_1_020_MOMU", FT_UINT8, BASE_DEC, VALS (valstr_015_V1_1_020_MOMU), 0xc0, NULL, HFILL } },
+ { &hf_015_V1_1_020_TTAX, { "TTAX, Target Taxonomy", "asterix.015_V1_1_020_TTAX", FT_UINT8, BASE_DEC, VALS (valstr_015_V1_1_020_TTAX), 0x30, NULL, HFILL } },
+ { &hf_015_V1_1_020_SCD, { "SCD, Scanning Direction", "asterix.015_V1_1_020_SCD", FT_UINT8, BASE_DEC, VALS (valstr_015_V1_1_020_SCD), 0x0c, NULL, HFILL } },
+ { &hf_015_V1_1_030, { "030, Warning/Error Conditions", "asterix.015_V1_1_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_030_Subitem, { "Subitem, Subitem", "asterix.015_V1_1_030_Subitem", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_015_V1_1_050, { "050, Update Period", "asterix.015_V1_1_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_050_UPD, { "UPD, Update Period, [s]", "asterix.015_V1_1_050_UPD", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_145, { "145, Time of Applicability", "asterix.015_V1_1_145", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_145_VALUE, { "Time of Applicability, [s]", "asterix.015_V1_1_145_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_161, { "161, Track/Plot Number", "asterix.015_V1_1_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_161_VALUE, { "Track/Plot Number", "asterix.015_V1_1_161_VALUE", FT_UINT16, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_170, { "170, Track/Plot Status", "asterix.015_V1_1_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_170_BIZ, { "BIZ", "asterix.015_V1_1_170_BIZ", FT_UINT8, BASE_DEC, VALS (valstr_015_V1_1_170_BIZ), 0x80, NULL, HFILL } },
+ { &hf_015_V1_1_170_BAZ, { "BAZ", "asterix.015_V1_1_170_BAZ", FT_UINT8, BASE_DEC, VALS (valstr_015_V1_1_170_BAZ), 0x40, NULL, HFILL } },
+ { &hf_015_V1_1_170_TUR, { "TUR", "asterix.015_V1_1_170_TUR", FT_UINT8, BASE_DEC, VALS (valstr_015_V1_1_170_TUR), 0x20, NULL, HFILL } },
+ { &hf_015_V1_1_170_CSTP, { "CSTP, Coasted - Position", "asterix.015_V1_1_170_CSTP", FT_UINT8, BASE_DEC, VALS (valstr_015_V1_1_170_CSTP), 0x08, NULL, HFILL } },
+ { &hf_015_V1_1_170_CSTH, { "CSTH, Coasted – Height", "asterix.015_V1_1_170_CSTH", FT_UINT8, BASE_DEC, VALS (valstr_015_V1_1_170_CSTH), 0x04, NULL, HFILL } },
+ { &hf_015_V1_1_170_CNF, { "CNF, Confirmed vs. Tentative Track", "asterix.015_V1_1_170_CNF", FT_UINT8, BASE_DEC, VALS (valstr_015_V1_1_170_CNF), 0x02, NULL, HFILL } },
+ { &hf_015_V1_1_270, { "270, Target Size & Orientation", "asterix.015_V1_1_270", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_270_LEN, { "LEN, Target Length", "asterix.015_V1_1_270_LEN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_270_LEN_VALUE, { "Target Length, [m]", "asterix.015_V1_1_270_LEN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_270_WDT, { "WDT, Target Width", "asterix.015_V1_1_270_WDT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_270_WDT_VALUE, { "Target Width, [m]", "asterix.015_V1_1_270_WDT_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_270_HGT, { "HGT, Target Height", "asterix.015_V1_1_270_HGT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_270_HGT_VALUE, { "Target Height, [m]", "asterix.015_V1_1_270_HGT_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_270_ORT, { "ORT, Target Orientation", "asterix.015_V1_1_270_ORT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_270_ORT_VALUE, { "Target Orientation, [°]", "asterix.015_V1_1_270_ORT_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_300, { "300, Object Classification", "asterix.015_V1_1_300", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_300_CLS, { "CLS, Classification", "asterix.015_V1_1_300_CLS", FT_UINT16, BASE_DEC, NULL, 0xff80, NULL, HFILL } },
+ { &hf_015_V1_1_300_PRB, { "PRB, Probability", "asterix.015_V1_1_300_PRB", FT_UINT8, BASE_DEC, NULL, 0x7f, NULL, HFILL } },
+ { &hf_015_V1_1_400, { "400, Measurement Identifier", "asterix.015_V1_1_400", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_400_PID, { "PID, Pair Identifier", "asterix.015_V1_1_400_PID", FT_UINT16, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_400_ON, { "ON, Observation Number", "asterix.015_V1_1_400_ON", FT_UINT24, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_480, { "480, Associations", "asterix.015_V1_1_480", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_480_VALUE, { "Associations", "asterix.015_V1_1_480_VALUE", FT_UINT40, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_600, { "600, Horizontal Position Information", "asterix.015_V1_1_600", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_600_P84, { "P84, Horizontal Position in WGS-84 Coordinates", "asterix.015_V1_1_600_P84", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_600_P84_LATITUDE, { "LATITUDE, [°]", "asterix.015_V1_1_600_P84_LATITUDE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_600_P84_LONGITUDE, { "LONGITUDE, [°]", "asterix.015_V1_1_600_P84_LONGITUDE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_600_HPR, { "HPR, Horizontal Position Resolution", "asterix.015_V1_1_600_HPR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_600_HPR_RSHPX, { "RSHPX, [m]", "asterix.015_V1_1_600_HPR_RSHPX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_600_HPR_RSHPY, { "RSHPY, [m]", "asterix.015_V1_1_600_HPR_RSHPY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_600_HPR_CORSHPXY, { "CORSHPXY", "asterix.015_V1_1_600_HPR_CORSHPXY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_600_HPP, { "HPP, Horizontal Position Precision", "asterix.015_V1_1_600_HPP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_600_HPP_SDHPX, { "SDHPX, [m]", "asterix.015_V1_1_600_HPP_SDHPX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_600_HPP_SDHPY, { "SDHPY, [m]", "asterix.015_V1_1_600_HPP_SDHPY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_600_HPP_COSDHPXY, { "COSDHPXY", "asterix.015_V1_1_600_HPP_COSDHPXY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_601, { "601, Geometric Height Information", "asterix.015_V1_1_601", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_601_GH, { "GH, Geometric Height (WGS-84)", "asterix.015_V1_1_601_GH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_601_GH_VALUE, { "Geometric Height (WGS-84), [m]", "asterix.015_V1_1_601_GH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_601_RSGH, { "RSGH, Geometric Height Resolution", "asterix.015_V1_1_601_RSGH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_601_RSGH_VALUE, { "Geometric Height Resolution, [m]", "asterix.015_V1_1_601_RSGH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_601_SDGH, { "SDGH, Geometric Height Precision", "asterix.015_V1_1_601_SDGH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_601_SDGH_VALUE, { "Geometric Height Precision, [m]", "asterix.015_V1_1_601_SDGH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_601_CI6, { "CI6, Confidence Interval for Geometric Height (67%)", "asterix.015_V1_1_601_CI6", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_601_CI6_UCI6, { "UCI6, [m]", "asterix.015_V1_1_601_CI6_UCI6", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_601_CI6_LCI6, { "LCI6, [m]", "asterix.015_V1_1_601_CI6_LCI6", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_601_CI9, { "CI9, Confidence Interval for Geometric Height (95%)", "asterix.015_V1_1_601_CI9", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_601_CI9_UCI9, { "UCI9, [m]", "asterix.015_V1_1_601_CI9_UCI9", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_601_CI9_LCI9, { "LCI9, [m]", "asterix.015_V1_1_601_CI9_LCI9", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_601_COGHHP, { "COGHHP, Correlation of Geometric Height and Horizontal Position", "asterix.015_V1_1_601_COGHHP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_601_COGHHP_X, { "X", "asterix.015_V1_1_601_COGHHP_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_601_COGHHP_Y, { "Y", "asterix.015_V1_1_601_COGHHP_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_601_COGHHV, { "COGHHV, Correlation of Geometric Height and Horizontal Velocity", "asterix.015_V1_1_601_COGHHV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_601_COGHHV_X, { "X", "asterix.015_V1_1_601_COGHHV_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_601_COGHHV_Y, { "Y", "asterix.015_V1_1_601_COGHHV_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_601_COGHHA, { "COGHHA, Correlation of Geometric Height and Horizontal Acceleration", "asterix.015_V1_1_601_COGHHA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_601_COGHHA_X, { "X", "asterix.015_V1_1_601_COGHHA_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_601_COGHHA_Y, { "Y", "asterix.015_V1_1_601_COGHHA_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_602, { "602, Horizontal Velocity Information", "asterix.015_V1_1_602", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_602_HV, { "HV, Horizontal Velocity Vector", "asterix.015_V1_1_602_HV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_602_HV_X, { "X, [m/s]", "asterix.015_V1_1_602_HV_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_602_HV_Y, { "Y, [m/s]", "asterix.015_V1_1_602_HV_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_602_RSHV, { "RSHV, Horizontal Velocity Resolution", "asterix.015_V1_1_602_RSHV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_602_RSHV_X, { "X, [m/s]", "asterix.015_V1_1_602_RSHV_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_602_RSHV_Y, { "Y, [m/s]", "asterix.015_V1_1_602_RSHV_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_602_RSHV_CORSHVXY, { "CORSHVXY", "asterix.015_V1_1_602_RSHV_CORSHVXY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_602_SDHV, { "SDHV, Horizontal Velocity Precision", "asterix.015_V1_1_602_SDHV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_602_SDHV_X, { "X, [m/s]", "asterix.015_V1_1_602_SDHV_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_602_SDHV_Y, { "Y, [m/s]", "asterix.015_V1_1_602_SDHV_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_602_SDHV_COHVXY, { "COHVXY", "asterix.015_V1_1_602_SDHV_COHVXY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_602_COHVHP, { "COHVHP, Correlation of Horizontal Velocity and Horizontal Position", "asterix.015_V1_1_602_COHVHP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_602_COHVHP_COHVXHPX, { "COHVXHPX", "asterix.015_V1_1_602_COHVHP_COHVXHPX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_602_COHVHP_COHVXHPY, { "COHVXHPY", "asterix.015_V1_1_602_COHVHP_COHVXHPY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_602_COHVHP_COHVYHPX, { "COHVYHPX", "asterix.015_V1_1_602_COHVHP_COHVYHPX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_602_COHVHP_COHVYHPY, { "COHVYHPY", "asterix.015_V1_1_602_COHVHP_COHVYHPY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_603, { "603, Horizontal Acceleration Information", "asterix.015_V1_1_603", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_603_HA, { "HA, Horizontal Acceleration Vector", "asterix.015_V1_1_603_HA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_603_HA_X, { "X, [m/s2]", "asterix.015_V1_1_603_HA_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_603_HA_Y, { "Y, [m/s2]", "asterix.015_V1_1_603_HA_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_603_SDHA, { "SDHA, Horizontal Acceleration Precision", "asterix.015_V1_1_603_SDHA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_603_SDHA_X, { "X, [m/s2]", "asterix.015_V1_1_603_SDHA_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_603_SDHA_Y, { "Y, [m/s2]", "asterix.015_V1_1_603_SDHA_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_603_SDHA_COHAXY, { "COHAXY", "asterix.015_V1_1_603_SDHA_COHAXY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_603_COHAHP, { "COHAHP, Correlation of Horizontal Acceleration and Horizontal Position", "asterix.015_V1_1_603_COHAHP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_603_COHAHP_COHAXHPX, { "COHAXHPX", "asterix.015_V1_1_603_COHAHP_COHAXHPX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_603_COHAHP_COHAXHPY, { "COHAXHPY", "asterix.015_V1_1_603_COHAHP_COHAXHPY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_603_COHAHP_COHAYHPX, { "COHAYHPX", "asterix.015_V1_1_603_COHAHP_COHAYHPX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_603_COHAHP_COAYHPY, { "COAYHPY", "asterix.015_V1_1_603_COHAHP_COAYHPY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_603_COHAHV, { "COHAHV, Correlation of Horizontal Acceleration and Horizontal Velocity", "asterix.015_V1_1_603_COHAHV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_603_COHAHV_COHAXHVX, { "COHAXHVX", "asterix.015_V1_1_603_COHAHV_COHAXHVX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_603_COHAHV_COHAXHVY, { "COHAXHVY", "asterix.015_V1_1_603_COHAHV_COHAXHVY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_603_COHAHV_COHAYHVX, { "COHAYHVX", "asterix.015_V1_1_603_COHAHV_COHAYHVX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_603_COHAHV_COHAYHVY, { "COHAYHVY", "asterix.015_V1_1_603_COHAHV_COHAYHVY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_604, { "604, Vertical Velocity Information", "asterix.015_V1_1_604", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_604_VV, { "VV, Vertical Velocity", "asterix.015_V1_1_604_VV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_604_VV_VALUE, { "Vertical Velocity, [m/s]", "asterix.015_V1_1_604_VV_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_604_RSVV, { "RSVV, Vertical Velocity Resolution", "asterix.015_V1_1_604_RSVV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_604_RSVV_VALUE, { "Vertical Velocity Resolution, [m/s]", "asterix.015_V1_1_604_RSVV_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_604_SDVV, { "SDVV, Vertical Velocity Precision", "asterix.015_V1_1_604_SDVV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_604_SDVV_SDVV, { "SDVV, [m/s]", "asterix.015_V1_1_604_SDVV_SDVV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_604_SDVV_COVVGH, { "COVVGH", "asterix.015_V1_1_604_SDVV_COVVGH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_604_COVVHP, { "COVVHP, Correlation of Vertical Velocity and Horizontal Position", "asterix.015_V1_1_604_COVVHP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_604_COVVHP_X, { "X", "asterix.015_V1_1_604_COVVHP_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_604_COVVHP_Y, { "Y", "asterix.015_V1_1_604_COVVHP_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_604_COVVHV, { "COVVHV, Correlation of Vertical Velocity and Horizontal Velocity", "asterix.015_V1_1_604_COVVHV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_604_COVVHV_X, { "X", "asterix.015_V1_1_604_COVVHV_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_604_COVVHV_Y, { "Y", "asterix.015_V1_1_604_COVVHV_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_604_COVVHA, { "COVVHA, Correlation of Vertical Velocity and Horizontal Acceleration", "asterix.015_V1_1_604_COVVHA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_604_COVVHA_X, { "X", "asterix.015_V1_1_604_COVVHA_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_604_COVVHA_Y, { "Y", "asterix.015_V1_1_604_COVVHA_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_605, { "605, Vertical Velocity Information", "asterix.015_V1_1_605", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_605_VA, { "VA, Vertical Acceleration", "asterix.015_V1_1_605_VA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_605_VA_VALUE, { "Vertical Acceleration, [m/s2]", "asterix.015_V1_1_605_VA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_605_RSVA, { "RSVA, Vertical Acceleration Precision", "asterix.015_V1_1_605_RSVA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_605_RSVA_SDVA, { "SDVA, [m/s2]", "asterix.015_V1_1_605_RSVA_SDVA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_605_RSVA_COVAGH, { "COVAGH", "asterix.015_V1_1_605_RSVA_COVAGH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_605_RSVA_COVAVV, { "COVAVV", "asterix.015_V1_1_605_RSVA_COVAVV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_605_COVAHP, { "COVAHP, Correlation of Vertical Acceleration and Horizontal Position", "asterix.015_V1_1_605_COVAHP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_605_COVAHP_X, { "X", "asterix.015_V1_1_605_COVAHP_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_605_COVAHP_Y, { "Y", "asterix.015_V1_1_605_COVAHP_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_605_COVAHV, { "COVAHV, Correlation of Vertical Acceleration and Horizontal Velocity", "asterix.015_V1_1_605_COVAHV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_605_COVAHV_X, { "X", "asterix.015_V1_1_605_COVAHV_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_605_COVAHV_Y, { "Y", "asterix.015_V1_1_605_COVAHV_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_605_COVAHA, { "COVAHA, Correlation of Vertical Acceleration and Horizontal Acceleration", "asterix.015_V1_1_605_COVAHA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_605_COVAHA_X, { "X", "asterix.015_V1_1_605_COVAHA_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_605_COVAHA_Y, { "Y", "asterix.015_V1_1_605_COVAHA_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_625, { "625, Range Information", "asterix.015_V1_1_625", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_625_R, { "R, Range", "asterix.015_V1_1_625_R", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_625_R_VALUE, { "Range, [m]", "asterix.015_V1_1_625_R_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_625_RSR, { "RSR, Range Resolution", "asterix.015_V1_1_625_RSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_625_RSR_VALUE, { "Range Resolution, [m]", "asterix.015_V1_1_625_RSR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_625_SDR, { "SDR, Range Precision", "asterix.015_V1_1_625_SDR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_625_SDR_VALUE, { "Range Precision, [m]", "asterix.015_V1_1_625_SDR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_625_RR, { "RR, Range Rate", "asterix.015_V1_1_625_RR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_625_RR_VALUE, { "Range Rate, [m/s]", "asterix.015_V1_1_625_RR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_625_RSRR, { "RSRR, Range Rate Resolution", "asterix.015_V1_1_625_RSRR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_625_RSRR_VALUE, { "Range Rate Resolution, [m/s]", "asterix.015_V1_1_625_RSRR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_625_SDRR, { "SDRR, Range Rate Precision", "asterix.015_V1_1_625_SDRR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_625_SDRR_SDRR, { "SDRR, [m/s]", "asterix.015_V1_1_625_SDRR_SDRR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_625_SDRR_CORRR, { "CORRR", "asterix.015_V1_1_625_SDRR_CORRR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_625_RA, { "RA, Range Acceleration", "asterix.015_V1_1_625_RA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_625_RA_VALUE, { "Range Acceleration, [m/s2]", "asterix.015_V1_1_625_RA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_625_SDRA, { "SDRA, Range Acceleration Precision", "asterix.015_V1_1_625_SDRA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_625_SDRA_SDRA, { "SDRA, [m/s2]", "asterix.015_V1_1_625_SDRA_SDRA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_625_SDRA_CORAR, { "CORAR", "asterix.015_V1_1_625_SDRA_CORAR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_625_SDRA_CORARR, { "CORARR", "asterix.015_V1_1_625_SDRA_CORARR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_626, { "626, Doppler Information", "asterix.015_V1_1_626", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_626_DV, { "DV, Doppler Velocity", "asterix.015_V1_1_626_DV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_626_DV_VALUE, { "Doppler Velocity, [m/s]", "asterix.015_V1_1_626_DV_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_626_SDDV, { "SDDV, Precision of Doppler Velocity", "asterix.015_V1_1_626_SDDV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_626_SDDV_VALUE, { "Precision of Doppler Velocity, [m/s]", "asterix.015_V1_1_626_SDDV_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_626_DA, { "DA, Doppler Acceleration", "asterix.015_V1_1_626_DA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_626_DA_VALUE, { "Doppler Acceleration, [m/s2]", "asterix.015_V1_1_626_DA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_626_SDDA, { "SDDA, Precision of Doppler Acceleration", "asterix.015_V1_1_626_SDDA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_626_SDDA_SDDA, { "SDDA, [m/s2]", "asterix.015_V1_1_626_SDDA_SDDA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_626_SDDA_CODADV, { "CODADV", "asterix.015_V1_1_626_SDDA_CODADV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_626_CODVR, { "CODVR, Correlation of Doppler Velocity and Range", "asterix.015_V1_1_626_CODVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_626_CODVR_VALUE, { "Correlation of Doppler Velocity and Range", "asterix.015_V1_1_626_CODVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_626_CODVRR, { "CODVRR, Correlation of Doppler Velocity and Range Rate", "asterix.015_V1_1_626_CODVRR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_626_CODVRR_VALUE, { "Correlation of Doppler Velocity and Range Rate", "asterix.015_V1_1_626_CODVRR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_626_CODVRA, { "CODVRA, Correlation of Doppler Velocity and Range Acceleration", "asterix.015_V1_1_626_CODVRA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_626_CODVRA_VALUE, { "Correlation of Doppler Velocity and Range Acceleration", "asterix.015_V1_1_626_CODVRA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_626_CODAR, { "CODAR, Correlation of Doppler Acceleration and Range", "asterix.015_V1_1_626_CODAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_626_CODAR_VALUE, { "Correlation of Doppler Acceleration and Range", "asterix.015_V1_1_626_CODAR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_626_CODARR, { "CODARR, Correlation of Doppler Acceleration and Range Rate", "asterix.015_V1_1_626_CODARR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_626_CODARR_VALUE, { "Correlation of Doppler Acceleration and Range Rate", "asterix.015_V1_1_626_CODARR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_626_CODARA, { "CODARA, Correlation of Doppler Acceleration and Range Acceleration", "asterix.015_V1_1_626_CODARA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_626_CODARA_VALUE, { "Correlation of Doppler Acceleration and Range Acceleration", "asterix.015_V1_1_626_CODARA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_627, { "627, Azimuth Information", "asterix.015_V1_1_627", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_627_AZ, { "AZ, Azimuth", "asterix.015_V1_1_627_AZ", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_627_AZ_VALUE, { "Azimuth, [°]", "asterix.015_V1_1_627_AZ_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_627_RSAZ, { "RSAZ, Azimuth Resolution", "asterix.015_V1_1_627_RSAZ", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_627_RSAZ_VALUE, { "Azimuth Resolution, [°]", "asterix.015_V1_1_627_RSAZ_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_627_SDASZ, { "SDASZ, Standard Deviation of Azimuth", "asterix.015_V1_1_627_SDASZ", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_627_SDASZ_VALUE, { "Standard Deviation of Azimuth, [°]", "asterix.015_V1_1_627_SDASZ_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_627_AZR, { "AZR, Azimuth Rate", "asterix.015_V1_1_627_AZR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_627_AZR_VALUE, { "Azimuth Rate, [°]", "asterix.015_V1_1_627_AZR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_627_SDAZR, { "SDAZR, Standard Deviation of Azimuth Rate", "asterix.015_V1_1_627_SDAZR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_627_SDAZR_SDAZR, { "SDAZR, [°]", "asterix.015_V1_1_627_SDAZR_SDAZR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_627_SDAZR_COAZRAZ, { "COAZRAZ", "asterix.015_V1_1_627_SDAZR_COAZRAZ", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_627_AZEX, { "AZEX, Azimuth Extent", "asterix.015_V1_1_627_AZEX", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_627_AZEX_S, { "S, [°]", "asterix.015_V1_1_627_AZEX_S", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_627_AZEX_E, { "E, [°]", "asterix.015_V1_1_627_AZEX_E", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_628, { "628, Elevation Information", "asterix.015_V1_1_628", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_628_EL, { "EL, Elevation", "asterix.015_V1_1_628_EL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_628_EL_VALUE, { "Elevation, [°]", "asterix.015_V1_1_628_EL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_628_RSEL, { "RSEL, Elevation Resolution", "asterix.015_V1_1_628_RSEL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_628_RSEL_VALUE, { "Elevation Resolution, [°]", "asterix.015_V1_1_628_RSEL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_628_SDEL, { "SDEL, Standard Deviation of Elevation", "asterix.015_V1_1_628_SDEL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_628_SDEL_VALUE, { "Standard Deviation of Elevation, [°]", "asterix.015_V1_1_628_SDEL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_628_ER, { "ER, Elevation Rate", "asterix.015_V1_1_628_ER", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_628_ER_VALUE, { "Elevation Rate, [°/s]", "asterix.015_V1_1_628_ER_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_628_SDER, { "SDER, Standard Deviation of Elevation Rate", "asterix.015_V1_1_628_SDER", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_628_SDER_SDELR, { "SDELR, [°/s]", "asterix.015_V1_1_628_SDER_SDELR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_628_SDER_COELREL, { "COELREL", "asterix.015_V1_1_628_SDER_COELREL", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_628_ELEX, { "ELEX, Elevation Extent", "asterix.015_V1_1_628_ELEX", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_628_ELEX_S, { "S, [°]", "asterix.015_V1_1_628_ELEX_S", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_628_ELEX_E, { "E, [°]", "asterix.015_V1_1_628_ELEX_E", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_630, { "630, Path Quality", "asterix.015_V1_1_630", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_630_DPP, { "DPP, Direct Path - Power", "asterix.015_V1_1_630_DPP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_630_DPP_VALUE, { "Direct Path - Power, [dB]", "asterix.015_V1_1_630_DPP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_630_DPS, { "DPS, Direct Path - Signal to Noise Ratio (SNR)", "asterix.015_V1_1_630_DPS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_630_DPS_VALUE, { "Direct Path - Signal to Noise Ratio (SNR), [dB]", "asterix.015_V1_1_630_DPS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_630_RPP, { "RPP, Reflected Path - Power", "asterix.015_V1_1_630_RPP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_630_RPP_RPP, { "RPP, [dB]", "asterix.015_V1_1_630_RPP_RPP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_630_RPS, { "RPS, Reflected Path - Signal to Noise Ratio (SNR)", "asterix.015_V1_1_630_RPS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_630_RPS_VALUE, { "Reflected Path - Signal to Noise Ratio (SNR), [dB]", "asterix.015_V1_1_630_RPS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_631, { "631, Contour (Azimuth, Elevation Angle, Range Extent)", "asterix.015_V1_1_631", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_631_AZCON, { "AZCON, [°]", "asterix.015_V1_1_631_AZCON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_631_ELCON, { "ELCON, [°]", "asterix.015_V1_1_631_ELCON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_631_RGCONSTOP, { "RGCONSTOP, [m]", "asterix.015_V1_1_631_RGCONSTOP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_631_RGCONSTART, { "RGCONSTART, [m]", "asterix.015_V1_1_631_RGCONSTART", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_V1_1_SP, { "SP, Special Purpose Field", "asterix.015_V1_1_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_000, { "000, Message Type", "asterix.015_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_000_MT, { "MT, Message Type", "asterix.015_000_MT", FT_UINT8, BASE_DEC, VALS (valstr_015_000_MT), 0xfe, NULL, HFILL } },
+ { &hf_015_000_RG, { "RG, Report Generation", "asterix.015_000_RG", FT_UINT8, BASE_DEC, VALS (valstr_015_000_RG), 0x01, NULL, HFILL } },
+ { &hf_015_010, { "010, Data Source Identifier", "asterix.015_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_010_SAC, { "SAC, System Area Code", "asterix.015_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_010_SIC, { "SIC, System Identification Code", "asterix.015_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_015, { "015, Service Identification", "asterix.015_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_015_VALUE, { "Service Identification", "asterix.015_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_020, { "020, Target Report Descriptor", "asterix.015_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_020_MOMU, { "MOMU, Mono-Static Target Report or Multi-Static Target Report", "asterix.015_020_MOMU", FT_UINT8, BASE_DEC, VALS (valstr_015_020_MOMU), 0xc0, NULL, HFILL } },
+ { &hf_015_020_TTAX, { "TTAX, Target Taxonomy", "asterix.015_020_TTAX", FT_UINT8, BASE_DEC, VALS (valstr_015_020_TTAX), 0x30, NULL, HFILL } },
+ { &hf_015_020_SCD, { "SCD, Scanning Direction", "asterix.015_020_SCD", FT_UINT8, BASE_DEC, VALS (valstr_015_020_SCD), 0x0c, NULL, HFILL } },
+ { &hf_015_030, { "030, Warning/Error Conditions", "asterix.015_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_030_Subitem, { "Subitem, Subitem", "asterix.015_030_Subitem", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_015_050, { "050, Update Period", "asterix.015_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_050_UPD, { "UPD, Update Period, [s]", "asterix.015_050_UPD", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_145, { "145, Time of Applicability", "asterix.015_145", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_145_VALUE, { "Time of Applicability, [s]", "asterix.015_145_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_161, { "161, Track/Plot Number", "asterix.015_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_161_VALUE, { "Track/Plot Number", "asterix.015_161_VALUE", FT_UINT16, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_170, { "170, Track/Plot Status", "asterix.015_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_170_BIZ, { "BIZ", "asterix.015_170_BIZ", FT_UINT8, BASE_DEC, VALS (valstr_015_170_BIZ), 0x80, NULL, HFILL } },
+ { &hf_015_170_BAZ, { "BAZ", "asterix.015_170_BAZ", FT_UINT8, BASE_DEC, VALS (valstr_015_170_BAZ), 0x40, NULL, HFILL } },
+ { &hf_015_170_TUR, { "TUR", "asterix.015_170_TUR", FT_UINT8, BASE_DEC, VALS (valstr_015_170_TUR), 0x20, NULL, HFILL } },
+ { &hf_015_170_CSTP, { "CSTP, Coasted - Position", "asterix.015_170_CSTP", FT_UINT8, BASE_DEC, VALS (valstr_015_170_CSTP), 0x08, NULL, HFILL } },
+ { &hf_015_170_CSTH, { "CSTH, Coasted – Height", "asterix.015_170_CSTH", FT_UINT8, BASE_DEC, VALS (valstr_015_170_CSTH), 0x04, NULL, HFILL } },
+ { &hf_015_170_CNF, { "CNF, Confirmed vs. Tentative Track", "asterix.015_170_CNF", FT_UINT8, BASE_DEC, VALS (valstr_015_170_CNF), 0x02, NULL, HFILL } },
+ { &hf_015_270, { "270, Target Size & Orientation", "asterix.015_270", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_270_LEN, { "LEN, Target Length", "asterix.015_270_LEN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_270_LEN_VALUE, { "Target Length, [m]", "asterix.015_270_LEN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_270_WDT, { "WDT, Target Width", "asterix.015_270_WDT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_270_WDT_VALUE, { "Target Width, [m]", "asterix.015_270_WDT_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_270_HGT, { "HGT, Target Height", "asterix.015_270_HGT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_270_HGT_VALUE, { "Target Height, [m]", "asterix.015_270_HGT_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_270_ORT, { "ORT, Target Orientation", "asterix.015_270_ORT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_270_ORT_VALUE, { "Target Orientation, [°]", "asterix.015_270_ORT_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_300, { "300, Object Classification", "asterix.015_300", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_300_CLS, { "CLS, Classification", "asterix.015_300_CLS", FT_UINT16, BASE_DEC, NULL, 0xff80, NULL, HFILL } },
+ { &hf_015_300_PRB, { "PRB, Probability", "asterix.015_300_PRB", FT_UINT8, BASE_DEC, NULL, 0x7f, NULL, HFILL } },
+ { &hf_015_400, { "400, Measurement Identifier", "asterix.015_400", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_400_PID, { "PID, Pair Identifier", "asterix.015_400_PID", FT_UINT16, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_400_ON, { "ON, Observation Number", "asterix.015_400_ON", FT_UINT24, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_480, { "480, Associations", "asterix.015_480", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_480_VALUE, { "Associations", "asterix.015_480_VALUE", FT_UINT40, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_600, { "600, Horizontal Position Information", "asterix.015_600", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_600_P84, { "P84, Horizontal Position in WGS-84 Coordinates", "asterix.015_600_P84", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_600_P84_LATITUDE, { "LATITUDE, [°]", "asterix.015_600_P84_LATITUDE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_600_P84_LONGITUDE, { "LONGITUDE, [°]", "asterix.015_600_P84_LONGITUDE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_600_HPR, { "HPR, Horizontal Position Resolution", "asterix.015_600_HPR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_600_HPR_RSHPX, { "RSHPX, [m]", "asterix.015_600_HPR_RSHPX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_600_HPR_RSHPY, { "RSHPY, [m]", "asterix.015_600_HPR_RSHPY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_600_HPR_CORSHPXY, { "CORSHPXY", "asterix.015_600_HPR_CORSHPXY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_600_HPP, { "HPP, Horizontal Position Precision", "asterix.015_600_HPP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_600_HPP_SDHPX, { "SDHPX, [m]", "asterix.015_600_HPP_SDHPX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_600_HPP_SDHPY, { "SDHPY, [m]", "asterix.015_600_HPP_SDHPY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_600_HPP_COSDHPXY, { "COSDHPXY", "asterix.015_600_HPP_COSDHPXY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_601, { "601, Geometric Height Information", "asterix.015_601", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_601_GH, { "GH, Geometric Height (WGS-84)", "asterix.015_601_GH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_601_GH_VALUE, { "Geometric Height (WGS-84), [m]", "asterix.015_601_GH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_601_RSGH, { "RSGH, Geometric Height Resolution", "asterix.015_601_RSGH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_601_RSGH_VALUE, { "Geometric Height Resolution, [m]", "asterix.015_601_RSGH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_601_SDGH, { "SDGH, Geometric Height Precision", "asterix.015_601_SDGH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_601_SDGH_VALUE, { "Geometric Height Precision, [m]", "asterix.015_601_SDGH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_601_CI6, { "CI6, Confidence Interval for Geometric Height (67%)", "asterix.015_601_CI6", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_601_CI6_UCI6, { "UCI6, [m]", "asterix.015_601_CI6_UCI6", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_601_CI6_LCI6, { "LCI6, [m]", "asterix.015_601_CI6_LCI6", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_601_CI9, { "CI9, Confidence Interval for Geometric Height (95%)", "asterix.015_601_CI9", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_601_CI9_UCI9, { "UCI9, [m]", "asterix.015_601_CI9_UCI9", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_601_CI9_LCI9, { "LCI9, [m]", "asterix.015_601_CI9_LCI9", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_601_COGHHP, { "COGHHP, Correlation of Geometric Height and Horizontal Position", "asterix.015_601_COGHHP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_601_COGHHP_X, { "X", "asterix.015_601_COGHHP_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_601_COGHHP_Y, { "Y", "asterix.015_601_COGHHP_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_601_COGHHV, { "COGHHV, Correlation of Geometric Height and Horizontal Velocity", "asterix.015_601_COGHHV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_601_COGHHV_X, { "X", "asterix.015_601_COGHHV_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_601_COGHHV_Y, { "Y", "asterix.015_601_COGHHV_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_601_COGHHA, { "COGHHA, Correlation of Geometric Height and Horizontal Acceleration", "asterix.015_601_COGHHA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_601_COGHHA_X, { "X", "asterix.015_601_COGHHA_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_601_COGHHA_Y, { "Y", "asterix.015_601_COGHHA_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_602, { "602, Horizontal Velocity Information", "asterix.015_602", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_602_HV, { "HV, Horizontal Velocity Vector", "asterix.015_602_HV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_602_HV_X, { "X, [m/s]", "asterix.015_602_HV_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_602_HV_Y, { "Y, [m/s]", "asterix.015_602_HV_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_602_RSHV, { "RSHV, Horizontal Velocity Resolution", "asterix.015_602_RSHV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_602_RSHV_X, { "X, [m/s]", "asterix.015_602_RSHV_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_602_RSHV_Y, { "Y, [m/s]", "asterix.015_602_RSHV_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_602_RSHV_CORSHVXY, { "CORSHVXY", "asterix.015_602_RSHV_CORSHVXY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_602_SDHV, { "SDHV, Horizontal Velocity Precision", "asterix.015_602_SDHV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_602_SDHV_X, { "X, [m/s]", "asterix.015_602_SDHV_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_602_SDHV_Y, { "Y, [m/s]", "asterix.015_602_SDHV_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_602_SDHV_COHVXY, { "COHVXY", "asterix.015_602_SDHV_COHVXY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_602_COHVHP, { "COHVHP, Correlation of Horizontal Velocity and Horizontal Position", "asterix.015_602_COHVHP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_602_COHVHP_COHVXHPX, { "COHVXHPX", "asterix.015_602_COHVHP_COHVXHPX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_602_COHVHP_COHVXHPY, { "COHVXHPY", "asterix.015_602_COHVHP_COHVXHPY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_602_COHVHP_COHVYHPX, { "COHVYHPX", "asterix.015_602_COHVHP_COHVYHPX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_602_COHVHP_COHVYHPY, { "COHVYHPY", "asterix.015_602_COHVHP_COHVYHPY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_603, { "603, Horizontal Acceleration Information", "asterix.015_603", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_603_HA, { "HA, Horizontal Acceleration Vector", "asterix.015_603_HA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_603_HA_X, { "X, [m/s2]", "asterix.015_603_HA_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_603_HA_Y, { "Y, [m/s2]", "asterix.015_603_HA_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_603_SDHA, { "SDHA, Horizontal Acceleration Precision", "asterix.015_603_SDHA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_603_SDHA_X, { "X, [m/s2]", "asterix.015_603_SDHA_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_603_SDHA_Y, { "Y, [m/s2]", "asterix.015_603_SDHA_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_603_SDHA_COHAXY, { "COHAXY", "asterix.015_603_SDHA_COHAXY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_603_COHAHP, { "COHAHP, Correlation of Horizontal Acceleration and Horizontal Position", "asterix.015_603_COHAHP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_603_COHAHP_COHAXHPX, { "COHAXHPX", "asterix.015_603_COHAHP_COHAXHPX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_603_COHAHP_COHAXHPY, { "COHAXHPY", "asterix.015_603_COHAHP_COHAXHPY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_603_COHAHP_COHAYHPX, { "COHAYHPX", "asterix.015_603_COHAHP_COHAYHPX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_603_COHAHP_COAYHPY, { "COAYHPY", "asterix.015_603_COHAHP_COAYHPY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_603_COHAHV, { "COHAHV, Correlation of Horizontal Acceleration and Horizontal Velocity", "asterix.015_603_COHAHV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_603_COHAHV_COHAXHVX, { "COHAXHVX", "asterix.015_603_COHAHV_COHAXHVX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_603_COHAHV_COHAXHVY, { "COHAXHVY", "asterix.015_603_COHAHV_COHAXHVY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_603_COHAHV_COHAYHVX, { "COHAYHVX", "asterix.015_603_COHAHV_COHAYHVX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_603_COHAHV_COHAYHVY, { "COHAYHVY", "asterix.015_603_COHAHV_COHAYHVY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_604, { "604, Vertical Velocity Information", "asterix.015_604", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_604_VV, { "VV, Vertical Velocity", "asterix.015_604_VV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_604_VV_VALUE, { "Vertical Velocity, [m/s]", "asterix.015_604_VV_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_604_RSVV, { "RSVV, Vertical Velocity Resolution", "asterix.015_604_RSVV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_604_RSVV_VALUE, { "Vertical Velocity Resolution, [m/s]", "asterix.015_604_RSVV_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_604_SDVV, { "SDVV, Vertical Velocity Precision", "asterix.015_604_SDVV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_604_SDVV_SDVV, { "SDVV, [m/s]", "asterix.015_604_SDVV_SDVV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_604_SDVV_COVVGH, { "COVVGH", "asterix.015_604_SDVV_COVVGH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_604_COVVHP, { "COVVHP, Correlation of Vertical Velocity and Horizontal Position", "asterix.015_604_COVVHP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_604_COVVHP_X, { "X", "asterix.015_604_COVVHP_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_604_COVVHP_Y, { "Y", "asterix.015_604_COVVHP_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_604_COVVHV, { "COVVHV, Correlation of Vertical Velocity and Horizontal Velocity", "asterix.015_604_COVVHV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_604_COVVHV_X, { "X", "asterix.015_604_COVVHV_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_604_COVVHV_Y, { "Y", "asterix.015_604_COVVHV_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_604_COVVHA, { "COVVHA, Correlation of Vertical Velocity and Horizontal Acceleration", "asterix.015_604_COVVHA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_604_COVVHA_X, { "X", "asterix.015_604_COVVHA_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_604_COVVHA_Y, { "Y", "asterix.015_604_COVVHA_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_605, { "605, Vertical Velocity Information", "asterix.015_605", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_605_VA, { "VA, Vertical Acceleration", "asterix.015_605_VA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_605_VA_VALUE, { "Vertical Acceleration, [m/s2]", "asterix.015_605_VA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_605_RSVA, { "RSVA, Vertical Acceleration Precision", "asterix.015_605_RSVA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_605_RSVA_SDVA, { "SDVA, [m/s2]", "asterix.015_605_RSVA_SDVA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_605_RSVA_COVAGH, { "COVAGH", "asterix.015_605_RSVA_COVAGH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_605_RSVA_COVAVV, { "COVAVV", "asterix.015_605_RSVA_COVAVV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_605_COVAHP, { "COVAHP, Correlation of Vertical Acceleration and Horizontal Position", "asterix.015_605_COVAHP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_605_COVAHP_X, { "X", "asterix.015_605_COVAHP_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_605_COVAHP_Y, { "Y", "asterix.015_605_COVAHP_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_605_COVAHV, { "COVAHV, Correlation of Vertical Acceleration and Horizontal Velocity", "asterix.015_605_COVAHV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_605_COVAHV_X, { "X", "asterix.015_605_COVAHV_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_605_COVAHV_Y, { "Y", "asterix.015_605_COVAHV_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_605_COVAHA, { "COVAHA, Correlation of Vertical Acceleration and Horizontal Acceleration", "asterix.015_605_COVAHA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_605_COVAHA_X, { "X", "asterix.015_605_COVAHA_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_605_COVAHA_Y, { "Y", "asterix.015_605_COVAHA_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_625, { "625, Range Information", "asterix.015_625", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_625_R, { "R, Range", "asterix.015_625_R", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_625_R_VALUE, { "Range, [m]", "asterix.015_625_R_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_625_RSR, { "RSR, Range Resolution", "asterix.015_625_RSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_625_RSR_VALUE, { "Range Resolution, [m]", "asterix.015_625_RSR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_625_SDR, { "SDR, Range Precision", "asterix.015_625_SDR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_625_SDR_VALUE, { "Range Precision, [m]", "asterix.015_625_SDR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_625_RR, { "RR, Range Rate", "asterix.015_625_RR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_625_RR_VALUE, { "Range Rate, [m/s]", "asterix.015_625_RR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_625_RSRR, { "RSRR, Range Rate Resolution", "asterix.015_625_RSRR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_625_RSRR_VALUE, { "Range Rate Resolution, [m/s]", "asterix.015_625_RSRR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_625_SDRR, { "SDRR, Range Rate Precision", "asterix.015_625_SDRR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_625_SDRR_SDRR, { "SDRR, [m/s]", "asterix.015_625_SDRR_SDRR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_625_SDRR_CORRR, { "CORRR", "asterix.015_625_SDRR_CORRR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_625_RA, { "RA, Range Acceleration", "asterix.015_625_RA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_625_RA_VALUE, { "Range Acceleration, [m/s2]", "asterix.015_625_RA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_625_SDRA, { "SDRA, Range Acceleration Precision", "asterix.015_625_SDRA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_625_SDRA_SDRA, { "SDRA, [m/s2]", "asterix.015_625_SDRA_SDRA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_625_SDRA_CORAR, { "CORAR", "asterix.015_625_SDRA_CORAR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_625_SDRA_CORARR, { "CORARR", "asterix.015_625_SDRA_CORARR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_626, { "626, Doppler Information", "asterix.015_626", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_626_DV, { "DV, Doppler Velocity", "asterix.015_626_DV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_626_DV_VALUE, { "Doppler Velocity, [m/s]", "asterix.015_626_DV_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_626_SDDV, { "SDDV, Precision of Doppler Velocity", "asterix.015_626_SDDV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_626_SDDV_VALUE, { "Precision of Doppler Velocity, [m/s]", "asterix.015_626_SDDV_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_626_DA, { "DA, Doppler Acceleration", "asterix.015_626_DA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_626_DA_VALUE, { "Doppler Acceleration, [m/s2]", "asterix.015_626_DA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_626_SDDA, { "SDDA, Precision of Doppler Acceleration", "asterix.015_626_SDDA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_626_SDDA_SDDA, { "SDDA, [m/s2]", "asterix.015_626_SDDA_SDDA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_626_SDDA_CODADV, { "CODADV", "asterix.015_626_SDDA_CODADV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_626_CODVR, { "CODVR, Correlation of Doppler Velocity and Range", "asterix.015_626_CODVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_626_CODVR_VALUE, { "Correlation of Doppler Velocity and Range", "asterix.015_626_CODVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_626_CODVRR, { "CODVRR, Correlation of Doppler Velocity and Range Rate", "asterix.015_626_CODVRR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_626_CODVRR_VALUE, { "Correlation of Doppler Velocity and Range Rate", "asterix.015_626_CODVRR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_626_CODVRA, { "CODVRA, Correlation of Doppler Velocity and Range Acceleration", "asterix.015_626_CODVRA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_626_CODVRA_VALUE, { "Correlation of Doppler Velocity and Range Acceleration", "asterix.015_626_CODVRA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_626_CODAR, { "CODAR, Correlation of Doppler Acceleration and Range", "asterix.015_626_CODAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_626_CODAR_VALUE, { "Correlation of Doppler Acceleration and Range", "asterix.015_626_CODAR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_626_CODARR, { "CODARR, Correlation of Doppler Acceleration and Range Rate", "asterix.015_626_CODARR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_626_CODARR_VALUE, { "Correlation of Doppler Acceleration and Range Rate", "asterix.015_626_CODARR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_626_CODARA, { "CODARA, Correlation of Doppler Acceleration and Range Acceleration", "asterix.015_626_CODARA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_626_CODARA_VALUE, { "Correlation of Doppler Acceleration and Range Acceleration", "asterix.015_626_CODARA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_627, { "627, Azimuth Information", "asterix.015_627", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_627_AZ, { "AZ, Azimuth", "asterix.015_627_AZ", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_627_AZ_VALUE, { "Azimuth, [°]", "asterix.015_627_AZ_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_627_RSAZ, { "RSAZ, Azimuth Resolution", "asterix.015_627_RSAZ", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_627_RSAZ_VALUE, { "Azimuth Resolution, [°]", "asterix.015_627_RSAZ_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_627_SDASZ, { "SDASZ, Standard Deviation of Azimuth", "asterix.015_627_SDASZ", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_627_SDASZ_VALUE, { "Standard Deviation of Azimuth, [°]", "asterix.015_627_SDASZ_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_627_AZR, { "AZR, Azimuth Rate", "asterix.015_627_AZR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_627_AZR_VALUE, { "Azimuth Rate, [°]", "asterix.015_627_AZR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_627_SDAZR, { "SDAZR, Standard Deviation of Azimuth Rate", "asterix.015_627_SDAZR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_627_SDAZR_SDAZR, { "SDAZR, [°]", "asterix.015_627_SDAZR_SDAZR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_627_SDAZR_COAZRAZ, { "COAZRAZ", "asterix.015_627_SDAZR_COAZRAZ", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_627_AZEX, { "AZEX, Azimuth Extent", "asterix.015_627_AZEX", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_627_AZEX_S, { "S, [°]", "asterix.015_627_AZEX_S", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_627_AZEX_E, { "E, [°]", "asterix.015_627_AZEX_E", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_628, { "628, Elevation Information", "asterix.015_628", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_628_EL, { "EL, Elevation", "asterix.015_628_EL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_628_EL_VALUE, { "Elevation, [°]", "asterix.015_628_EL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_628_RSEL, { "RSEL, Elevation Resolution", "asterix.015_628_RSEL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_628_RSEL_VALUE, { "Elevation Resolution, [°]", "asterix.015_628_RSEL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_628_SDEL, { "SDEL, Standard Deviation of Elevation", "asterix.015_628_SDEL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_628_SDEL_VALUE, { "Standard Deviation of Elevation, [°]", "asterix.015_628_SDEL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_628_ER, { "ER, Elevation Rate", "asterix.015_628_ER", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_628_ER_VALUE, { "Elevation Rate, [°/s]", "asterix.015_628_ER_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_628_SDER, { "SDER, Standard Deviation of Elevation Rate", "asterix.015_628_SDER", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_628_SDER_SDELR, { "SDELR, [°/s]", "asterix.015_628_SDER_SDELR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_628_SDER_COELREL, { "COELREL", "asterix.015_628_SDER_COELREL", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_628_ELEX, { "ELEX, Elevation Extent", "asterix.015_628_ELEX", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_628_ELEX_S, { "S, [°]", "asterix.015_628_ELEX_S", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_628_ELEX_E, { "E, [°]", "asterix.015_628_ELEX_E", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_630, { "630, Path Quality", "asterix.015_630", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_630_DPP, { "DPP, Direct Path - Power", "asterix.015_630_DPP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_630_DPP_VALUE, { "Direct Path - Power, [dB]", "asterix.015_630_DPP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_630_DPS, { "DPS, Direct Path - Signal to Noise Ratio (SNR)", "asterix.015_630_DPS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_630_DPS_VALUE, { "Direct Path - Signal to Noise Ratio (SNR), [dB]", "asterix.015_630_DPS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_630_RPP, { "RPP, Reflected Path - Power", "asterix.015_630_RPP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_630_RPP_RPP, { "RPP, [dB]", "asterix.015_630_RPP_RPP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_630_RPS, { "RPS, Reflected Path - Signal to Noise Ratio (SNR)", "asterix.015_630_RPS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_630_RPS_VALUE, { "Reflected Path - Signal to Noise Ratio (SNR), [dB]", "asterix.015_630_RPS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_631, { "631, Contour (Azimuth, Elevation Angle, Range Extent)", "asterix.015_631", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_631_AZCON, { "AZCON, [°]", "asterix.015_631_AZCON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_631_ELCON, { "ELCON, [°]", "asterix.015_631_ELCON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_631_RGCONSTOP, { "RGCONSTOP, [m]", "asterix.015_631_RGCONSTOP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_631_RGCONSTART, { "RGCONSTART, [m]", "asterix.015_631_RGCONSTART", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_015_SP, { "SP, Special Purpose Field", "asterix.015_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_000, { "000, Message Type", "asterix.016_V1_0_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_000_VALUE, { "Message Type", "asterix.016_V1_0_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_016_V1_0_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_010, { "010, Data Source Identifier", "asterix.016_V1_0_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_010_SAC, { "SAC, System Area Code", "asterix.016_V1_0_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_010_SIC, { "SIC, System Identification Code", "asterix.016_V1_0_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_015, { "015, Service Identification", "asterix.016_V1_0_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_015_VALUE, { "Service Identification", "asterix.016_V1_0_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_140, { "140, Time of Day", "asterix.016_V1_0_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_140_VALUE, { "Time of Day, [s]", "asterix.016_V1_0_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_200, { "200, System Configuration Reporting Period", "asterix.016_V1_0_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_200_VALUE, { "System Configuration Reporting Period, [s]", "asterix.016_V1_0_200_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_300, { "300, Pair Identification", "asterix.016_V1_0_300", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_300_PID, { "PID, Pair Identification", "asterix.016_V1_0_300_PID", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_300_TID, { "TID, Transmitter Identification", "asterix.016_V1_0_300_TID", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_300_RID, { "RID, Receiver Identification", "asterix.016_V1_0_300_RID", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_400, { "400, Position of the System Reference Point", "asterix.016_V1_0_400", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_400_LAT, { "LAT, Latitude, [°]", "asterix.016_V1_0_400_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_400_LON, { "LON, Longitude, [°]", "asterix.016_V1_0_400_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_405, { "405, Height of System Reference Point", "asterix.016_V1_0_405", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_405_VALUE, { "Height of System Reference Point, [m]", "asterix.016_V1_0_405_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_410, { "410, Transmitter Properties", "asterix.016_V1_0_410", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_410_TID, { "TID, Transmitter ID", "asterix.016_V1_0_410_TID", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_410_LAT, { "LAT, Latitude, [°]", "asterix.016_V1_0_410_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_410_LON, { "LON, Longitude, [°]", "asterix.016_V1_0_410_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_410_ALT, { "ALT, Altitude, [m]", "asterix.016_V1_0_410_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_410_TTO, { "TTO, Transmission Time Offset, [ns]", "asterix.016_V1_0_410_TTO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_410_ATO, { "ATO, Accuracy of Transmission Time Offset, [ns]", "asterix.016_V1_0_410_ATO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_410_PCI, { "PCI, Parallel Transmitter Index", "asterix.016_V1_0_410_PCI", FT_UINT16, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_420, { "420, Receiver Properties", "asterix.016_V1_0_420", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_420_RID, { "RID, Receiver Component ID", "asterix.016_V1_0_420_RID", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_420_LAT, { "LAT, Latitude, [°]", "asterix.016_V1_0_420_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_420_LON, { "LON, Longitude, [°]", "asterix.016_V1_0_420_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_420_ALT, { "ALT, Altitude, [m]", "asterix.016_V1_0_420_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_V1_0_SP, { "SP, Special Purpose Field", "asterix.016_V1_0_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_000, { "000, Message Type", "asterix.016_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_000_VALUE, { "Message Type", "asterix.016_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_016_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_016_010, { "010, Data Source Identifier", "asterix.016_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_010_SAC, { "SAC, System Area Code", "asterix.016_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_010_SIC, { "SIC, System Identification Code", "asterix.016_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_015, { "015, Service Identification", "asterix.016_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_015_VALUE, { "Service Identification", "asterix.016_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_140, { "140, Time of Day", "asterix.016_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_140_VALUE, { "Time of Day, [s]", "asterix.016_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_200, { "200, System Configuration Reporting Period", "asterix.016_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_200_VALUE, { "System Configuration Reporting Period, [s]", "asterix.016_200_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_300, { "300, Pair Identification", "asterix.016_300", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_300_PID, { "PID, Pair Identification", "asterix.016_300_PID", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_300_TID, { "TID, Transmitter Identification", "asterix.016_300_TID", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_300_RID, { "RID, Receiver Identification", "asterix.016_300_RID", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_400, { "400, Position of the System Reference Point", "asterix.016_400", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_400_LAT, { "LAT, Latitude, [°]", "asterix.016_400_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_400_LON, { "LON, Longitude, [°]", "asterix.016_400_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_405, { "405, Height of System Reference Point", "asterix.016_405", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_405_VALUE, { "Height of System Reference Point, [m]", "asterix.016_405_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_410, { "410, Transmitter Properties", "asterix.016_410", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_410_TID, { "TID, Transmitter ID", "asterix.016_410_TID", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_410_LAT, { "LAT, Latitude, [°]", "asterix.016_410_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_410_LON, { "LON, Longitude, [°]", "asterix.016_410_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_410_ALT, { "ALT, Altitude, [m]", "asterix.016_410_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_410_TTO, { "TTO, Transmission Time Offset, [ns]", "asterix.016_410_TTO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_410_ATO, { "ATO, Accuracy of Transmission Time Offset, [ns]", "asterix.016_410_ATO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_410_PCI, { "PCI, Parallel Transmitter Index", "asterix.016_410_PCI", FT_UINT16, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_420, { "420, Receiver Properties", "asterix.016_420", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_420_RID, { "RID, Receiver Component ID", "asterix.016_420_RID", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_420_LAT, { "LAT, Latitude, [°]", "asterix.016_420_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_420_LON, { "LON, Longitude, [°]", "asterix.016_420_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_420_ALT, { "ALT, Altitude, [m]", "asterix.016_420_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_016_SP, { "SP, Special Purpose Field", "asterix.016_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_000, { "000, Message Type", "asterix.018_V1_7_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_000_VALUE, { "Message Type", "asterix.018_V1_7_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_001, { "001, Result", "asterix.018_V1_7_001", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_001_CAUSE, { "CAUSE, Cause", "asterix.018_V1_7_001_CAUSE", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_001_CAUSE), 0xf0, NULL, HFILL } },
+ { &hf_018_V1_7_001_DIAG, { "DIAG, Diagnostic", "asterix.018_V1_7_001_DIAG", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_001_DIAG), 0x0f, NULL, HFILL } },
+ { &hf_018_V1_7_002, { "002, Time of Day", "asterix.018_V1_7_002", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_002_VALUE, { "Time of Day, [s]", "asterix.018_V1_7_002_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_004, { "004, II Code", "asterix.018_V1_7_004", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_004_PREVIOUSII, { "PREVIOUSII, Former II Code", "asterix.018_V1_7_004_PREVIOUSII", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_018_V1_7_004_CURRENTII, { "CURRENTII, Current II Code", "asterix.018_V1_7_004_CURRENTII", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_018_V1_7_005, { "005, Mode S Address", "asterix.018_V1_7_005", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_005_VALUE, { "Mode S Address", "asterix.018_V1_7_005_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_006, { "006, Mode S Address List", "asterix.018_V1_7_006", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_006_VALUE, { "Mode S Address List", "asterix.018_V1_7_006_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_007, { "007, Aircraft Data Link Command", "asterix.018_V1_7_007", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_007_UM, { "UM, Uplink Mask", "asterix.018_V1_7_007_UM", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_007_UM), 0x80, NULL, HFILL } },
+ { &hf_018_V1_7_007_DM, { "DM, Downlink Mask", "asterix.018_V1_7_007_DM", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_007_DM), 0x40, NULL, HFILL } },
+ { &hf_018_V1_7_007_UC, { "UC, Uplink Command", "asterix.018_V1_7_007_UC", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_007_UC), 0x20, NULL, HFILL } },
+ { &hf_018_V1_7_007_DC, { "DC, Downlink Command", "asterix.018_V1_7_007_DC", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_007_DC), 0x10, NULL, HFILL } },
+ { &hf_018_V1_7_008, { "008, Aircraft Data Link Status", "asterix.018_V1_7_008", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_008_UDS, { "UDS, Uplink Default Status", "asterix.018_V1_7_008_UDS", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_008_UDS), 0x80, NULL, HFILL } },
+ { &hf_018_V1_7_008_DDS, { "DDS, Downlink Default Status", "asterix.018_V1_7_008_DDS", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_008_DDS), 0x40, NULL, HFILL } },
+ { &hf_018_V1_7_008_UCS, { "UCS, Uplink Current Status", "asterix.018_V1_7_008_UCS", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_008_UCS), 0x20, NULL, HFILL } },
+ { &hf_018_V1_7_008_DCS, { "DCS, Downlink Current Status", "asterix.018_V1_7_008_DCS", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_008_DCS), 0x10, NULL, HFILL } },
+ { &hf_018_V1_7_008_EI, { "EI, Exit Indication", "asterix.018_V1_7_008_EI", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_008_EI), 0x02, NULL, HFILL } },
+ { &hf_018_V1_7_008_IC, { "IC, Interrogator Control", "asterix.018_V1_7_008_IC", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_008_IC), 0x80, NULL, HFILL } },
+ { &hf_018_V1_7_009, { "009, Aircraft Data Link Report Request", "asterix.018_V1_7_009", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_009_SR, { "SR", "asterix.018_V1_7_009_SR", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_009_SR), 0x80, NULL, HFILL } },
+ { &hf_018_V1_7_009_AR, { "AR", "asterix.018_V1_7_009_AR", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_009_AR), 0x40, NULL, HFILL } },
+ { &hf_018_V1_7_009_ER, { "ER", "asterix.018_V1_7_009_ER", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_009_ER), 0x20, NULL, HFILL } },
+ { &hf_018_V1_7_009_FR, { "FR", "asterix.018_V1_7_009_FR", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_009_FR), 0x10, NULL, HFILL } },
+ { &hf_018_V1_7_009_MR, { "MR", "asterix.018_V1_7_009_MR", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_009_MR), 0x08, NULL, HFILL } },
+ { &hf_018_V1_7_009_PR, { "PR", "asterix.018_V1_7_009_PR", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_009_PR), 0x04, NULL, HFILL } },
+ { &hf_018_V1_7_009_CR, { "CR", "asterix.018_V1_7_009_CR", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_009_CR), 0x02, NULL, HFILL } },
+ { &hf_018_V1_7_009_ID, { "ID", "asterix.018_V1_7_009_ID", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_009_ID), 0x80, NULL, HFILL } },
+ { &hf_018_V1_7_009_MA, { "MA", "asterix.018_V1_7_009_MA", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_009_MA), 0x40, NULL, HFILL } },
+ { &hf_018_V1_7_009_SP, { "SP", "asterix.018_V1_7_009_SP", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_009_SP), 0x20, NULL, HFILL } },
+ { &hf_018_V1_7_009_HG, { "HG", "asterix.018_V1_7_009_HG", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_009_HG), 0x10, NULL, HFILL } },
+ { &hf_018_V1_7_009_HD, { "HD", "asterix.018_V1_7_009_HD", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_009_HD), 0x08, NULL, HFILL } },
+ { &hf_018_V1_7_010, { "010, Transponder Communications Capability", "asterix.018_V1_7_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_010_COM, { "COM, Communications Capability of the Transponder", "asterix.018_V1_7_010_COM", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_010_COM), 0x07, NULL, HFILL } },
+ { &hf_018_V1_7_011, { "011, Capability Report", "asterix.018_V1_7_011", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_011_VALUE, { "Capability Report", "asterix.018_V1_7_011_VALUE", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_012, { "012, Aircraft Coverage Quality Factor", "asterix.018_V1_7_012", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_012_FS, { "FS, Flight Status", "asterix.018_V1_7_012_FS", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_012_FS), 0x80, NULL, HFILL } },
+ { &hf_018_V1_7_012_CQF, { "CQF, Aircraft CQF", "asterix.018_V1_7_012_CQF", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_012_CQF), 0x7f, NULL, HFILL } },
+ { &hf_018_V1_7_013, { "013, Aircraft CQF Calculation Method", "asterix.018_V1_7_013", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_013_VALUE, { "Aircraft CQF Calculation Method", "asterix.018_V1_7_013_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_014, { "014, Aircraft Position in Polar Co-ordinates", "asterix.018_V1_7_014", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_014_RHO, { "RHO, [NM]", "asterix.018_V1_7_014_RHO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_014_THETA, { "THETA, [°]", "asterix.018_V1_7_014_THETA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_015, { "015, Aircraft Position in Cartesian Co-ordinates", "asterix.018_V1_7_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_015_X, { "X, X-Component, [NM]", "asterix.018_V1_7_015_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_015_Y, { "Y, Y-Component, [NM]", "asterix.018_V1_7_015_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_016, { "016, Packet Number", "asterix.018_V1_7_016", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_016_VALUE, { "Packet Number", "asterix.018_V1_7_016_VALUE", FT_UINT32, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_017, { "017, Packet Number List", "asterix.018_V1_7_017", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_017_VALUE, { "Packet Number List", "asterix.018_V1_7_017_VALUE", FT_UINT32, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_018, { "018, Mode S Packet Properties", "asterix.018_V1_7_018", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_018_PR, { "PR, Mode S Packet Internal Priority", "asterix.018_V1_7_018_PR", FT_UINT8, BASE_DEC, NULL, 0x7c, NULL, HFILL } },
+ { &hf_018_V1_7_018_PT, { "PT, Packet Type", "asterix.018_V1_7_018_PT", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_018_PT), 0x03, NULL, HFILL } },
+ { &hf_018_V1_7_019, { "019, Mode S Packet", "asterix.018_V1_7_019", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_020, { "020, Broadcast Number", "asterix.018_V1_7_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_020_VALUE, { "Broadcast Number", "asterix.018_V1_7_020_VALUE", FT_UINT32, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_021, { "021, Broadcast Properties", "asterix.018_V1_7_021", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_021_PRIORITY, { "PRIORITY, Priority", "asterix.018_V1_7_021_PRIORITY", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_018_V1_7_021_POWER, { "POWER, Power", "asterix.018_V1_7_021_POWER", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_018_V1_7_021_DURATION, { "DURATION, Duration, [s]", "asterix.018_V1_7_021_DURATION", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_021_COVERAGE, { "COVERAGE, Coverage", "asterix.018_V1_7_021_COVERAGE", FT_UINT32, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_022, { "022, Broadcast Prefix", "asterix.018_V1_7_022", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_022_PREFIX, { "PREFIX, Prefix Field", "asterix.018_V1_7_022_PREFIX", FT_UINT32, BASE_DEC, NULL, 0x07ffffff, NULL, HFILL } },
+ { &hf_018_V1_7_023, { "023, Uplink or Downlink Broadcast", "asterix.018_V1_7_023", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_023_VALUE, { "Uplink or Downlink Broadcast", "asterix.018_V1_7_023_VALUE", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_025, { "025, GICB Number", "asterix.018_V1_7_025", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_025_VALUE, { "GICB Number", "asterix.018_V1_7_025_VALUE", FT_UINT32, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_027, { "027, BDS Code", "asterix.018_V1_7_027", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_027_VALUE, { "BDS Code", "asterix.018_V1_7_027_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_028, { "028, GICB Extraction Periodicity", "asterix.018_V1_7_028", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_028_VALUE, { "GICB Extraction Periodicity, [s]", "asterix.018_V1_7_028_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_029, { "029, GICB Extracted", "asterix.018_V1_7_029", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_029_VALUE, { "GICB Extracted", "asterix.018_V1_7_029_VALUE", FT_UINT56, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_030, { "030, GICB Properties", "asterix.018_V1_7_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_030_PRIORITY, { "PRIORITY, GICB Priority", "asterix.018_V1_7_030_PRIORITY", FT_UINT8, BASE_DEC, NULL, 0xf8, NULL, HFILL } },
+ { &hf_018_V1_7_030_PC, { "PC, Periodicity Constraint", "asterix.018_V1_7_030_PC", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_030_PC), 0x80, NULL, HFILL } },
+ { &hf_018_V1_7_030_AU, { "AU, Asynchronous Update", "asterix.018_V1_7_030_AU", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_030_AU), 0x40, NULL, HFILL } },
+ { &hf_018_V1_7_030_NE, { "NE, Non Extraction", "asterix.018_V1_7_030_NE", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_030_NE), 0x20, NULL, HFILL } },
+ { &hf_018_V1_7_030_RD, { "RD, Reply Destination", "asterix.018_V1_7_030_RD", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_030_RD), 0x18, NULL, HFILL } },
+ { &hf_018_V1_7_031, { "031, Aircraft Identity", "asterix.018_V1_7_031", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_031_VALUE, { "Aircraft Identity", "asterix.018_V1_7_031_VALUE", FT_UINT48, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_032, { "032, Aircraft Mode A", "asterix.018_V1_7_032", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_032_V, { "V", "asterix.018_V1_7_032_V", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_032_V), 0x80, NULL, HFILL } },
+ { &hf_018_V1_7_032_G, { "G", "asterix.018_V1_7_032_G", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_032_G), 0x40, NULL, HFILL } },
+ { &hf_018_V1_7_032_L, { "L", "asterix.018_V1_7_032_L", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_032_L), 0x20, NULL, HFILL } },
+ { &hf_018_V1_7_032_MOD3A, { "MOD3A", "asterix.018_V1_7_032_MOD3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_018_V1_7_033, { "033, Aircraft Height", "asterix.018_V1_7_033", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_033_V, { "V", "asterix.018_V1_7_033_V", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_033_V), 0x80, NULL, HFILL } },
+ { &hf_018_V1_7_033_G, { "G", "asterix.018_V1_7_033_G", FT_UINT8, BASE_DEC, VALS (valstr_018_V1_7_033_G), 0x40, NULL, HFILL } },
+ { &hf_018_V1_7_033_FL, { "FL, Flight Level, [FL]", "asterix.018_V1_7_033_FL", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_034, { "034, Aircraft Speed", "asterix.018_V1_7_034", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_034_VALUE, { "Aircraft Speed, [NM/s]", "asterix.018_V1_7_034_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_035, { "035, Aircraft Heading", "asterix.018_V1_7_035", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_035_VALUE, { "Aircraft Heading, [°]", "asterix.018_V1_7_035_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_036, { "036, Data Source Identifier", "asterix.018_V1_7_036", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_036_SAC, { "SAC, System Area Code", "asterix.018_V1_7_036_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_036_SIC, { "SIC, System Identification Code", "asterix.018_V1_7_036_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_037, { "037, Data Destination Identifier", "asterix.018_V1_7_037", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_037_SAC, { "SAC, System Area Code", "asterix.018_V1_7_037_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_V1_7_037_SIC, { "SIC, System Identification Code", "asterix.018_V1_7_037_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_000, { "000, Message Type", "asterix.018_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_000_VALUE, { "Message Type", "asterix.018_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_018_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_018_001, { "001, Result", "asterix.018_001", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_001_CAUSE, { "CAUSE, Cause", "asterix.018_001_CAUSE", FT_UINT8, BASE_DEC, VALS (valstr_018_001_CAUSE), 0xf0, NULL, HFILL } },
+ { &hf_018_001_DIAG, { "DIAG, Diagnostic", "asterix.018_001_DIAG", FT_UINT8, BASE_DEC, VALS (valstr_018_001_DIAG), 0x0f, NULL, HFILL } },
+ { &hf_018_002, { "002, Time of Day", "asterix.018_002", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_002_VALUE, { "Time of Day, [s]", "asterix.018_002_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_004, { "004, II Code", "asterix.018_004", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_004_PREVIOUSII, { "PREVIOUSII, Former II Code", "asterix.018_004_PREVIOUSII", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_018_004_CURRENTII, { "CURRENTII, Current II Code", "asterix.018_004_CURRENTII", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_018_005, { "005, Mode S Address", "asterix.018_005", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_005_VALUE, { "Mode S Address", "asterix.018_005_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_006, { "006, Mode S Address List", "asterix.018_006", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_006_VALUE, { "Mode S Address List", "asterix.018_006_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_007, { "007, Aircraft Data Link Command", "asterix.018_007", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_007_UM, { "UM, Uplink Mask", "asterix.018_007_UM", FT_UINT8, BASE_DEC, VALS (valstr_018_007_UM), 0x80, NULL, HFILL } },
+ { &hf_018_007_DM, { "DM, Downlink Mask", "asterix.018_007_DM", FT_UINT8, BASE_DEC, VALS (valstr_018_007_DM), 0x40, NULL, HFILL } },
+ { &hf_018_007_UC, { "UC, Uplink Command", "asterix.018_007_UC", FT_UINT8, BASE_DEC, VALS (valstr_018_007_UC), 0x20, NULL, HFILL } },
+ { &hf_018_007_DC, { "DC, Downlink Command", "asterix.018_007_DC", FT_UINT8, BASE_DEC, VALS (valstr_018_007_DC), 0x10, NULL, HFILL } },
+ { &hf_018_008, { "008, Aircraft Data Link Status", "asterix.018_008", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_008_UDS, { "UDS, Uplink Default Status", "asterix.018_008_UDS", FT_UINT8, BASE_DEC, VALS (valstr_018_008_UDS), 0x80, NULL, HFILL } },
+ { &hf_018_008_DDS, { "DDS, Downlink Default Status", "asterix.018_008_DDS", FT_UINT8, BASE_DEC, VALS (valstr_018_008_DDS), 0x40, NULL, HFILL } },
+ { &hf_018_008_UCS, { "UCS, Uplink Current Status", "asterix.018_008_UCS", FT_UINT8, BASE_DEC, VALS (valstr_018_008_UCS), 0x20, NULL, HFILL } },
+ { &hf_018_008_DCS, { "DCS, Downlink Current Status", "asterix.018_008_DCS", FT_UINT8, BASE_DEC, VALS (valstr_018_008_DCS), 0x10, NULL, HFILL } },
+ { &hf_018_008_EI, { "EI, Exit Indication", "asterix.018_008_EI", FT_UINT8, BASE_DEC, VALS (valstr_018_008_EI), 0x02, NULL, HFILL } },
+ { &hf_018_008_IC, { "IC, Interrogator Control", "asterix.018_008_IC", FT_UINT8, BASE_DEC, VALS (valstr_018_008_IC), 0x80, NULL, HFILL } },
+ { &hf_018_009, { "009, Aircraft Data Link Report Request", "asterix.018_009", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_009_SR, { "SR", "asterix.018_009_SR", FT_UINT8, BASE_DEC, VALS (valstr_018_009_SR), 0x80, NULL, HFILL } },
+ { &hf_018_009_AR, { "AR", "asterix.018_009_AR", FT_UINT8, BASE_DEC, VALS (valstr_018_009_AR), 0x40, NULL, HFILL } },
+ { &hf_018_009_ER, { "ER", "asterix.018_009_ER", FT_UINT8, BASE_DEC, VALS (valstr_018_009_ER), 0x20, NULL, HFILL } },
+ { &hf_018_009_FR, { "FR", "asterix.018_009_FR", FT_UINT8, BASE_DEC, VALS (valstr_018_009_FR), 0x10, NULL, HFILL } },
+ { &hf_018_009_MR, { "MR", "asterix.018_009_MR", FT_UINT8, BASE_DEC, VALS (valstr_018_009_MR), 0x08, NULL, HFILL } },
+ { &hf_018_009_PR, { "PR", "asterix.018_009_PR", FT_UINT8, BASE_DEC, VALS (valstr_018_009_PR), 0x04, NULL, HFILL } },
+ { &hf_018_009_CR, { "CR", "asterix.018_009_CR", FT_UINT8, BASE_DEC, VALS (valstr_018_009_CR), 0x02, NULL, HFILL } },
+ { &hf_018_009_ID, { "ID", "asterix.018_009_ID", FT_UINT8, BASE_DEC, VALS (valstr_018_009_ID), 0x80, NULL, HFILL } },
+ { &hf_018_009_MA, { "MA", "asterix.018_009_MA", FT_UINT8, BASE_DEC, VALS (valstr_018_009_MA), 0x40, NULL, HFILL } },
+ { &hf_018_009_SP, { "SP", "asterix.018_009_SP", FT_UINT8, BASE_DEC, VALS (valstr_018_009_SP), 0x20, NULL, HFILL } },
+ { &hf_018_009_HG, { "HG", "asterix.018_009_HG", FT_UINT8, BASE_DEC, VALS (valstr_018_009_HG), 0x10, NULL, HFILL } },
+ { &hf_018_009_HD, { "HD", "asterix.018_009_HD", FT_UINT8, BASE_DEC, VALS (valstr_018_009_HD), 0x08, NULL, HFILL } },
+ { &hf_018_010, { "010, Transponder Communications Capability", "asterix.018_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_010_COM, { "COM, Communications Capability of the Transponder", "asterix.018_010_COM", FT_UINT8, BASE_DEC, VALS (valstr_018_010_COM), 0x07, NULL, HFILL } },
+ { &hf_018_011, { "011, Capability Report", "asterix.018_011", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_011_VALUE, { "Capability Report", "asterix.018_011_VALUE", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_012, { "012, Aircraft Coverage Quality Factor", "asterix.018_012", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_012_FS, { "FS, Flight Status", "asterix.018_012_FS", FT_UINT8, BASE_DEC, VALS (valstr_018_012_FS), 0x80, NULL, HFILL } },
+ { &hf_018_012_CQF, { "CQF, Aircraft CQF", "asterix.018_012_CQF", FT_UINT8, BASE_DEC, VALS (valstr_018_012_CQF), 0x7f, NULL, HFILL } },
+ { &hf_018_013, { "013, Aircraft CQF Calculation Method", "asterix.018_013", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_013_VALUE, { "Aircraft CQF Calculation Method", "asterix.018_013_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_014, { "014, Aircraft Position in Polar Co-ordinates", "asterix.018_014", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_014_RHO, { "RHO, [NM]", "asterix.018_014_RHO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_014_THETA, { "THETA, [°]", "asterix.018_014_THETA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_015, { "015, Aircraft Position in Cartesian Co-ordinates", "asterix.018_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_015_X, { "X, X-Component, [NM]", "asterix.018_015_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_015_Y, { "Y, Y-Component, [NM]", "asterix.018_015_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_016, { "016, Packet Number", "asterix.018_016", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_016_VALUE, { "Packet Number", "asterix.018_016_VALUE", FT_UINT32, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_017, { "017, Packet Number List", "asterix.018_017", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_017_VALUE, { "Packet Number List", "asterix.018_017_VALUE", FT_UINT32, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_018, { "018, Mode S Packet Properties", "asterix.018_018", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_018_PR, { "PR, Mode S Packet Internal Priority", "asterix.018_018_PR", FT_UINT8, BASE_DEC, NULL, 0x7c, NULL, HFILL } },
+ { &hf_018_018_PT, { "PT, Packet Type", "asterix.018_018_PT", FT_UINT8, BASE_DEC, VALS (valstr_018_018_PT), 0x03, NULL, HFILL } },
+ { &hf_018_019, { "019, Mode S Packet", "asterix.018_019", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_020, { "020, Broadcast Number", "asterix.018_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_020_VALUE, { "Broadcast Number", "asterix.018_020_VALUE", FT_UINT32, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_021, { "021, Broadcast Properties", "asterix.018_021", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_021_PRIORITY, { "PRIORITY, Priority", "asterix.018_021_PRIORITY", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_018_021_POWER, { "POWER, Power", "asterix.018_021_POWER", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_018_021_DURATION, { "DURATION, Duration, [s]", "asterix.018_021_DURATION", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_021_COVERAGE, { "COVERAGE, Coverage", "asterix.018_021_COVERAGE", FT_UINT32, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_022, { "022, Broadcast Prefix", "asterix.018_022", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_022_PREFIX, { "PREFIX, Prefix Field", "asterix.018_022_PREFIX", FT_UINT32, BASE_DEC, NULL, 0x07ffffff, NULL, HFILL } },
+ { &hf_018_023, { "023, Uplink or Downlink Broadcast", "asterix.018_023", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_023_VALUE, { "Uplink or Downlink Broadcast", "asterix.018_023_VALUE", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_025, { "025, GICB Number", "asterix.018_025", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_025_VALUE, { "GICB Number", "asterix.018_025_VALUE", FT_UINT32, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_027, { "027, BDS Code", "asterix.018_027", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_027_VALUE, { "BDS Code", "asterix.018_027_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_028, { "028, GICB Extraction Periodicity", "asterix.018_028", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_028_VALUE, { "GICB Extraction Periodicity, [s]", "asterix.018_028_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_029, { "029, GICB Extracted", "asterix.018_029", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_029_VALUE, { "GICB Extracted", "asterix.018_029_VALUE", FT_UINT56, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_030, { "030, GICB Properties", "asterix.018_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_030_PRIORITY, { "PRIORITY, GICB Priority", "asterix.018_030_PRIORITY", FT_UINT8, BASE_DEC, NULL, 0xf8, NULL, HFILL } },
+ { &hf_018_030_PC, { "PC, Periodicity Constraint", "asterix.018_030_PC", FT_UINT8, BASE_DEC, VALS (valstr_018_030_PC), 0x80, NULL, HFILL } },
+ { &hf_018_030_AU, { "AU, Asynchronous Update", "asterix.018_030_AU", FT_UINT8, BASE_DEC, VALS (valstr_018_030_AU), 0x40, NULL, HFILL } },
+ { &hf_018_030_NE, { "NE, Non Extraction", "asterix.018_030_NE", FT_UINT8, BASE_DEC, VALS (valstr_018_030_NE), 0x20, NULL, HFILL } },
+ { &hf_018_030_RD, { "RD, Reply Destination", "asterix.018_030_RD", FT_UINT8, BASE_DEC, VALS (valstr_018_030_RD), 0x18, NULL, HFILL } },
+ { &hf_018_031, { "031, Aircraft Identity", "asterix.018_031", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_031_VALUE, { "Aircraft Identity", "asterix.018_031_VALUE", FT_UINT48, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_032, { "032, Aircraft Mode A", "asterix.018_032", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_032_V, { "V", "asterix.018_032_V", FT_UINT8, BASE_DEC, VALS (valstr_018_032_V), 0x80, NULL, HFILL } },
+ { &hf_018_032_G, { "G", "asterix.018_032_G", FT_UINT8, BASE_DEC, VALS (valstr_018_032_G), 0x40, NULL, HFILL } },
+ { &hf_018_032_L, { "L", "asterix.018_032_L", FT_UINT8, BASE_DEC, VALS (valstr_018_032_L), 0x20, NULL, HFILL } },
+ { &hf_018_032_MOD3A, { "MOD3A", "asterix.018_032_MOD3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_018_033, { "033, Aircraft Height", "asterix.018_033", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_033_V, { "V", "asterix.018_033_V", FT_UINT8, BASE_DEC, VALS (valstr_018_033_V), 0x80, NULL, HFILL } },
+ { &hf_018_033_G, { "G", "asterix.018_033_G", FT_UINT8, BASE_DEC, VALS (valstr_018_033_G), 0x40, NULL, HFILL } },
+ { &hf_018_033_FL, { "FL, Flight Level, [FL]", "asterix.018_033_FL", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_034, { "034, Aircraft Speed", "asterix.018_034", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_034_VALUE, { "Aircraft Speed, [NM/s]", "asterix.018_034_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_035, { "035, Aircraft Heading", "asterix.018_035", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_035_VALUE, { "Aircraft Heading, [°]", "asterix.018_035_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_036, { "036, Data Source Identifier", "asterix.018_036", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_036_SAC, { "SAC, System Area Code", "asterix.018_036_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_036_SIC, { "SIC, System Identification Code", "asterix.018_036_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_037, { "037, Data Destination Identifier", "asterix.018_037", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_037_SAC, { "SAC, System Area Code", "asterix.018_037_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_018_037_SIC, { "SIC, System Identification Code", "asterix.018_037_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_V1_3_000, { "000, Message Type", "asterix.019_V1_3_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_V1_3_000_VALUE, { "Message Type", "asterix.019_V1_3_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_019_V1_3_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_019_V1_3_010, { "010, Data Source Identifier", "asterix.019_V1_3_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_V1_3_010_SAC, { "SAC, System Area Code", "asterix.019_V1_3_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_V1_3_010_SIC, { "SIC, System Identification Code", "asterix.019_V1_3_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_V1_3_140, { "140, Time of Day", "asterix.019_V1_3_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_V1_3_140_VALUE, { "Time of Day, [s]", "asterix.019_V1_3_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_V1_3_550, { "550, System Status", "asterix.019_V1_3_550", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_V1_3_550_NOGO, { "NOGO, Operational Release Status of the System", "asterix.019_V1_3_550_NOGO", FT_UINT8, BASE_DEC, VALS (valstr_019_V1_3_550_NOGO), 0xc0, NULL, HFILL } },
+ { &hf_019_V1_3_550_OVL, { "OVL, Overload Indicator", "asterix.019_V1_3_550_OVL", FT_UINT8, BASE_DEC, VALS (valstr_019_V1_3_550_OVL), 0x20, NULL, HFILL } },
+ { &hf_019_V1_3_550_TSV, { "TSV, Time Source Validity", "asterix.019_V1_3_550_TSV", FT_UINT8, BASE_DEC, VALS (valstr_019_V1_3_550_TSV), 0x10, NULL, HFILL } },
+ { &hf_019_V1_3_550_TTF, { "TTF, Test Target", "asterix.019_V1_3_550_TTF", FT_UINT8, BASE_DEC, VALS (valstr_019_V1_3_550_TTF), 0x08, NULL, HFILL } },
+ { &hf_019_V1_3_551, { "551, Tracking Processor Detailed Status", "asterix.019_V1_3_551", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_V1_3_551_TP1A, { "TP1A", "asterix.019_V1_3_551_TP1A", FT_UINT8, BASE_DEC, VALS (valstr_019_V1_3_551_TP1A), 0x80, NULL, HFILL } },
+ { &hf_019_V1_3_551_TP1B, { "TP1B", "asterix.019_V1_3_551_TP1B", FT_UINT8, BASE_DEC, VALS (valstr_019_V1_3_551_TP1B), 0x40, NULL, HFILL } },
+ { &hf_019_V1_3_551_TP2A, { "TP2A", "asterix.019_V1_3_551_TP2A", FT_UINT8, BASE_DEC, VALS (valstr_019_V1_3_551_TP2A), 0x20, NULL, HFILL } },
+ { &hf_019_V1_3_551_TP2B, { "TP2B", "asterix.019_V1_3_551_TP2B", FT_UINT8, BASE_DEC, VALS (valstr_019_V1_3_551_TP2B), 0x10, NULL, HFILL } },
+ { &hf_019_V1_3_551_TP3A, { "TP3A", "asterix.019_V1_3_551_TP3A", FT_UINT8, BASE_DEC, VALS (valstr_019_V1_3_551_TP3A), 0x08, NULL, HFILL } },
+ { &hf_019_V1_3_551_TP3B, { "TP3B", "asterix.019_V1_3_551_TP3B", FT_UINT8, BASE_DEC, VALS (valstr_019_V1_3_551_TP3B), 0x04, NULL, HFILL } },
+ { &hf_019_V1_3_551_TP4A, { "TP4A", "asterix.019_V1_3_551_TP4A", FT_UINT8, BASE_DEC, VALS (valstr_019_V1_3_551_TP4A), 0x02, NULL, HFILL } },
+ { &hf_019_V1_3_551_TP4B, { "TP4B", "asterix.019_V1_3_551_TP4B", FT_UINT8, BASE_DEC, VALS (valstr_019_V1_3_551_TP4B), 0x01, NULL, HFILL } },
+ { &hf_019_V1_3_552, { "552, Remote Sensor Detailed Status", "asterix.019_V1_3_552", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_V1_3_552_RSI, { "RSI, 8-bit Identification Number of RS", "asterix.019_V1_3_552_RSI", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_V1_3_552_RS1090, { "RS1090, Receiver 1090 MHz", "asterix.019_V1_3_552_RS1090", FT_UINT8, BASE_DEC, VALS (valstr_019_V1_3_552_RS1090), 0x40, NULL, HFILL } },
+ { &hf_019_V1_3_552_TX1030, { "TX1030, Transmitter 1030 MHz", "asterix.019_V1_3_552_TX1030", FT_UINT8, BASE_DEC, VALS (valstr_019_V1_3_552_TX1030), 0x20, NULL, HFILL } },
+ { &hf_019_V1_3_552_TX1090, { "TX1090, Transmitter 1090 MHz", "asterix.019_V1_3_552_TX1090", FT_UINT8, BASE_DEC, VALS (valstr_019_V1_3_552_TX1090), 0x10, NULL, HFILL } },
+ { &hf_019_V1_3_552_RSS, { "RSS, RS Status", "asterix.019_V1_3_552_RSS", FT_UINT8, BASE_DEC, VALS (valstr_019_V1_3_552_RSS), 0x08, NULL, HFILL } },
+ { &hf_019_V1_3_552_RSO, { "RSO, RS Operational", "asterix.019_V1_3_552_RSO", FT_UINT8, BASE_DEC, VALS (valstr_019_V1_3_552_RSO), 0x04, NULL, HFILL } },
+ { &hf_019_V1_3_553, { "553, Reference Transponder Detailed Status", "asterix.019_V1_3_553", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_V1_3_553_REFTR1, { "REFTR1, Ref Trans 1 Status", "asterix.019_V1_3_553_REFTR1", FT_UINT8, BASE_DEC, VALS (valstr_019_V1_3_553_REFTR1), 0xc0, NULL, HFILL } },
+ { &hf_019_V1_3_553_REFTR2, { "REFTR2, Ref Trans 2 Status", "asterix.019_V1_3_553_REFTR2", FT_UINT8, BASE_DEC, VALS (valstr_019_V1_3_553_REFTR2), 0x0c, NULL, HFILL } },
+ { &hf_019_V1_3_553_REFTR3, { "REFTR3, Ref Trans 3 Status", "asterix.019_V1_3_553_REFTR3", FT_UINT8, BASE_DEC, VALS (valstr_019_V1_3_553_REFTR3), 0xc0, NULL, HFILL } },
+ { &hf_019_V1_3_553_REFTR4, { "REFTR4, Ref Trans 4 Status", "asterix.019_V1_3_553_REFTR4", FT_UINT8, BASE_DEC, VALS (valstr_019_V1_3_553_REFTR4), 0x0c, NULL, HFILL } },
+ { &hf_019_V1_3_600, { "600, Position of the MLT System Reference Point", "asterix.019_V1_3_600", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_V1_3_600_LAT, { "LAT, Latitude, [°]", "asterix.019_V1_3_600_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_V1_3_600_LON, { "LON, Longitude, [°]", "asterix.019_V1_3_600_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_V1_3_610, { "610, Height of the MLT System Reference Point", "asterix.019_V1_3_610", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_V1_3_610_VALUE, { "Height of the MLT System Reference Point, [m]", "asterix.019_V1_3_610_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_V1_3_620, { "620, WGS-84 Undulation", "asterix.019_V1_3_620", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_V1_3_620_VALUE, { "WGS-84 Undulation, [m]", "asterix.019_V1_3_620_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_V1_3_RE, { "RE, Reserved Expansion Field", "asterix.019_V1_3_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_V1_3_SP, { "SP, Special Purpose Field", "asterix.019_V1_3_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_000, { "000, Message Type", "asterix.019_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_000_VALUE, { "Message Type", "asterix.019_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_019_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_019_010, { "010, Data Source Identifier", "asterix.019_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_010_SAC, { "SAC, System Area Code", "asterix.019_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_010_SIC, { "SIC, System Identification Code", "asterix.019_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_140, { "140, Time of Day", "asterix.019_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_140_VALUE, { "Time of Day, [s]", "asterix.019_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_550, { "550, System Status", "asterix.019_550", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_550_NOGO, { "NOGO, Operational Release Status of the System", "asterix.019_550_NOGO", FT_UINT8, BASE_DEC, VALS (valstr_019_550_NOGO), 0xc0, NULL, HFILL } },
+ { &hf_019_550_OVL, { "OVL, Overload Indicator", "asterix.019_550_OVL", FT_UINT8, BASE_DEC, VALS (valstr_019_550_OVL), 0x20, NULL, HFILL } },
+ { &hf_019_550_TSV, { "TSV, Time Source Validity", "asterix.019_550_TSV", FT_UINT8, BASE_DEC, VALS (valstr_019_550_TSV), 0x10, NULL, HFILL } },
+ { &hf_019_550_TTF, { "TTF, Test Target", "asterix.019_550_TTF", FT_UINT8, BASE_DEC, VALS (valstr_019_550_TTF), 0x08, NULL, HFILL } },
+ { &hf_019_551, { "551, Tracking Processor Detailed Status", "asterix.019_551", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_551_TP1A, { "TP1A", "asterix.019_551_TP1A", FT_UINT8, BASE_DEC, VALS (valstr_019_551_TP1A), 0x80, NULL, HFILL } },
+ { &hf_019_551_TP1B, { "TP1B", "asterix.019_551_TP1B", FT_UINT8, BASE_DEC, VALS (valstr_019_551_TP1B), 0x40, NULL, HFILL } },
+ { &hf_019_551_TP2A, { "TP2A", "asterix.019_551_TP2A", FT_UINT8, BASE_DEC, VALS (valstr_019_551_TP2A), 0x20, NULL, HFILL } },
+ { &hf_019_551_TP2B, { "TP2B", "asterix.019_551_TP2B", FT_UINT8, BASE_DEC, VALS (valstr_019_551_TP2B), 0x10, NULL, HFILL } },
+ { &hf_019_551_TP3A, { "TP3A", "asterix.019_551_TP3A", FT_UINT8, BASE_DEC, VALS (valstr_019_551_TP3A), 0x08, NULL, HFILL } },
+ { &hf_019_551_TP3B, { "TP3B", "asterix.019_551_TP3B", FT_UINT8, BASE_DEC, VALS (valstr_019_551_TP3B), 0x04, NULL, HFILL } },
+ { &hf_019_551_TP4A, { "TP4A", "asterix.019_551_TP4A", FT_UINT8, BASE_DEC, VALS (valstr_019_551_TP4A), 0x02, NULL, HFILL } },
+ { &hf_019_551_TP4B, { "TP4B", "asterix.019_551_TP4B", FT_UINT8, BASE_DEC, VALS (valstr_019_551_TP4B), 0x01, NULL, HFILL } },
+ { &hf_019_552, { "552, Remote Sensor Detailed Status", "asterix.019_552", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_552_RSI, { "RSI, 8-bit Identification Number of RS", "asterix.019_552_RSI", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_552_RS1090, { "RS1090, Receiver 1090 MHz", "asterix.019_552_RS1090", FT_UINT8, BASE_DEC, VALS (valstr_019_552_RS1090), 0x40, NULL, HFILL } },
+ { &hf_019_552_TX1030, { "TX1030, Transmitter 1030 MHz", "asterix.019_552_TX1030", FT_UINT8, BASE_DEC, VALS (valstr_019_552_TX1030), 0x20, NULL, HFILL } },
+ { &hf_019_552_TX1090, { "TX1090, Transmitter 1090 MHz", "asterix.019_552_TX1090", FT_UINT8, BASE_DEC, VALS (valstr_019_552_TX1090), 0x10, NULL, HFILL } },
+ { &hf_019_552_RSS, { "RSS, RS Status", "asterix.019_552_RSS", FT_UINT8, BASE_DEC, VALS (valstr_019_552_RSS), 0x08, NULL, HFILL } },
+ { &hf_019_552_RSO, { "RSO, RS Operational", "asterix.019_552_RSO", FT_UINT8, BASE_DEC, VALS (valstr_019_552_RSO), 0x04, NULL, HFILL } },
+ { &hf_019_553, { "553, Reference Transponder Detailed Status", "asterix.019_553", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_553_REFTR1, { "REFTR1, Ref Trans 1 Status", "asterix.019_553_REFTR1", FT_UINT8, BASE_DEC, VALS (valstr_019_553_REFTR1), 0xc0, NULL, HFILL } },
+ { &hf_019_553_REFTR2, { "REFTR2, Ref Trans 2 Status", "asterix.019_553_REFTR2", FT_UINT8, BASE_DEC, VALS (valstr_019_553_REFTR2), 0x0c, NULL, HFILL } },
+ { &hf_019_553_REFTR3, { "REFTR3, Ref Trans 3 Status", "asterix.019_553_REFTR3", FT_UINT8, BASE_DEC, VALS (valstr_019_553_REFTR3), 0xc0, NULL, HFILL } },
+ { &hf_019_553_REFTR4, { "REFTR4, Ref Trans 4 Status", "asterix.019_553_REFTR4", FT_UINT8, BASE_DEC, VALS (valstr_019_553_REFTR4), 0x0c, NULL, HFILL } },
+ { &hf_019_600, { "600, Position of the MLT System Reference Point", "asterix.019_600", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_600_LAT, { "LAT, Latitude, [°]", "asterix.019_600_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_600_LON, { "LON, Longitude, [°]", "asterix.019_600_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_610, { "610, Height of the MLT System Reference Point", "asterix.019_610", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_610_VALUE, { "Height of the MLT System Reference Point, [m]", "asterix.019_610_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_620, { "620, WGS-84 Undulation", "asterix.019_620", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_620_VALUE, { "WGS-84 Undulation, [m]", "asterix.019_620_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_RE, { "RE, Reserved Expansion Field", "asterix.019_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_019_SP, { "SP, Special Purpose Field", "asterix.019_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_010, { "010, Data Source Identifier", "asterix.020_V1_9_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_010_SAC, { "SAC, System Area Code", "asterix.020_V1_9_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_010_SIC, { "SIC, System Identification Code", "asterix.020_V1_9_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_020, { "020, Target Report Descriptor", "asterix.020_V1_9_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_020_SSR, { "SSR", "asterix.020_V1_9_020_SSR", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_020_SSR), 0x80, NULL, HFILL } },
+ { &hf_020_V1_9_020_MS, { "MS", "asterix.020_V1_9_020_MS", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_020_MS), 0x40, NULL, HFILL } },
+ { &hf_020_V1_9_020_HF, { "HF", "asterix.020_V1_9_020_HF", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_020_HF), 0x20, NULL, HFILL } },
+ { &hf_020_V1_9_020_VDL4, { "VDL4", "asterix.020_V1_9_020_VDL4", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_020_VDL4), 0x10, NULL, HFILL } },
+ { &hf_020_V1_9_020_UAT, { "UAT", "asterix.020_V1_9_020_UAT", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_020_UAT), 0x08, NULL, HFILL } },
+ { &hf_020_V1_9_020_DME, { "DME", "asterix.020_V1_9_020_DME", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_020_DME), 0x04, NULL, HFILL } },
+ { &hf_020_V1_9_020_OT, { "OT", "asterix.020_V1_9_020_OT", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_020_OT), 0x02, NULL, HFILL } },
+ { &hf_020_V1_9_020_RAB, { "RAB", "asterix.020_V1_9_020_RAB", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_020_RAB), 0x80, NULL, HFILL } },
+ { &hf_020_V1_9_020_SPI, { "SPI", "asterix.020_V1_9_020_SPI", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_020_SPI), 0x40, NULL, HFILL } },
+ { &hf_020_V1_9_020_CHN, { "CHN", "asterix.020_V1_9_020_CHN", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_020_CHN), 0x20, NULL, HFILL } },
+ { &hf_020_V1_9_020_GBS, { "GBS", "asterix.020_V1_9_020_GBS", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_020_GBS), 0x10, NULL, HFILL } },
+ { &hf_020_V1_9_020_CRT, { "CRT", "asterix.020_V1_9_020_CRT", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_020_CRT), 0x08, NULL, HFILL } },
+ { &hf_020_V1_9_020_SIM, { "SIM", "asterix.020_V1_9_020_SIM", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_020_SIM), 0x04, NULL, HFILL } },
+ { &hf_020_V1_9_020_TST, { "TST", "asterix.020_V1_9_020_TST", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_020_TST), 0x02, NULL, HFILL } },
+ { &hf_020_V1_9_030, { "030, Warning/Error Conditions", "asterix.020_V1_9_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_030_Subitem, { "Subitem, Subitem", "asterix.020_V1_9_030_Subitem", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_030_Subitem), 0xfe, NULL, HFILL } },
+ { &hf_020_V1_9_041, { "041, Position In WGS-84 Coordinates", "asterix.020_V1_9_041", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_041_LAT, { "LAT, Latitude, [°]", "asterix.020_V1_9_041_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_041_LON, { "LON, Longitude, [°]", "asterix.020_V1_9_041_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_042, { "042, Position in Cartesian Coordinates", "asterix.020_V1_9_042", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_042_X, { "X, X-coordinate, [m]", "asterix.020_V1_9_042_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_042_Y, { "Y, Y-coordinate, [m]", "asterix.020_V1_9_042_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_050, { "050, Mode-2 Code in Octal Representation", "asterix.020_V1_9_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_050_V, { "V, Validated", "asterix.020_V1_9_050_V", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_050_V), 0x80, NULL, HFILL } },
+ { &hf_020_V1_9_050_G, { "G, Garbled", "asterix.020_V1_9_050_G", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_050_G), 0x40, NULL, HFILL } },
+ { &hf_020_V1_9_050_L, { "L", "asterix.020_V1_9_050_L", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_050_L), 0x20, NULL, HFILL } },
+ { &hf_020_V1_9_050_MODE2, { "MODE2, Mode-2 Reply in Octal Representation", "asterix.020_V1_9_050_MODE2", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_020_V1_9_055, { "055, Mode-1 Code in Octal Representation", "asterix.020_V1_9_055", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_055_V, { "V, Validated", "asterix.020_V1_9_055_V", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_055_V), 0x80, NULL, HFILL } },
+ { &hf_020_V1_9_055_G, { "G, Garbled", "asterix.020_V1_9_055_G", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_055_G), 0x40, NULL, HFILL } },
+ { &hf_020_V1_9_055_L, { "L", "asterix.020_V1_9_055_L", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_055_L), 0x20, NULL, HFILL } },
+ { &hf_020_V1_9_055_MODE1, { "MODE1, Mode-1 Code in Octal Representation", "asterix.020_V1_9_055_MODE1", FT_UINT8, BASE_DEC, NULL, 0x1f, NULL, HFILL } },
+ { &hf_020_V1_9_070, { "070, Mode-3/A Code in Octal Representation", "asterix.020_V1_9_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_070_V, { "V, Validated", "asterix.020_V1_9_070_V", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_070_V), 0x80, NULL, HFILL } },
+ { &hf_020_V1_9_070_G, { "G, Garbled", "asterix.020_V1_9_070_G", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_070_G), 0x40, NULL, HFILL } },
+ { &hf_020_V1_9_070_L, { "L", "asterix.020_V1_9_070_L", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_070_L), 0x20, NULL, HFILL } },
+ { &hf_020_V1_9_070_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.020_V1_9_070_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_020_V1_9_090, { "090, Flight Level in Binary Representation", "asterix.020_V1_9_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_090_V, { "V, Validated", "asterix.020_V1_9_090_V", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_090_V), 0x80, NULL, HFILL } },
+ { &hf_020_V1_9_090_G, { "G, Garbled", "asterix.020_V1_9_090_G", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_090_G), 0x40, NULL, HFILL } },
+ { &hf_020_V1_9_090_FL, { "FL, Flight Level, [FL]", "asterix.020_V1_9_090_FL", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_100, { "100, Mode C Code", "asterix.020_V1_9_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_100_V, { "V, Validated", "asterix.020_V1_9_100_V", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_100_V), 0x80, NULL, HFILL } },
+ { &hf_020_V1_9_100_G, { "G, Garbled", "asterix.020_V1_9_100_G", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_100_G), 0x40, NULL, HFILL } },
+ { &hf_020_V1_9_100_MODEC, { "MODEC, Mode-C Reply in Gray Notation", "asterix.020_V1_9_100_MODEC", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_020_V1_9_100_QC1, { "QC1, Quality Pulse C1", "asterix.020_V1_9_100_QC1", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_100_QC1), 0x08, NULL, HFILL } },
+ { &hf_020_V1_9_100_QA1, { "QA1, Quality Pulse A1", "asterix.020_V1_9_100_QA1", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_100_QA1), 0x04, NULL, HFILL } },
+ { &hf_020_V1_9_100_QC2, { "QC2, Quality Pulse C2", "asterix.020_V1_9_100_QC2", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_100_QC2), 0x02, NULL, HFILL } },
+ { &hf_020_V1_9_100_QA2, { "QA2, Quality Pulse A2", "asterix.020_V1_9_100_QA2", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_100_QA2), 0x01, NULL, HFILL } },
+ { &hf_020_V1_9_100_QC4, { "QC4, Quality Pulse C4", "asterix.020_V1_9_100_QC4", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_100_QC4), 0x80, NULL, HFILL } },
+ { &hf_020_V1_9_100_QA4, { "QA4, Quality Pulse A4", "asterix.020_V1_9_100_QA4", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_100_QA4), 0x40, NULL, HFILL } },
+ { &hf_020_V1_9_100_QB1, { "QB1, Quality Pulse B1", "asterix.020_V1_9_100_QB1", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_100_QB1), 0x20, NULL, HFILL } },
+ { &hf_020_V1_9_100_QD1, { "QD1, Quality Pulse D1", "asterix.020_V1_9_100_QD1", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_100_QD1), 0x10, NULL, HFILL } },
+ { &hf_020_V1_9_100_QB2, { "QB2, Quality Pulse B2", "asterix.020_V1_9_100_QB2", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_100_QB2), 0x08, NULL, HFILL } },
+ { &hf_020_V1_9_100_QD2, { "QD2, Quality Pulse D2", "asterix.020_V1_9_100_QD2", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_100_QD2), 0x04, NULL, HFILL } },
+ { &hf_020_V1_9_100_QB4, { "QB4, Quality Pulse B4", "asterix.020_V1_9_100_QB4", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_100_QB4), 0x02, NULL, HFILL } },
+ { &hf_020_V1_9_100_QD4, { "QD4, Quality Pulse D4", "asterix.020_V1_9_100_QD4", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_100_QD4), 0x01, NULL, HFILL } },
+ { &hf_020_V1_9_105, { "105, Geometric Height (WGS-84)", "asterix.020_V1_9_105", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_105_VALUE, { "Geometric Height (WGS-84), [ft]", "asterix.020_V1_9_105_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_110, { "110, Measured Height (Local Cartesian Coordinates)", "asterix.020_V1_9_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_110_VALUE, { "Measured Height (Local Cartesian Coordinates), [ft]", "asterix.020_V1_9_110_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_140, { "140, Time of Day", "asterix.020_V1_9_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_140_VALUE, { "Time of Day, [s]", "asterix.020_V1_9_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_161, { "161, Track Number", "asterix.020_V1_9_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_161_TRN, { "TRN, Track Number", "asterix.020_V1_9_161_TRN", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_020_V1_9_170, { "170, Track Status", "asterix.020_V1_9_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_170_CNF, { "CNF", "asterix.020_V1_9_170_CNF", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_170_CNF), 0x80, NULL, HFILL } },
+ { &hf_020_V1_9_170_TRE, { "TRE", "asterix.020_V1_9_170_TRE", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_170_TRE), 0x40, NULL, HFILL } },
+ { &hf_020_V1_9_170_CST, { "CST", "asterix.020_V1_9_170_CST", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_170_CST), 0x20, NULL, HFILL } },
+ { &hf_020_V1_9_170_CDM, { "CDM", "asterix.020_V1_9_170_CDM", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_170_CDM), 0x18, NULL, HFILL } },
+ { &hf_020_V1_9_170_MAH, { "MAH", "asterix.020_V1_9_170_MAH", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_170_MAH), 0x04, NULL, HFILL } },
+ { &hf_020_V1_9_170_STH, { "STH", "asterix.020_V1_9_170_STH", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_170_STH), 0x02, NULL, HFILL } },
+ { &hf_020_V1_9_170_GHO, { "GHO", "asterix.020_V1_9_170_GHO", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_170_GHO), 0x80, NULL, HFILL } },
+ { &hf_020_V1_9_202, { "202, Calculated Track Velocity in Cartesian Coordinates", "asterix.020_V1_9_202", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_202_VX, { "VX, [m/s]", "asterix.020_V1_9_202_VX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_202_VY, { "VY, [m/s]", "asterix.020_V1_9_202_VY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_210, { "210, Calculated Acceleration", "asterix.020_V1_9_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_210_AX, { "AX, [m/s2]", "asterix.020_V1_9_210_AX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_210_AY, { "AY, [m/s2]", "asterix.020_V1_9_210_AY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_220, { "220, Target Address", "asterix.020_V1_9_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_220_VALUE, { "Target Address", "asterix.020_V1_9_220_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_230, { "230, Communications/ACAS Capability and Flight Status", "asterix.020_V1_9_230", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_230_COM, { "COM, Communications Capability of the Transponder", "asterix.020_V1_9_230_COM", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_230_COM), 0xe0, NULL, HFILL } },
+ { &hf_020_V1_9_230_STAT, { "STAT, Flight Status", "asterix.020_V1_9_230_STAT", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_230_STAT), 0x1c, NULL, HFILL } },
+ { &hf_020_V1_9_230_MSSC, { "MSSC, Mode-S Specific Service Capability", "asterix.020_V1_9_230_MSSC", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_230_MSSC), 0x80, NULL, HFILL } },
+ { &hf_020_V1_9_230_ARC, { "ARC, Altitude Reporting Capability", "asterix.020_V1_9_230_ARC", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_230_ARC), 0x40, NULL, HFILL } },
+ { &hf_020_V1_9_230_AIC, { "AIC, Aircraft Identification Capability", "asterix.020_V1_9_230_AIC", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_230_AIC), 0x20, NULL, HFILL } },
+ { &hf_020_V1_9_230_B1A, { "B1A, BDS 1,0 Bit 16", "asterix.020_V1_9_230_B1A", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_020_V1_9_230_B1B, { "B1B, BDS 1,0 Bits 37/40", "asterix.020_V1_9_230_B1B", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_020_V1_9_245, { "245, Target Identification", "asterix.020_V1_9_245", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_245_STI, { "STI", "asterix.020_V1_9_245_STI", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_245_STI), 0xc0, NULL, HFILL } },
+ { &hf_020_V1_9_245_CHR, { "CHR, Characters 1-8 (coded on 6 Bits Each) Defining Target Identification", "asterix.020_V1_9_245_CHR", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_250, { "250, Mode S MB Data", "asterix.020_V1_9_250", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_250_MBDATA, { "MBDATA, 56-bit Message Conveying Mode S Comm B Message Data", "asterix.020_V1_9_250_MBDATA", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_250_BDS1, { "BDS1, Comm B Data Buffer Store 1 Address", "asterix.020_V1_9_250_BDS1", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_020_V1_9_250_BDS2, { "BDS2, Comm B Data Buffer Store 2 Address", "asterix.020_V1_9_250_BDS2", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_020_V1_9_260, { "260, ACAS Resolution Advisory Report", "asterix.020_V1_9_260", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_260_VALUE, { "ACAS Resolution Advisory Report", "asterix.020_V1_9_260_VALUE", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_300, { "300, Vehicle Fleet Identification", "asterix.020_V1_9_300", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_300_VALUE, { "Vehicle Fleet Identification", "asterix.020_V1_9_300_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_300_VALUE), 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_310, { "310, Pre-programmed Message", "asterix.020_V1_9_310", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_310_TRB, { "TRB", "asterix.020_V1_9_310_TRB", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_310_TRB), 0x80, NULL, HFILL } },
+ { &hf_020_V1_9_310_MSG, { "MSG", "asterix.020_V1_9_310_MSG", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_310_MSG), 0x7f, NULL, HFILL } },
+ { &hf_020_V1_9_400, { "400, Contributing Devices", "asterix.020_V1_9_400", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_400_BIT1, { "BIT1, TU1/RU1 Contribution", "asterix.020_V1_9_400_BIT1", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_400_BIT1), 0x80, NULL, HFILL } },
+ { &hf_020_V1_9_400_BIT2, { "BIT2, TU2/RU2 Contribution", "asterix.020_V1_9_400_BIT2", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_400_BIT2), 0x40, NULL, HFILL } },
+ { &hf_020_V1_9_400_BIT3, { "BIT3, TU3/RU3 Contribution", "asterix.020_V1_9_400_BIT3", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_400_BIT3), 0x20, NULL, HFILL } },
+ { &hf_020_V1_9_400_BIT4, { "BIT4, TU4/RU4 Contribution", "asterix.020_V1_9_400_BIT4", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_400_BIT4), 0x10, NULL, HFILL } },
+ { &hf_020_V1_9_400_BIT5, { "BIT5, TU5/RU5 Contribution", "asterix.020_V1_9_400_BIT5", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_400_BIT5), 0x08, NULL, HFILL } },
+ { &hf_020_V1_9_400_BIT6, { "BIT6, TU6/RU6 Contribution", "asterix.020_V1_9_400_BIT6", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_400_BIT6), 0x04, NULL, HFILL } },
+ { &hf_020_V1_9_400_BIT7, { "BIT7, TU7/RU7 Contribution", "asterix.020_V1_9_400_BIT7", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_400_BIT7), 0x02, NULL, HFILL } },
+ { &hf_020_V1_9_400_BIT8, { "BIT8, TU8/RU8 Contribution", "asterix.020_V1_9_400_BIT8", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_9_400_BIT8), 0x01, NULL, HFILL } },
+ { &hf_020_V1_9_500, { "500, Position Accuracy", "asterix.020_V1_9_500", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_500_DOP, { "DOP, DOP of Position", "asterix.020_V1_9_500_DOP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_500_DOP_X, { "X, DOP (X-Component)", "asterix.020_V1_9_500_DOP_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_500_DOP_Y, { "Y, DOP (Y-Component)", "asterix.020_V1_9_500_DOP_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_500_DOP_XY, { "XY, DOP (Correlation XY)", "asterix.020_V1_9_500_DOP_XY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_500_SDP, { "SDP, Standard Deviation of Position", "asterix.020_V1_9_500_SDP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_500_SDP_X, { "X, SDP (X-Component), [m]", "asterix.020_V1_9_500_SDP_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_500_SDP_Y, { "Y, SDP (Y-Component), [m]", "asterix.020_V1_9_500_SDP_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_500_SDP_XY, { "XY, SDP (Correlation XY)", "asterix.020_V1_9_500_SDP_XY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_500_SDH, { "SDH, Standard Deviation of Geometric Height (WGS 84)", "asterix.020_V1_9_500_SDH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_500_SDH_VALUE, { "Standard Deviation of Geometric Height (WGS 84), [m]", "asterix.020_V1_9_500_SDH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_RE, { "RE, Reserved Expansion Field", "asterix.020_V1_9_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_9_SP, { "SP, Special Purpose Field", "asterix.020_V1_9_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_010, { "010, Data Source Identifier", "asterix.020_V1_10_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_010_SAC, { "SAC, System Area Code", "asterix.020_V1_10_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_010_SIC, { "SIC, System Identification Code", "asterix.020_V1_10_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_020, { "020, Target Report Descriptor", "asterix.020_V1_10_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_020_SSR, { "SSR", "asterix.020_V1_10_020_SSR", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_020_SSR), 0x80, NULL, HFILL } },
+ { &hf_020_V1_10_020_MS, { "MS", "asterix.020_V1_10_020_MS", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_020_MS), 0x40, NULL, HFILL } },
+ { &hf_020_V1_10_020_HF, { "HF", "asterix.020_V1_10_020_HF", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_020_HF), 0x20, NULL, HFILL } },
+ { &hf_020_V1_10_020_VDL4, { "VDL4", "asterix.020_V1_10_020_VDL4", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_020_VDL4), 0x10, NULL, HFILL } },
+ { &hf_020_V1_10_020_UAT, { "UAT", "asterix.020_V1_10_020_UAT", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_020_UAT), 0x08, NULL, HFILL } },
+ { &hf_020_V1_10_020_DME, { "DME", "asterix.020_V1_10_020_DME", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_020_DME), 0x04, NULL, HFILL } },
+ { &hf_020_V1_10_020_OT, { "OT", "asterix.020_V1_10_020_OT", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_020_OT), 0x02, NULL, HFILL } },
+ { &hf_020_V1_10_020_RAB, { "RAB", "asterix.020_V1_10_020_RAB", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_020_RAB), 0x80, NULL, HFILL } },
+ { &hf_020_V1_10_020_SPI, { "SPI", "asterix.020_V1_10_020_SPI", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_020_SPI), 0x40, NULL, HFILL } },
+ { &hf_020_V1_10_020_CHN, { "CHN", "asterix.020_V1_10_020_CHN", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_020_CHN), 0x20, NULL, HFILL } },
+ { &hf_020_V1_10_020_GBS, { "GBS", "asterix.020_V1_10_020_GBS", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_020_GBS), 0x10, NULL, HFILL } },
+ { &hf_020_V1_10_020_CRT, { "CRT", "asterix.020_V1_10_020_CRT", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_020_CRT), 0x08, NULL, HFILL } },
+ { &hf_020_V1_10_020_SIM, { "SIM", "asterix.020_V1_10_020_SIM", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_020_SIM), 0x04, NULL, HFILL } },
+ { &hf_020_V1_10_020_TST, { "TST", "asterix.020_V1_10_020_TST", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_020_TST), 0x02, NULL, HFILL } },
+ { &hf_020_V1_10_030, { "030, Warning/Error Conditions", "asterix.020_V1_10_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_030_Subitem, { "Subitem, Subitem", "asterix.020_V1_10_030_Subitem", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_030_Subitem), 0xfe, NULL, HFILL } },
+ { &hf_020_V1_10_041, { "041, Position In WGS-84 Coordinates", "asterix.020_V1_10_041", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_041_LAT, { "LAT, Latitude, [°]", "asterix.020_V1_10_041_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_041_LON, { "LON, Longitude, [°]", "asterix.020_V1_10_041_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_042, { "042, Position in Cartesian Coordinates", "asterix.020_V1_10_042", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_042_X, { "X, X-coordinate, [m]", "asterix.020_V1_10_042_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_042_Y, { "Y, Y-coordinate, [m]", "asterix.020_V1_10_042_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_050, { "050, Mode-2 Code in Octal Representation", "asterix.020_V1_10_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_050_V, { "V, Validated", "asterix.020_V1_10_050_V", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_050_V), 0x80, NULL, HFILL } },
+ { &hf_020_V1_10_050_G, { "G, Garbled", "asterix.020_V1_10_050_G", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_050_G), 0x40, NULL, HFILL } },
+ { &hf_020_V1_10_050_L, { "L", "asterix.020_V1_10_050_L", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_050_L), 0x20, NULL, HFILL } },
+ { &hf_020_V1_10_050_MODE2, { "MODE2, Mode-2 Reply in Octal Representation", "asterix.020_V1_10_050_MODE2", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_020_V1_10_055, { "055, Mode-1 Code in Octal Representation", "asterix.020_V1_10_055", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_055_V, { "V, Validated", "asterix.020_V1_10_055_V", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_055_V), 0x80, NULL, HFILL } },
+ { &hf_020_V1_10_055_G, { "G, Garbled", "asterix.020_V1_10_055_G", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_055_G), 0x40, NULL, HFILL } },
+ { &hf_020_V1_10_055_L, { "L", "asterix.020_V1_10_055_L", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_055_L), 0x20, NULL, HFILL } },
+ { &hf_020_V1_10_055_MODE1, { "MODE1, Mode-1 Code in Octal Representation", "asterix.020_V1_10_055_MODE1", FT_UINT8, BASE_DEC, NULL, 0x1f, NULL, HFILL } },
+ { &hf_020_V1_10_070, { "070, Mode-3/A Code in Octal Representation", "asterix.020_V1_10_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_070_V, { "V, Validated", "asterix.020_V1_10_070_V", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_070_V), 0x80, NULL, HFILL } },
+ { &hf_020_V1_10_070_G, { "G, Garbled", "asterix.020_V1_10_070_G", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_070_G), 0x40, NULL, HFILL } },
+ { &hf_020_V1_10_070_L, { "L", "asterix.020_V1_10_070_L", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_070_L), 0x20, NULL, HFILL } },
+ { &hf_020_V1_10_070_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.020_V1_10_070_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_020_V1_10_090, { "090, Flight Level in Binary Representation", "asterix.020_V1_10_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_090_V, { "V, Validated", "asterix.020_V1_10_090_V", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_090_V), 0x80, NULL, HFILL } },
+ { &hf_020_V1_10_090_G, { "G, Garbled", "asterix.020_V1_10_090_G", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_090_G), 0x40, NULL, HFILL } },
+ { &hf_020_V1_10_090_FL, { "FL, Flight Level, [FL]", "asterix.020_V1_10_090_FL", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_100, { "100, Mode C Code", "asterix.020_V1_10_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_100_V, { "V, Validated", "asterix.020_V1_10_100_V", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_100_V), 0x80, NULL, HFILL } },
+ { &hf_020_V1_10_100_G, { "G, Garbled", "asterix.020_V1_10_100_G", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_100_G), 0x40, NULL, HFILL } },
+ { &hf_020_V1_10_100_MODEC, { "MODEC, Mode-C Reply in Gray Notation", "asterix.020_V1_10_100_MODEC", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_020_V1_10_100_QC1, { "QC1, Quality Pulse C1", "asterix.020_V1_10_100_QC1", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_100_QC1), 0x08, NULL, HFILL } },
+ { &hf_020_V1_10_100_QA1, { "QA1, Quality Pulse A1", "asterix.020_V1_10_100_QA1", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_100_QA1), 0x04, NULL, HFILL } },
+ { &hf_020_V1_10_100_QC2, { "QC2, Quality Pulse C2", "asterix.020_V1_10_100_QC2", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_100_QC2), 0x02, NULL, HFILL } },
+ { &hf_020_V1_10_100_QA2, { "QA2, Quality Pulse A2", "asterix.020_V1_10_100_QA2", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_100_QA2), 0x01, NULL, HFILL } },
+ { &hf_020_V1_10_100_QC4, { "QC4, Quality Pulse C4", "asterix.020_V1_10_100_QC4", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_100_QC4), 0x80, NULL, HFILL } },
+ { &hf_020_V1_10_100_QA4, { "QA4, Quality Pulse A4", "asterix.020_V1_10_100_QA4", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_100_QA4), 0x40, NULL, HFILL } },
+ { &hf_020_V1_10_100_QB1, { "QB1, Quality Pulse B1", "asterix.020_V1_10_100_QB1", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_100_QB1), 0x20, NULL, HFILL } },
+ { &hf_020_V1_10_100_QD1, { "QD1, Quality Pulse D1", "asterix.020_V1_10_100_QD1", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_100_QD1), 0x10, NULL, HFILL } },
+ { &hf_020_V1_10_100_QB2, { "QB2, Quality Pulse B2", "asterix.020_V1_10_100_QB2", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_100_QB2), 0x08, NULL, HFILL } },
+ { &hf_020_V1_10_100_QD2, { "QD2, Quality Pulse D2", "asterix.020_V1_10_100_QD2", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_100_QD2), 0x04, NULL, HFILL } },
+ { &hf_020_V1_10_100_QB4, { "QB4, Quality Pulse B4", "asterix.020_V1_10_100_QB4", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_100_QB4), 0x02, NULL, HFILL } },
+ { &hf_020_V1_10_100_QD4, { "QD4, Quality Pulse D4", "asterix.020_V1_10_100_QD4", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_100_QD4), 0x01, NULL, HFILL } },
+ { &hf_020_V1_10_105, { "105, Geometric Height (WGS-84)", "asterix.020_V1_10_105", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_105_VALUE, { "Geometric Height (WGS-84), [ft]", "asterix.020_V1_10_105_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_110, { "110, Measured Height (Local Cartesian Coordinates)", "asterix.020_V1_10_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_110_VALUE, { "Measured Height (Local Cartesian Coordinates), [ft]", "asterix.020_V1_10_110_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_140, { "140, Time of Day", "asterix.020_V1_10_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_140_VALUE, { "Time of Day, [s]", "asterix.020_V1_10_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_161, { "161, Track Number", "asterix.020_V1_10_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_161_TRN, { "TRN, Track Number", "asterix.020_V1_10_161_TRN", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_020_V1_10_170, { "170, Track Status", "asterix.020_V1_10_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_170_CNF, { "CNF", "asterix.020_V1_10_170_CNF", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_170_CNF), 0x80, NULL, HFILL } },
+ { &hf_020_V1_10_170_TRE, { "TRE", "asterix.020_V1_10_170_TRE", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_170_TRE), 0x40, NULL, HFILL } },
+ { &hf_020_V1_10_170_CST, { "CST", "asterix.020_V1_10_170_CST", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_170_CST), 0x20, NULL, HFILL } },
+ { &hf_020_V1_10_170_CDM, { "CDM", "asterix.020_V1_10_170_CDM", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_170_CDM), 0x18, NULL, HFILL } },
+ { &hf_020_V1_10_170_MAH, { "MAH", "asterix.020_V1_10_170_MAH", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_170_MAH), 0x04, NULL, HFILL } },
+ { &hf_020_V1_10_170_STH, { "STH", "asterix.020_V1_10_170_STH", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_170_STH), 0x02, NULL, HFILL } },
+ { &hf_020_V1_10_170_GHO, { "GHO", "asterix.020_V1_10_170_GHO", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_170_GHO), 0x80, NULL, HFILL } },
+ { &hf_020_V1_10_202, { "202, Calculated Track Velocity in Cartesian Coordinates", "asterix.020_V1_10_202", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_202_VX, { "VX, [m/s]", "asterix.020_V1_10_202_VX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_202_VY, { "VY, [m/s]", "asterix.020_V1_10_202_VY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_210, { "210, Calculated Acceleration", "asterix.020_V1_10_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_210_AX, { "AX, [m/s2]", "asterix.020_V1_10_210_AX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_210_AY, { "AY, [m/s2]", "asterix.020_V1_10_210_AY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_220, { "220, Target Address", "asterix.020_V1_10_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_220_VALUE, { "Target Address", "asterix.020_V1_10_220_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_230, { "230, Communications/ACAS Capability and Flight Status", "asterix.020_V1_10_230", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_230_COM, { "COM, Communications Capability of the Transponder", "asterix.020_V1_10_230_COM", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_230_COM), 0xe0, NULL, HFILL } },
+ { &hf_020_V1_10_230_STAT, { "STAT, Flight Status", "asterix.020_V1_10_230_STAT", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_230_STAT), 0x1c, NULL, HFILL } },
+ { &hf_020_V1_10_230_MSSC, { "MSSC, Mode-S Specific Service Capability", "asterix.020_V1_10_230_MSSC", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_230_MSSC), 0x80, NULL, HFILL } },
+ { &hf_020_V1_10_230_ARC, { "ARC, Altitude Reporting Capability", "asterix.020_V1_10_230_ARC", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_230_ARC), 0x40, NULL, HFILL } },
+ { &hf_020_V1_10_230_AIC, { "AIC, Aircraft Identification Capability", "asterix.020_V1_10_230_AIC", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_230_AIC), 0x20, NULL, HFILL } },
+ { &hf_020_V1_10_230_B1A, { "B1A, BDS 1,0 Bit 16", "asterix.020_V1_10_230_B1A", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_020_V1_10_230_B1B, { "B1B, BDS 1,0 Bits 37/40", "asterix.020_V1_10_230_B1B", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_020_V1_10_245, { "245, Target Identification", "asterix.020_V1_10_245", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_245_STI, { "STI", "asterix.020_V1_10_245_STI", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_245_STI), 0xc0, NULL, HFILL } },
+ { &hf_020_V1_10_245_CHR, { "CHR, Characters 1-8 (coded on 6 Bits Each) Defining Target Identification", "asterix.020_V1_10_245_CHR", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_250, { "250, BDS Register Data", "asterix.020_V1_10_250", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_250_MBDATA, { "MBDATA, 56-bit Message Conveying Mode S Comm B Message Data", "asterix.020_V1_10_250_MBDATA", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_250_BDS1, { "BDS1, Comm B Data Buffer Store 1 Address", "asterix.020_V1_10_250_BDS1", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_020_V1_10_250_BDS2, { "BDS2, Comm B Data Buffer Store 2 Address", "asterix.020_V1_10_250_BDS2", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_020_V1_10_260, { "260, ACAS Resolution Advisory Report", "asterix.020_V1_10_260", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_260_VALUE, { "ACAS Resolution Advisory Report", "asterix.020_V1_10_260_VALUE", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_300, { "300, Vehicle Fleet Identification", "asterix.020_V1_10_300", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_300_VALUE, { "Vehicle Fleet Identification", "asterix.020_V1_10_300_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_300_VALUE), 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_310, { "310, Pre-programmed Message", "asterix.020_V1_10_310", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_310_TRB, { "TRB", "asterix.020_V1_10_310_TRB", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_310_TRB), 0x80, NULL, HFILL } },
+ { &hf_020_V1_10_310_MSG, { "MSG", "asterix.020_V1_10_310_MSG", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_310_MSG), 0x7f, NULL, HFILL } },
+ { &hf_020_V1_10_400, { "400, Contributing Devices", "asterix.020_V1_10_400", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_400_BIT1, { "BIT1, TU1/RU1 Contribution", "asterix.020_V1_10_400_BIT1", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_400_BIT1), 0x80, NULL, HFILL } },
+ { &hf_020_V1_10_400_BIT2, { "BIT2, TU2/RU2 Contribution", "asterix.020_V1_10_400_BIT2", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_400_BIT2), 0x40, NULL, HFILL } },
+ { &hf_020_V1_10_400_BIT3, { "BIT3, TU3/RU3 Contribution", "asterix.020_V1_10_400_BIT3", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_400_BIT3), 0x20, NULL, HFILL } },
+ { &hf_020_V1_10_400_BIT4, { "BIT4, TU4/RU4 Contribution", "asterix.020_V1_10_400_BIT4", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_400_BIT4), 0x10, NULL, HFILL } },
+ { &hf_020_V1_10_400_BIT5, { "BIT5, TU5/RU5 Contribution", "asterix.020_V1_10_400_BIT5", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_400_BIT5), 0x08, NULL, HFILL } },
+ { &hf_020_V1_10_400_BIT6, { "BIT6, TU6/RU6 Contribution", "asterix.020_V1_10_400_BIT6", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_400_BIT6), 0x04, NULL, HFILL } },
+ { &hf_020_V1_10_400_BIT7, { "BIT7, TU7/RU7 Contribution", "asterix.020_V1_10_400_BIT7", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_400_BIT7), 0x02, NULL, HFILL } },
+ { &hf_020_V1_10_400_BIT8, { "BIT8, TU8/RU8 Contribution", "asterix.020_V1_10_400_BIT8", FT_UINT8, BASE_DEC, VALS (valstr_020_V1_10_400_BIT8), 0x01, NULL, HFILL } },
+ { &hf_020_V1_10_500, { "500, Position Accuracy", "asterix.020_V1_10_500", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_500_DOP, { "DOP, DOP of Position", "asterix.020_V1_10_500_DOP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_500_DOP_X, { "X, DOP (X-Component)", "asterix.020_V1_10_500_DOP_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_500_DOP_Y, { "Y, DOP (Y-Component)", "asterix.020_V1_10_500_DOP_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_500_DOP_XY, { "XY, DOP (Correlation XY)", "asterix.020_V1_10_500_DOP_XY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_500_SDP, { "SDP, Standard Deviation of Position", "asterix.020_V1_10_500_SDP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_500_SDP_X, { "X, SDP (X-Component), [m]", "asterix.020_V1_10_500_SDP_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_500_SDP_Y, { "Y, SDP (Y-Component), [m]", "asterix.020_V1_10_500_SDP_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_500_SDP_XY, { "XY, SDP (Correlation XY)", "asterix.020_V1_10_500_SDP_XY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_500_SDH, { "SDH, Standard Deviation of Geometric Height (WGS 84)", "asterix.020_V1_10_500_SDH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_500_SDH_VALUE, { "Standard Deviation of Geometric Height (WGS 84), [m]", "asterix.020_V1_10_500_SDH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_RE, { "RE, Reserved Expansion Field", "asterix.020_V1_10_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_V1_10_SP, { "SP, Special Purpose Field", "asterix.020_V1_10_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_010, { "010, Data Source Identifier", "asterix.020_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_010_SAC, { "SAC, System Area Code", "asterix.020_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_010_SIC, { "SIC, System Identification Code", "asterix.020_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_020, { "020, Target Report Descriptor", "asterix.020_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_020_SSR, { "SSR", "asterix.020_020_SSR", FT_UINT8, BASE_DEC, VALS (valstr_020_020_SSR), 0x80, NULL, HFILL } },
+ { &hf_020_020_MS, { "MS", "asterix.020_020_MS", FT_UINT8, BASE_DEC, VALS (valstr_020_020_MS), 0x40, NULL, HFILL } },
+ { &hf_020_020_HF, { "HF", "asterix.020_020_HF", FT_UINT8, BASE_DEC, VALS (valstr_020_020_HF), 0x20, NULL, HFILL } },
+ { &hf_020_020_VDL4, { "VDL4", "asterix.020_020_VDL4", FT_UINT8, BASE_DEC, VALS (valstr_020_020_VDL4), 0x10, NULL, HFILL } },
+ { &hf_020_020_UAT, { "UAT", "asterix.020_020_UAT", FT_UINT8, BASE_DEC, VALS (valstr_020_020_UAT), 0x08, NULL, HFILL } },
+ { &hf_020_020_DME, { "DME", "asterix.020_020_DME", FT_UINT8, BASE_DEC, VALS (valstr_020_020_DME), 0x04, NULL, HFILL } },
+ { &hf_020_020_OT, { "OT", "asterix.020_020_OT", FT_UINT8, BASE_DEC, VALS (valstr_020_020_OT), 0x02, NULL, HFILL } },
+ { &hf_020_020_RAB, { "RAB", "asterix.020_020_RAB", FT_UINT8, BASE_DEC, VALS (valstr_020_020_RAB), 0x80, NULL, HFILL } },
+ { &hf_020_020_SPI, { "SPI", "asterix.020_020_SPI", FT_UINT8, BASE_DEC, VALS (valstr_020_020_SPI), 0x40, NULL, HFILL } },
+ { &hf_020_020_CHN, { "CHN", "asterix.020_020_CHN", FT_UINT8, BASE_DEC, VALS (valstr_020_020_CHN), 0x20, NULL, HFILL } },
+ { &hf_020_020_GBS, { "GBS", "asterix.020_020_GBS", FT_UINT8, BASE_DEC, VALS (valstr_020_020_GBS), 0x10, NULL, HFILL } },
+ { &hf_020_020_CRT, { "CRT", "asterix.020_020_CRT", FT_UINT8, BASE_DEC, VALS (valstr_020_020_CRT), 0x08, NULL, HFILL } },
+ { &hf_020_020_SIM, { "SIM", "asterix.020_020_SIM", FT_UINT8, BASE_DEC, VALS (valstr_020_020_SIM), 0x04, NULL, HFILL } },
+ { &hf_020_020_TST, { "TST", "asterix.020_020_TST", FT_UINT8, BASE_DEC, VALS (valstr_020_020_TST), 0x02, NULL, HFILL } },
+ { &hf_020_030, { "030, Warning/Error Conditions", "asterix.020_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_030_Subitem, { "Subitem, Subitem", "asterix.020_030_Subitem", FT_UINT8, BASE_DEC, VALS (valstr_020_030_Subitem), 0xfe, NULL, HFILL } },
+ { &hf_020_041, { "041, Position In WGS-84 Coordinates", "asterix.020_041", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_041_LAT, { "LAT, Latitude, [°]", "asterix.020_041_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_041_LON, { "LON, Longitude, [°]", "asterix.020_041_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_042, { "042, Position in Cartesian Coordinates", "asterix.020_042", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_042_X, { "X, X-coordinate, [m]", "asterix.020_042_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_042_Y, { "Y, Y-coordinate, [m]", "asterix.020_042_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_050, { "050, Mode-2 Code in Octal Representation", "asterix.020_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_050_V, { "V, Validated", "asterix.020_050_V", FT_UINT8, BASE_DEC, VALS (valstr_020_050_V), 0x80, NULL, HFILL } },
+ { &hf_020_050_G, { "G, Garbled", "asterix.020_050_G", FT_UINT8, BASE_DEC, VALS (valstr_020_050_G), 0x40, NULL, HFILL } },
+ { &hf_020_050_L, { "L", "asterix.020_050_L", FT_UINT8, BASE_DEC, VALS (valstr_020_050_L), 0x20, NULL, HFILL } },
+ { &hf_020_050_MODE2, { "MODE2, Mode-2 Reply in Octal Representation", "asterix.020_050_MODE2", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_020_055, { "055, Mode-1 Code in Octal Representation", "asterix.020_055", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_055_V, { "V, Validated", "asterix.020_055_V", FT_UINT8, BASE_DEC, VALS (valstr_020_055_V), 0x80, NULL, HFILL } },
+ { &hf_020_055_G, { "G, Garbled", "asterix.020_055_G", FT_UINT8, BASE_DEC, VALS (valstr_020_055_G), 0x40, NULL, HFILL } },
+ { &hf_020_055_L, { "L", "asterix.020_055_L", FT_UINT8, BASE_DEC, VALS (valstr_020_055_L), 0x20, NULL, HFILL } },
+ { &hf_020_055_MODE1, { "MODE1, Mode-1 Code in Octal Representation", "asterix.020_055_MODE1", FT_UINT8, BASE_DEC, NULL, 0x1f, NULL, HFILL } },
+ { &hf_020_070, { "070, Mode-3/A Code in Octal Representation", "asterix.020_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_070_V, { "V, Validated", "asterix.020_070_V", FT_UINT8, BASE_DEC, VALS (valstr_020_070_V), 0x80, NULL, HFILL } },
+ { &hf_020_070_G, { "G, Garbled", "asterix.020_070_G", FT_UINT8, BASE_DEC, VALS (valstr_020_070_G), 0x40, NULL, HFILL } },
+ { &hf_020_070_L, { "L", "asterix.020_070_L", FT_UINT8, BASE_DEC, VALS (valstr_020_070_L), 0x20, NULL, HFILL } },
+ { &hf_020_070_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.020_070_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_020_090, { "090, Flight Level in Binary Representation", "asterix.020_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_090_V, { "V, Validated", "asterix.020_090_V", FT_UINT8, BASE_DEC, VALS (valstr_020_090_V), 0x80, NULL, HFILL } },
+ { &hf_020_090_G, { "G, Garbled", "asterix.020_090_G", FT_UINT8, BASE_DEC, VALS (valstr_020_090_G), 0x40, NULL, HFILL } },
+ { &hf_020_090_FL, { "FL, Flight Level, [FL]", "asterix.020_090_FL", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_100, { "100, Mode C Code", "asterix.020_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_100_V, { "V, Validated", "asterix.020_100_V", FT_UINT8, BASE_DEC, VALS (valstr_020_100_V), 0x80, NULL, HFILL } },
+ { &hf_020_100_G, { "G, Garbled", "asterix.020_100_G", FT_UINT8, BASE_DEC, VALS (valstr_020_100_G), 0x40, NULL, HFILL } },
+ { &hf_020_100_MODEC, { "MODEC, Mode-C Reply in Gray Notation", "asterix.020_100_MODEC", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_020_100_QC1, { "QC1, Quality Pulse C1", "asterix.020_100_QC1", FT_UINT8, BASE_DEC, VALS (valstr_020_100_QC1), 0x08, NULL, HFILL } },
+ { &hf_020_100_QA1, { "QA1, Quality Pulse A1", "asterix.020_100_QA1", FT_UINT8, BASE_DEC, VALS (valstr_020_100_QA1), 0x04, NULL, HFILL } },
+ { &hf_020_100_QC2, { "QC2, Quality Pulse C2", "asterix.020_100_QC2", FT_UINT8, BASE_DEC, VALS (valstr_020_100_QC2), 0x02, NULL, HFILL } },
+ { &hf_020_100_QA2, { "QA2, Quality Pulse A2", "asterix.020_100_QA2", FT_UINT8, BASE_DEC, VALS (valstr_020_100_QA2), 0x01, NULL, HFILL } },
+ { &hf_020_100_QC4, { "QC4, Quality Pulse C4", "asterix.020_100_QC4", FT_UINT8, BASE_DEC, VALS (valstr_020_100_QC4), 0x80, NULL, HFILL } },
+ { &hf_020_100_QA4, { "QA4, Quality Pulse A4", "asterix.020_100_QA4", FT_UINT8, BASE_DEC, VALS (valstr_020_100_QA4), 0x40, NULL, HFILL } },
+ { &hf_020_100_QB1, { "QB1, Quality Pulse B1", "asterix.020_100_QB1", FT_UINT8, BASE_DEC, VALS (valstr_020_100_QB1), 0x20, NULL, HFILL } },
+ { &hf_020_100_QD1, { "QD1, Quality Pulse D1", "asterix.020_100_QD1", FT_UINT8, BASE_DEC, VALS (valstr_020_100_QD1), 0x10, NULL, HFILL } },
+ { &hf_020_100_QB2, { "QB2, Quality Pulse B2", "asterix.020_100_QB2", FT_UINT8, BASE_DEC, VALS (valstr_020_100_QB2), 0x08, NULL, HFILL } },
+ { &hf_020_100_QD2, { "QD2, Quality Pulse D2", "asterix.020_100_QD2", FT_UINT8, BASE_DEC, VALS (valstr_020_100_QD2), 0x04, NULL, HFILL } },
+ { &hf_020_100_QB4, { "QB4, Quality Pulse B4", "asterix.020_100_QB4", FT_UINT8, BASE_DEC, VALS (valstr_020_100_QB4), 0x02, NULL, HFILL } },
+ { &hf_020_100_QD4, { "QD4, Quality Pulse D4", "asterix.020_100_QD4", FT_UINT8, BASE_DEC, VALS (valstr_020_100_QD4), 0x01, NULL, HFILL } },
+ { &hf_020_105, { "105, Geometric Height (WGS-84)", "asterix.020_105", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_105_VALUE, { "Geometric Height (WGS-84), [ft]", "asterix.020_105_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_110, { "110, Measured Height (Local Cartesian Coordinates)", "asterix.020_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_110_VALUE, { "Measured Height (Local Cartesian Coordinates), [ft]", "asterix.020_110_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_140, { "140, Time of Day", "asterix.020_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_140_VALUE, { "Time of Day, [s]", "asterix.020_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_161, { "161, Track Number", "asterix.020_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_161_TRN, { "TRN, Track Number", "asterix.020_161_TRN", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_020_170, { "170, Track Status", "asterix.020_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_170_CNF, { "CNF", "asterix.020_170_CNF", FT_UINT8, BASE_DEC, VALS (valstr_020_170_CNF), 0x80, NULL, HFILL } },
+ { &hf_020_170_TRE, { "TRE", "asterix.020_170_TRE", FT_UINT8, BASE_DEC, VALS (valstr_020_170_TRE), 0x40, NULL, HFILL } },
+ { &hf_020_170_CST, { "CST", "asterix.020_170_CST", FT_UINT8, BASE_DEC, VALS (valstr_020_170_CST), 0x20, NULL, HFILL } },
+ { &hf_020_170_CDM, { "CDM", "asterix.020_170_CDM", FT_UINT8, BASE_DEC, VALS (valstr_020_170_CDM), 0x18, NULL, HFILL } },
+ { &hf_020_170_MAH, { "MAH", "asterix.020_170_MAH", FT_UINT8, BASE_DEC, VALS (valstr_020_170_MAH), 0x04, NULL, HFILL } },
+ { &hf_020_170_STH, { "STH", "asterix.020_170_STH", FT_UINT8, BASE_DEC, VALS (valstr_020_170_STH), 0x02, NULL, HFILL } },
+ { &hf_020_170_GHO, { "GHO", "asterix.020_170_GHO", FT_UINT8, BASE_DEC, VALS (valstr_020_170_GHO), 0x80, NULL, HFILL } },
+ { &hf_020_202, { "202, Calculated Track Velocity in Cartesian Coordinates", "asterix.020_202", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_202_VX, { "VX, [m/s]", "asterix.020_202_VX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_202_VY, { "VY, [m/s]", "asterix.020_202_VY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_210, { "210, Calculated Acceleration", "asterix.020_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_210_AX, { "AX, [m/s2]", "asterix.020_210_AX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_210_AY, { "AY, [m/s2]", "asterix.020_210_AY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_220, { "220, Target Address", "asterix.020_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_220_VALUE, { "Target Address", "asterix.020_220_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_230, { "230, Communications/ACAS Capability and Flight Status", "asterix.020_230", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_230_COM, { "COM, Communications Capability of the Transponder", "asterix.020_230_COM", FT_UINT8, BASE_DEC, VALS (valstr_020_230_COM), 0xe0, NULL, HFILL } },
+ { &hf_020_230_STAT, { "STAT, Flight Status", "asterix.020_230_STAT", FT_UINT8, BASE_DEC, VALS (valstr_020_230_STAT), 0x1c, NULL, HFILL } },
+ { &hf_020_230_MSSC, { "MSSC, Mode-S Specific Service Capability", "asterix.020_230_MSSC", FT_UINT8, BASE_DEC, VALS (valstr_020_230_MSSC), 0x80, NULL, HFILL } },
+ { &hf_020_230_ARC, { "ARC, Altitude Reporting Capability", "asterix.020_230_ARC", FT_UINT8, BASE_DEC, VALS (valstr_020_230_ARC), 0x40, NULL, HFILL } },
+ { &hf_020_230_AIC, { "AIC, Aircraft Identification Capability", "asterix.020_230_AIC", FT_UINT8, BASE_DEC, VALS (valstr_020_230_AIC), 0x20, NULL, HFILL } },
+ { &hf_020_230_B1A, { "B1A, BDS 1,0 Bit 16", "asterix.020_230_B1A", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_020_230_B1B, { "B1B, BDS 1,0 Bits 37/40", "asterix.020_230_B1B", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_020_245, { "245, Target Identification", "asterix.020_245", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_245_STI, { "STI", "asterix.020_245_STI", FT_UINT8, BASE_DEC, VALS (valstr_020_245_STI), 0xc0, NULL, HFILL } },
+ { &hf_020_245_CHR, { "CHR, Characters 1-8 (coded on 6 Bits Each) Defining Target Identification", "asterix.020_245_CHR", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_250, { "250, BDS Register Data", "asterix.020_250", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_250_MBDATA, { "MBDATA, 56-bit Message Conveying Mode S Comm B Message Data", "asterix.020_250_MBDATA", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_250_BDS1, { "BDS1, Comm B Data Buffer Store 1 Address", "asterix.020_250_BDS1", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_020_250_BDS2, { "BDS2, Comm B Data Buffer Store 2 Address", "asterix.020_250_BDS2", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_020_260, { "260, ACAS Resolution Advisory Report", "asterix.020_260", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_260_VALUE, { "ACAS Resolution Advisory Report", "asterix.020_260_VALUE", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_300, { "300, Vehicle Fleet Identification", "asterix.020_300", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_300_VALUE, { "Vehicle Fleet Identification", "asterix.020_300_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_020_300_VALUE), 0x00, NULL, HFILL } },
+ { &hf_020_310, { "310, Pre-programmed Message", "asterix.020_310", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_310_TRB, { "TRB", "asterix.020_310_TRB", FT_UINT8, BASE_DEC, VALS (valstr_020_310_TRB), 0x80, NULL, HFILL } },
+ { &hf_020_310_MSG, { "MSG", "asterix.020_310_MSG", FT_UINT8, BASE_DEC, VALS (valstr_020_310_MSG), 0x7f, NULL, HFILL } },
+ { &hf_020_400, { "400, Contributing Devices", "asterix.020_400", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_400_BIT1, { "BIT1, TU1/RU1 Contribution", "asterix.020_400_BIT1", FT_UINT8, BASE_DEC, VALS (valstr_020_400_BIT1), 0x80, NULL, HFILL } },
+ { &hf_020_400_BIT2, { "BIT2, TU2/RU2 Contribution", "asterix.020_400_BIT2", FT_UINT8, BASE_DEC, VALS (valstr_020_400_BIT2), 0x40, NULL, HFILL } },
+ { &hf_020_400_BIT3, { "BIT3, TU3/RU3 Contribution", "asterix.020_400_BIT3", FT_UINT8, BASE_DEC, VALS (valstr_020_400_BIT3), 0x20, NULL, HFILL } },
+ { &hf_020_400_BIT4, { "BIT4, TU4/RU4 Contribution", "asterix.020_400_BIT4", FT_UINT8, BASE_DEC, VALS (valstr_020_400_BIT4), 0x10, NULL, HFILL } },
+ { &hf_020_400_BIT5, { "BIT5, TU5/RU5 Contribution", "asterix.020_400_BIT5", FT_UINT8, BASE_DEC, VALS (valstr_020_400_BIT5), 0x08, NULL, HFILL } },
+ { &hf_020_400_BIT6, { "BIT6, TU6/RU6 Contribution", "asterix.020_400_BIT6", FT_UINT8, BASE_DEC, VALS (valstr_020_400_BIT6), 0x04, NULL, HFILL } },
+ { &hf_020_400_BIT7, { "BIT7, TU7/RU7 Contribution", "asterix.020_400_BIT7", FT_UINT8, BASE_DEC, VALS (valstr_020_400_BIT7), 0x02, NULL, HFILL } },
+ { &hf_020_400_BIT8, { "BIT8, TU8/RU8 Contribution", "asterix.020_400_BIT8", FT_UINT8, BASE_DEC, VALS (valstr_020_400_BIT8), 0x01, NULL, HFILL } },
+ { &hf_020_500, { "500, Position Accuracy", "asterix.020_500", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_500_DOP, { "DOP, DOP of Position", "asterix.020_500_DOP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_500_DOP_X, { "X, DOP (X-Component)", "asterix.020_500_DOP_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_500_DOP_Y, { "Y, DOP (Y-Component)", "asterix.020_500_DOP_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_500_DOP_XY, { "XY, DOP (Correlation XY)", "asterix.020_500_DOP_XY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_500_SDP, { "SDP, Standard Deviation of Position", "asterix.020_500_SDP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_500_SDP_X, { "X, SDP (X-Component), [m]", "asterix.020_500_SDP_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_500_SDP_Y, { "Y, SDP (Y-Component), [m]", "asterix.020_500_SDP_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_500_SDP_XY, { "XY, SDP (Correlation XY)", "asterix.020_500_SDP_XY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_500_SDH, { "SDH, Standard Deviation of Geometric Height (WGS 84)", "asterix.020_500_SDH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_500_SDH_VALUE, { "Standard Deviation of Geometric Height (WGS 84), [m]", "asterix.020_500_SDH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_RE, { "RE, Reserved Expansion Field", "asterix.020_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_020_SP, { "SP, Special Purpose Field", "asterix.020_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_010, { "010, Data Source Identification", "asterix.021_V0_23_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_010_SAC, { "SAC, System Area Code", "asterix.021_V0_23_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_010_SIC, { "SIC, System Identification Code", "asterix.021_V0_23_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_020, { "020, Emitter Category", "asterix.021_V0_23_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_020_VALUE, { "Emitter Category", "asterix.021_V0_23_020_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_020_VALUE), 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_030, { "030, Time of Day", "asterix.021_V0_23_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_030_VALUE, { "Time of Day, [s]", "asterix.021_V0_23_030_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_032, { "032, Time of Day Accuracy", "asterix.021_V0_23_032", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_032_VALUE, { "Time of Day Accuracy, [s]", "asterix.021_V0_23_032_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_040, { "040, Target Report Descriptor", "asterix.021_V0_23_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_040_DCR, { "DCR, Differential Correction", "asterix.021_V0_23_040_DCR", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_040_DCR), 0x80, NULL, HFILL } },
+ { &hf_021_V0_23_040_GBS, { "GBS, Ground Bit Setting", "asterix.021_V0_23_040_GBS", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_040_GBS), 0x40, NULL, HFILL } },
+ { &hf_021_V0_23_040_SIM, { "SIM, Simulated Target", "asterix.021_V0_23_040_SIM", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_040_SIM), 0x20, NULL, HFILL } },
+ { &hf_021_V0_23_040_TST, { "TST, Test Target", "asterix.021_V0_23_040_TST", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_040_TST), 0x10, NULL, HFILL } },
+ { &hf_021_V0_23_040_RAB, { "RAB, Report Type", "asterix.021_V0_23_040_RAB", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_040_RAB), 0x08, NULL, HFILL } },
+ { &hf_021_V0_23_040_SAA, { "SAA, Selected Altitude Available", "asterix.021_V0_23_040_SAA", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_040_SAA), 0x04, NULL, HFILL } },
+ { &hf_021_V0_23_040_SPI, { "SPI, Special Position Identification", "asterix.021_V0_23_040_SPI", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_040_SPI), 0x02, NULL, HFILL } },
+ { &hf_021_V0_23_040_ATP, { "ATP, Address Type", "asterix.021_V0_23_040_ATP", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_040_ATP), 0xe0, NULL, HFILL } },
+ { &hf_021_V0_23_040_ARC, { "ARC, Altitude Reporting Capability", "asterix.021_V0_23_040_ARC", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_040_ARC), 0x18, NULL, HFILL } },
+ { &hf_021_V0_23_080, { "080, Target Address", "asterix.021_V0_23_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_080_VALUE, { "Target Address", "asterix.021_V0_23_080_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_090, { "090, Figure of Merit", "asterix.021_V0_23_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_090_AC, { "AC, ACAS Capabilities", "asterix.021_V0_23_090_AC", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_090_AC), 0xc0, NULL, HFILL } },
+ { &hf_021_V0_23_090_MN, { "MN, Multiple Navigation Aids", "asterix.021_V0_23_090_MN", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_090_MN), 0x30, NULL, HFILL } },
+ { &hf_021_V0_23_090_DC, { "DC, Differencial Correction", "asterix.021_V0_23_090_DC", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_090_DC), 0x0c, NULL, HFILL } },
+ { &hf_021_V0_23_090_PA, { "PA, Position Accuracy", "asterix.021_V0_23_090_PA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_095, { "095, Velocity Accuracy", "asterix.021_V0_23_095", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_095_VALUE, { "Velocity Accuracy", "asterix.021_V0_23_095_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_110, { "110, Trajectory Intent", "asterix.021_V0_23_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_110_TIS, { "TIS, Trajectory Intent Status", "asterix.021_V0_23_110_TIS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_110_TIS_NAV, { "NAV", "asterix.021_V0_23_110_TIS_NAV", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_110_TIS_NAV), 0x80, NULL, HFILL } },
+ { &hf_021_V0_23_110_TIS_NVB, { "NVB", "asterix.021_V0_23_110_TIS_NVB", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_110_TIS_NVB), 0x40, NULL, HFILL } },
+ { &hf_021_V0_23_110_TID, { "TID, Trajectory Intent Data", "asterix.021_V0_23_110_TID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_110_TID_TCA, { "TCA", "asterix.021_V0_23_110_TID_TCA", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_110_TID_TCA), 0x80, NULL, HFILL } },
+ { &hf_021_V0_23_110_TID_NC, { "NC", "asterix.021_V0_23_110_TID_NC", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_110_TID_NC), 0x40, NULL, HFILL } },
+ { &hf_021_V0_23_110_TID_TCPN, { "TCPN", "asterix.021_V0_23_110_TID_TCPN", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_021_V0_23_110_TID_ALT, { "ALT, Altitude in Two's Complement Form, [ft]", "asterix.021_V0_23_110_TID_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_110_TID_LAT, { "LAT, In WGS.84 in Two's Complement, [°]", "asterix.021_V0_23_110_TID_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_110_TID_LON, { "LON, In WGS.84 in Two's Complement, [°]", "asterix.021_V0_23_110_TID_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_110_TID_PT, { "PT, Point Type", "asterix.021_V0_23_110_TID_PT", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_110_TID_PT), 0xf0, NULL, HFILL } },
+ { &hf_021_V0_23_110_TID_TD, { "TD", "asterix.021_V0_23_110_TID_TD", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_110_TID_TD), 0x0c, NULL, HFILL } },
+ { &hf_021_V0_23_110_TID_TRA, { "TRA", "asterix.021_V0_23_110_TID_TRA", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_110_TID_TRA), 0x02, NULL, HFILL } },
+ { &hf_021_V0_23_110_TID_TOA, { "TOA", "asterix.021_V0_23_110_TID_TOA", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_110_TID_TOA), 0x01, NULL, HFILL } },
+ { &hf_021_V0_23_110_TID_TOV, { "TOV, Time Over Point, [s]", "asterix.021_V0_23_110_TID_TOV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_110_TID_TTR, { "TTR, TCP Turn Radius, [NM]", "asterix.021_V0_23_110_TID_TTR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_130, { "130, Position in WGS-84 Co-ordinates", "asterix.021_V0_23_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_130_LAT, { "LAT, Latitude, [°]", "asterix.021_V0_23_130_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_130_LON, { "LON, Longitude, [°]", "asterix.021_V0_23_130_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_140, { "140, Geometric Altitude", "asterix.021_V0_23_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_140_VALUE, { "Geometric Altitude, [ft]", "asterix.021_V0_23_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_145, { "145, Flight Level", "asterix.021_V0_23_145", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_145_VALUE, { "Flight Level, [FL]", "asterix.021_V0_23_145_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_146, { "146, Intermediate State Selected Altitude", "asterix.021_V0_23_146", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_146_SAS, { "SAS, Source Availability", "asterix.021_V0_23_146_SAS", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_146_SAS), 0x80, NULL, HFILL } },
+ { &hf_021_V0_23_146_SRC, { "SRC, Source", "asterix.021_V0_23_146_SRC", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_146_SRC), 0x60, NULL, HFILL } },
+ { &hf_021_V0_23_146_ALT, { "ALT, Altitude, [ft]", "asterix.021_V0_23_146_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_148, { "148, Final State Selected Altitude", "asterix.021_V0_23_148", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_148_MV, { "MV, Manage Vertical Mode", "asterix.021_V0_23_148_MV", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_148_MV), 0x80, NULL, HFILL } },
+ { &hf_021_V0_23_148_AH, { "AH, Altitude Hold Mode", "asterix.021_V0_23_148_AH", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_148_AH), 0x40, NULL, HFILL } },
+ { &hf_021_V0_23_148_AM, { "AM, Approach Mode", "asterix.021_V0_23_148_AM", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_148_AM), 0x20, NULL, HFILL } },
+ { &hf_021_V0_23_148_ALT, { "ALT, Altitude, [ft]", "asterix.021_V0_23_148_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_150, { "150, Air Speed", "asterix.021_V0_23_150", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_150_IM, { "IM", "asterix.021_V0_23_150_IM", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_150_IM), 0x80, NULL, HFILL } },
+ { &hf_021_V0_23_150_AS, { "AS, Air Speed (IAS or Mach)", "asterix.021_V0_23_150_AS", FT_UINT16, BASE_DEC, NULL, 0x7fff, NULL, HFILL } },
+ { &hf_021_V0_23_151, { "151, True Airspeed", "asterix.021_V0_23_151", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_151_VALUE, { "True Airspeed, [kt]", "asterix.021_V0_23_151_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_152, { "152, Magnetic Heading", "asterix.021_V0_23_152", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_152_VALUE, { "Magnetic Heading, [°]", "asterix.021_V0_23_152_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_155, { "155, Barometric Vertical Rate", "asterix.021_V0_23_155", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_155_VALUE, { "Barometric Vertical Rate, [ft/min]", "asterix.021_V0_23_155_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_157, { "157, Geometric Vertical Rate", "asterix.021_V0_23_157", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_157_VALUE, { "Geometric Vertical Rate, [ft/min]", "asterix.021_V0_23_157_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_160, { "160, Ground Vector", "asterix.021_V0_23_160", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_160_GS, { "GS, Ground Speed in Two's Complement Form Referenced to WGS84, [NM/s]", "asterix.021_V0_23_160_GS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_160_TA, { "TA, Track Angle, [°]", "asterix.021_V0_23_160_TA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_165, { "165, Rate Of Turn", "asterix.021_V0_23_165", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_165_TI, { "TI, Turn Indicator", "asterix.021_V0_23_165_TI", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_165_TI), 0xc0, NULL, HFILL } },
+ { &hf_021_V0_23_165_ROT, { "ROT, Rate of Turn, [°/s]", "asterix.021_V0_23_165_ROT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_170, { "170, Target Identification", "asterix.021_V0_23_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_170_VALUE, { "Target Identification", "asterix.021_V0_23_170_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_200, { "200, Target Status", "asterix.021_V0_23_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_200_VALUE, { "Target Status", "asterix.021_V0_23_200_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_200_VALUE), 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_210, { "210, Link Technology Indicator", "asterix.021_V0_23_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_210_DTI, { "DTI, Cockpit Display of Traffic Information", "asterix.021_V0_23_210_DTI", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_210_DTI), 0x10, NULL, HFILL } },
+ { &hf_021_V0_23_210_MDS, { "MDS, Mode-S Extended Squitter", "asterix.021_V0_23_210_MDS", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_210_MDS), 0x08, NULL, HFILL } },
+ { &hf_021_V0_23_210_UAT, { "UAT, UAT", "asterix.021_V0_23_210_UAT", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_210_UAT), 0x04, NULL, HFILL } },
+ { &hf_021_V0_23_210_VDL, { "VDL, VDL Mode 4", "asterix.021_V0_23_210_VDL", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_210_VDL), 0x02, NULL, HFILL } },
+ { &hf_021_V0_23_210_OTR, { "OTR, Other Technology", "asterix.021_V0_23_210_OTR", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_23_210_OTR), 0x01, NULL, HFILL } },
+ { &hf_021_V0_23_220, { "220, Met Information", "asterix.021_V0_23_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_220_WS, { "WS, Wind Speed", "asterix.021_V0_23_220_WS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_220_WS_VALUE, { "Wind Speed, [kt]", "asterix.021_V0_23_220_WS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_220_WD, { "WD, Wind Direction", "asterix.021_V0_23_220_WD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_220_WD_VALUE, { "Wind Direction, [°]", "asterix.021_V0_23_220_WD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_220_TMP, { "TMP, Temperature", "asterix.021_V0_23_220_TMP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_220_TMP_VALUE, { "Temperature, [°C]", "asterix.021_V0_23_220_TMP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_220_TRB, { "TRB, Turbulence", "asterix.021_V0_23_220_TRB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_220_TRB_VALUE, { "Turbulence", "asterix.021_V0_23_220_TRB_VALUE", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_230, { "230, Roll Angle", "asterix.021_V0_23_230", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_230_VALUE, { "Roll Angle, [°]", "asterix.021_V0_23_230_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_RE, { "RE, Reserved Expansion Field", "asterix.021_V0_23_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_23_SP, { "SP, Special Purpose Field", "asterix.021_V0_23_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_010, { "010, Data Source Identification", "asterix.021_V0_24_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_010_SAC, { "SAC, System Area Code", "asterix.021_V0_24_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_010_SIC, { "SIC, System Identification Code", "asterix.021_V0_24_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_020, { "020, Emitter Category", "asterix.021_V0_24_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_020_VALUE, { "Emitter Category", "asterix.021_V0_24_020_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_020_VALUE), 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_030, { "030, Time of Day", "asterix.021_V0_24_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_030_VALUE, { "Time of Day, [s]", "asterix.021_V0_24_030_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_032, { "032, Time of Day Accuracy", "asterix.021_V0_24_032", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_032_VALUE, { "Time of Day Accuracy, [s]", "asterix.021_V0_24_032_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_040, { "040, Target Report Descriptor", "asterix.021_V0_24_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_040_DCR, { "DCR, Differential Correction", "asterix.021_V0_24_040_DCR", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_040_DCR), 0x80, NULL, HFILL } },
+ { &hf_021_V0_24_040_GBS, { "GBS, Ground Bit Setting", "asterix.021_V0_24_040_GBS", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_040_GBS), 0x40, NULL, HFILL } },
+ { &hf_021_V0_24_040_SIM, { "SIM, Simulated Target", "asterix.021_V0_24_040_SIM", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_040_SIM), 0x20, NULL, HFILL } },
+ { &hf_021_V0_24_040_TST, { "TST, Test Target", "asterix.021_V0_24_040_TST", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_040_TST), 0x10, NULL, HFILL } },
+ { &hf_021_V0_24_040_RAB, { "RAB, Report Type", "asterix.021_V0_24_040_RAB", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_040_RAB), 0x08, NULL, HFILL } },
+ { &hf_021_V0_24_040_SAA, { "SAA, Selected Altitude Available", "asterix.021_V0_24_040_SAA", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_040_SAA), 0x04, NULL, HFILL } },
+ { &hf_021_V0_24_040_SPI, { "SPI, Special Position Identification", "asterix.021_V0_24_040_SPI", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_040_SPI), 0x02, NULL, HFILL } },
+ { &hf_021_V0_24_040_ATP, { "ATP, Address Type", "asterix.021_V0_24_040_ATP", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_040_ATP), 0xe0, NULL, HFILL } },
+ { &hf_021_V0_24_040_ARC, { "ARC, Altitude Reporting Capability", "asterix.021_V0_24_040_ARC", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_040_ARC), 0x18, NULL, HFILL } },
+ { &hf_021_V0_24_080, { "080, Target Address", "asterix.021_V0_24_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_080_VALUE, { "Target Address", "asterix.021_V0_24_080_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_090, { "090, Figure of Merit", "asterix.021_V0_24_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_090_AC, { "AC, ACAS Capabilities", "asterix.021_V0_24_090_AC", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_090_AC), 0xc0, NULL, HFILL } },
+ { &hf_021_V0_24_090_MN, { "MN, Multiple Navigation Aids", "asterix.021_V0_24_090_MN", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_090_MN), 0x30, NULL, HFILL } },
+ { &hf_021_V0_24_090_DC, { "DC, Differencial Correction", "asterix.021_V0_24_090_DC", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_090_DC), 0x0c, NULL, HFILL } },
+ { &hf_021_V0_24_090_PA, { "PA, Position Accuracy", "asterix.021_V0_24_090_PA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_095, { "095, Velocity Accuracy", "asterix.021_V0_24_095", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_095_VALUE, { "Velocity Accuracy", "asterix.021_V0_24_095_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_110, { "110, Trajectory Intent", "asterix.021_V0_24_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_110_TIS, { "TIS, Trajectory Intent Status", "asterix.021_V0_24_110_TIS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_110_TIS_NAV, { "NAV", "asterix.021_V0_24_110_TIS_NAV", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_110_TIS_NAV), 0x80, NULL, HFILL } },
+ { &hf_021_V0_24_110_TIS_NVB, { "NVB", "asterix.021_V0_24_110_TIS_NVB", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_110_TIS_NVB), 0x40, NULL, HFILL } },
+ { &hf_021_V0_24_110_TID, { "TID, Trajectory Intent Data", "asterix.021_V0_24_110_TID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_110_TID_TCA, { "TCA", "asterix.021_V0_24_110_TID_TCA", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_110_TID_TCA), 0x80, NULL, HFILL } },
+ { &hf_021_V0_24_110_TID_NC, { "NC", "asterix.021_V0_24_110_TID_NC", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_110_TID_NC), 0x40, NULL, HFILL } },
+ { &hf_021_V0_24_110_TID_TCPN, { "TCPN", "asterix.021_V0_24_110_TID_TCPN", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_021_V0_24_110_TID_ALT, { "ALT, Altitude in Two's Complement Form, [ft]", "asterix.021_V0_24_110_TID_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_110_TID_LAT, { "LAT, In WGS.84 in Two's Complement, [°]", "asterix.021_V0_24_110_TID_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_110_TID_LON, { "LON, In WGS.84 in Two's Complement, [°]", "asterix.021_V0_24_110_TID_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_110_TID_PT, { "PT, Point Type", "asterix.021_V0_24_110_TID_PT", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_110_TID_PT), 0xf0, NULL, HFILL } },
+ { &hf_021_V0_24_110_TID_TD, { "TD", "asterix.021_V0_24_110_TID_TD", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_110_TID_TD), 0x0c, NULL, HFILL } },
+ { &hf_021_V0_24_110_TID_TRA, { "TRA", "asterix.021_V0_24_110_TID_TRA", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_110_TID_TRA), 0x02, NULL, HFILL } },
+ { &hf_021_V0_24_110_TID_TOA, { "TOA", "asterix.021_V0_24_110_TID_TOA", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_110_TID_TOA), 0x01, NULL, HFILL } },
+ { &hf_021_V0_24_110_TID_TOV, { "TOV, Time Over Point, [s]", "asterix.021_V0_24_110_TID_TOV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_110_TID_TTR, { "TTR, TCP Turn Radius, [NM]", "asterix.021_V0_24_110_TID_TTR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_130, { "130, Position in WGS-84 Co-ordinates", "asterix.021_V0_24_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_130_LAT, { "LAT, Latitude, [°]", "asterix.021_V0_24_130_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_130_LON, { "LON, Longitude, [°]", "asterix.021_V0_24_130_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_140, { "140, Geometric Altitude", "asterix.021_V0_24_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_140_VALUE, { "Geometric Altitude, [ft]", "asterix.021_V0_24_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_145, { "145, Flight Level", "asterix.021_V0_24_145", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_145_VALUE, { "Flight Level, [FL]", "asterix.021_V0_24_145_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_146, { "146, Intermediate State Selected Altitude", "asterix.021_V0_24_146", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_146_SAS, { "SAS, Source Availability", "asterix.021_V0_24_146_SAS", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_146_SAS), 0x80, NULL, HFILL } },
+ { &hf_021_V0_24_146_SRC, { "SRC, Source", "asterix.021_V0_24_146_SRC", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_146_SRC), 0x60, NULL, HFILL } },
+ { &hf_021_V0_24_146_ALT, { "ALT, Altitude, [ft]", "asterix.021_V0_24_146_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_148, { "148, Final State Selected Altitude", "asterix.021_V0_24_148", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_148_MV, { "MV, Manage Vertical Mode", "asterix.021_V0_24_148_MV", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_148_MV), 0x80, NULL, HFILL } },
+ { &hf_021_V0_24_148_AH, { "AH, Altitude Hold Mode", "asterix.021_V0_24_148_AH", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_148_AH), 0x40, NULL, HFILL } },
+ { &hf_021_V0_24_148_AM, { "AM, Approach Mode", "asterix.021_V0_24_148_AM", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_148_AM), 0x20, NULL, HFILL } },
+ { &hf_021_V0_24_148_ALT, { "ALT, Altitude, [ft]", "asterix.021_V0_24_148_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_150, { "150, Air Speed", "asterix.021_V0_24_150", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_150_IM, { "IM", "asterix.021_V0_24_150_IM", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_150_IM), 0x80, NULL, HFILL } },
+ { &hf_021_V0_24_150_AS, { "AS, Air Speed (IAS or Mach)", "asterix.021_V0_24_150_AS", FT_UINT16, BASE_DEC, NULL, 0x7fff, NULL, HFILL } },
+ { &hf_021_V0_24_151, { "151, True Airspeed", "asterix.021_V0_24_151", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_151_VALUE, { "True Airspeed, [kt]", "asterix.021_V0_24_151_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_152, { "152, Magnetic Heading", "asterix.021_V0_24_152", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_152_VALUE, { "Magnetic Heading, [°]", "asterix.021_V0_24_152_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_155, { "155, Barometric Vertical Rate", "asterix.021_V0_24_155", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_155_VALUE, { "Barometric Vertical Rate, [ft/min]", "asterix.021_V0_24_155_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_157, { "157, Geometric Vertical Rate", "asterix.021_V0_24_157", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_157_VALUE, { "Geometric Vertical Rate, [ft/min]", "asterix.021_V0_24_157_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_160, { "160, Ground Vector", "asterix.021_V0_24_160", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_160_GS, { "GS, Ground Speed in Two's Complement Form Referenced to WGS84, [NM/s]", "asterix.021_V0_24_160_GS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_160_TA, { "TA, Track Angle, [°]", "asterix.021_V0_24_160_TA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_165, { "165, Rate Of Turn", "asterix.021_V0_24_165", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_165_TI, { "TI, Turn Indicator", "asterix.021_V0_24_165_TI", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_165_TI), 0xc0, NULL, HFILL } },
+ { &hf_021_V0_24_165_ROT, { "ROT, Rate of Turn, [°/s]", "asterix.021_V0_24_165_ROT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_170, { "170, Target Identification", "asterix.021_V0_24_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_170_VALUE, { "Target Identification", "asterix.021_V0_24_170_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_200, { "200, Target Status", "asterix.021_V0_24_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_200_VALUE, { "Target Status", "asterix.021_V0_24_200_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_200_VALUE), 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_210, { "210, Link Technology Indicator", "asterix.021_V0_24_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_210_DTI, { "DTI, Cockpit Display of Traffic Information", "asterix.021_V0_24_210_DTI", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_210_DTI), 0x10, NULL, HFILL } },
+ { &hf_021_V0_24_210_MDS, { "MDS, Mode-S Extended Squitter", "asterix.021_V0_24_210_MDS", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_210_MDS), 0x08, NULL, HFILL } },
+ { &hf_021_V0_24_210_UAT, { "UAT, UAT", "asterix.021_V0_24_210_UAT", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_210_UAT), 0x04, NULL, HFILL } },
+ { &hf_021_V0_24_210_VDL, { "VDL, VDL Mode 4", "asterix.021_V0_24_210_VDL", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_210_VDL), 0x02, NULL, HFILL } },
+ { &hf_021_V0_24_210_OTR, { "OTR, Other Technology", "asterix.021_V0_24_210_OTR", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_24_210_OTR), 0x01, NULL, HFILL } },
+ { &hf_021_V0_24_220, { "220, Met Information", "asterix.021_V0_24_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_220_WS, { "WS, Wind Speed", "asterix.021_V0_24_220_WS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_220_WS_VALUE, { "Wind Speed, [kt]", "asterix.021_V0_24_220_WS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_220_WD, { "WD, Wind Direction", "asterix.021_V0_24_220_WD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_220_WD_VALUE, { "Wind Direction, [°]", "asterix.021_V0_24_220_WD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_220_TMP, { "TMP, Temperature", "asterix.021_V0_24_220_TMP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_220_TMP_VALUE, { "Temperature, [°C]", "asterix.021_V0_24_220_TMP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_220_TRB, { "TRB, Turbulence", "asterix.021_V0_24_220_TRB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_220_TRB_VALUE, { "Turbulence", "asterix.021_V0_24_220_TRB_VALUE", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_230, { "230, Roll Angle", "asterix.021_V0_24_230", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_230_VALUE, { "Roll Angle, [°]", "asterix.021_V0_24_230_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_RE, { "RE, Reserved Expansion Field", "asterix.021_V0_24_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_24_SP, { "SP, Special Purpose Field", "asterix.021_V0_24_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_010, { "010, Data Source Identification", "asterix.021_V0_25_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_010_SAC, { "SAC, System Area Code", "asterix.021_V0_25_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_010_SIC, { "SIC, System Identification Code", "asterix.021_V0_25_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_020, { "020, Emitter Category", "asterix.021_V0_25_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_020_VALUE, { "Emitter Category", "asterix.021_V0_25_020_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_020_VALUE), 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_030, { "030, Time of Day", "asterix.021_V0_25_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_030_VALUE, { "Time of Day, [s]", "asterix.021_V0_25_030_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_032, { "032, Time of Day Accuracy", "asterix.021_V0_25_032", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_032_VALUE, { "Time of Day Accuracy, [s]", "asterix.021_V0_25_032_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_040, { "040, Target Report Descriptor", "asterix.021_V0_25_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_040_DCR, { "DCR, Differential Correction", "asterix.021_V0_25_040_DCR", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_040_DCR), 0x80, NULL, HFILL } },
+ { &hf_021_V0_25_040_GBS, { "GBS, Ground Bit Setting", "asterix.021_V0_25_040_GBS", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_040_GBS), 0x40, NULL, HFILL } },
+ { &hf_021_V0_25_040_SIM, { "SIM, Simulated Target", "asterix.021_V0_25_040_SIM", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_040_SIM), 0x20, NULL, HFILL } },
+ { &hf_021_V0_25_040_TST, { "TST, Test Target", "asterix.021_V0_25_040_TST", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_040_TST), 0x10, NULL, HFILL } },
+ { &hf_021_V0_25_040_RAB, { "RAB, Report Type", "asterix.021_V0_25_040_RAB", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_040_RAB), 0x08, NULL, HFILL } },
+ { &hf_021_V0_25_040_SAA, { "SAA, Selected Altitude Available", "asterix.021_V0_25_040_SAA", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_040_SAA), 0x04, NULL, HFILL } },
+ { &hf_021_V0_25_040_SPI, { "SPI, Special Position Identification", "asterix.021_V0_25_040_SPI", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_040_SPI), 0x02, NULL, HFILL } },
+ { &hf_021_V0_25_040_ATP, { "ATP, Address Type", "asterix.021_V0_25_040_ATP", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_040_ATP), 0xe0, NULL, HFILL } },
+ { &hf_021_V0_25_040_ARC, { "ARC, Altitude Reporting Capability", "asterix.021_V0_25_040_ARC", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_040_ARC), 0x18, NULL, HFILL } },
+ { &hf_021_V0_25_080, { "080, Target Address", "asterix.021_V0_25_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_080_VALUE, { "Target Address", "asterix.021_V0_25_080_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_090, { "090, Figure of Merit", "asterix.021_V0_25_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_090_AC, { "AC, ACAS Capabilities", "asterix.021_V0_25_090_AC", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_090_AC), 0xc0, NULL, HFILL } },
+ { &hf_021_V0_25_090_MN, { "MN, Multiple Navigation Aids", "asterix.021_V0_25_090_MN", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_090_MN), 0x30, NULL, HFILL } },
+ { &hf_021_V0_25_090_DC, { "DC, Differencial Correction", "asterix.021_V0_25_090_DC", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_090_DC), 0x0c, NULL, HFILL } },
+ { &hf_021_V0_25_090_PA, { "PA, Position Accuracy", "asterix.021_V0_25_090_PA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_095, { "095, Velocity Accuracy", "asterix.021_V0_25_095", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_095_VALUE, { "Velocity Accuracy", "asterix.021_V0_25_095_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_110, { "110, Trajectory Intent", "asterix.021_V0_25_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_110_TIS, { "TIS, Trajectory Intent Status", "asterix.021_V0_25_110_TIS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_110_TIS_NAV, { "NAV", "asterix.021_V0_25_110_TIS_NAV", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_110_TIS_NAV), 0x80, NULL, HFILL } },
+ { &hf_021_V0_25_110_TIS_NVB, { "NVB", "asterix.021_V0_25_110_TIS_NVB", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_110_TIS_NVB), 0x40, NULL, HFILL } },
+ { &hf_021_V0_25_110_TID, { "TID, Trajectory Intent Data", "asterix.021_V0_25_110_TID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_110_TID_TCA, { "TCA", "asterix.021_V0_25_110_TID_TCA", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_110_TID_TCA), 0x80, NULL, HFILL } },
+ { &hf_021_V0_25_110_TID_NC, { "NC", "asterix.021_V0_25_110_TID_NC", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_110_TID_NC), 0x40, NULL, HFILL } },
+ { &hf_021_V0_25_110_TID_TCPN, { "TCPN", "asterix.021_V0_25_110_TID_TCPN", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_021_V0_25_110_TID_ALT, { "ALT, Altitude in Two's Complement Form, [ft]", "asterix.021_V0_25_110_TID_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_110_TID_LAT, { "LAT, In WGS.84 in Two's Complement, [°]", "asterix.021_V0_25_110_TID_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_110_TID_LON, { "LON, In WGS.84 in Two's Complement, [°]", "asterix.021_V0_25_110_TID_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_110_TID_PT, { "PT, Point Type", "asterix.021_V0_25_110_TID_PT", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_110_TID_PT), 0xf0, NULL, HFILL } },
+ { &hf_021_V0_25_110_TID_TD, { "TD", "asterix.021_V0_25_110_TID_TD", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_110_TID_TD), 0x0c, NULL, HFILL } },
+ { &hf_021_V0_25_110_TID_TRA, { "TRA", "asterix.021_V0_25_110_TID_TRA", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_110_TID_TRA), 0x02, NULL, HFILL } },
+ { &hf_021_V0_25_110_TID_TOA, { "TOA", "asterix.021_V0_25_110_TID_TOA", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_110_TID_TOA), 0x01, NULL, HFILL } },
+ { &hf_021_V0_25_110_TID_TOV, { "TOV, Time Over Point, [s]", "asterix.021_V0_25_110_TID_TOV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_110_TID_TTR, { "TTR, TCP Turn Radius, [NM]", "asterix.021_V0_25_110_TID_TTR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_130, { "130, Position in WGS-84 Co-ordinates", "asterix.021_V0_25_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_130_LAT, { "LAT, Latitude, [°]", "asterix.021_V0_25_130_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_130_LON, { "LON, Longitude, [°]", "asterix.021_V0_25_130_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_140, { "140, Geometric Altitude", "asterix.021_V0_25_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_140_VALUE, { "Geometric Altitude, [ft]", "asterix.021_V0_25_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_145, { "145, Flight Level", "asterix.021_V0_25_145", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_145_VALUE, { "Flight Level, [FL]", "asterix.021_V0_25_145_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_146, { "146, Intermediate State Selected Altitude", "asterix.021_V0_25_146", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_146_SAS, { "SAS, Source Availability", "asterix.021_V0_25_146_SAS", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_146_SAS), 0x80, NULL, HFILL } },
+ { &hf_021_V0_25_146_SRC, { "SRC, Source", "asterix.021_V0_25_146_SRC", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_146_SRC), 0x60, NULL, HFILL } },
+ { &hf_021_V0_25_146_ALT, { "ALT, Altitude, [ft]", "asterix.021_V0_25_146_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_148, { "148, Final State Selected Altitude", "asterix.021_V0_25_148", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_148_MV, { "MV, Manage Vertical Mode", "asterix.021_V0_25_148_MV", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_148_MV), 0x80, NULL, HFILL } },
+ { &hf_021_V0_25_148_AH, { "AH, Altitude Hold Mode", "asterix.021_V0_25_148_AH", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_148_AH), 0x40, NULL, HFILL } },
+ { &hf_021_V0_25_148_AM, { "AM, Approach Mode", "asterix.021_V0_25_148_AM", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_148_AM), 0x20, NULL, HFILL } },
+ { &hf_021_V0_25_148_ALT, { "ALT, Altitude, [ft]", "asterix.021_V0_25_148_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_150, { "150, Air Speed", "asterix.021_V0_25_150", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_150_IM, { "IM", "asterix.021_V0_25_150_IM", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_150_IM), 0x80, NULL, HFILL } },
+ { &hf_021_V0_25_150_AS, { "AS, Air Speed (IAS or Mach)", "asterix.021_V0_25_150_AS", FT_UINT16, BASE_DEC, NULL, 0x7fff, NULL, HFILL } },
+ { &hf_021_V0_25_151, { "151, True Airspeed", "asterix.021_V0_25_151", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_151_VALUE, { "True Airspeed, [kt]", "asterix.021_V0_25_151_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_152, { "152, Magnetic Heading", "asterix.021_V0_25_152", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_152_VALUE, { "Magnetic Heading, [°]", "asterix.021_V0_25_152_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_155, { "155, Barometric Vertical Rate", "asterix.021_V0_25_155", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_155_VALUE, { "Barometric Vertical Rate, [ft/min]", "asterix.021_V0_25_155_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_157, { "157, Geometric Vertical Rate", "asterix.021_V0_25_157", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_157_VALUE, { "Geometric Vertical Rate, [ft/min]", "asterix.021_V0_25_157_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_160, { "160, Ground Vector", "asterix.021_V0_25_160", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_160_GS, { "GS, Ground Speed in Two's Complement Form Referenced to WGS84, [NM/s]", "asterix.021_V0_25_160_GS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_160_TA, { "TA, Track Angle, [°]", "asterix.021_V0_25_160_TA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_165, { "165, Rate Of Turn", "asterix.021_V0_25_165", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_165_TI, { "TI, Turn Indicator", "asterix.021_V0_25_165_TI", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_165_TI), 0xc0, NULL, HFILL } },
+ { &hf_021_V0_25_165_ROT, { "ROT, Rate of Turn, [°/s]", "asterix.021_V0_25_165_ROT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_170, { "170, Target Identification", "asterix.021_V0_25_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_170_VALUE, { "Target Identification", "asterix.021_V0_25_170_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_200, { "200, Target Status", "asterix.021_V0_25_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_200_VALUE, { "Target Status", "asterix.021_V0_25_200_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_200_VALUE), 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_210, { "210, Link Technology Indicator", "asterix.021_V0_25_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_210_DTI, { "DTI, Cockpit Display of Traffic Information", "asterix.021_V0_25_210_DTI", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_210_DTI), 0x10, NULL, HFILL } },
+ { &hf_021_V0_25_210_MDS, { "MDS, Mode-S Extended Squitter", "asterix.021_V0_25_210_MDS", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_210_MDS), 0x08, NULL, HFILL } },
+ { &hf_021_V0_25_210_UAT, { "UAT, UAT", "asterix.021_V0_25_210_UAT", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_210_UAT), 0x04, NULL, HFILL } },
+ { &hf_021_V0_25_210_VDL, { "VDL, VDL Mode 4", "asterix.021_V0_25_210_VDL", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_210_VDL), 0x02, NULL, HFILL } },
+ { &hf_021_V0_25_210_OTR, { "OTR, Other Technology", "asterix.021_V0_25_210_OTR", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_25_210_OTR), 0x01, NULL, HFILL } },
+ { &hf_021_V0_25_220, { "220, Met Information", "asterix.021_V0_25_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_220_WS, { "WS, Wind Speed", "asterix.021_V0_25_220_WS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_220_WS_VALUE, { "Wind Speed, [kt]", "asterix.021_V0_25_220_WS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_220_WD, { "WD, Wind Direction", "asterix.021_V0_25_220_WD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_220_WD_VALUE, { "Wind Direction, [°]", "asterix.021_V0_25_220_WD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_220_TMP, { "TMP, Temperature", "asterix.021_V0_25_220_TMP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_220_TMP_VALUE, { "Temperature, [°C]", "asterix.021_V0_25_220_TMP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_220_TRB, { "TRB, Turbulence", "asterix.021_V0_25_220_TRB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_220_TRB_VALUE, { "Turbulence", "asterix.021_V0_25_220_TRB_VALUE", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_230, { "230, Roll Angle", "asterix.021_V0_25_230", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_230_VALUE, { "Roll Angle, [°]", "asterix.021_V0_25_230_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_RE, { "RE, Reserved Expansion Field", "asterix.021_V0_25_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_25_SP, { "SP, Special Purpose Field", "asterix.021_V0_25_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_010, { "010, Data Source Identification", "asterix.021_V0_26_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_010_SAC, { "SAC, System Area Code", "asterix.021_V0_26_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_010_SIC, { "SIC, System Identification Code", "asterix.021_V0_26_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_020, { "020, Emitter Category", "asterix.021_V0_26_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_020_VALUE, { "Emitter Category", "asterix.021_V0_26_020_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_020_VALUE), 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_030, { "030, Time of Day", "asterix.021_V0_26_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_030_VALUE, { "Time of Day, [s]", "asterix.021_V0_26_030_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_032, { "032, Time of Day Accuracy", "asterix.021_V0_26_032", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_032_VALUE, { "Time of Day Accuracy, [s]", "asterix.021_V0_26_032_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_040, { "040, Target Report Descriptor", "asterix.021_V0_26_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_040_DCR, { "DCR, Differential Correction", "asterix.021_V0_26_040_DCR", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_040_DCR), 0x80, NULL, HFILL } },
+ { &hf_021_V0_26_040_GBS, { "GBS, Ground Bit Setting", "asterix.021_V0_26_040_GBS", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_040_GBS), 0x40, NULL, HFILL } },
+ { &hf_021_V0_26_040_SIM, { "SIM, Simulated Target", "asterix.021_V0_26_040_SIM", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_040_SIM), 0x20, NULL, HFILL } },
+ { &hf_021_V0_26_040_TST, { "TST, Test Target", "asterix.021_V0_26_040_TST", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_040_TST), 0x10, NULL, HFILL } },
+ { &hf_021_V0_26_040_RAB, { "RAB, Report Type", "asterix.021_V0_26_040_RAB", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_040_RAB), 0x08, NULL, HFILL } },
+ { &hf_021_V0_26_040_SAA, { "SAA, Selected Altitude Available", "asterix.021_V0_26_040_SAA", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_040_SAA), 0x04, NULL, HFILL } },
+ { &hf_021_V0_26_040_SPI, { "SPI, Special Position Identification", "asterix.021_V0_26_040_SPI", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_040_SPI), 0x02, NULL, HFILL } },
+ { &hf_021_V0_26_040_ATP, { "ATP, Address Type", "asterix.021_V0_26_040_ATP", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_040_ATP), 0xe0, NULL, HFILL } },
+ { &hf_021_V0_26_040_ARC, { "ARC, Altitude Reporting Capability", "asterix.021_V0_26_040_ARC", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_040_ARC), 0x18, NULL, HFILL } },
+ { &hf_021_V0_26_070, { "070, Mode 3/A Code in Octal Representation", "asterix.021_V0_26_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_070_V, { "V", "asterix.021_V0_26_070_V", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_070_V), 0x80, NULL, HFILL } },
+ { &hf_021_V0_26_070_G, { "G", "asterix.021_V0_26_070_G", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_070_G), 0x40, NULL, HFILL } },
+ { &hf_021_V0_26_070_L, { "L", "asterix.021_V0_26_070_L", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_070_L), 0x20, NULL, HFILL } },
+ { &hf_021_V0_26_070_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.021_V0_26_070_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_021_V0_26_080, { "080, Target Address", "asterix.021_V0_26_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_080_VALUE, { "Target Address", "asterix.021_V0_26_080_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_090, { "090, Figure of Merit", "asterix.021_V0_26_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_090_AC, { "AC, ACAS Capabilities", "asterix.021_V0_26_090_AC", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_090_AC), 0xc0, NULL, HFILL } },
+ { &hf_021_V0_26_090_MN, { "MN, Multiple Navigation Aids", "asterix.021_V0_26_090_MN", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_090_MN), 0x30, NULL, HFILL } },
+ { &hf_021_V0_26_090_DC, { "DC, Differencial Correction", "asterix.021_V0_26_090_DC", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_090_DC), 0x0c, NULL, HFILL } },
+ { &hf_021_V0_26_090_PA, { "PA, Position Accuracy", "asterix.021_V0_26_090_PA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_095, { "095, Velocity Accuracy", "asterix.021_V0_26_095", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_095_VALUE, { "Velocity Accuracy", "asterix.021_V0_26_095_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_110, { "110, Trajectory Intent", "asterix.021_V0_26_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_110_TIS, { "TIS, Trajectory Intent Status", "asterix.021_V0_26_110_TIS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_110_TIS_NAV, { "NAV", "asterix.021_V0_26_110_TIS_NAV", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_110_TIS_NAV), 0x80, NULL, HFILL } },
+ { &hf_021_V0_26_110_TIS_NVB, { "NVB", "asterix.021_V0_26_110_TIS_NVB", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_110_TIS_NVB), 0x40, NULL, HFILL } },
+ { &hf_021_V0_26_110_TID, { "TID, Trajectory Intent Data", "asterix.021_V0_26_110_TID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_110_TID_TCA, { "TCA", "asterix.021_V0_26_110_TID_TCA", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_110_TID_TCA), 0x80, NULL, HFILL } },
+ { &hf_021_V0_26_110_TID_NC, { "NC", "asterix.021_V0_26_110_TID_NC", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_110_TID_NC), 0x40, NULL, HFILL } },
+ { &hf_021_V0_26_110_TID_TCPN, { "TCPN", "asterix.021_V0_26_110_TID_TCPN", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_021_V0_26_110_TID_ALT, { "ALT, Altitude in Two's Complement Form, [ft]", "asterix.021_V0_26_110_TID_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_110_TID_LAT, { "LAT, In WGS.84 in Two's Complement, [°]", "asterix.021_V0_26_110_TID_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_110_TID_LON, { "LON, In WGS.84 in Two's Complement, [°]", "asterix.021_V0_26_110_TID_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_110_TID_PT, { "PT, Point Type", "asterix.021_V0_26_110_TID_PT", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_110_TID_PT), 0xf0, NULL, HFILL } },
+ { &hf_021_V0_26_110_TID_TD, { "TD", "asterix.021_V0_26_110_TID_TD", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_110_TID_TD), 0x0c, NULL, HFILL } },
+ { &hf_021_V0_26_110_TID_TRA, { "TRA", "asterix.021_V0_26_110_TID_TRA", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_110_TID_TRA), 0x02, NULL, HFILL } },
+ { &hf_021_V0_26_110_TID_TOA, { "TOA", "asterix.021_V0_26_110_TID_TOA", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_110_TID_TOA), 0x01, NULL, HFILL } },
+ { &hf_021_V0_26_110_TID_TOV, { "TOV, Time Over Point, [s]", "asterix.021_V0_26_110_TID_TOV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_110_TID_TTR, { "TTR, TCP Turn Radius, [NM]", "asterix.021_V0_26_110_TID_TTR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_130, { "130, Position in WGS-84 Co-ordinates", "asterix.021_V0_26_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_130_LAT, { "LAT, Latitude, [°]", "asterix.021_V0_26_130_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_130_LON, { "LON, Longitude, [°]", "asterix.021_V0_26_130_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_131, { "131, Signal Amplitude", "asterix.021_V0_26_131", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_131_VALUE, { "Signal Amplitude", "asterix.021_V0_26_131_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_140, { "140, Geometric Altitude", "asterix.021_V0_26_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_140_VALUE, { "Geometric Altitude, [ft]", "asterix.021_V0_26_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_145, { "145, Flight Level", "asterix.021_V0_26_145", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_145_VALUE, { "Flight Level, [FL]", "asterix.021_V0_26_145_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_146, { "146, Intermediate State Selected Altitude", "asterix.021_V0_26_146", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_146_SAS, { "SAS, Source Availability", "asterix.021_V0_26_146_SAS", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_146_SAS), 0x80, NULL, HFILL } },
+ { &hf_021_V0_26_146_SRC, { "SRC, Source", "asterix.021_V0_26_146_SRC", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_146_SRC), 0x60, NULL, HFILL } },
+ { &hf_021_V0_26_146_ALT, { "ALT, Altitude, [ft]", "asterix.021_V0_26_146_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_148, { "148, Final State Selected Altitude", "asterix.021_V0_26_148", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_148_MV, { "MV, Manage Vertical Mode", "asterix.021_V0_26_148_MV", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_148_MV), 0x80, NULL, HFILL } },
+ { &hf_021_V0_26_148_AH, { "AH, Altitude Hold Mode", "asterix.021_V0_26_148_AH", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_148_AH), 0x40, NULL, HFILL } },
+ { &hf_021_V0_26_148_AM, { "AM, Approach Mode", "asterix.021_V0_26_148_AM", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_148_AM), 0x20, NULL, HFILL } },
+ { &hf_021_V0_26_148_ALT, { "ALT, Altitude, [ft]", "asterix.021_V0_26_148_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_150, { "150, Air Speed", "asterix.021_V0_26_150", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_150_IM, { "IM", "asterix.021_V0_26_150_IM", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_150_IM), 0x80, NULL, HFILL } },
+ { &hf_021_V0_26_150_AS, { "AS, Air Speed (IAS or Mach)", "asterix.021_V0_26_150_AS", FT_UINT16, BASE_DEC, NULL, 0x7fff, NULL, HFILL } },
+ { &hf_021_V0_26_151, { "151, True Airspeed", "asterix.021_V0_26_151", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_151_VALUE, { "True Airspeed, [kt]", "asterix.021_V0_26_151_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_152, { "152, Magnetic Heading", "asterix.021_V0_26_152", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_152_VALUE, { "Magnetic Heading, [°]", "asterix.021_V0_26_152_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_155, { "155, Barometric Vertical Rate", "asterix.021_V0_26_155", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_155_VALUE, { "Barometric Vertical Rate, [ft/min]", "asterix.021_V0_26_155_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_157, { "157, Geometric Vertical Rate", "asterix.021_V0_26_157", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_157_VALUE, { "Geometric Vertical Rate, [ft/min]", "asterix.021_V0_26_157_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_160, { "160, Ground Vector", "asterix.021_V0_26_160", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_160_GS, { "GS, Ground Speed in Two's Complement Form Referenced to WGS84, [NM/s]", "asterix.021_V0_26_160_GS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_160_TA, { "TA, Track Angle, [°]", "asterix.021_V0_26_160_TA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_165, { "165, Rate Of Turn", "asterix.021_V0_26_165", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_165_TI, { "TI, Turn Indicator", "asterix.021_V0_26_165_TI", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_165_TI), 0xc0, NULL, HFILL } },
+ { &hf_021_V0_26_165_ROT, { "ROT, Rate of Turn, [°/s]", "asterix.021_V0_26_165_ROT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_170, { "170, Target Identification", "asterix.021_V0_26_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_170_VALUE, { "Target Identification", "asterix.021_V0_26_170_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_200, { "200, Target Status", "asterix.021_V0_26_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_200_VALUE, { "Target Status", "asterix.021_V0_26_200_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_200_VALUE), 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_210, { "210, Link Technology Indicator", "asterix.021_V0_26_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_210_DTI, { "DTI, Cockpit Display of Traffic Information", "asterix.021_V0_26_210_DTI", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_210_DTI), 0x10, NULL, HFILL } },
+ { &hf_021_V0_26_210_MDS, { "MDS, Mode-S Extended Squitter", "asterix.021_V0_26_210_MDS", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_210_MDS), 0x08, NULL, HFILL } },
+ { &hf_021_V0_26_210_UAT, { "UAT, UAT", "asterix.021_V0_26_210_UAT", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_210_UAT), 0x04, NULL, HFILL } },
+ { &hf_021_V0_26_210_VDL, { "VDL, VDL Mode 4", "asterix.021_V0_26_210_VDL", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_210_VDL), 0x02, NULL, HFILL } },
+ { &hf_021_V0_26_210_OTR, { "OTR, Other Technology", "asterix.021_V0_26_210_OTR", FT_UINT8, BASE_DEC, VALS (valstr_021_V0_26_210_OTR), 0x01, NULL, HFILL } },
+ { &hf_021_V0_26_220, { "220, Met Information", "asterix.021_V0_26_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_220_WS, { "WS, Wind Speed", "asterix.021_V0_26_220_WS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_220_WS_VALUE, { "Wind Speed, [kt]", "asterix.021_V0_26_220_WS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_220_WD, { "WD, Wind Direction", "asterix.021_V0_26_220_WD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_220_WD_VALUE, { "Wind Direction, [°]", "asterix.021_V0_26_220_WD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_220_TMP, { "TMP, Temperature", "asterix.021_V0_26_220_TMP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_220_TMP_VALUE, { "Temperature, [°C]", "asterix.021_V0_26_220_TMP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_220_TRB, { "TRB, Turbulence", "asterix.021_V0_26_220_TRB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_220_TRB_VALUE, { "Turbulence", "asterix.021_V0_26_220_TRB_VALUE", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_230, { "230, Roll Angle", "asterix.021_V0_26_230", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_230_VALUE, { "Roll Angle, [°]", "asterix.021_V0_26_230_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_RE, { "RE, Reserved Expansion Field", "asterix.021_V0_26_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V0_26_SP, { "SP, Special Purpose Field", "asterix.021_V0_26_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_008, { "008, Aircraft Operational Status", "asterix.021_V2_2_008", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_008_RA, { "RA, TCAS Resolution Advisory Active", "asterix.021_V2_2_008_RA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_008_RA), 0x80, NULL, HFILL } },
+ { &hf_021_V2_2_008_TC, { "TC, Target Trajectory Change Report Capability", "asterix.021_V2_2_008_TC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_008_TC), 0x60, NULL, HFILL } },
+ { &hf_021_V2_2_008_TS, { "TS, Target State Report Capability", "asterix.021_V2_2_008_TS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_008_TS), 0x10, NULL, HFILL } },
+ { &hf_021_V2_2_008_ARV, { "ARV, Air-Referenced Velocity Report Capability", "asterix.021_V2_2_008_ARV", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_008_ARV), 0x08, NULL, HFILL } },
+ { &hf_021_V2_2_008_CDTIA, { "CDTIA, Cockpit Display of Traffic Information Airborne", "asterix.021_V2_2_008_CDTIA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_008_CDTIA), 0x04, NULL, HFILL } },
+ { &hf_021_V2_2_008_NOTTCAS, { "NOTTCAS, TCAS System Status", "asterix.021_V2_2_008_NOTTCAS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_008_NOTTCAS), 0x02, NULL, HFILL } },
+ { &hf_021_V2_2_008_SA, { "SA, Single Antenna", "asterix.021_V2_2_008_SA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_008_SA), 0x01, NULL, HFILL } },
+ { &hf_021_V2_2_010, { "010, Data Source Identification", "asterix.021_V2_2_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_010_SAC, { "SAC, System Area Code", "asterix.021_V2_2_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_010_SIC, { "SIC, System Identification Code", "asterix.021_V2_2_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_015, { "015, Service Identification", "asterix.021_V2_2_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_015_VALUE, { "Service Identification", "asterix.021_V2_2_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_016, { "016, Service Management", "asterix.021_V2_2_016", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_016_VALUE, { "Service Management, [s]", "asterix.021_V2_2_016_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_020, { "020, Emitter Category", "asterix.021_V2_2_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_020_VALUE, { "Emitter Category", "asterix.021_V2_2_020_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_020_VALUE), 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_040, { "040, Target Report Descriptor", "asterix.021_V2_2_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_040_ATP, { "ATP, Address Type", "asterix.021_V2_2_040_ATP", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_040_ATP), 0xe0, NULL, HFILL } },
+ { &hf_021_V2_2_040_ARC, { "ARC, Altitude Reporting Capability", "asterix.021_V2_2_040_ARC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_040_ARC), 0x18, NULL, HFILL } },
+ { &hf_021_V2_2_040_RC, { "RC, Range Check", "asterix.021_V2_2_040_RC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_040_RC), 0x04, NULL, HFILL } },
+ { &hf_021_V2_2_040_RAB, { "RAB, Report Type", "asterix.021_V2_2_040_RAB", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_040_RAB), 0x02, NULL, HFILL } },
+ { &hf_021_V2_2_040_DCR, { "DCR, Differential Correction", "asterix.021_V2_2_040_DCR", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_040_DCR), 0x80, NULL, HFILL } },
+ { &hf_021_V2_2_040_GBS, { "GBS, Ground Bit Setting", "asterix.021_V2_2_040_GBS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_040_GBS), 0x40, NULL, HFILL } },
+ { &hf_021_V2_2_040_SIM, { "SIM, Simulated Target", "asterix.021_V2_2_040_SIM", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_040_SIM), 0x20, NULL, HFILL } },
+ { &hf_021_V2_2_040_TST, { "TST, Test Target", "asterix.021_V2_2_040_TST", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_040_TST), 0x10, NULL, HFILL } },
+ { &hf_021_V2_2_040_SAA, { "SAA, Selected Altitude Available", "asterix.021_V2_2_040_SAA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_040_SAA), 0x08, NULL, HFILL } },
+ { &hf_021_V2_2_040_CL, { "CL, Confidence Level", "asterix.021_V2_2_040_CL", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_040_CL), 0x06, NULL, HFILL } },
+ { &hf_021_V2_2_040_IPC, { "IPC, Independent Position Check", "asterix.021_V2_2_040_IPC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_040_IPC), 0x20, NULL, HFILL } },
+ { &hf_021_V2_2_040_NOGO, { "NOGO, No-go Bit Status", "asterix.021_V2_2_040_NOGO", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_040_NOGO), 0x10, NULL, HFILL } },
+ { &hf_021_V2_2_040_CPR, { "CPR, Compact Position Reporting", "asterix.021_V2_2_040_CPR", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_040_CPR), 0x08, NULL, HFILL } },
+ { &hf_021_V2_2_040_LDPJ, { "LDPJ, Local Decoding Position Jump", "asterix.021_V2_2_040_LDPJ", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_040_LDPJ), 0x04, NULL, HFILL } },
+ { &hf_021_V2_2_040_RCF, { "RCF, Range Check", "asterix.021_V2_2_040_RCF", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_040_RCF), 0x02, NULL, HFILL } },
+ { &hf_021_V2_2_070, { "070, Mode 3/A Code in Octal Representation", "asterix.021_V2_2_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_070_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.021_V2_2_070_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_021_V2_2_071, { "071, Time of Applicability for Position", "asterix.021_V2_2_071", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_071_VALUE, { "Time of Applicability for Position, [s]", "asterix.021_V2_2_071_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_072, { "072, Time of Applicability for Velocity", "asterix.021_V2_2_072", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_072_VALUE, { "Time of Applicability for Velocity, [s]", "asterix.021_V2_2_072_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_073, { "073, Time of Message Reception for Position", "asterix.021_V2_2_073", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_073_VALUE, { "Time of Message Reception for Position, [s]", "asterix.021_V2_2_073_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_074, { "074, Time of Message Reception of Position-High Precision", "asterix.021_V2_2_074", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_074_FSI, { "FSI, Full Second Indication", "asterix.021_V2_2_074_FSI", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_074_FSI), 0xc0, NULL, HFILL } },
+ { &hf_021_V2_2_074_TOMRP, { "TOMRP, Fractional Part of the Time of Message Reception for Position in the Ground Station, [s]", "asterix.021_V2_2_074_TOMRP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_075, { "075, Time of Message Reception for Velocity", "asterix.021_V2_2_075", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_075_VALUE, { "Time of Message Reception for Velocity, [s]", "asterix.021_V2_2_075_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_076, { "076, Time of Message Reception of Velocity-High Precision", "asterix.021_V2_2_076", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_076_FSI, { "FSI, Full Second Indication", "asterix.021_V2_2_076_FSI", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_076_FSI), 0xc0, NULL, HFILL } },
+ { &hf_021_V2_2_076_TOMRP, { "TOMRP, Fractional Part of the Time of Message Reception for Position in the Ground Station, [s]", "asterix.021_V2_2_076_TOMRP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_077, { "077, Time of ASTERIX Report Transmission", "asterix.021_V2_2_077", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_077_VALUE, { "Time of ASTERIX Report Transmission, [s]", "asterix.021_V2_2_077_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_080, { "080, Target Address", "asterix.021_V2_2_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_080_VALUE, { "Target Address", "asterix.021_V2_2_080_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_090, { "090, Quality Indicators", "asterix.021_V2_2_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_090_NUCRNACV, { "NUCRNACV, Navigation Uncertainty Category for Velocity NUCr or the Navigation Accuracy Category for Velocity NACv", "asterix.021_V2_2_090_NUCRNACV", FT_UINT8, BASE_DEC, NULL, 0xe0, NULL, HFILL } },
+ { &hf_021_V2_2_090_NUCPNIC, { "NUCPNIC, Navigation Uncertainty Category for Position NUCp or Navigation Integrity Category NIC", "asterix.021_V2_2_090_NUCPNIC", FT_UINT8, BASE_DEC, NULL, 0x1e, NULL, HFILL } },
+ { &hf_021_V2_2_090_NICBARO, { "NICBARO, Navigation Integrity Category for Barometric Altitude", "asterix.021_V2_2_090_NICBARO", FT_UINT8, BASE_DEC, NULL, 0x80, NULL, HFILL } },
+ { &hf_021_V2_2_090_SIL, { "SIL, Surveillance (version 1) or Source (version 2) Integrity Level", "asterix.021_V2_2_090_SIL", FT_UINT8, BASE_DEC, NULL, 0x60, NULL, HFILL } },
+ { &hf_021_V2_2_090_NACP, { "NACP, Navigation Accuracy Category for Position", "asterix.021_V2_2_090_NACP", FT_UINT8, BASE_DEC, NULL, 0x1e, NULL, HFILL } },
+ { &hf_021_V2_2_090_SILS, { "SILS, SIL-Supplement", "asterix.021_V2_2_090_SILS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_090_SILS), 0x20, NULL, HFILL } },
+ { &hf_021_V2_2_090_SDA, { "SDA, Horizontal Position System Design Assurance Level (as Defined in Version 2)", "asterix.021_V2_2_090_SDA", FT_UINT8, BASE_DEC, NULL, 0x18, NULL, HFILL } },
+ { &hf_021_V2_2_090_GVA, { "GVA, Geometric Altitude Accuracy", "asterix.021_V2_2_090_GVA", FT_UINT8, BASE_DEC, NULL, 0x06, NULL, HFILL } },
+ { &hf_021_V2_2_090_PIC, { "PIC, Position Integrity Category", "asterix.021_V2_2_090_PIC", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_021_V2_2_110, { "110, Trajectory Intent", "asterix.021_V2_2_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_110_TIS, { "TIS, Trajectory Intent Status", "asterix.021_V2_2_110_TIS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_110_TIS_NAV, { "NAV", "asterix.021_V2_2_110_TIS_NAV", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_110_TIS_NAV), 0x80, NULL, HFILL } },
+ { &hf_021_V2_2_110_TIS_NVB, { "NVB", "asterix.021_V2_2_110_TIS_NVB", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_110_TIS_NVB), 0x40, NULL, HFILL } },
+ { &hf_021_V2_2_110_TID, { "TID, Trajectory Intent Data", "asterix.021_V2_2_110_TID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_110_TID_TCA, { "TCA", "asterix.021_V2_2_110_TID_TCA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_110_TID_TCA), 0x80, NULL, HFILL } },
+ { &hf_021_V2_2_110_TID_NC, { "NC", "asterix.021_V2_2_110_TID_NC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_110_TID_NC), 0x40, NULL, HFILL } },
+ { &hf_021_V2_2_110_TID_TCPN, { "TCPN", "asterix.021_V2_2_110_TID_TCPN", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_021_V2_2_110_TID_ALT, { "ALT, Altitude in Two's Complement Form, [ft]", "asterix.021_V2_2_110_TID_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_110_TID_LAT, { "LAT, In WGS.84 in Two's Complement, [°]", "asterix.021_V2_2_110_TID_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_110_TID_LON, { "LON, In WGS.84 in Two's Complement, [°]", "asterix.021_V2_2_110_TID_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_110_TID_PT, { "PT, Point Type", "asterix.021_V2_2_110_TID_PT", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_110_TID_PT), 0xf0, NULL, HFILL } },
+ { &hf_021_V2_2_110_TID_TD, { "TD", "asterix.021_V2_2_110_TID_TD", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_110_TID_TD), 0x0c, NULL, HFILL } },
+ { &hf_021_V2_2_110_TID_TRA, { "TRA", "asterix.021_V2_2_110_TID_TRA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_110_TID_TRA), 0x02, NULL, HFILL } },
+ { &hf_021_V2_2_110_TID_TOA, { "TOA", "asterix.021_V2_2_110_TID_TOA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_110_TID_TOA), 0x01, NULL, HFILL } },
+ { &hf_021_V2_2_110_TID_TOV, { "TOV, Time Over Point, [s]", "asterix.021_V2_2_110_TID_TOV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_110_TID_TTR, { "TTR, TCP Turn Radius, [NM]", "asterix.021_V2_2_110_TID_TTR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_130, { "130, Position in WGS-84 Co-ordinates", "asterix.021_V2_2_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_130_LAT, { "LAT, Latitude, [°]", "asterix.021_V2_2_130_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_130_LON, { "LON, Longitude, [°]", "asterix.021_V2_2_130_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_131, { "131, High-Resolution Position in WGS-84 Co-ordinates", "asterix.021_V2_2_131", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_131_LAT, { "LAT, Latitude, [°]", "asterix.021_V2_2_131_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_131_LON, { "LON, Longitude, [°]", "asterix.021_V2_2_131_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_132, { "132, Message Amplitude", "asterix.021_V2_2_132", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_132_VALUE, { "Message Amplitude, [dBm]", "asterix.021_V2_2_132_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_140, { "140, Geometric Height", "asterix.021_V2_2_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_140_VALUE, { "Geometric Height, [ft]", "asterix.021_V2_2_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_145, { "145, Flight Level", "asterix.021_V2_2_145", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_145_VALUE, { "Flight Level, [FL]", "asterix.021_V2_2_145_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_146, { "146, Selected Altitude", "asterix.021_V2_2_146", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_146_SAS, { "SAS, Source Availability", "asterix.021_V2_2_146_SAS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_146_SAS), 0x80, NULL, HFILL } },
+ { &hf_021_V2_2_146_S, { "S, Source", "asterix.021_V2_2_146_S", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_146_S), 0x60, NULL, HFILL } },
+ { &hf_021_V2_2_146_ALT, { "ALT, Altitude, [ft]", "asterix.021_V2_2_146_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_148, { "148, Final State Selected Altitude", "asterix.021_V2_2_148", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_148_MV, { "MV, Manage Vertical Mode", "asterix.021_V2_2_148_MV", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_148_MV), 0x80, NULL, HFILL } },
+ { &hf_021_V2_2_148_AH, { "AH, Altitude Hold Mode", "asterix.021_V2_2_148_AH", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_148_AH), 0x40, NULL, HFILL } },
+ { &hf_021_V2_2_148_AM, { "AM, Approach Mode", "asterix.021_V2_2_148_AM", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_148_AM), 0x20, NULL, HFILL } },
+ { &hf_021_V2_2_148_ALT, { "ALT, Altitude, [ft]", "asterix.021_V2_2_148_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_150, { "150, Air Speed", "asterix.021_V2_2_150", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_150_IM, { "IM", "asterix.021_V2_2_150_IM", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_150_IM), 0x80, NULL, HFILL } },
+ { &hf_021_V2_2_150_AS, { "AS, Air Speed (IAS or Mach)", "asterix.021_V2_2_150_AS", FT_UINT16, BASE_DEC, NULL, 0x7fff, NULL, HFILL } },
+ { &hf_021_V2_2_151, { "151, True Airspeed", "asterix.021_V2_2_151", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_151_RE, { "RE, Range Exceeded Indicator", "asterix.021_V2_2_151_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_151_RE), 0x80, NULL, HFILL } },
+ { &hf_021_V2_2_151_TAS, { "TAS, True Air Speed, [kt]", "asterix.021_V2_2_151_TAS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_152, { "152, Magnetic Heading", "asterix.021_V2_2_152", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_152_VALUE, { "Magnetic Heading, [°]", "asterix.021_V2_2_152_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_155, { "155, Barometric Vertical Rate", "asterix.021_V2_2_155", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_155_RE, { "RE, Range Exceeded Indicator", "asterix.021_V2_2_155_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_155_RE), 0x80, NULL, HFILL } },
+ { &hf_021_V2_2_155_BVR, { "BVR, Barometric Vertical Rate, [ft/min]", "asterix.021_V2_2_155_BVR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_157, { "157, Geometric Vertical Rate", "asterix.021_V2_2_157", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_157_RE, { "RE, Range Exceeded Indicator", "asterix.021_V2_2_157_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_157_RE), 0x80, NULL, HFILL } },
+ { &hf_021_V2_2_157_GVR, { "GVR, Geometric Vertical Rate, [ft/min]", "asterix.021_V2_2_157_GVR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_160, { "160, Airborne Ground Vector", "asterix.021_V2_2_160", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_160_RE, { "RE, Range Exceeded Indicator", "asterix.021_V2_2_160_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_160_RE), 0x80, NULL, HFILL } },
+ { &hf_021_V2_2_160_GS, { "GS, Ground Speed Referenced to WGS-84, [NM/s]", "asterix.021_V2_2_160_GS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_160_TA, { "TA, Track Angle Clockwise Reference to True North, [°]", "asterix.021_V2_2_160_TA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_161, { "161, Track Number", "asterix.021_V2_2_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_161_TRNUM, { "TRNUM, Track Number", "asterix.021_V2_2_161_TRNUM", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_021_V2_2_165, { "165, Track Angle Rate", "asterix.021_V2_2_165", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_165_TAR, { "TAR, Track Angle Rate, [°/s]", "asterix.021_V2_2_165_TAR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_170, { "170, Target Identification", "asterix.021_V2_2_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_170_VALUE, { "Target Identification", "asterix.021_V2_2_170_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_200, { "200, Target Status", "asterix.021_V2_2_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_200_ICF, { "ICF, Intent Change Flag (see Note)", "asterix.021_V2_2_200_ICF", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_200_ICF), 0x80, NULL, HFILL } },
+ { &hf_021_V2_2_200_LNAV, { "LNAV, LNAV Mode", "asterix.021_V2_2_200_LNAV", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_200_LNAV), 0x40, NULL, HFILL } },
+ { &hf_021_V2_2_200_ME, { "ME, Military Emergency", "asterix.021_V2_2_200_ME", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_200_ME), 0x20, NULL, HFILL } },
+ { &hf_021_V2_2_200_PS, { "PS, Priority Status", "asterix.021_V2_2_200_PS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_200_PS), 0x1c, NULL, HFILL } },
+ { &hf_021_V2_2_200_SS, { "SS, Surveillance Status", "asterix.021_V2_2_200_SS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_200_SS), 0x03, NULL, HFILL } },
+ { &hf_021_V2_2_210, { "210, MOPS Version", "asterix.021_V2_2_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_210_VNS, { "VNS, Version Not Supported", "asterix.021_V2_2_210_VNS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_210_VNS), 0x40, NULL, HFILL } },
+ { &hf_021_V2_2_210_VN, { "VN, Version Number", "asterix.021_V2_2_210_VN", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_210_VN), 0x38, NULL, HFILL } },
+ { &hf_021_V2_2_210_LTT, { "LTT, Link Technology Type", "asterix.021_V2_2_210_LTT", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_210_LTT), 0x07, NULL, HFILL } },
+ { &hf_021_V2_2_220, { "220, Met Information", "asterix.021_V2_2_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_220_WS, { "WS, Wind Speed", "asterix.021_V2_2_220_WS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_220_WS_VALUE, { "Wind Speed, [kt]", "asterix.021_V2_2_220_WS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_220_WD, { "WD, Wind Direction", "asterix.021_V2_2_220_WD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_220_WD_VALUE, { "Wind Direction, [°]", "asterix.021_V2_2_220_WD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_220_TMP, { "TMP, Temperature", "asterix.021_V2_2_220_TMP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_220_TMP_VALUE, { "Temperature, [°C]", "asterix.021_V2_2_220_TMP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_220_TRB, { "TRB, Turbulence", "asterix.021_V2_2_220_TRB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_220_TRB_VALUE, { "Turbulence", "asterix.021_V2_2_220_TRB_VALUE", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_230, { "230, Roll Angle", "asterix.021_V2_2_230", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_230_VALUE, { "Roll Angle, [°]", "asterix.021_V2_2_230_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_250, { "250, Mode S MB Data", "asterix.021_V2_2_250", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_250_VALUE, { "Mode S MB Data", "asterix.021_V2_2_250_VALUE", FT_UINT64, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_260, { "260, ACAS Resolution Advisory Report", "asterix.021_V2_2_260", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_260_TYP, { "TYP, Message Type (= 28 for 1090 ES, Version 2)", "asterix.021_V2_2_260_TYP", FT_UINT8, BASE_DEC, NULL, 0xf8, NULL, HFILL } },
+ { &hf_021_V2_2_260_STYP, { "STYP, Message Sub-type (= 2 for 1090 ES, Version 2)", "asterix.021_V2_2_260_STYP", FT_UINT8, BASE_DEC, NULL, 0x07, NULL, HFILL } },
+ { &hf_021_V2_2_260_ARA, { "ARA, Active Resolution Advisories", "asterix.021_V2_2_260_ARA", FT_UINT16, BASE_DEC, NULL, 0xfffc, NULL, HFILL } },
+ { &hf_021_V2_2_260_RAC, { "RAC, RAC (RA Complement) Record", "asterix.021_V2_2_260_RAC", FT_UINT16, BASE_DEC, NULL, 0x03c0, NULL, HFILL } },
+ { &hf_021_V2_2_260_RAT, { "RAT, RA Terminated", "asterix.021_V2_2_260_RAT", FT_UINT8, BASE_DEC, NULL, 0x20, NULL, HFILL } },
+ { &hf_021_V2_2_260_MTE, { "MTE, Multiple Threat Encounter", "asterix.021_V2_2_260_MTE", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_021_V2_2_260_TTI, { "TTI, Threat Type Indicator", "asterix.021_V2_2_260_TTI", FT_UINT8, BASE_DEC, NULL, 0x0c, NULL, HFILL } },
+ { &hf_021_V2_2_260_TID, { "TID, Threat Identity Data", "asterix.021_V2_2_260_TID", FT_UINT32, BASE_DEC, NULL, 0x03ffffff, NULL, HFILL } },
+ { &hf_021_V2_2_271, { "271, Surface Capabilities and Characteristics", "asterix.021_V2_2_271", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_271_POA, { "POA, Position Offset Applied", "asterix.021_V2_2_271_POA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_271_POA), 0x20, NULL, HFILL } },
+ { &hf_021_V2_2_271_CDTIS, { "CDTIS, Cockpit Display of Traffic Information Surface", "asterix.021_V2_2_271_CDTIS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_271_CDTIS), 0x10, NULL, HFILL } },
+ { &hf_021_V2_2_271_B2LOW, { "B2LOW, Class B2 Transmit Power Less Than 70 Watts", "asterix.021_V2_2_271_B2LOW", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_271_B2LOW), 0x08, NULL, HFILL } },
+ { &hf_021_V2_2_271_RAS, { "RAS, Receiving ATC Services", "asterix.021_V2_2_271_RAS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_271_RAS), 0x04, NULL, HFILL } },
+ { &hf_021_V2_2_271_IDENT, { "IDENT, Setting of IDENT Switch", "asterix.021_V2_2_271_IDENT", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_2_271_IDENT), 0x02, NULL, HFILL } },
+ { &hf_021_V2_2_271_LW, { "LW, Length and Width of the Aircraft", "asterix.021_V2_2_271_LW", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_021_V2_2_295, { "295, Data Ages", "asterix.021_V2_2_295", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_AOS, { "AOS, Aircraft Operational Status Age", "asterix.021_V2_2_295_AOS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_AOS_VALUE, { "Aircraft Operational Status Age, [s]", "asterix.021_V2_2_295_AOS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_TRD, { "TRD, Target Report Descriptor Age", "asterix.021_V2_2_295_TRD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_TRD_VALUE, { "Target Report Descriptor Age, [s]", "asterix.021_V2_2_295_TRD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_M3A, { "M3A, Mode 3/A Age", "asterix.021_V2_2_295_M3A", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_M3A_VALUE, { "Mode 3/A Age, [s]", "asterix.021_V2_2_295_M3A_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_QI, { "QI, Quality Indicators Age", "asterix.021_V2_2_295_QI", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_QI_VALUE, { "Quality Indicators Age, [s]", "asterix.021_V2_2_295_QI_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_TI1, { "TI1, Trajectory Intent Age", "asterix.021_V2_2_295_TI1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_TI1_VALUE, { "Trajectory Intent Age, [s]", "asterix.021_V2_2_295_TI1_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_MAM, { "MAM, Message Amplitude Age", "asterix.021_V2_2_295_MAM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_MAM_VALUE, { "Message Amplitude Age, [s]", "asterix.021_V2_2_295_MAM_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_GH, { "GH, Geometric Height Age", "asterix.021_V2_2_295_GH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_GH_VALUE, { "Geometric Height Age, [s]", "asterix.021_V2_2_295_GH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_FL, { "FL, Flight Level Age", "asterix.021_V2_2_295_FL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_FL_VALUE, { "Flight Level Age, [s]", "asterix.021_V2_2_295_FL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_ISA, { "ISA, Intermediate State Selected Altitude Age", "asterix.021_V2_2_295_ISA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_ISA_VALUE, { "Intermediate State Selected Altitude Age, [s]", "asterix.021_V2_2_295_ISA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_FSA, { "FSA, Final State Selected Altitude Age", "asterix.021_V2_2_295_FSA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_FSA_VALUE, { "Final State Selected Altitude Age, [s]", "asterix.021_V2_2_295_FSA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_AS, { "AS, Air Speed Age", "asterix.021_V2_2_295_AS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_AS_VALUE, { "Air Speed Age, [s]", "asterix.021_V2_2_295_AS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_TAS, { "TAS, True Air Speed Age", "asterix.021_V2_2_295_TAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_TAS_VALUE, { "True Air Speed Age, [s]", "asterix.021_V2_2_295_TAS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_MH, { "MH, Magnetic Heading Age", "asterix.021_V2_2_295_MH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_MH_VALUE, { "Magnetic Heading Age, [s]", "asterix.021_V2_2_295_MH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_BVR, { "BVR, Barometric Vertical Rate Age", "asterix.021_V2_2_295_BVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_BVR_VALUE, { "Barometric Vertical Rate Age, [s]", "asterix.021_V2_2_295_BVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_GVR, { "GVR, Geometric Vertical Rate Age", "asterix.021_V2_2_295_GVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_GVR_VALUE, { "Geometric Vertical Rate Age, [s]", "asterix.021_V2_2_295_GVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_GV, { "GV, Ground Vector Age", "asterix.021_V2_2_295_GV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_GV_VALUE, { "Ground Vector Age, [s]", "asterix.021_V2_2_295_GV_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_TAR, { "TAR, Track Angle Rate Age", "asterix.021_V2_2_295_TAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_TAR_VALUE, { "Track Angle Rate Age, [s]", "asterix.021_V2_2_295_TAR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_TI2, { "TI2, Target Identification Age", "asterix.021_V2_2_295_TI2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_TI2_VALUE, { "Target Identification Age, [s]", "asterix.021_V2_2_295_TI2_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_TS, { "TS, Target Status Age", "asterix.021_V2_2_295_TS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_TS_VALUE, { "Target Status Age, [s]", "asterix.021_V2_2_295_TS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_MET, { "MET, Met Information Age", "asterix.021_V2_2_295_MET", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_MET_VALUE, { "Met Information Age, [s]", "asterix.021_V2_2_295_MET_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_ROA, { "ROA, Roll Angle Age", "asterix.021_V2_2_295_ROA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_ROA_VALUE, { "Roll Angle Age, [s]", "asterix.021_V2_2_295_ROA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_ARA, { "ARA, ACAS Resolution Advisory Age", "asterix.021_V2_2_295_ARA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_ARA_VALUE, { "ACAS Resolution Advisory Age, [s]", "asterix.021_V2_2_295_ARA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_SCC, { "SCC, Surface Capabilities and Characteristics Age", "asterix.021_V2_2_295_SCC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_295_SCC_VALUE, { "Surface Capabilities and Characteristics Age, [s]", "asterix.021_V2_2_295_SCC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_400, { "400, Receiver ID", "asterix.021_V2_2_400", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_400_VALUE, { "Receiver ID", "asterix.021_V2_2_400_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_RE, { "RE, Reserved Expansion Field", "asterix.021_V2_2_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_2_SP, { "SP, Special Purpose Field", "asterix.021_V2_2_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_008, { "008, Aircraft Operational Status", "asterix.021_V2_3_008", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_008_RA, { "RA, TCAS Resolution Advisory Active", "asterix.021_V2_3_008_RA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_008_RA), 0x80, NULL, HFILL } },
+ { &hf_021_V2_3_008_TC, { "TC, Target Trajectory Change Report Capability", "asterix.021_V2_3_008_TC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_008_TC), 0x60, NULL, HFILL } },
+ { &hf_021_V2_3_008_TS, { "TS, Target State Report Capability", "asterix.021_V2_3_008_TS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_008_TS), 0x10, NULL, HFILL } },
+ { &hf_021_V2_3_008_ARV, { "ARV, Air-Referenced Velocity Report Capability", "asterix.021_V2_3_008_ARV", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_008_ARV), 0x08, NULL, HFILL } },
+ { &hf_021_V2_3_008_CDTIA, { "CDTIA, Cockpit Display of Traffic Information Airborne", "asterix.021_V2_3_008_CDTIA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_008_CDTIA), 0x04, NULL, HFILL } },
+ { &hf_021_V2_3_008_NOTTCAS, { "NOTTCAS, TCAS System Status", "asterix.021_V2_3_008_NOTTCAS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_008_NOTTCAS), 0x02, NULL, HFILL } },
+ { &hf_021_V2_3_008_SA, { "SA, Single Antenna", "asterix.021_V2_3_008_SA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_008_SA), 0x01, NULL, HFILL } },
+ { &hf_021_V2_3_010, { "010, Data Source Identification", "asterix.021_V2_3_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_010_SAC, { "SAC, System Area Code", "asterix.021_V2_3_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_010_SIC, { "SIC, System Identification Code", "asterix.021_V2_3_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_015, { "015, Service Identification", "asterix.021_V2_3_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_015_VALUE, { "Service Identification", "asterix.021_V2_3_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_016, { "016, Service Management", "asterix.021_V2_3_016", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_016_VALUE, { "Service Management, [s]", "asterix.021_V2_3_016_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_020, { "020, Emitter Category", "asterix.021_V2_3_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_020_VALUE, { "Emitter Category", "asterix.021_V2_3_020_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_020_VALUE), 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_040, { "040, Target Report Descriptor", "asterix.021_V2_3_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_040_ATP, { "ATP, Address Type", "asterix.021_V2_3_040_ATP", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_040_ATP), 0xe0, NULL, HFILL } },
+ { &hf_021_V2_3_040_ARC, { "ARC, Altitude Reporting Capability", "asterix.021_V2_3_040_ARC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_040_ARC), 0x18, NULL, HFILL } },
+ { &hf_021_V2_3_040_RC, { "RC, Range Check", "asterix.021_V2_3_040_RC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_040_RC), 0x04, NULL, HFILL } },
+ { &hf_021_V2_3_040_RAB, { "RAB, Report Type", "asterix.021_V2_3_040_RAB", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_040_RAB), 0x02, NULL, HFILL } },
+ { &hf_021_V2_3_040_DCR, { "DCR, Differential Correction", "asterix.021_V2_3_040_DCR", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_040_DCR), 0x80, NULL, HFILL } },
+ { &hf_021_V2_3_040_GBS, { "GBS, Ground Bit Setting", "asterix.021_V2_3_040_GBS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_040_GBS), 0x40, NULL, HFILL } },
+ { &hf_021_V2_3_040_SIM, { "SIM, Simulated Target", "asterix.021_V2_3_040_SIM", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_040_SIM), 0x20, NULL, HFILL } },
+ { &hf_021_V2_3_040_TST, { "TST, Test Target", "asterix.021_V2_3_040_TST", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_040_TST), 0x10, NULL, HFILL } },
+ { &hf_021_V2_3_040_SAA, { "SAA, Selected Altitude Available", "asterix.021_V2_3_040_SAA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_040_SAA), 0x08, NULL, HFILL } },
+ { &hf_021_V2_3_040_CL, { "CL, Confidence Level", "asterix.021_V2_3_040_CL", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_040_CL), 0x06, NULL, HFILL } },
+ { &hf_021_V2_3_040_LLC, { "LLC, List Lookup Check", "asterix.021_V2_3_040_LLC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_040_LLC), 0x40, NULL, HFILL } },
+ { &hf_021_V2_3_040_IPC, { "IPC, Independent Position Check", "asterix.021_V2_3_040_IPC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_040_IPC), 0x20, NULL, HFILL } },
+ { &hf_021_V2_3_040_NOGO, { "NOGO, No-go Bit Status", "asterix.021_V2_3_040_NOGO", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_040_NOGO), 0x10, NULL, HFILL } },
+ { &hf_021_V2_3_040_CPR, { "CPR, Compact Position Reporting", "asterix.021_V2_3_040_CPR", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_040_CPR), 0x08, NULL, HFILL } },
+ { &hf_021_V2_3_040_LDPJ, { "LDPJ, Local Decoding Position Jump", "asterix.021_V2_3_040_LDPJ", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_040_LDPJ), 0x04, NULL, HFILL } },
+ { &hf_021_V2_3_040_RCF, { "RCF, Range Check", "asterix.021_V2_3_040_RCF", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_040_RCF), 0x02, NULL, HFILL } },
+ { &hf_021_V2_3_070, { "070, Mode 3/A Code in Octal Representation", "asterix.021_V2_3_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_070_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.021_V2_3_070_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_021_V2_3_071, { "071, Time of Applicability for Position", "asterix.021_V2_3_071", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_071_VALUE, { "Time of Applicability for Position, [s]", "asterix.021_V2_3_071_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_072, { "072, Time of Applicability for Velocity", "asterix.021_V2_3_072", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_072_VALUE, { "Time of Applicability for Velocity, [s]", "asterix.021_V2_3_072_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_073, { "073, Time of Message Reception for Position", "asterix.021_V2_3_073", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_073_VALUE, { "Time of Message Reception for Position, [s]", "asterix.021_V2_3_073_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_074, { "074, Time of Message Reception of Position-High Precision", "asterix.021_V2_3_074", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_074_FSI, { "FSI, Full Second Indication", "asterix.021_V2_3_074_FSI", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_074_FSI), 0xc0, NULL, HFILL } },
+ { &hf_021_V2_3_074_TOMRP, { "TOMRP, Fractional Part of the Time of Message Reception for Position in the Ground Station, [s]", "asterix.021_V2_3_074_TOMRP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_075, { "075, Time of Message Reception for Velocity", "asterix.021_V2_3_075", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_075_VALUE, { "Time of Message Reception for Velocity, [s]", "asterix.021_V2_3_075_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_076, { "076, Time of Message Reception of Velocity-High Precision", "asterix.021_V2_3_076", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_076_FSI, { "FSI, Full Second Indication", "asterix.021_V2_3_076_FSI", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_076_FSI), 0xc0, NULL, HFILL } },
+ { &hf_021_V2_3_076_TOMRP, { "TOMRP, Fractional Part of the Time of Message Reception for Position in the Ground Station, [s]", "asterix.021_V2_3_076_TOMRP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_077, { "077, Time of ASTERIX Report Transmission", "asterix.021_V2_3_077", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_077_VALUE, { "Time of ASTERIX Report Transmission, [s]", "asterix.021_V2_3_077_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_080, { "080, Target Address", "asterix.021_V2_3_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_080_VALUE, { "Target Address", "asterix.021_V2_3_080_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_090, { "090, Quality Indicators", "asterix.021_V2_3_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_090_NUCRNACV, { "NUCRNACV, Navigation Uncertainty Category for Velocity NUCr or the Navigation Accuracy Category for Velocity NACv", "asterix.021_V2_3_090_NUCRNACV", FT_UINT8, BASE_DEC, NULL, 0xe0, NULL, HFILL } },
+ { &hf_021_V2_3_090_NUCPNIC, { "NUCPNIC, Navigation Uncertainty Category for Position NUCp or Navigation Integrity Category NIC", "asterix.021_V2_3_090_NUCPNIC", FT_UINT8, BASE_DEC, NULL, 0x1e, NULL, HFILL } },
+ { &hf_021_V2_3_090_NICBARO, { "NICBARO, Navigation Integrity Category for Barometric Altitude", "asterix.021_V2_3_090_NICBARO", FT_UINT8, BASE_DEC, NULL, 0x80, NULL, HFILL } },
+ { &hf_021_V2_3_090_SIL, { "SIL, Surveillance (version 1) or Source (version 2) Integrity Level", "asterix.021_V2_3_090_SIL", FT_UINT8, BASE_DEC, NULL, 0x60, NULL, HFILL } },
+ { &hf_021_V2_3_090_NACP, { "NACP, Navigation Accuracy Category for Position", "asterix.021_V2_3_090_NACP", FT_UINT8, BASE_DEC, NULL, 0x1e, NULL, HFILL } },
+ { &hf_021_V2_3_090_SILS, { "SILS, SIL-Supplement", "asterix.021_V2_3_090_SILS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_090_SILS), 0x20, NULL, HFILL } },
+ { &hf_021_V2_3_090_SDA, { "SDA, Horizontal Position System Design Assurance Level (as Defined in Version 2)", "asterix.021_V2_3_090_SDA", FT_UINT8, BASE_DEC, NULL, 0x18, NULL, HFILL } },
+ { &hf_021_V2_3_090_GVA, { "GVA, Geometric Altitude Accuracy", "asterix.021_V2_3_090_GVA", FT_UINT8, BASE_DEC, NULL, 0x06, NULL, HFILL } },
+ { &hf_021_V2_3_090_PIC, { "PIC, Position Integrity Category", "asterix.021_V2_3_090_PIC", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_021_V2_3_110, { "110, Trajectory Intent", "asterix.021_V2_3_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_110_TIS, { "TIS, Trajectory Intent Status", "asterix.021_V2_3_110_TIS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_110_TIS_NAV, { "NAV", "asterix.021_V2_3_110_TIS_NAV", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_110_TIS_NAV), 0x80, NULL, HFILL } },
+ { &hf_021_V2_3_110_TIS_NVB, { "NVB", "asterix.021_V2_3_110_TIS_NVB", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_110_TIS_NVB), 0x40, NULL, HFILL } },
+ { &hf_021_V2_3_110_TID, { "TID, Trajectory Intent Data", "asterix.021_V2_3_110_TID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_110_TID_TCA, { "TCA", "asterix.021_V2_3_110_TID_TCA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_110_TID_TCA), 0x80, NULL, HFILL } },
+ { &hf_021_V2_3_110_TID_NC, { "NC", "asterix.021_V2_3_110_TID_NC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_110_TID_NC), 0x40, NULL, HFILL } },
+ { &hf_021_V2_3_110_TID_TCPN, { "TCPN", "asterix.021_V2_3_110_TID_TCPN", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_021_V2_3_110_TID_ALT, { "ALT, Altitude in Two's Complement Form, [ft]", "asterix.021_V2_3_110_TID_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_110_TID_LAT, { "LAT, In WGS.84 in Two's Complement, [°]", "asterix.021_V2_3_110_TID_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_110_TID_LON, { "LON, In WGS.84 in Two's Complement, [°]", "asterix.021_V2_3_110_TID_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_110_TID_PT, { "PT, Point Type", "asterix.021_V2_3_110_TID_PT", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_110_TID_PT), 0xf0, NULL, HFILL } },
+ { &hf_021_V2_3_110_TID_TD, { "TD", "asterix.021_V2_3_110_TID_TD", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_110_TID_TD), 0x0c, NULL, HFILL } },
+ { &hf_021_V2_3_110_TID_TRA, { "TRA", "asterix.021_V2_3_110_TID_TRA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_110_TID_TRA), 0x02, NULL, HFILL } },
+ { &hf_021_V2_3_110_TID_TOA, { "TOA", "asterix.021_V2_3_110_TID_TOA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_110_TID_TOA), 0x01, NULL, HFILL } },
+ { &hf_021_V2_3_110_TID_TOV, { "TOV, Time Over Point, [s]", "asterix.021_V2_3_110_TID_TOV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_110_TID_TTR, { "TTR, TCP Turn Radius, [NM]", "asterix.021_V2_3_110_TID_TTR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_130, { "130, Position in WGS-84 Co-ordinates", "asterix.021_V2_3_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_130_LAT, { "LAT, Latitude, [°]", "asterix.021_V2_3_130_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_130_LON, { "LON, Longitude, [°]", "asterix.021_V2_3_130_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_131, { "131, High-Resolution Position in WGS-84 Co-ordinates", "asterix.021_V2_3_131", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_131_LAT, { "LAT, Latitude, [°]", "asterix.021_V2_3_131_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_131_LON, { "LON, Longitude, [°]", "asterix.021_V2_3_131_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_132, { "132, Message Amplitude", "asterix.021_V2_3_132", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_132_VALUE, { "Message Amplitude, [dBm]", "asterix.021_V2_3_132_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_140, { "140, Geometric Height", "asterix.021_V2_3_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_140_VALUE, { "Geometric Height, [ft]", "asterix.021_V2_3_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_145, { "145, Flight Level", "asterix.021_V2_3_145", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_145_VALUE, { "Flight Level, [FL]", "asterix.021_V2_3_145_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_146, { "146, Selected Altitude", "asterix.021_V2_3_146", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_146_SAS, { "SAS, Source Availability", "asterix.021_V2_3_146_SAS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_146_SAS), 0x80, NULL, HFILL } },
+ { &hf_021_V2_3_146_S, { "S, Source", "asterix.021_V2_3_146_S", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_146_S), 0x60, NULL, HFILL } },
+ { &hf_021_V2_3_146_ALT, { "ALT, Altitude, [ft]", "asterix.021_V2_3_146_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_148, { "148, Final State Selected Altitude", "asterix.021_V2_3_148", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_148_MV, { "MV, Manage Vertical Mode", "asterix.021_V2_3_148_MV", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_148_MV), 0x80, NULL, HFILL } },
+ { &hf_021_V2_3_148_AH, { "AH, Altitude Hold Mode", "asterix.021_V2_3_148_AH", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_148_AH), 0x40, NULL, HFILL } },
+ { &hf_021_V2_3_148_AM, { "AM, Approach Mode", "asterix.021_V2_3_148_AM", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_148_AM), 0x20, NULL, HFILL } },
+ { &hf_021_V2_3_148_ALT, { "ALT, Altitude, [ft]", "asterix.021_V2_3_148_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_150, { "150, Air Speed", "asterix.021_V2_3_150", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_150_IM, { "IM", "asterix.021_V2_3_150_IM", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_150_IM), 0x80, NULL, HFILL } },
+ { &hf_021_V2_3_150_AS, { "AS, Air Speed (IAS or Mach)", "asterix.021_V2_3_150_AS", FT_UINT16, BASE_DEC, NULL, 0x7fff, NULL, HFILL } },
+ { &hf_021_V2_3_151, { "151, True Airspeed", "asterix.021_V2_3_151", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_151_RE, { "RE, Range Exceeded Indicator", "asterix.021_V2_3_151_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_151_RE), 0x80, NULL, HFILL } },
+ { &hf_021_V2_3_151_TAS, { "TAS, True Air Speed, [kt]", "asterix.021_V2_3_151_TAS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_152, { "152, Magnetic Heading", "asterix.021_V2_3_152", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_152_VALUE, { "Magnetic Heading, [°]", "asterix.021_V2_3_152_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_155, { "155, Barometric Vertical Rate", "asterix.021_V2_3_155", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_155_RE, { "RE, Range Exceeded Indicator", "asterix.021_V2_3_155_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_155_RE), 0x80, NULL, HFILL } },
+ { &hf_021_V2_3_155_BVR, { "BVR, Barometric Vertical Rate, [ft/min]", "asterix.021_V2_3_155_BVR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_157, { "157, Geometric Vertical Rate", "asterix.021_V2_3_157", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_157_RE, { "RE, Range Exceeded Indicator", "asterix.021_V2_3_157_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_157_RE), 0x80, NULL, HFILL } },
+ { &hf_021_V2_3_157_GVR, { "GVR, Geometric Vertical Rate, [ft/min]", "asterix.021_V2_3_157_GVR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_160, { "160, Airborne Ground Vector", "asterix.021_V2_3_160", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_160_RE, { "RE, Range Exceeded Indicator", "asterix.021_V2_3_160_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_160_RE), 0x80, NULL, HFILL } },
+ { &hf_021_V2_3_160_GS, { "GS, Ground Speed Referenced to WGS-84, [NM/s]", "asterix.021_V2_3_160_GS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_160_TA, { "TA, Track Angle Clockwise Reference to True North, [°]", "asterix.021_V2_3_160_TA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_161, { "161, Track Number", "asterix.021_V2_3_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_161_TRNUM, { "TRNUM, Track Number", "asterix.021_V2_3_161_TRNUM", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_021_V2_3_165, { "165, Track Angle Rate", "asterix.021_V2_3_165", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_165_TAR, { "TAR, Track Angle Rate, [°/s]", "asterix.021_V2_3_165_TAR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_170, { "170, Target Identification", "asterix.021_V2_3_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_170_VALUE, { "Target Identification", "asterix.021_V2_3_170_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_200, { "200, Target Status", "asterix.021_V2_3_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_200_ICF, { "ICF, Intent Change Flag (see Note)", "asterix.021_V2_3_200_ICF", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_200_ICF), 0x80, NULL, HFILL } },
+ { &hf_021_V2_3_200_LNAV, { "LNAV, LNAV Mode", "asterix.021_V2_3_200_LNAV", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_200_LNAV), 0x40, NULL, HFILL } },
+ { &hf_021_V2_3_200_ME, { "ME, Military Emergency", "asterix.021_V2_3_200_ME", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_200_ME), 0x20, NULL, HFILL } },
+ { &hf_021_V2_3_200_PS, { "PS, Priority Status", "asterix.021_V2_3_200_PS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_200_PS), 0x1c, NULL, HFILL } },
+ { &hf_021_V2_3_200_SS, { "SS, Surveillance Status", "asterix.021_V2_3_200_SS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_200_SS), 0x03, NULL, HFILL } },
+ { &hf_021_V2_3_210, { "210, MOPS Version", "asterix.021_V2_3_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_210_VNS, { "VNS, Version Not Supported", "asterix.021_V2_3_210_VNS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_210_VNS), 0x40, NULL, HFILL } },
+ { &hf_021_V2_3_210_VN, { "VN, Version Number", "asterix.021_V2_3_210_VN", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_210_VN), 0x38, NULL, HFILL } },
+ { &hf_021_V2_3_210_LTT, { "LTT, Link Technology Type", "asterix.021_V2_3_210_LTT", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_210_LTT), 0x07, NULL, HFILL } },
+ { &hf_021_V2_3_220, { "220, Met Information", "asterix.021_V2_3_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_220_WS, { "WS, Wind Speed", "asterix.021_V2_3_220_WS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_220_WS_VALUE, { "Wind Speed, [kt]", "asterix.021_V2_3_220_WS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_220_WD, { "WD, Wind Direction", "asterix.021_V2_3_220_WD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_220_WD_VALUE, { "Wind Direction, [°]", "asterix.021_V2_3_220_WD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_220_TMP, { "TMP, Temperature", "asterix.021_V2_3_220_TMP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_220_TMP_VALUE, { "Temperature, [°C]", "asterix.021_V2_3_220_TMP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_220_TRB, { "TRB, Turbulence", "asterix.021_V2_3_220_TRB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_220_TRB_VALUE, { "Turbulence", "asterix.021_V2_3_220_TRB_VALUE", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_230, { "230, Roll Angle", "asterix.021_V2_3_230", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_230_VALUE, { "Roll Angle, [°]", "asterix.021_V2_3_230_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_250, { "250, Mode S MB Data", "asterix.021_V2_3_250", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_250_VALUE, { "Mode S MB Data", "asterix.021_V2_3_250_VALUE", FT_UINT64, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_260, { "260, ACAS Resolution Advisory Report", "asterix.021_V2_3_260", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_260_TYP, { "TYP, Message Type (= 28 for 1090 ES, Version 2)", "asterix.021_V2_3_260_TYP", FT_UINT8, BASE_DEC, NULL, 0xf8, NULL, HFILL } },
+ { &hf_021_V2_3_260_STYP, { "STYP, Message Sub-type (= 2 for 1090 ES, Version 2)", "asterix.021_V2_3_260_STYP", FT_UINT8, BASE_DEC, NULL, 0x07, NULL, HFILL } },
+ { &hf_021_V2_3_260_ARA, { "ARA, Active Resolution Advisories", "asterix.021_V2_3_260_ARA", FT_UINT16, BASE_DEC, NULL, 0xfffc, NULL, HFILL } },
+ { &hf_021_V2_3_260_RAC, { "RAC, RAC (RA Complement) Record", "asterix.021_V2_3_260_RAC", FT_UINT16, BASE_DEC, NULL, 0x03c0, NULL, HFILL } },
+ { &hf_021_V2_3_260_RAT, { "RAT, RA Terminated", "asterix.021_V2_3_260_RAT", FT_UINT8, BASE_DEC, NULL, 0x20, NULL, HFILL } },
+ { &hf_021_V2_3_260_MTE, { "MTE, Multiple Threat Encounter", "asterix.021_V2_3_260_MTE", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_021_V2_3_260_TTI, { "TTI, Threat Type Indicator", "asterix.021_V2_3_260_TTI", FT_UINT8, BASE_DEC, NULL, 0x0c, NULL, HFILL } },
+ { &hf_021_V2_3_260_TID, { "TID, Threat Identity Data", "asterix.021_V2_3_260_TID", FT_UINT32, BASE_DEC, NULL, 0x03ffffff, NULL, HFILL } },
+ { &hf_021_V2_3_271, { "271, Surface Capabilities and Characteristics", "asterix.021_V2_3_271", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_271_POA, { "POA, Position Offset Applied", "asterix.021_V2_3_271_POA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_271_POA), 0x20, NULL, HFILL } },
+ { &hf_021_V2_3_271_CDTIS, { "CDTIS, Cockpit Display of Traffic Information Surface", "asterix.021_V2_3_271_CDTIS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_271_CDTIS), 0x10, NULL, HFILL } },
+ { &hf_021_V2_3_271_B2LOW, { "B2LOW, Class B2 Transmit Power Less Than 70 Watts", "asterix.021_V2_3_271_B2LOW", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_271_B2LOW), 0x08, NULL, HFILL } },
+ { &hf_021_V2_3_271_RAS, { "RAS, Receiving ATC Services", "asterix.021_V2_3_271_RAS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_271_RAS), 0x04, NULL, HFILL } },
+ { &hf_021_V2_3_271_IDENT, { "IDENT, Setting of IDENT Switch", "asterix.021_V2_3_271_IDENT", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_3_271_IDENT), 0x02, NULL, HFILL } },
+ { &hf_021_V2_3_271_LW, { "LW, Length and Width of the Aircraft", "asterix.021_V2_3_271_LW", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_021_V2_3_295, { "295, Data Ages", "asterix.021_V2_3_295", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_AOS, { "AOS, Aircraft Operational Status Age", "asterix.021_V2_3_295_AOS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_AOS_VALUE, { "Aircraft Operational Status Age, [s]", "asterix.021_V2_3_295_AOS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_TRD, { "TRD, Target Report Descriptor Age", "asterix.021_V2_3_295_TRD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_TRD_VALUE, { "Target Report Descriptor Age, [s]", "asterix.021_V2_3_295_TRD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_M3A, { "M3A, Mode 3/A Age", "asterix.021_V2_3_295_M3A", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_M3A_VALUE, { "Mode 3/A Age, [s]", "asterix.021_V2_3_295_M3A_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_QI, { "QI, Quality Indicators Age", "asterix.021_V2_3_295_QI", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_QI_VALUE, { "Quality Indicators Age, [s]", "asterix.021_V2_3_295_QI_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_TI1, { "TI1, Trajectory Intent Age", "asterix.021_V2_3_295_TI1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_TI1_VALUE, { "Trajectory Intent Age, [s]", "asterix.021_V2_3_295_TI1_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_MAM, { "MAM, Message Amplitude Age", "asterix.021_V2_3_295_MAM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_MAM_VALUE, { "Message Amplitude Age, [s]", "asterix.021_V2_3_295_MAM_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_GH, { "GH, Geometric Height Age", "asterix.021_V2_3_295_GH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_GH_VALUE, { "Geometric Height Age, [s]", "asterix.021_V2_3_295_GH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_FL, { "FL, Flight Level Age", "asterix.021_V2_3_295_FL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_FL_VALUE, { "Flight Level Age, [s]", "asterix.021_V2_3_295_FL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_ISA, { "ISA, Intermediate State Selected Altitude Age", "asterix.021_V2_3_295_ISA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_ISA_VALUE, { "Intermediate State Selected Altitude Age, [s]", "asterix.021_V2_3_295_ISA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_FSA, { "FSA, Final State Selected Altitude Age", "asterix.021_V2_3_295_FSA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_FSA_VALUE, { "Final State Selected Altitude Age, [s]", "asterix.021_V2_3_295_FSA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_AS, { "AS, Air Speed Age", "asterix.021_V2_3_295_AS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_AS_VALUE, { "Air Speed Age, [s]", "asterix.021_V2_3_295_AS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_TAS, { "TAS, True Air Speed Age", "asterix.021_V2_3_295_TAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_TAS_VALUE, { "True Air Speed Age, [s]", "asterix.021_V2_3_295_TAS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_MH, { "MH, Magnetic Heading Age", "asterix.021_V2_3_295_MH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_MH_VALUE, { "Magnetic Heading Age, [s]", "asterix.021_V2_3_295_MH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_BVR, { "BVR, Barometric Vertical Rate Age", "asterix.021_V2_3_295_BVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_BVR_VALUE, { "Barometric Vertical Rate Age, [s]", "asterix.021_V2_3_295_BVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_GVR, { "GVR, Geometric Vertical Rate Age", "asterix.021_V2_3_295_GVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_GVR_VALUE, { "Geometric Vertical Rate Age, [s]", "asterix.021_V2_3_295_GVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_GV, { "GV, Ground Vector Age", "asterix.021_V2_3_295_GV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_GV_VALUE, { "Ground Vector Age, [s]", "asterix.021_V2_3_295_GV_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_TAR, { "TAR, Track Angle Rate Age", "asterix.021_V2_3_295_TAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_TAR_VALUE, { "Track Angle Rate Age, [s]", "asterix.021_V2_3_295_TAR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_TI2, { "TI2, Target Identification Age", "asterix.021_V2_3_295_TI2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_TI2_VALUE, { "Target Identification Age, [s]", "asterix.021_V2_3_295_TI2_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_TS, { "TS, Target Status Age", "asterix.021_V2_3_295_TS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_TS_VALUE, { "Target Status Age, [s]", "asterix.021_V2_3_295_TS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_MET, { "MET, Met Information Age", "asterix.021_V2_3_295_MET", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_MET_VALUE, { "Met Information Age, [s]", "asterix.021_V2_3_295_MET_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_ROA, { "ROA, Roll Angle Age", "asterix.021_V2_3_295_ROA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_ROA_VALUE, { "Roll Angle Age, [s]", "asterix.021_V2_3_295_ROA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_ARA, { "ARA, ACAS Resolution Advisory Age", "asterix.021_V2_3_295_ARA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_ARA_VALUE, { "ACAS Resolution Advisory Age, [s]", "asterix.021_V2_3_295_ARA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_SCC, { "SCC, Surface Capabilities and Characteristics Age", "asterix.021_V2_3_295_SCC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_295_SCC_VALUE, { "Surface Capabilities and Characteristics Age, [s]", "asterix.021_V2_3_295_SCC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_400, { "400, Receiver ID", "asterix.021_V2_3_400", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_400_VALUE, { "Receiver ID", "asterix.021_V2_3_400_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_RE, { "RE, Reserved Expansion Field", "asterix.021_V2_3_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_3_SP, { "SP, Special Purpose Field", "asterix.021_V2_3_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_008, { "008, Aircraft Operational Status", "asterix.021_V2_4_008", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_008_RA, { "RA, TCAS Resolution Advisory Active", "asterix.021_V2_4_008_RA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_008_RA), 0x80, NULL, HFILL } },
+ { &hf_021_V2_4_008_TC, { "TC, Target Trajectory Change Report Capability", "asterix.021_V2_4_008_TC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_008_TC), 0x60, NULL, HFILL } },
+ { &hf_021_V2_4_008_TS, { "TS, Target State Report Capability", "asterix.021_V2_4_008_TS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_008_TS), 0x10, NULL, HFILL } },
+ { &hf_021_V2_4_008_ARV, { "ARV, Air-Referenced Velocity Report Capability", "asterix.021_V2_4_008_ARV", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_008_ARV), 0x08, NULL, HFILL } },
+ { &hf_021_V2_4_008_CDTIA, { "CDTIA, Cockpit Display of Traffic Information Airborne", "asterix.021_V2_4_008_CDTIA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_008_CDTIA), 0x04, NULL, HFILL } },
+ { &hf_021_V2_4_008_NOTTCAS, { "NOTTCAS, TCAS System Status", "asterix.021_V2_4_008_NOTTCAS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_008_NOTTCAS), 0x02, NULL, HFILL } },
+ { &hf_021_V2_4_008_SA, { "SA, Single Antenna", "asterix.021_V2_4_008_SA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_008_SA), 0x01, NULL, HFILL } },
+ { &hf_021_V2_4_010, { "010, Data Source Identification", "asterix.021_V2_4_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_010_SAC, { "SAC, System Area Code", "asterix.021_V2_4_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_010_SIC, { "SIC, System Identification Code", "asterix.021_V2_4_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_015, { "015, Service Identification", "asterix.021_V2_4_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_015_VALUE, { "Service Identification", "asterix.021_V2_4_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_016, { "016, Service Management", "asterix.021_V2_4_016", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_016_VALUE, { "Service Management, [s]", "asterix.021_V2_4_016_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_020, { "020, Emitter Category", "asterix.021_V2_4_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_020_VALUE, { "Emitter Category", "asterix.021_V2_4_020_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_020_VALUE), 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_040, { "040, Target Report Descriptor", "asterix.021_V2_4_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_040_ATP, { "ATP, Address Type", "asterix.021_V2_4_040_ATP", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_040_ATP), 0xe0, NULL, HFILL } },
+ { &hf_021_V2_4_040_ARC, { "ARC, Altitude Reporting Capability", "asterix.021_V2_4_040_ARC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_040_ARC), 0x18, NULL, HFILL } },
+ { &hf_021_V2_4_040_RC, { "RC, Range Check", "asterix.021_V2_4_040_RC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_040_RC), 0x04, NULL, HFILL } },
+ { &hf_021_V2_4_040_RAB, { "RAB, Report Type", "asterix.021_V2_4_040_RAB", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_040_RAB), 0x02, NULL, HFILL } },
+ { &hf_021_V2_4_040_DCR, { "DCR, Differential Correction", "asterix.021_V2_4_040_DCR", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_040_DCR), 0x80, NULL, HFILL } },
+ { &hf_021_V2_4_040_GBS, { "GBS, Ground Bit Setting", "asterix.021_V2_4_040_GBS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_040_GBS), 0x40, NULL, HFILL } },
+ { &hf_021_V2_4_040_SIM, { "SIM, Simulated Target", "asterix.021_V2_4_040_SIM", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_040_SIM), 0x20, NULL, HFILL } },
+ { &hf_021_V2_4_040_TST, { "TST, Test Target", "asterix.021_V2_4_040_TST", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_040_TST), 0x10, NULL, HFILL } },
+ { &hf_021_V2_4_040_SAA, { "SAA, Selected Altitude Available", "asterix.021_V2_4_040_SAA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_040_SAA), 0x08, NULL, HFILL } },
+ { &hf_021_V2_4_040_CL, { "CL, Confidence Level", "asterix.021_V2_4_040_CL", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_040_CL), 0x06, NULL, HFILL } },
+ { &hf_021_V2_4_040_LLC, { "LLC, List Lookup Check", "asterix.021_V2_4_040_LLC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_040_LLC), 0x40, NULL, HFILL } },
+ { &hf_021_V2_4_040_IPC, { "IPC, Independent Position Check", "asterix.021_V2_4_040_IPC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_040_IPC), 0x20, NULL, HFILL } },
+ { &hf_021_V2_4_040_NOGO, { "NOGO, No-go Bit Status", "asterix.021_V2_4_040_NOGO", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_040_NOGO), 0x10, NULL, HFILL } },
+ { &hf_021_V2_4_040_CPR, { "CPR, Compact Position Reporting", "asterix.021_V2_4_040_CPR", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_040_CPR), 0x08, NULL, HFILL } },
+ { &hf_021_V2_4_040_LDPJ, { "LDPJ, Local Decoding Position Jump", "asterix.021_V2_4_040_LDPJ", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_040_LDPJ), 0x04, NULL, HFILL } },
+ { &hf_021_V2_4_040_RCF, { "RCF, Range Check", "asterix.021_V2_4_040_RCF", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_040_RCF), 0x02, NULL, HFILL } },
+ { &hf_021_V2_4_070, { "070, Mode 3/A Code in Octal Representation", "asterix.021_V2_4_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_070_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.021_V2_4_070_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_021_V2_4_071, { "071, Time of Applicability for Position", "asterix.021_V2_4_071", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_071_VALUE, { "Time of Applicability for Position, [s]", "asterix.021_V2_4_071_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_072, { "072, Time of Applicability for Velocity", "asterix.021_V2_4_072", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_072_VALUE, { "Time of Applicability for Velocity, [s]", "asterix.021_V2_4_072_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_073, { "073, Time of Message Reception for Position", "asterix.021_V2_4_073", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_073_VALUE, { "Time of Message Reception for Position, [s]", "asterix.021_V2_4_073_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_074, { "074, Time of Message Reception of Position-High Precision", "asterix.021_V2_4_074", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_074_FSI, { "FSI, Full Second Indication", "asterix.021_V2_4_074_FSI", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_074_FSI), 0xc0, NULL, HFILL } },
+ { &hf_021_V2_4_074_TOMRP, { "TOMRP, Fractional Part of the Time of Message Reception for Position in the Ground Station, [s]", "asterix.021_V2_4_074_TOMRP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_075, { "075, Time of Message Reception for Velocity", "asterix.021_V2_4_075", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_075_VALUE, { "Time of Message Reception for Velocity, [s]", "asterix.021_V2_4_075_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_076, { "076, Time of Message Reception of Velocity-High Precision", "asterix.021_V2_4_076", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_076_FSI, { "FSI, Full Second Indication", "asterix.021_V2_4_076_FSI", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_076_FSI), 0xc0, NULL, HFILL } },
+ { &hf_021_V2_4_076_TOMRP, { "TOMRP, Fractional Part of the Time of Message Reception for Position in the Ground Station, [s]", "asterix.021_V2_4_076_TOMRP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_077, { "077, Time of ASTERIX Report Transmission", "asterix.021_V2_4_077", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_077_VALUE, { "Time of ASTERIX Report Transmission, [s]", "asterix.021_V2_4_077_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_080, { "080, Target Address", "asterix.021_V2_4_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_080_VALUE, { "Target Address", "asterix.021_V2_4_080_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_090, { "090, Quality Indicators", "asterix.021_V2_4_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_090_NUCRNACV, { "NUCRNACV, Navigation Uncertainty Category for Velocity NUCr or the Navigation Accuracy Category for Velocity NACv", "asterix.021_V2_4_090_NUCRNACV", FT_UINT8, BASE_DEC, NULL, 0xe0, NULL, HFILL } },
+ { &hf_021_V2_4_090_NUCPNIC, { "NUCPNIC, Navigation Uncertainty Category for Position NUCp or Navigation Integrity Category NIC", "asterix.021_V2_4_090_NUCPNIC", FT_UINT8, BASE_DEC, NULL, 0x1e, NULL, HFILL } },
+ { &hf_021_V2_4_090_NICBARO, { "NICBARO, Navigation Integrity Category for Barometric Altitude", "asterix.021_V2_4_090_NICBARO", FT_UINT8, BASE_DEC, NULL, 0x80, NULL, HFILL } },
+ { &hf_021_V2_4_090_SIL, { "SIL, Surveillance (version 1) or Source (version 2) Integrity Level", "asterix.021_V2_4_090_SIL", FT_UINT8, BASE_DEC, NULL, 0x60, NULL, HFILL } },
+ { &hf_021_V2_4_090_NACP, { "NACP, Navigation Accuracy Category for Position", "asterix.021_V2_4_090_NACP", FT_UINT8, BASE_DEC, NULL, 0x1e, NULL, HFILL } },
+ { &hf_021_V2_4_090_SILS, { "SILS, SIL-Supplement", "asterix.021_V2_4_090_SILS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_090_SILS), 0x20, NULL, HFILL } },
+ { &hf_021_V2_4_090_SDA, { "SDA, Horizontal Position System Design Assurance Level (as Defined in Version 2)", "asterix.021_V2_4_090_SDA", FT_UINT8, BASE_DEC, NULL, 0x18, NULL, HFILL } },
+ { &hf_021_V2_4_090_GVA, { "GVA, Geometric Altitude Accuracy", "asterix.021_V2_4_090_GVA", FT_UINT8, BASE_DEC, NULL, 0x06, NULL, HFILL } },
+ { &hf_021_V2_4_090_PIC, { "PIC, Position Integrity Category", "asterix.021_V2_4_090_PIC", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_021_V2_4_110, { "110, Trajectory Intent", "asterix.021_V2_4_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_110_TIS, { "TIS, Trajectory Intent Status", "asterix.021_V2_4_110_TIS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_110_TIS_NAV, { "NAV", "asterix.021_V2_4_110_TIS_NAV", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_110_TIS_NAV), 0x80, NULL, HFILL } },
+ { &hf_021_V2_4_110_TIS_NVB, { "NVB", "asterix.021_V2_4_110_TIS_NVB", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_110_TIS_NVB), 0x40, NULL, HFILL } },
+ { &hf_021_V2_4_110_TID, { "TID, Trajectory Intent Data", "asterix.021_V2_4_110_TID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_110_TID_TCA, { "TCA", "asterix.021_V2_4_110_TID_TCA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_110_TID_TCA), 0x80, NULL, HFILL } },
+ { &hf_021_V2_4_110_TID_NC, { "NC", "asterix.021_V2_4_110_TID_NC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_110_TID_NC), 0x40, NULL, HFILL } },
+ { &hf_021_V2_4_110_TID_TCPN, { "TCPN", "asterix.021_V2_4_110_TID_TCPN", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_021_V2_4_110_TID_ALT, { "ALT, Altitude in Two's Complement Form, [ft]", "asterix.021_V2_4_110_TID_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_110_TID_LAT, { "LAT, In WGS.84 in Two's Complement, [°]", "asterix.021_V2_4_110_TID_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_110_TID_LON, { "LON, In WGS.84 in Two's Complement, [°]", "asterix.021_V2_4_110_TID_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_110_TID_PT, { "PT, Point Type", "asterix.021_V2_4_110_TID_PT", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_110_TID_PT), 0xf0, NULL, HFILL } },
+ { &hf_021_V2_4_110_TID_TD, { "TD", "asterix.021_V2_4_110_TID_TD", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_110_TID_TD), 0x0c, NULL, HFILL } },
+ { &hf_021_V2_4_110_TID_TRA, { "TRA", "asterix.021_V2_4_110_TID_TRA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_110_TID_TRA), 0x02, NULL, HFILL } },
+ { &hf_021_V2_4_110_TID_TOA, { "TOA", "asterix.021_V2_4_110_TID_TOA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_110_TID_TOA), 0x01, NULL, HFILL } },
+ { &hf_021_V2_4_110_TID_TOV, { "TOV, Time Over Point, [s]", "asterix.021_V2_4_110_TID_TOV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_110_TID_TTR, { "TTR, TCP Turn Radius, [NM]", "asterix.021_V2_4_110_TID_TTR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_130, { "130, Position in WGS-84 Co-ordinates", "asterix.021_V2_4_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_130_LAT, { "LAT, Latitude, [°]", "asterix.021_V2_4_130_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_130_LON, { "LON, Longitude, [°]", "asterix.021_V2_4_130_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_131, { "131, High-Resolution Position in WGS-84 Co-ordinates", "asterix.021_V2_4_131", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_131_LAT, { "LAT, Latitude, [°]", "asterix.021_V2_4_131_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_131_LON, { "LON, Longitude, [°]", "asterix.021_V2_4_131_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_132, { "132, Message Amplitude", "asterix.021_V2_4_132", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_132_VALUE, { "Message Amplitude, [dBm]", "asterix.021_V2_4_132_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_140, { "140, Geometric Height", "asterix.021_V2_4_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_140_VALUE, { "Geometric Height, [ft]", "asterix.021_V2_4_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_145, { "145, Flight Level", "asterix.021_V2_4_145", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_145_VALUE, { "Flight Level, [FL]", "asterix.021_V2_4_145_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_146, { "146, Selected Altitude", "asterix.021_V2_4_146", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_146_SAS, { "SAS, Source Availability", "asterix.021_V2_4_146_SAS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_146_SAS), 0x80, NULL, HFILL } },
+ { &hf_021_V2_4_146_S, { "S, Source", "asterix.021_V2_4_146_S", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_146_S), 0x60, NULL, HFILL } },
+ { &hf_021_V2_4_146_ALT, { "ALT, Altitude, [ft]", "asterix.021_V2_4_146_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_148, { "148, Final State Selected Altitude", "asterix.021_V2_4_148", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_148_MV, { "MV, Manage Vertical Mode", "asterix.021_V2_4_148_MV", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_148_MV), 0x80, NULL, HFILL } },
+ { &hf_021_V2_4_148_AH, { "AH, Altitude Hold Mode", "asterix.021_V2_4_148_AH", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_148_AH), 0x40, NULL, HFILL } },
+ { &hf_021_V2_4_148_AM, { "AM, Approach Mode", "asterix.021_V2_4_148_AM", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_148_AM), 0x20, NULL, HFILL } },
+ { &hf_021_V2_4_148_ALT, { "ALT, Altitude, [ft]", "asterix.021_V2_4_148_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_150, { "150, Air Speed", "asterix.021_V2_4_150", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_150_IM, { "IM", "asterix.021_V2_4_150_IM", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_150_IM), 0x80, NULL, HFILL } },
+ { &hf_021_V2_4_150_AS, { "AS, Air Speed (IAS or Mach)", "asterix.021_V2_4_150_AS", FT_UINT16, BASE_DEC, NULL, 0x7fff, NULL, HFILL } },
+ { &hf_021_V2_4_151, { "151, True Airspeed", "asterix.021_V2_4_151", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_151_RE, { "RE, Range Exceeded Indicator", "asterix.021_V2_4_151_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_151_RE), 0x80, NULL, HFILL } },
+ { &hf_021_V2_4_151_TAS, { "TAS, True Air Speed, [kt]", "asterix.021_V2_4_151_TAS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_152, { "152, Magnetic Heading", "asterix.021_V2_4_152", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_152_VALUE, { "Magnetic Heading, [°]", "asterix.021_V2_4_152_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_155, { "155, Barometric Vertical Rate", "asterix.021_V2_4_155", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_155_RE, { "RE, Range Exceeded Indicator", "asterix.021_V2_4_155_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_155_RE), 0x80, NULL, HFILL } },
+ { &hf_021_V2_4_155_BVR, { "BVR, Barometric Vertical Rate, [ft/min]", "asterix.021_V2_4_155_BVR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_157, { "157, Geometric Vertical Rate", "asterix.021_V2_4_157", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_157_RE, { "RE, Range Exceeded Indicator", "asterix.021_V2_4_157_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_157_RE), 0x80, NULL, HFILL } },
+ { &hf_021_V2_4_157_GVR, { "GVR, Geometric Vertical Rate, [ft/min]", "asterix.021_V2_4_157_GVR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_160, { "160, Airborne Ground Vector", "asterix.021_V2_4_160", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_160_RE, { "RE, Range Exceeded Indicator", "asterix.021_V2_4_160_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_160_RE), 0x80, NULL, HFILL } },
+ { &hf_021_V2_4_160_GS, { "GS, Ground Speed Referenced to WGS-84, [NM/s]", "asterix.021_V2_4_160_GS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_160_TA, { "TA, Track Angle Clockwise Reference to True North, [°]", "asterix.021_V2_4_160_TA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_161, { "161, Track Number", "asterix.021_V2_4_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_161_TRNUM, { "TRNUM, Track Number", "asterix.021_V2_4_161_TRNUM", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_021_V2_4_165, { "165, Track Angle Rate", "asterix.021_V2_4_165", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_165_TAR, { "TAR, Track Angle Rate, [°/s]", "asterix.021_V2_4_165_TAR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_170, { "170, Target Identification", "asterix.021_V2_4_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_170_VALUE, { "Target Identification", "asterix.021_V2_4_170_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_200, { "200, Target Status", "asterix.021_V2_4_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_200_ICF, { "ICF, Intent Change Flag (see Note)", "asterix.021_V2_4_200_ICF", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_200_ICF), 0x80, NULL, HFILL } },
+ { &hf_021_V2_4_200_LNAV, { "LNAV, LNAV Mode", "asterix.021_V2_4_200_LNAV", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_200_LNAV), 0x40, NULL, HFILL } },
+ { &hf_021_V2_4_200_ME, { "ME, Military Emergency", "asterix.021_V2_4_200_ME", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_200_ME), 0x20, NULL, HFILL } },
+ { &hf_021_V2_4_200_PS, { "PS, Priority Status", "asterix.021_V2_4_200_PS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_200_PS), 0x1c, NULL, HFILL } },
+ { &hf_021_V2_4_200_SS, { "SS, Surveillance Status", "asterix.021_V2_4_200_SS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_200_SS), 0x03, NULL, HFILL } },
+ { &hf_021_V2_4_210, { "210, MOPS Version", "asterix.021_V2_4_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_210_VNS, { "VNS, Version Not Supported", "asterix.021_V2_4_210_VNS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_210_VNS), 0x40, NULL, HFILL } },
+ { &hf_021_V2_4_210_VN, { "VN, Version Number", "asterix.021_V2_4_210_VN", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_210_VN), 0x38, NULL, HFILL } },
+ { &hf_021_V2_4_210_LTT, { "LTT, Link Technology Type", "asterix.021_V2_4_210_LTT", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_210_LTT), 0x07, NULL, HFILL } },
+ { &hf_021_V2_4_220, { "220, Met Information", "asterix.021_V2_4_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_220_WS, { "WS, Wind Speed", "asterix.021_V2_4_220_WS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_220_WS_VALUE, { "Wind Speed, [kt]", "asterix.021_V2_4_220_WS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_220_WD, { "WD, Wind Direction", "asterix.021_V2_4_220_WD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_220_WD_VALUE, { "Wind Direction, [°]", "asterix.021_V2_4_220_WD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_220_TMP, { "TMP, Temperature", "asterix.021_V2_4_220_TMP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_220_TMP_VALUE, { "Temperature, [°C]", "asterix.021_V2_4_220_TMP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_220_TRB, { "TRB, Turbulence", "asterix.021_V2_4_220_TRB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_220_TRB_VALUE, { "Turbulence", "asterix.021_V2_4_220_TRB_VALUE", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_230, { "230, Roll Angle", "asterix.021_V2_4_230", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_230_VALUE, { "Roll Angle, [°]", "asterix.021_V2_4_230_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_250, { "250, Mode S MB Data", "asterix.021_V2_4_250", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_250_VALUE, { "Mode S MB Data", "asterix.021_V2_4_250_VALUE", FT_UINT64, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_260, { "260, ACAS Resolution Advisory Report", "asterix.021_V2_4_260", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_260_TYP, { "TYP, Message Type (= 28 for 1090 ES, Version 2)", "asterix.021_V2_4_260_TYP", FT_UINT8, BASE_DEC, NULL, 0xf8, NULL, HFILL } },
+ { &hf_021_V2_4_260_STYP, { "STYP, Message Sub-type (= 2 for 1090 ES, Version 2)", "asterix.021_V2_4_260_STYP", FT_UINT8, BASE_DEC, NULL, 0x07, NULL, HFILL } },
+ { &hf_021_V2_4_260_ARA, { "ARA, Active Resolution Advisories", "asterix.021_V2_4_260_ARA", FT_UINT16, BASE_DEC, NULL, 0xfffc, NULL, HFILL } },
+ { &hf_021_V2_4_260_RAC, { "RAC, RAC (RA Complement) Record", "asterix.021_V2_4_260_RAC", FT_UINT16, BASE_DEC, NULL, 0x03c0, NULL, HFILL } },
+ { &hf_021_V2_4_260_RAT, { "RAT, RA Terminated", "asterix.021_V2_4_260_RAT", FT_UINT8, BASE_DEC, NULL, 0x20, NULL, HFILL } },
+ { &hf_021_V2_4_260_MTE, { "MTE, Multiple Threat Encounter", "asterix.021_V2_4_260_MTE", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_021_V2_4_260_TTI, { "TTI, Threat Type Indicator", "asterix.021_V2_4_260_TTI", FT_UINT8, BASE_DEC, NULL, 0x0c, NULL, HFILL } },
+ { &hf_021_V2_4_260_TID, { "TID, Threat Identity Data", "asterix.021_V2_4_260_TID", FT_UINT32, BASE_DEC, NULL, 0x03ffffff, NULL, HFILL } },
+ { &hf_021_V2_4_271, { "271, Surface Capabilities and Characteristics", "asterix.021_V2_4_271", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_271_POA, { "POA, Position Offset Applied", "asterix.021_V2_4_271_POA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_271_POA), 0x20, NULL, HFILL } },
+ { &hf_021_V2_4_271_CDTIS, { "CDTIS, Cockpit Display of Traffic Information Surface", "asterix.021_V2_4_271_CDTIS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_271_CDTIS), 0x10, NULL, HFILL } },
+ { &hf_021_V2_4_271_B2LOW, { "B2LOW, Class B2 Transmit Power Less Than 70 Watts", "asterix.021_V2_4_271_B2LOW", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_271_B2LOW), 0x08, NULL, HFILL } },
+ { &hf_021_V2_4_271_RAS, { "RAS, Receiving ATC Services", "asterix.021_V2_4_271_RAS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_271_RAS), 0x04, NULL, HFILL } },
+ { &hf_021_V2_4_271_IDENT, { "IDENT, Setting of IDENT Switch", "asterix.021_V2_4_271_IDENT", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_4_271_IDENT), 0x02, NULL, HFILL } },
+ { &hf_021_V2_4_271_LW, { "LW, Length and Width of the Aircraft", "asterix.021_V2_4_271_LW", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_021_V2_4_295, { "295, Data Ages", "asterix.021_V2_4_295", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_AOS, { "AOS, Aircraft Operational Status Age", "asterix.021_V2_4_295_AOS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_AOS_VALUE, { "Aircraft Operational Status Age, [s]", "asterix.021_V2_4_295_AOS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_TRD, { "TRD, Target Report Descriptor Age", "asterix.021_V2_4_295_TRD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_TRD_VALUE, { "Target Report Descriptor Age, [s]", "asterix.021_V2_4_295_TRD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_M3A, { "M3A, Mode 3/A Age", "asterix.021_V2_4_295_M3A", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_M3A_VALUE, { "Mode 3/A Age, [s]", "asterix.021_V2_4_295_M3A_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_QI, { "QI, Quality Indicators Age", "asterix.021_V2_4_295_QI", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_QI_VALUE, { "Quality Indicators Age, [s]", "asterix.021_V2_4_295_QI_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_TI1, { "TI1, Trajectory Intent Age", "asterix.021_V2_4_295_TI1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_TI1_VALUE, { "Trajectory Intent Age, [s]", "asterix.021_V2_4_295_TI1_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_MAM, { "MAM, Message Amplitude Age", "asterix.021_V2_4_295_MAM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_MAM_VALUE, { "Message Amplitude Age, [s]", "asterix.021_V2_4_295_MAM_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_GH, { "GH, Geometric Height Age", "asterix.021_V2_4_295_GH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_GH_VALUE, { "Geometric Height Age, [s]", "asterix.021_V2_4_295_GH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_FL, { "FL, Flight Level Age", "asterix.021_V2_4_295_FL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_FL_VALUE, { "Flight Level Age, [s]", "asterix.021_V2_4_295_FL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_ISA, { "ISA, Intermediate State Selected Altitude Age", "asterix.021_V2_4_295_ISA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_ISA_VALUE, { "Intermediate State Selected Altitude Age, [s]", "asterix.021_V2_4_295_ISA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_FSA, { "FSA, Final State Selected Altitude Age", "asterix.021_V2_4_295_FSA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_FSA_VALUE, { "Final State Selected Altitude Age, [s]", "asterix.021_V2_4_295_FSA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_AS, { "AS, Air Speed Age", "asterix.021_V2_4_295_AS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_AS_VALUE, { "Air Speed Age, [s]", "asterix.021_V2_4_295_AS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_TAS, { "TAS, True Air Speed Age", "asterix.021_V2_4_295_TAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_TAS_VALUE, { "True Air Speed Age, [s]", "asterix.021_V2_4_295_TAS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_MH, { "MH, Magnetic Heading Age", "asterix.021_V2_4_295_MH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_MH_VALUE, { "Magnetic Heading Age, [s]", "asterix.021_V2_4_295_MH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_BVR, { "BVR, Barometric Vertical Rate Age", "asterix.021_V2_4_295_BVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_BVR_VALUE, { "Barometric Vertical Rate Age, [s]", "asterix.021_V2_4_295_BVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_GVR, { "GVR, Geometric Vertical Rate Age", "asterix.021_V2_4_295_GVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_GVR_VALUE, { "Geometric Vertical Rate Age, [s]", "asterix.021_V2_4_295_GVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_GV, { "GV, Ground Vector Age", "asterix.021_V2_4_295_GV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_GV_VALUE, { "Ground Vector Age, [s]", "asterix.021_V2_4_295_GV_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_TAR, { "TAR, Track Angle Rate Age", "asterix.021_V2_4_295_TAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_TAR_VALUE, { "Track Angle Rate Age, [s]", "asterix.021_V2_4_295_TAR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_TI2, { "TI2, Target Identification Age", "asterix.021_V2_4_295_TI2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_TI2_VALUE, { "Target Identification Age, [s]", "asterix.021_V2_4_295_TI2_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_TS, { "TS, Target Status Age", "asterix.021_V2_4_295_TS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_TS_VALUE, { "Target Status Age, [s]", "asterix.021_V2_4_295_TS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_MET, { "MET, Met Information Age", "asterix.021_V2_4_295_MET", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_MET_VALUE, { "Met Information Age, [s]", "asterix.021_V2_4_295_MET_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_ROA, { "ROA, Roll Angle Age", "asterix.021_V2_4_295_ROA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_ROA_VALUE, { "Roll Angle Age, [s]", "asterix.021_V2_4_295_ROA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_ARA, { "ARA, ACAS Resolution Advisory Age", "asterix.021_V2_4_295_ARA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_ARA_VALUE, { "ACAS Resolution Advisory Age, [s]", "asterix.021_V2_4_295_ARA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_SCC, { "SCC, Surface Capabilities and Characteristics Age", "asterix.021_V2_4_295_SCC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_295_SCC_VALUE, { "Surface Capabilities and Characteristics Age, [s]", "asterix.021_V2_4_295_SCC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_400, { "400, Receiver ID", "asterix.021_V2_4_400", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_400_VALUE, { "Receiver ID", "asterix.021_V2_4_400_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_RE, { "RE, Reserved Expansion Field", "asterix.021_V2_4_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_4_SP, { "SP, Special Purpose Field", "asterix.021_V2_4_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_008, { "008, Aircraft Operational Status", "asterix.021_V2_5_008", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_008_RA, { "RA, TCAS Resolution Advisory Active", "asterix.021_V2_5_008_RA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_008_RA), 0x80, NULL, HFILL } },
+ { &hf_021_V2_5_008_TC, { "TC, Target Trajectory Change Report Capability", "asterix.021_V2_5_008_TC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_008_TC), 0x60, NULL, HFILL } },
+ { &hf_021_V2_5_008_TS, { "TS, Target State Report Capability", "asterix.021_V2_5_008_TS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_008_TS), 0x10, NULL, HFILL } },
+ { &hf_021_V2_5_008_ARV, { "ARV, Air-Referenced Velocity Report Capability", "asterix.021_V2_5_008_ARV", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_008_ARV), 0x08, NULL, HFILL } },
+ { &hf_021_V2_5_008_CDTIA, { "CDTIA, Cockpit Display of Traffic Information Airborne", "asterix.021_V2_5_008_CDTIA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_008_CDTIA), 0x04, NULL, HFILL } },
+ { &hf_021_V2_5_008_NOTTCAS, { "NOTTCAS, TCAS System Status", "asterix.021_V2_5_008_NOTTCAS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_008_NOTTCAS), 0x02, NULL, HFILL } },
+ { &hf_021_V2_5_008_SA, { "SA, Single Antenna", "asterix.021_V2_5_008_SA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_008_SA), 0x01, NULL, HFILL } },
+ { &hf_021_V2_5_010, { "010, Data Source Identification", "asterix.021_V2_5_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_010_SAC, { "SAC, System Area Code", "asterix.021_V2_5_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_010_SIC, { "SIC, System Identification Code", "asterix.021_V2_5_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_015, { "015, Service Identification", "asterix.021_V2_5_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_015_VALUE, { "Service Identification", "asterix.021_V2_5_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_016, { "016, Service Management", "asterix.021_V2_5_016", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_016_VALUE, { "Service Management, [s]", "asterix.021_V2_5_016_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_020, { "020, Emitter Category", "asterix.021_V2_5_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_020_VALUE, { "Emitter Category", "asterix.021_V2_5_020_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_020_VALUE), 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_040, { "040, Target Report Descriptor", "asterix.021_V2_5_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_040_ATP, { "ATP, Address Type", "asterix.021_V2_5_040_ATP", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_040_ATP), 0xe0, NULL, HFILL } },
+ { &hf_021_V2_5_040_ARC, { "ARC, Altitude Reporting Capability", "asterix.021_V2_5_040_ARC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_040_ARC), 0x18, NULL, HFILL } },
+ { &hf_021_V2_5_040_RC, { "RC, Range Check", "asterix.021_V2_5_040_RC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_040_RC), 0x04, NULL, HFILL } },
+ { &hf_021_V2_5_040_RAB, { "RAB, Report Type", "asterix.021_V2_5_040_RAB", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_040_RAB), 0x02, NULL, HFILL } },
+ { &hf_021_V2_5_040_DCR, { "DCR, Differential Correction", "asterix.021_V2_5_040_DCR", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_040_DCR), 0x80, NULL, HFILL } },
+ { &hf_021_V2_5_040_GBS, { "GBS, Ground Bit Setting", "asterix.021_V2_5_040_GBS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_040_GBS), 0x40, NULL, HFILL } },
+ { &hf_021_V2_5_040_SIM, { "SIM, Simulated Target", "asterix.021_V2_5_040_SIM", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_040_SIM), 0x20, NULL, HFILL } },
+ { &hf_021_V2_5_040_TST, { "TST, Test Target", "asterix.021_V2_5_040_TST", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_040_TST), 0x10, NULL, HFILL } },
+ { &hf_021_V2_5_040_SAA, { "SAA, Selected Altitude Available", "asterix.021_V2_5_040_SAA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_040_SAA), 0x08, NULL, HFILL } },
+ { &hf_021_V2_5_040_CL, { "CL, Confidence Level", "asterix.021_V2_5_040_CL", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_040_CL), 0x06, NULL, HFILL } },
+ { &hf_021_V2_5_040_LLC, { "LLC, List Lookup Check", "asterix.021_V2_5_040_LLC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_040_LLC), 0x40, NULL, HFILL } },
+ { &hf_021_V2_5_040_IPC, { "IPC, Independent Position Check", "asterix.021_V2_5_040_IPC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_040_IPC), 0x20, NULL, HFILL } },
+ { &hf_021_V2_5_040_NOGO, { "NOGO, No-go Bit Status", "asterix.021_V2_5_040_NOGO", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_040_NOGO), 0x10, NULL, HFILL } },
+ { &hf_021_V2_5_040_CPR, { "CPR, Compact Position Reporting", "asterix.021_V2_5_040_CPR", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_040_CPR), 0x08, NULL, HFILL } },
+ { &hf_021_V2_5_040_LDPJ, { "LDPJ, Local Decoding Position Jump", "asterix.021_V2_5_040_LDPJ", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_040_LDPJ), 0x04, NULL, HFILL } },
+ { &hf_021_V2_5_040_RCF, { "RCF, Range Check", "asterix.021_V2_5_040_RCF", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_040_RCF), 0x02, NULL, HFILL } },
+ { &hf_021_V2_5_070, { "070, Mode 3/A Code in Octal Representation", "asterix.021_V2_5_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_070_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.021_V2_5_070_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_021_V2_5_071, { "071, Time of Applicability for Position", "asterix.021_V2_5_071", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_071_VALUE, { "Time of Applicability for Position, [s]", "asterix.021_V2_5_071_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_072, { "072, Time of Applicability for Velocity", "asterix.021_V2_5_072", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_072_VALUE, { "Time of Applicability for Velocity, [s]", "asterix.021_V2_5_072_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_073, { "073, Time of Message Reception for Position", "asterix.021_V2_5_073", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_073_VALUE, { "Time of Message Reception for Position, [s]", "asterix.021_V2_5_073_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_074, { "074, Time of Message Reception of Position-High Precision", "asterix.021_V2_5_074", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_074_FSI, { "FSI, Full Second Indication", "asterix.021_V2_5_074_FSI", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_074_FSI), 0xc0, NULL, HFILL } },
+ { &hf_021_V2_5_074_TOMRP, { "TOMRP, Fractional Part of the Time of Message Reception for Position in the Ground Station, [s]", "asterix.021_V2_5_074_TOMRP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_075, { "075, Time of Message Reception for Velocity", "asterix.021_V2_5_075", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_075_VALUE, { "Time of Message Reception for Velocity, [s]", "asterix.021_V2_5_075_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_076, { "076, Time of Message Reception of Velocity-High Precision", "asterix.021_V2_5_076", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_076_FSI, { "FSI, Full Second Indication", "asterix.021_V2_5_076_FSI", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_076_FSI), 0xc0, NULL, HFILL } },
+ { &hf_021_V2_5_076_TOMRP, { "TOMRP, Fractional Part of the Time of Message Reception for Position in the Ground Station, [s]", "asterix.021_V2_5_076_TOMRP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_077, { "077, Time of ASTERIX Report Transmission", "asterix.021_V2_5_077", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_077_VALUE, { "Time of ASTERIX Report Transmission, [s]", "asterix.021_V2_5_077_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_080, { "080, Target Address", "asterix.021_V2_5_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_080_VALUE, { "Target Address", "asterix.021_V2_5_080_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_090, { "090, Quality Indicators", "asterix.021_V2_5_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_090_NUCRNACV, { "NUCRNACV, Navigation Uncertainty Category for Velocity NUCr or the Navigation Accuracy Category for Velocity NACv", "asterix.021_V2_5_090_NUCRNACV", FT_UINT8, BASE_DEC, NULL, 0xe0, NULL, HFILL } },
+ { &hf_021_V2_5_090_NUCPNIC, { "NUCPNIC, Navigation Uncertainty Category for Position NUCp or Navigation Integrity Category NIC", "asterix.021_V2_5_090_NUCPNIC", FT_UINT8, BASE_DEC, NULL, 0x1e, NULL, HFILL } },
+ { &hf_021_V2_5_090_NICBARO, { "NICBARO, Navigation Integrity Category for Barometric Altitude", "asterix.021_V2_5_090_NICBARO", FT_UINT8, BASE_DEC, NULL, 0x80, NULL, HFILL } },
+ { &hf_021_V2_5_090_SIL, { "SIL, Surveillance (version 1) or Source (version 2) Integrity Level", "asterix.021_V2_5_090_SIL", FT_UINT8, BASE_DEC, NULL, 0x60, NULL, HFILL } },
+ { &hf_021_V2_5_090_NACP, { "NACP, Navigation Accuracy Category for Position", "asterix.021_V2_5_090_NACP", FT_UINT8, BASE_DEC, NULL, 0x1e, NULL, HFILL } },
+ { &hf_021_V2_5_090_SILS, { "SILS, SIL-Supplement", "asterix.021_V2_5_090_SILS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_090_SILS), 0x20, NULL, HFILL } },
+ { &hf_021_V2_5_090_SDA, { "SDA, Horizontal Position System Design Assurance Level (as Defined in Version 2)", "asterix.021_V2_5_090_SDA", FT_UINT8, BASE_DEC, NULL, 0x18, NULL, HFILL } },
+ { &hf_021_V2_5_090_GVA, { "GVA, Geometric Altitude Accuracy", "asterix.021_V2_5_090_GVA", FT_UINT8, BASE_DEC, NULL, 0x06, NULL, HFILL } },
+ { &hf_021_V2_5_090_PIC, { "PIC, Position Integrity Category", "asterix.021_V2_5_090_PIC", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_021_V2_5_110, { "110, Trajectory Intent", "asterix.021_V2_5_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_110_TIS, { "TIS, Trajectory Intent Status", "asterix.021_V2_5_110_TIS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_110_TIS_NAV, { "NAV", "asterix.021_V2_5_110_TIS_NAV", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_110_TIS_NAV), 0x80, NULL, HFILL } },
+ { &hf_021_V2_5_110_TIS_NVB, { "NVB", "asterix.021_V2_5_110_TIS_NVB", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_110_TIS_NVB), 0x40, NULL, HFILL } },
+ { &hf_021_V2_5_110_TID, { "TID, Trajectory Intent Data", "asterix.021_V2_5_110_TID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_110_TID_TCA, { "TCA", "asterix.021_V2_5_110_TID_TCA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_110_TID_TCA), 0x80, NULL, HFILL } },
+ { &hf_021_V2_5_110_TID_NC, { "NC", "asterix.021_V2_5_110_TID_NC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_110_TID_NC), 0x40, NULL, HFILL } },
+ { &hf_021_V2_5_110_TID_TCPN, { "TCPN", "asterix.021_V2_5_110_TID_TCPN", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_021_V2_5_110_TID_ALT, { "ALT, Altitude in Two's Complement Form, [ft]", "asterix.021_V2_5_110_TID_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_110_TID_LAT, { "LAT, In WGS.84 in Two's Complement, [°]", "asterix.021_V2_5_110_TID_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_110_TID_LON, { "LON, In WGS.84 in Two's Complement, [°]", "asterix.021_V2_5_110_TID_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_110_TID_PT, { "PT, Point Type", "asterix.021_V2_5_110_TID_PT", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_110_TID_PT), 0xf0, NULL, HFILL } },
+ { &hf_021_V2_5_110_TID_TD, { "TD", "asterix.021_V2_5_110_TID_TD", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_110_TID_TD), 0x0c, NULL, HFILL } },
+ { &hf_021_V2_5_110_TID_TRA, { "TRA", "asterix.021_V2_5_110_TID_TRA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_110_TID_TRA), 0x02, NULL, HFILL } },
+ { &hf_021_V2_5_110_TID_TOA, { "TOA", "asterix.021_V2_5_110_TID_TOA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_110_TID_TOA), 0x01, NULL, HFILL } },
+ { &hf_021_V2_5_110_TID_TOV, { "TOV, Time Over Point, [s]", "asterix.021_V2_5_110_TID_TOV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_110_TID_TTR, { "TTR, TCP Turn Radius, [NM]", "asterix.021_V2_5_110_TID_TTR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_130, { "130, Position in WGS-84 Co-ordinates", "asterix.021_V2_5_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_130_LAT, { "LAT, Latitude, [°]", "asterix.021_V2_5_130_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_130_LON, { "LON, Longitude, [°]", "asterix.021_V2_5_130_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_131, { "131, High-Resolution Position in WGS-84 Co-ordinates", "asterix.021_V2_5_131", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_131_LAT, { "LAT, Latitude, [°]", "asterix.021_V2_5_131_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_131_LON, { "LON, Longitude, [°]", "asterix.021_V2_5_131_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_132, { "132, Message Amplitude", "asterix.021_V2_5_132", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_132_VALUE, { "Message Amplitude, [dBm]", "asterix.021_V2_5_132_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_140, { "140, Geometric Height", "asterix.021_V2_5_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_140_VALUE, { "Geometric Height, [ft]", "asterix.021_V2_5_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_145, { "145, Flight Level", "asterix.021_V2_5_145", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_145_VALUE, { "Flight Level, [FL]", "asterix.021_V2_5_145_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_146, { "146, Selected Altitude", "asterix.021_V2_5_146", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_146_SAS, { "SAS, Source Availability", "asterix.021_V2_5_146_SAS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_146_SAS), 0x80, NULL, HFILL } },
+ { &hf_021_V2_5_146_S, { "S, Source", "asterix.021_V2_5_146_S", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_146_S), 0x60, NULL, HFILL } },
+ { &hf_021_V2_5_146_ALT, { "ALT, Altitude, [ft]", "asterix.021_V2_5_146_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_148, { "148, Final State Selected Altitude", "asterix.021_V2_5_148", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_148_MV, { "MV, Manage Vertical Mode", "asterix.021_V2_5_148_MV", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_148_MV), 0x80, NULL, HFILL } },
+ { &hf_021_V2_5_148_AH, { "AH, Altitude Hold Mode", "asterix.021_V2_5_148_AH", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_148_AH), 0x40, NULL, HFILL } },
+ { &hf_021_V2_5_148_AM, { "AM, Approach Mode", "asterix.021_V2_5_148_AM", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_148_AM), 0x20, NULL, HFILL } },
+ { &hf_021_V2_5_148_ALT, { "ALT, Altitude, [ft]", "asterix.021_V2_5_148_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_150, { "150, Air Speed", "asterix.021_V2_5_150", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_150_IM, { "IM", "asterix.021_V2_5_150_IM", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_150_IM), 0x80, NULL, HFILL } },
+ { &hf_021_V2_5_150_AS, { "AS, Air Speed (IAS or Mach)", "asterix.021_V2_5_150_AS", FT_UINT16, BASE_DEC, NULL, 0x7fff, NULL, HFILL } },
+ { &hf_021_V2_5_151, { "151, True Airspeed", "asterix.021_V2_5_151", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_151_RE, { "RE, Range Exceeded Indicator", "asterix.021_V2_5_151_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_151_RE), 0x80, NULL, HFILL } },
+ { &hf_021_V2_5_151_TAS, { "TAS, True Air Speed, [kt]", "asterix.021_V2_5_151_TAS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_152, { "152, Magnetic Heading", "asterix.021_V2_5_152", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_152_VALUE, { "Magnetic Heading, [°]", "asterix.021_V2_5_152_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_155, { "155, Barometric Vertical Rate", "asterix.021_V2_5_155", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_155_RE, { "RE, Range Exceeded Indicator", "asterix.021_V2_5_155_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_155_RE), 0x80, NULL, HFILL } },
+ { &hf_021_V2_5_155_BVR, { "BVR, Barometric Vertical Rate, [ft/min]", "asterix.021_V2_5_155_BVR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_157, { "157, Geometric Vertical Rate", "asterix.021_V2_5_157", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_157_RE, { "RE, Range Exceeded Indicator", "asterix.021_V2_5_157_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_157_RE), 0x80, NULL, HFILL } },
+ { &hf_021_V2_5_157_GVR, { "GVR, Geometric Vertical Rate, [ft/min]", "asterix.021_V2_5_157_GVR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_160, { "160, Airborne Ground Vector", "asterix.021_V2_5_160", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_160_RE, { "RE, Range Exceeded Indicator", "asterix.021_V2_5_160_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_160_RE), 0x80, NULL, HFILL } },
+ { &hf_021_V2_5_160_GS, { "GS, Ground Speed Referenced to WGS-84, [NM/s]", "asterix.021_V2_5_160_GS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_160_TA, { "TA, Track Angle Clockwise Reference to True North, [°]", "asterix.021_V2_5_160_TA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_161, { "161, Track Number", "asterix.021_V2_5_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_161_TRNUM, { "TRNUM, Track Number", "asterix.021_V2_5_161_TRNUM", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_021_V2_5_165, { "165, Track Angle Rate", "asterix.021_V2_5_165", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_165_TAR, { "TAR, Track Angle Rate, [°/s]", "asterix.021_V2_5_165_TAR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_170, { "170, Target Identification", "asterix.021_V2_5_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_170_VALUE, { "Target Identification", "asterix.021_V2_5_170_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_200, { "200, Target Status", "asterix.021_V2_5_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_200_ICF, { "ICF, Intent Change Flag (see Note)", "asterix.021_V2_5_200_ICF", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_200_ICF), 0x80, NULL, HFILL } },
+ { &hf_021_V2_5_200_LNAV, { "LNAV, LNAV Mode", "asterix.021_V2_5_200_LNAV", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_200_LNAV), 0x40, NULL, HFILL } },
+ { &hf_021_V2_5_200_ME, { "ME, Military Emergency", "asterix.021_V2_5_200_ME", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_200_ME), 0x20, NULL, HFILL } },
+ { &hf_021_V2_5_200_PS, { "PS, Priority Status", "asterix.021_V2_5_200_PS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_200_PS), 0x1c, NULL, HFILL } },
+ { &hf_021_V2_5_200_SS, { "SS, Surveillance Status", "asterix.021_V2_5_200_SS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_200_SS), 0x03, NULL, HFILL } },
+ { &hf_021_V2_5_210, { "210, MOPS Version", "asterix.021_V2_5_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_210_VNS, { "VNS, Version Not Supported", "asterix.021_V2_5_210_VNS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_210_VNS), 0x40, NULL, HFILL } },
+ { &hf_021_V2_5_210_VN, { "VN, Version Number", "asterix.021_V2_5_210_VN", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_210_VN), 0x38, NULL, HFILL } },
+ { &hf_021_V2_5_210_LTT, { "LTT, Link Technology Type", "asterix.021_V2_5_210_LTT", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_210_LTT), 0x07, NULL, HFILL } },
+ { &hf_021_V2_5_220, { "220, Met Information", "asterix.021_V2_5_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_220_WS, { "WS, Wind Speed", "asterix.021_V2_5_220_WS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_220_WS_VALUE, { "Wind Speed, [kt]", "asterix.021_V2_5_220_WS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_220_WD, { "WD, Wind Direction", "asterix.021_V2_5_220_WD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_220_WD_VALUE, { "Wind Direction, [°]", "asterix.021_V2_5_220_WD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_220_TMP, { "TMP, Temperature", "asterix.021_V2_5_220_TMP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_220_TMP_VALUE, { "Temperature, [°C]", "asterix.021_V2_5_220_TMP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_220_TRB, { "TRB, Turbulence", "asterix.021_V2_5_220_TRB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_220_TRB_VALUE, { "Turbulence", "asterix.021_V2_5_220_TRB_VALUE", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_230, { "230, Roll Angle", "asterix.021_V2_5_230", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_230_VALUE, { "Roll Angle, [°]", "asterix.021_V2_5_230_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_250, { "250, Mode S MB Data", "asterix.021_V2_5_250", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_250_VALUE, { "Mode S MB Data", "asterix.021_V2_5_250_VALUE", FT_UINT64, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_260, { "260, ACAS Resolution Advisory Report", "asterix.021_V2_5_260", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_260_TYP, { "TYP, Message Type (= 28 for 1090 ES, Version 2)", "asterix.021_V2_5_260_TYP", FT_UINT8, BASE_DEC, NULL, 0xf8, NULL, HFILL } },
+ { &hf_021_V2_5_260_STYP, { "STYP, Message Sub-type (= 2 for 1090 ES, Version 2)", "asterix.021_V2_5_260_STYP", FT_UINT8, BASE_DEC, NULL, 0x07, NULL, HFILL } },
+ { &hf_021_V2_5_260_ARA, { "ARA, Active Resolution Advisories", "asterix.021_V2_5_260_ARA", FT_UINT16, BASE_DEC, NULL, 0xfffc, NULL, HFILL } },
+ { &hf_021_V2_5_260_RAC, { "RAC, RAC (RA Complement) Record", "asterix.021_V2_5_260_RAC", FT_UINT16, BASE_DEC, NULL, 0x03c0, NULL, HFILL } },
+ { &hf_021_V2_5_260_RAT, { "RAT, RA Terminated", "asterix.021_V2_5_260_RAT", FT_UINT8, BASE_DEC, NULL, 0x20, NULL, HFILL } },
+ { &hf_021_V2_5_260_MTE, { "MTE, Multiple Threat Encounter", "asterix.021_V2_5_260_MTE", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_021_V2_5_260_TTI, { "TTI, Threat Type Indicator", "asterix.021_V2_5_260_TTI", FT_UINT8, BASE_DEC, NULL, 0x0c, NULL, HFILL } },
+ { &hf_021_V2_5_260_TID, { "TID, Threat Identity Data", "asterix.021_V2_5_260_TID", FT_UINT32, BASE_DEC, NULL, 0x03ffffff, NULL, HFILL } },
+ { &hf_021_V2_5_271, { "271, Surface Capabilities and Characteristics", "asterix.021_V2_5_271", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_271_POA, { "POA, Position Offset Applied", "asterix.021_V2_5_271_POA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_271_POA), 0x20, NULL, HFILL } },
+ { &hf_021_V2_5_271_CDTIS, { "CDTIS, Cockpit Display of Traffic Information Surface", "asterix.021_V2_5_271_CDTIS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_271_CDTIS), 0x10, NULL, HFILL } },
+ { &hf_021_V2_5_271_B2LOW, { "B2LOW, Class B2 Transmit Power Less Than 70 Watts", "asterix.021_V2_5_271_B2LOW", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_271_B2LOW), 0x08, NULL, HFILL } },
+ { &hf_021_V2_5_271_RAS, { "RAS, Receiving ATC Services", "asterix.021_V2_5_271_RAS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_271_RAS), 0x04, NULL, HFILL } },
+ { &hf_021_V2_5_271_IDENT, { "IDENT, Setting of IDENT Switch", "asterix.021_V2_5_271_IDENT", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_5_271_IDENT), 0x02, NULL, HFILL } },
+ { &hf_021_V2_5_271_LW, { "LW, Length and Width of the Aircraft", "asterix.021_V2_5_271_LW", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_021_V2_5_295, { "295, Data Ages", "asterix.021_V2_5_295", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_AOS, { "AOS, Aircraft Operational Status Age", "asterix.021_V2_5_295_AOS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_AOS_VALUE, { "Aircraft Operational Status Age, [s]", "asterix.021_V2_5_295_AOS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_TRD, { "TRD, Target Report Descriptor Age", "asterix.021_V2_5_295_TRD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_TRD_VALUE, { "Target Report Descriptor Age, [s]", "asterix.021_V2_5_295_TRD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_M3A, { "M3A, Mode 3/A Age", "asterix.021_V2_5_295_M3A", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_M3A_VALUE, { "Mode 3/A Age, [s]", "asterix.021_V2_5_295_M3A_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_QI, { "QI, Quality Indicators Age", "asterix.021_V2_5_295_QI", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_QI_VALUE, { "Quality Indicators Age, [s]", "asterix.021_V2_5_295_QI_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_TI1, { "TI1, Trajectory Intent Age", "asterix.021_V2_5_295_TI1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_TI1_VALUE, { "Trajectory Intent Age, [s]", "asterix.021_V2_5_295_TI1_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_MAM, { "MAM, Message Amplitude Age", "asterix.021_V2_5_295_MAM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_MAM_VALUE, { "Message Amplitude Age, [s]", "asterix.021_V2_5_295_MAM_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_GH, { "GH, Geometric Height Age", "asterix.021_V2_5_295_GH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_GH_VALUE, { "Geometric Height Age, [s]", "asterix.021_V2_5_295_GH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_FL, { "FL, Flight Level Age", "asterix.021_V2_5_295_FL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_FL_VALUE, { "Flight Level Age, [s]", "asterix.021_V2_5_295_FL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_ISA, { "ISA, Intermediate State Selected Altitude Age", "asterix.021_V2_5_295_ISA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_ISA_VALUE, { "Intermediate State Selected Altitude Age, [s]", "asterix.021_V2_5_295_ISA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_FSA, { "FSA, Final State Selected Altitude Age", "asterix.021_V2_5_295_FSA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_FSA_VALUE, { "Final State Selected Altitude Age, [s]", "asterix.021_V2_5_295_FSA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_AS, { "AS, Air Speed Age", "asterix.021_V2_5_295_AS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_AS_VALUE, { "Air Speed Age, [s]", "asterix.021_V2_5_295_AS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_TAS, { "TAS, True Air Speed Age", "asterix.021_V2_5_295_TAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_TAS_VALUE, { "True Air Speed Age, [s]", "asterix.021_V2_5_295_TAS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_MH, { "MH, Magnetic Heading Age", "asterix.021_V2_5_295_MH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_MH_VALUE, { "Magnetic Heading Age, [s]", "asterix.021_V2_5_295_MH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_BVR, { "BVR, Barometric Vertical Rate Age", "asterix.021_V2_5_295_BVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_BVR_VALUE, { "Barometric Vertical Rate Age, [s]", "asterix.021_V2_5_295_BVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_GVR, { "GVR, Geometric Vertical Rate Age", "asterix.021_V2_5_295_GVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_GVR_VALUE, { "Geometric Vertical Rate Age, [s]", "asterix.021_V2_5_295_GVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_GV, { "GV, Ground Vector Age", "asterix.021_V2_5_295_GV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_GV_VALUE, { "Ground Vector Age, [s]", "asterix.021_V2_5_295_GV_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_TAR, { "TAR, Track Angle Rate Age", "asterix.021_V2_5_295_TAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_TAR_VALUE, { "Track Angle Rate Age, [s]", "asterix.021_V2_5_295_TAR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_TI2, { "TI2, Target Identification Age", "asterix.021_V2_5_295_TI2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_TI2_VALUE, { "Target Identification Age, [s]", "asterix.021_V2_5_295_TI2_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_TS, { "TS, Target Status Age", "asterix.021_V2_5_295_TS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_TS_VALUE, { "Target Status Age, [s]", "asterix.021_V2_5_295_TS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_MET, { "MET, Met Information Age", "asterix.021_V2_5_295_MET", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_MET_VALUE, { "Met Information Age, [s]", "asterix.021_V2_5_295_MET_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_ROA, { "ROA, Roll Angle Age", "asterix.021_V2_5_295_ROA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_ROA_VALUE, { "Roll Angle Age, [s]", "asterix.021_V2_5_295_ROA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_ARA, { "ARA, ACAS Resolution Advisory Age", "asterix.021_V2_5_295_ARA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_ARA_VALUE, { "ACAS Resolution Advisory Age, [s]", "asterix.021_V2_5_295_ARA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_SCC, { "SCC, Surface Capabilities and Characteristics Age", "asterix.021_V2_5_295_SCC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_295_SCC_VALUE, { "Surface Capabilities and Characteristics Age, [s]", "asterix.021_V2_5_295_SCC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_400, { "400, Receiver ID", "asterix.021_V2_5_400", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_400_VALUE, { "Receiver ID", "asterix.021_V2_5_400_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_RE, { "RE, Reserved Expansion Field", "asterix.021_V2_5_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_5_SP, { "SP, Special Purpose Field", "asterix.021_V2_5_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_008, { "008, Aircraft Operational Status", "asterix.021_V2_6_008", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_008_RA, { "RA, TCAS Resolution Advisory Active", "asterix.021_V2_6_008_RA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_008_RA), 0x80, NULL, HFILL } },
+ { &hf_021_V2_6_008_TC, { "TC, Target Trajectory Change Report Capability", "asterix.021_V2_6_008_TC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_008_TC), 0x60, NULL, HFILL } },
+ { &hf_021_V2_6_008_TS, { "TS, Target State Report Capability", "asterix.021_V2_6_008_TS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_008_TS), 0x10, NULL, HFILL } },
+ { &hf_021_V2_6_008_ARV, { "ARV, Air-Referenced Velocity Report Capability", "asterix.021_V2_6_008_ARV", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_008_ARV), 0x08, NULL, HFILL } },
+ { &hf_021_V2_6_008_CDTIA, { "CDTIA, Cockpit Display of Traffic Information Airborne", "asterix.021_V2_6_008_CDTIA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_008_CDTIA), 0x04, NULL, HFILL } },
+ { &hf_021_V2_6_008_NOTTCAS, { "NOTTCAS, TCAS System Status", "asterix.021_V2_6_008_NOTTCAS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_008_NOTTCAS), 0x02, NULL, HFILL } },
+ { &hf_021_V2_6_008_SA, { "SA, Single Antenna", "asterix.021_V2_6_008_SA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_008_SA), 0x01, NULL, HFILL } },
+ { &hf_021_V2_6_010, { "010, Data Source Identification", "asterix.021_V2_6_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_010_SAC, { "SAC, System Area Code", "asterix.021_V2_6_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_010_SIC, { "SIC, System Identification Code", "asterix.021_V2_6_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_015, { "015, Service Identification", "asterix.021_V2_6_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_015_VALUE, { "Service Identification", "asterix.021_V2_6_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_016, { "016, Service Management", "asterix.021_V2_6_016", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_016_VALUE, { "Service Management, [s]", "asterix.021_V2_6_016_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_020, { "020, Emitter Category", "asterix.021_V2_6_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_020_VALUE, { "Emitter Category", "asterix.021_V2_6_020_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_020_VALUE), 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_040, { "040, Target Report Descriptor", "asterix.021_V2_6_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_040_ATP, { "ATP, Address Type", "asterix.021_V2_6_040_ATP", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_040_ATP), 0xe0, NULL, HFILL } },
+ { &hf_021_V2_6_040_ARC, { "ARC, Altitude Reporting Capability", "asterix.021_V2_6_040_ARC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_040_ARC), 0x18, NULL, HFILL } },
+ { &hf_021_V2_6_040_RC, { "RC, Range Check", "asterix.021_V2_6_040_RC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_040_RC), 0x04, NULL, HFILL } },
+ { &hf_021_V2_6_040_RAB, { "RAB, Report Type", "asterix.021_V2_6_040_RAB", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_040_RAB), 0x02, NULL, HFILL } },
+ { &hf_021_V2_6_040_DCR, { "DCR, Differential Correction", "asterix.021_V2_6_040_DCR", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_040_DCR), 0x80, NULL, HFILL } },
+ { &hf_021_V2_6_040_GBS, { "GBS, Ground Bit Setting", "asterix.021_V2_6_040_GBS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_040_GBS), 0x40, NULL, HFILL } },
+ { &hf_021_V2_6_040_SIM, { "SIM, Simulated Target", "asterix.021_V2_6_040_SIM", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_040_SIM), 0x20, NULL, HFILL } },
+ { &hf_021_V2_6_040_TST, { "TST, Test Target", "asterix.021_V2_6_040_TST", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_040_TST), 0x10, NULL, HFILL } },
+ { &hf_021_V2_6_040_SAA, { "SAA, Selected Altitude Available", "asterix.021_V2_6_040_SAA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_040_SAA), 0x08, NULL, HFILL } },
+ { &hf_021_V2_6_040_CL, { "CL, Confidence Level", "asterix.021_V2_6_040_CL", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_040_CL), 0x06, NULL, HFILL } },
+ { &hf_021_V2_6_040_LLC, { "LLC, List Lookup Check", "asterix.021_V2_6_040_LLC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_040_LLC), 0x40, NULL, HFILL } },
+ { &hf_021_V2_6_040_IPC, { "IPC, Independent Position Check", "asterix.021_V2_6_040_IPC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_040_IPC), 0x20, NULL, HFILL } },
+ { &hf_021_V2_6_040_NOGO, { "NOGO, No-go Bit Status", "asterix.021_V2_6_040_NOGO", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_040_NOGO), 0x10, NULL, HFILL } },
+ { &hf_021_V2_6_040_CPR, { "CPR, Compact Position Reporting", "asterix.021_V2_6_040_CPR", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_040_CPR), 0x08, NULL, HFILL } },
+ { &hf_021_V2_6_040_LDPJ, { "LDPJ, Local Decoding Position Jump", "asterix.021_V2_6_040_LDPJ", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_040_LDPJ), 0x04, NULL, HFILL } },
+ { &hf_021_V2_6_040_RCF, { "RCF, Range Check", "asterix.021_V2_6_040_RCF", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_040_RCF), 0x02, NULL, HFILL } },
+ { &hf_021_V2_6_040_TBC, { "TBC, Total Bits Corrected", "asterix.021_V2_6_040_TBC", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_021_V2_6_040_MBC, { "MBC, Maximum Bits Corrected", "asterix.021_V2_6_040_MBC", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_021_V2_6_070, { "070, Mode 3/A Code in Octal Representation", "asterix.021_V2_6_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_070_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.021_V2_6_070_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_021_V2_6_071, { "071, Time of Applicability for Position", "asterix.021_V2_6_071", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_071_VALUE, { "Time of Applicability for Position, [s]", "asterix.021_V2_6_071_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_072, { "072, Time of Applicability for Velocity", "asterix.021_V2_6_072", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_072_VALUE, { "Time of Applicability for Velocity, [s]", "asterix.021_V2_6_072_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_073, { "073, Time of Message Reception for Position", "asterix.021_V2_6_073", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_073_VALUE, { "Time of Message Reception for Position, [s]", "asterix.021_V2_6_073_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_074, { "074, Time of Message Reception of Position-High Precision", "asterix.021_V2_6_074", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_074_FSI, { "FSI, Full Second Indication", "asterix.021_V2_6_074_FSI", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_074_FSI), 0xc0, NULL, HFILL } },
+ { &hf_021_V2_6_074_TOMRP, { "TOMRP, Fractional Part of the Time of Message Reception for Position in the Ground Station, [s]", "asterix.021_V2_6_074_TOMRP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_075, { "075, Time of Message Reception for Velocity", "asterix.021_V2_6_075", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_075_VALUE, { "Time of Message Reception for Velocity, [s]", "asterix.021_V2_6_075_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_076, { "076, Time of Message Reception of Velocity-High Precision", "asterix.021_V2_6_076", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_076_FSI, { "FSI, Full Second Indication", "asterix.021_V2_6_076_FSI", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_076_FSI), 0xc0, NULL, HFILL } },
+ { &hf_021_V2_6_076_TOMRP, { "TOMRP, Fractional Part of the Time of Message Reception for Position in the Ground Station, [s]", "asterix.021_V2_6_076_TOMRP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_077, { "077, Time of ASTERIX Report Transmission", "asterix.021_V2_6_077", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_077_VALUE, { "Time of ASTERIX Report Transmission, [s]", "asterix.021_V2_6_077_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_080, { "080, Target Address", "asterix.021_V2_6_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_080_VALUE, { "Target Address", "asterix.021_V2_6_080_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_090, { "090, Quality Indicators", "asterix.021_V2_6_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_090_NUCRNACV, { "NUCRNACV, Navigation Uncertainty Category for Velocity NUCr or the Navigation Accuracy Category for Velocity NACv", "asterix.021_V2_6_090_NUCRNACV", FT_UINT8, BASE_DEC, NULL, 0xe0, NULL, HFILL } },
+ { &hf_021_V2_6_090_NUCPNIC, { "NUCPNIC, Navigation Uncertainty Category for Position NUCp or Navigation Integrity Category NIC", "asterix.021_V2_6_090_NUCPNIC", FT_UINT8, BASE_DEC, NULL, 0x1e, NULL, HFILL } },
+ { &hf_021_V2_6_090_NICBARO, { "NICBARO, Navigation Integrity Category for Barometric Altitude", "asterix.021_V2_6_090_NICBARO", FT_UINT8, BASE_DEC, NULL, 0x80, NULL, HFILL } },
+ { &hf_021_V2_6_090_SIL, { "SIL, Surveillance (version 1) or Source (version 2) Integrity Level", "asterix.021_V2_6_090_SIL", FT_UINT8, BASE_DEC, NULL, 0x60, NULL, HFILL } },
+ { &hf_021_V2_6_090_NACP, { "NACP, Navigation Accuracy Category for Position", "asterix.021_V2_6_090_NACP", FT_UINT8, BASE_DEC, NULL, 0x1e, NULL, HFILL } },
+ { &hf_021_V2_6_090_SILS, { "SILS, SIL-Supplement", "asterix.021_V2_6_090_SILS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_090_SILS), 0x20, NULL, HFILL } },
+ { &hf_021_V2_6_090_SDA, { "SDA, Horizontal Position System Design Assurance Level (as Defined in Version 2)", "asterix.021_V2_6_090_SDA", FT_UINT8, BASE_DEC, NULL, 0x18, NULL, HFILL } },
+ { &hf_021_V2_6_090_GVA, { "GVA, Geometric Altitude Accuracy", "asterix.021_V2_6_090_GVA", FT_UINT8, BASE_DEC, NULL, 0x06, NULL, HFILL } },
+ { &hf_021_V2_6_090_PIC, { "PIC, Position Integrity Category", "asterix.021_V2_6_090_PIC", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_021_V2_6_110, { "110, Trajectory Intent", "asterix.021_V2_6_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_110_TIS, { "TIS, Trajectory Intent Status", "asterix.021_V2_6_110_TIS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_110_TIS_NAV, { "NAV", "asterix.021_V2_6_110_TIS_NAV", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_110_TIS_NAV), 0x80, NULL, HFILL } },
+ { &hf_021_V2_6_110_TIS_NVB, { "NVB", "asterix.021_V2_6_110_TIS_NVB", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_110_TIS_NVB), 0x40, NULL, HFILL } },
+ { &hf_021_V2_6_110_TID, { "TID, Trajectory Intent Data", "asterix.021_V2_6_110_TID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_110_TID_TCA, { "TCA", "asterix.021_V2_6_110_TID_TCA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_110_TID_TCA), 0x80, NULL, HFILL } },
+ { &hf_021_V2_6_110_TID_NC, { "NC", "asterix.021_V2_6_110_TID_NC", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_110_TID_NC), 0x40, NULL, HFILL } },
+ { &hf_021_V2_6_110_TID_TCPN, { "TCPN", "asterix.021_V2_6_110_TID_TCPN", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_021_V2_6_110_TID_ALT, { "ALT, Altitude in Two's Complement Form, [ft]", "asterix.021_V2_6_110_TID_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_110_TID_LAT, { "LAT, In WGS.84 in Two's Complement, [°]", "asterix.021_V2_6_110_TID_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_110_TID_LON, { "LON, In WGS.84 in Two's Complement, [°]", "asterix.021_V2_6_110_TID_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_110_TID_PT, { "PT, Point Type", "asterix.021_V2_6_110_TID_PT", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_110_TID_PT), 0xf0, NULL, HFILL } },
+ { &hf_021_V2_6_110_TID_TD, { "TD", "asterix.021_V2_6_110_TID_TD", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_110_TID_TD), 0x0c, NULL, HFILL } },
+ { &hf_021_V2_6_110_TID_TRA, { "TRA", "asterix.021_V2_6_110_TID_TRA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_110_TID_TRA), 0x02, NULL, HFILL } },
+ { &hf_021_V2_6_110_TID_TOA, { "TOA", "asterix.021_V2_6_110_TID_TOA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_110_TID_TOA), 0x01, NULL, HFILL } },
+ { &hf_021_V2_6_110_TID_TOV, { "TOV, Time Over Point, [s]", "asterix.021_V2_6_110_TID_TOV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_110_TID_TTR, { "TTR, TCP Turn Radius, [NM]", "asterix.021_V2_6_110_TID_TTR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_130, { "130, Position in WGS-84 Co-ordinates", "asterix.021_V2_6_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_130_LAT, { "LAT, Latitude, [°]", "asterix.021_V2_6_130_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_130_LON, { "LON, Longitude, [°]", "asterix.021_V2_6_130_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_131, { "131, High-Resolution Position in WGS-84 Co-ordinates", "asterix.021_V2_6_131", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_131_LAT, { "LAT, Latitude, [°]", "asterix.021_V2_6_131_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_131_LON, { "LON, Longitude, [°]", "asterix.021_V2_6_131_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_132, { "132, Message Amplitude", "asterix.021_V2_6_132", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_132_VALUE, { "Message Amplitude, [dBm]", "asterix.021_V2_6_132_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_140, { "140, Geometric Height", "asterix.021_V2_6_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_140_VALUE, { "Geometric Height, [ft]", "asterix.021_V2_6_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_145, { "145, Flight Level", "asterix.021_V2_6_145", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_145_VALUE, { "Flight Level, [FL]", "asterix.021_V2_6_145_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_146, { "146, Selected Altitude", "asterix.021_V2_6_146", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_146_SAS, { "SAS, Source Availability", "asterix.021_V2_6_146_SAS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_146_SAS), 0x80, NULL, HFILL } },
+ { &hf_021_V2_6_146_S, { "S, Source", "asterix.021_V2_6_146_S", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_146_S), 0x60, NULL, HFILL } },
+ { &hf_021_V2_6_146_ALT, { "ALT, Altitude, [ft]", "asterix.021_V2_6_146_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_148, { "148, Final State Selected Altitude", "asterix.021_V2_6_148", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_148_MV, { "MV, Manage Vertical Mode", "asterix.021_V2_6_148_MV", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_148_MV), 0x80, NULL, HFILL } },
+ { &hf_021_V2_6_148_AH, { "AH, Altitude Hold Mode", "asterix.021_V2_6_148_AH", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_148_AH), 0x40, NULL, HFILL } },
+ { &hf_021_V2_6_148_AM, { "AM, Approach Mode", "asterix.021_V2_6_148_AM", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_148_AM), 0x20, NULL, HFILL } },
+ { &hf_021_V2_6_148_ALT, { "ALT, Altitude, [ft]", "asterix.021_V2_6_148_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_150, { "150, Air Speed", "asterix.021_V2_6_150", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_150_IM, { "IM", "asterix.021_V2_6_150_IM", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_150_IM), 0x80, NULL, HFILL } },
+ { &hf_021_V2_6_150_AS, { "AS, Air Speed (IAS or Mach)", "asterix.021_V2_6_150_AS", FT_UINT16, BASE_DEC, NULL, 0x7fff, NULL, HFILL } },
+ { &hf_021_V2_6_151, { "151, True Airspeed", "asterix.021_V2_6_151", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_151_RE, { "RE, Range Exceeded Indicator", "asterix.021_V2_6_151_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_151_RE), 0x80, NULL, HFILL } },
+ { &hf_021_V2_6_151_TAS, { "TAS, True Air Speed, [kt]", "asterix.021_V2_6_151_TAS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_152, { "152, Magnetic Heading", "asterix.021_V2_6_152", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_152_VALUE, { "Magnetic Heading, [°]", "asterix.021_V2_6_152_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_155, { "155, Barometric Vertical Rate", "asterix.021_V2_6_155", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_155_RE, { "RE, Range Exceeded Indicator", "asterix.021_V2_6_155_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_155_RE), 0x80, NULL, HFILL } },
+ { &hf_021_V2_6_155_BVR, { "BVR, Barometric Vertical Rate, [ft/min]", "asterix.021_V2_6_155_BVR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_157, { "157, Geometric Vertical Rate", "asterix.021_V2_6_157", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_157_RE, { "RE, Range Exceeded Indicator", "asterix.021_V2_6_157_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_157_RE), 0x80, NULL, HFILL } },
+ { &hf_021_V2_6_157_GVR, { "GVR, Geometric Vertical Rate, [ft/min]", "asterix.021_V2_6_157_GVR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_160, { "160, Airborne Ground Vector", "asterix.021_V2_6_160", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_160_RE, { "RE, Range Exceeded Indicator", "asterix.021_V2_6_160_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_160_RE), 0x80, NULL, HFILL } },
+ { &hf_021_V2_6_160_GS, { "GS, Ground Speed Referenced to WGS-84, [NM/s]", "asterix.021_V2_6_160_GS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_160_TA, { "TA, Track Angle Clockwise Reference to True North, [°]", "asterix.021_V2_6_160_TA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_161, { "161, Track Number", "asterix.021_V2_6_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_161_TRNUM, { "TRNUM, Track Number", "asterix.021_V2_6_161_TRNUM", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_021_V2_6_165, { "165, Track Angle Rate", "asterix.021_V2_6_165", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_165_TAR, { "TAR, Track Angle Rate, [°/s]", "asterix.021_V2_6_165_TAR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_170, { "170, Target Identification", "asterix.021_V2_6_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_170_VALUE, { "Target Identification", "asterix.021_V2_6_170_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_200, { "200, Target Status", "asterix.021_V2_6_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_200_ICF, { "ICF, Intent Change Flag (see Note)", "asterix.021_V2_6_200_ICF", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_200_ICF), 0x80, NULL, HFILL } },
+ { &hf_021_V2_6_200_LNAV, { "LNAV, LNAV Mode", "asterix.021_V2_6_200_LNAV", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_200_LNAV), 0x40, NULL, HFILL } },
+ { &hf_021_V2_6_200_ME, { "ME, Military Emergency", "asterix.021_V2_6_200_ME", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_200_ME), 0x20, NULL, HFILL } },
+ { &hf_021_V2_6_200_PS, { "PS, Priority Status", "asterix.021_V2_6_200_PS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_200_PS), 0x1c, NULL, HFILL } },
+ { &hf_021_V2_6_200_SS, { "SS, Surveillance Status", "asterix.021_V2_6_200_SS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_200_SS), 0x03, NULL, HFILL } },
+ { &hf_021_V2_6_210, { "210, MOPS Version", "asterix.021_V2_6_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_210_VNS, { "VNS, Version Not Supported", "asterix.021_V2_6_210_VNS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_210_VNS), 0x40, NULL, HFILL } },
+ { &hf_021_V2_6_210_VN, { "VN, Version Number", "asterix.021_V2_6_210_VN", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_210_VN), 0x38, NULL, HFILL } },
+ { &hf_021_V2_6_210_LTT, { "LTT, Link Technology Type", "asterix.021_V2_6_210_LTT", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_210_LTT), 0x07, NULL, HFILL } },
+ { &hf_021_V2_6_220, { "220, Met Information", "asterix.021_V2_6_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_220_WS, { "WS, Wind Speed", "asterix.021_V2_6_220_WS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_220_WS_VALUE, { "Wind Speed, [kt]", "asterix.021_V2_6_220_WS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_220_WD, { "WD, Wind Direction", "asterix.021_V2_6_220_WD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_220_WD_VALUE, { "Wind Direction, [°]", "asterix.021_V2_6_220_WD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_220_TMP, { "TMP, Temperature", "asterix.021_V2_6_220_TMP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_220_TMP_VALUE, { "Temperature, [°C]", "asterix.021_V2_6_220_TMP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_220_TRB, { "TRB, Turbulence", "asterix.021_V2_6_220_TRB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_220_TRB_VALUE, { "Turbulence", "asterix.021_V2_6_220_TRB_VALUE", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_230, { "230, Roll Angle", "asterix.021_V2_6_230", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_230_VALUE, { "Roll Angle, [°]", "asterix.021_V2_6_230_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_250, { "250, Mode S MB Data", "asterix.021_V2_6_250", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_250_VALUE, { "Mode S MB Data", "asterix.021_V2_6_250_VALUE", FT_UINT64, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_260, { "260, ACAS Resolution Advisory Report", "asterix.021_V2_6_260", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_260_TYP, { "TYP, Message Type (= 28 for 1090 ES, Version 2)", "asterix.021_V2_6_260_TYP", FT_UINT8, BASE_DEC, NULL, 0xf8, NULL, HFILL } },
+ { &hf_021_V2_6_260_STYP, { "STYP, Message Sub-type (= 2 for 1090 ES, Version 2)", "asterix.021_V2_6_260_STYP", FT_UINT8, BASE_DEC, NULL, 0x07, NULL, HFILL } },
+ { &hf_021_V2_6_260_ARA, { "ARA, Active Resolution Advisories", "asterix.021_V2_6_260_ARA", FT_UINT16, BASE_DEC, NULL, 0xfffc, NULL, HFILL } },
+ { &hf_021_V2_6_260_RAC, { "RAC, RAC (RA Complement) Record", "asterix.021_V2_6_260_RAC", FT_UINT16, BASE_DEC, NULL, 0x03c0, NULL, HFILL } },
+ { &hf_021_V2_6_260_RAT, { "RAT, RA Terminated", "asterix.021_V2_6_260_RAT", FT_UINT8, BASE_DEC, NULL, 0x20, NULL, HFILL } },
+ { &hf_021_V2_6_260_MTE, { "MTE, Multiple Threat Encounter", "asterix.021_V2_6_260_MTE", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_021_V2_6_260_TTI, { "TTI, Threat Type Indicator", "asterix.021_V2_6_260_TTI", FT_UINT8, BASE_DEC, NULL, 0x0c, NULL, HFILL } },
+ { &hf_021_V2_6_260_TID, { "TID, Threat Identity Data", "asterix.021_V2_6_260_TID", FT_UINT32, BASE_DEC, NULL, 0x03ffffff, NULL, HFILL } },
+ { &hf_021_V2_6_271, { "271, Surface Capabilities and Characteristics", "asterix.021_V2_6_271", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_271_POA, { "POA, Position Offset Applied", "asterix.021_V2_6_271_POA", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_271_POA), 0x20, NULL, HFILL } },
+ { &hf_021_V2_6_271_CDTIS, { "CDTIS, Cockpit Display of Traffic Information Surface", "asterix.021_V2_6_271_CDTIS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_271_CDTIS), 0x10, NULL, HFILL } },
+ { &hf_021_V2_6_271_B2LOW, { "B2LOW, Class B2 Transmit Power Less Than 70 Watts", "asterix.021_V2_6_271_B2LOW", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_271_B2LOW), 0x08, NULL, HFILL } },
+ { &hf_021_V2_6_271_RAS, { "RAS, Receiving ATC Services", "asterix.021_V2_6_271_RAS", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_271_RAS), 0x04, NULL, HFILL } },
+ { &hf_021_V2_6_271_IDENT, { "IDENT, Setting of IDENT Switch", "asterix.021_V2_6_271_IDENT", FT_UINT8, BASE_DEC, VALS (valstr_021_V2_6_271_IDENT), 0x02, NULL, HFILL } },
+ { &hf_021_V2_6_271_LW, { "LW, Length and Width of the Aircraft", "asterix.021_V2_6_271_LW", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_021_V2_6_295, { "295, Data Ages", "asterix.021_V2_6_295", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_AOS, { "AOS, Aircraft Operational Status Age", "asterix.021_V2_6_295_AOS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_AOS_VALUE, { "Aircraft Operational Status Age, [s]", "asterix.021_V2_6_295_AOS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_TRD, { "TRD, Target Report Descriptor Age", "asterix.021_V2_6_295_TRD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_TRD_VALUE, { "Target Report Descriptor Age, [s]", "asterix.021_V2_6_295_TRD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_M3A, { "M3A, Mode 3/A Age", "asterix.021_V2_6_295_M3A", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_M3A_VALUE, { "Mode 3/A Age, [s]", "asterix.021_V2_6_295_M3A_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_QI, { "QI, Quality Indicators Age", "asterix.021_V2_6_295_QI", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_QI_VALUE, { "Quality Indicators Age, [s]", "asterix.021_V2_6_295_QI_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_TI1, { "TI1, Trajectory Intent Age", "asterix.021_V2_6_295_TI1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_TI1_VALUE, { "Trajectory Intent Age, [s]", "asterix.021_V2_6_295_TI1_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_MAM, { "MAM, Message Amplitude Age", "asterix.021_V2_6_295_MAM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_MAM_VALUE, { "Message Amplitude Age, [s]", "asterix.021_V2_6_295_MAM_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_GH, { "GH, Geometric Height Age", "asterix.021_V2_6_295_GH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_GH_VALUE, { "Geometric Height Age, [s]", "asterix.021_V2_6_295_GH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_FL, { "FL, Flight Level Age", "asterix.021_V2_6_295_FL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_FL_VALUE, { "Flight Level Age, [s]", "asterix.021_V2_6_295_FL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_SAL, { "SAL, Selected Altitude Age", "asterix.021_V2_6_295_SAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_SAL_VALUE, { "Selected Altitude Age, [s]", "asterix.021_V2_6_295_SAL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_FSA, { "FSA, Final State Selected Altitude Age", "asterix.021_V2_6_295_FSA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_FSA_VALUE, { "Final State Selected Altitude Age, [s]", "asterix.021_V2_6_295_FSA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_AS, { "AS, Air Speed Age", "asterix.021_V2_6_295_AS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_AS_VALUE, { "Air Speed Age, [s]", "asterix.021_V2_6_295_AS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_TAS, { "TAS, True Air Speed Age", "asterix.021_V2_6_295_TAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_TAS_VALUE, { "True Air Speed Age, [s]", "asterix.021_V2_6_295_TAS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_MH, { "MH, Magnetic Heading Age", "asterix.021_V2_6_295_MH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_MH_VALUE, { "Magnetic Heading Age, [s]", "asterix.021_V2_6_295_MH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_BVR, { "BVR, Barometric Vertical Rate Age", "asterix.021_V2_6_295_BVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_BVR_VALUE, { "Barometric Vertical Rate Age, [s]", "asterix.021_V2_6_295_BVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_GVR, { "GVR, Geometric Vertical Rate Age", "asterix.021_V2_6_295_GVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_GVR_VALUE, { "Geometric Vertical Rate Age, [s]", "asterix.021_V2_6_295_GVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_GV, { "GV, Ground Vector Age", "asterix.021_V2_6_295_GV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_GV_VALUE, { "Ground Vector Age, [s]", "asterix.021_V2_6_295_GV_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_TAR, { "TAR, Track Angle Rate Age", "asterix.021_V2_6_295_TAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_TAR_VALUE, { "Track Angle Rate Age, [s]", "asterix.021_V2_6_295_TAR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_TI2, { "TI2, Target Identification Age", "asterix.021_V2_6_295_TI2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_TI2_VALUE, { "Target Identification Age, [s]", "asterix.021_V2_6_295_TI2_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_TS, { "TS, Target Status Age", "asterix.021_V2_6_295_TS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_TS_VALUE, { "Target Status Age, [s]", "asterix.021_V2_6_295_TS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_MET, { "MET, Met Information Age", "asterix.021_V2_6_295_MET", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_MET_VALUE, { "Met Information Age, [s]", "asterix.021_V2_6_295_MET_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_ROA, { "ROA, Roll Angle Age", "asterix.021_V2_6_295_ROA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_ROA_VALUE, { "Roll Angle Age, [s]", "asterix.021_V2_6_295_ROA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_ARA, { "ARA, ACAS Resolution Advisory Age", "asterix.021_V2_6_295_ARA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_ARA_VALUE, { "ACAS Resolution Advisory Age, [s]", "asterix.021_V2_6_295_ARA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_SCC, { "SCC, Surface Capabilities and Characteristics Age", "asterix.021_V2_6_295_SCC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_295_SCC_VALUE, { "Surface Capabilities and Characteristics Age, [s]", "asterix.021_V2_6_295_SCC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_400, { "400, Receiver ID", "asterix.021_V2_6_400", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_400_VALUE, { "Receiver ID", "asterix.021_V2_6_400_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_RE, { "RE, Reserved Expansion Field", "asterix.021_V2_6_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_V2_6_SP, { "SP, Special Purpose Field", "asterix.021_V2_6_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_008, { "008, Aircraft Operational Status", "asterix.021_008", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_008_RA, { "RA, TCAS Resolution Advisory Active", "asterix.021_008_RA", FT_UINT8, BASE_DEC, VALS (valstr_021_008_RA), 0x80, NULL, HFILL } },
+ { &hf_021_008_TC, { "TC, Target Trajectory Change Report Capability", "asterix.021_008_TC", FT_UINT8, BASE_DEC, VALS (valstr_021_008_TC), 0x60, NULL, HFILL } },
+ { &hf_021_008_TS, { "TS, Target State Report Capability", "asterix.021_008_TS", FT_UINT8, BASE_DEC, VALS (valstr_021_008_TS), 0x10, NULL, HFILL } },
+ { &hf_021_008_ARV, { "ARV, Air-Referenced Velocity Report Capability", "asterix.021_008_ARV", FT_UINT8, BASE_DEC, VALS (valstr_021_008_ARV), 0x08, NULL, HFILL } },
+ { &hf_021_008_CDTIA, { "CDTIA, Cockpit Display of Traffic Information Airborne", "asterix.021_008_CDTIA", FT_UINT8, BASE_DEC, VALS (valstr_021_008_CDTIA), 0x04, NULL, HFILL } },
+ { &hf_021_008_NOTTCAS, { "NOTTCAS, TCAS System Status", "asterix.021_008_NOTTCAS", FT_UINT8, BASE_DEC, VALS (valstr_021_008_NOTTCAS), 0x02, NULL, HFILL } },
+ { &hf_021_008_SA, { "SA, Single Antenna", "asterix.021_008_SA", FT_UINT8, BASE_DEC, VALS (valstr_021_008_SA), 0x01, NULL, HFILL } },
+ { &hf_021_010, { "010, Data Source Identification", "asterix.021_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_010_SAC, { "SAC, System Area Code", "asterix.021_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_010_SIC, { "SIC, System Identification Code", "asterix.021_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_015, { "015, Service Identification", "asterix.021_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_015_VALUE, { "Service Identification", "asterix.021_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_016, { "016, Service Management", "asterix.021_016", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_016_VALUE, { "Service Management, [s]", "asterix.021_016_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_020, { "020, Emitter Category", "asterix.021_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_020_VALUE, { "Emitter Category", "asterix.021_020_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_021_020_VALUE), 0x00, NULL, HFILL } },
+ { &hf_021_040, { "040, Target Report Descriptor", "asterix.021_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_040_ATP, { "ATP, Address Type", "asterix.021_040_ATP", FT_UINT8, BASE_DEC, VALS (valstr_021_040_ATP), 0xe0, NULL, HFILL } },
+ { &hf_021_040_ARC, { "ARC, Altitude Reporting Capability", "asterix.021_040_ARC", FT_UINT8, BASE_DEC, VALS (valstr_021_040_ARC), 0x18, NULL, HFILL } },
+ { &hf_021_040_RC, { "RC, Range Check", "asterix.021_040_RC", FT_UINT8, BASE_DEC, VALS (valstr_021_040_RC), 0x04, NULL, HFILL } },
+ { &hf_021_040_RAB, { "RAB, Report Type", "asterix.021_040_RAB", FT_UINT8, BASE_DEC, VALS (valstr_021_040_RAB), 0x02, NULL, HFILL } },
+ { &hf_021_040_DCR, { "DCR, Differential Correction", "asterix.021_040_DCR", FT_UINT8, BASE_DEC, VALS (valstr_021_040_DCR), 0x80, NULL, HFILL } },
+ { &hf_021_040_GBS, { "GBS, Ground Bit Setting", "asterix.021_040_GBS", FT_UINT8, BASE_DEC, VALS (valstr_021_040_GBS), 0x40, NULL, HFILL } },
+ { &hf_021_040_SIM, { "SIM, Simulated Target", "asterix.021_040_SIM", FT_UINT8, BASE_DEC, VALS (valstr_021_040_SIM), 0x20, NULL, HFILL } },
+ { &hf_021_040_TST, { "TST, Test Target", "asterix.021_040_TST", FT_UINT8, BASE_DEC, VALS (valstr_021_040_TST), 0x10, NULL, HFILL } },
+ { &hf_021_040_SAA, { "SAA, Selected Altitude Available", "asterix.021_040_SAA", FT_UINT8, BASE_DEC, VALS (valstr_021_040_SAA), 0x08, NULL, HFILL } },
+ { &hf_021_040_CL, { "CL, Confidence Level", "asterix.021_040_CL", FT_UINT8, BASE_DEC, VALS (valstr_021_040_CL), 0x06, NULL, HFILL } },
+ { &hf_021_040_LLC, { "LLC, List Lookup Check", "asterix.021_040_LLC", FT_UINT8, BASE_DEC, VALS (valstr_021_040_LLC), 0x40, NULL, HFILL } },
+ { &hf_021_040_IPC, { "IPC, Independent Position Check", "asterix.021_040_IPC", FT_UINT8, BASE_DEC, VALS (valstr_021_040_IPC), 0x20, NULL, HFILL } },
+ { &hf_021_040_NOGO, { "NOGO, No-go Bit Status", "asterix.021_040_NOGO", FT_UINT8, BASE_DEC, VALS (valstr_021_040_NOGO), 0x10, NULL, HFILL } },
+ { &hf_021_040_CPR, { "CPR, Compact Position Reporting", "asterix.021_040_CPR", FT_UINT8, BASE_DEC, VALS (valstr_021_040_CPR), 0x08, NULL, HFILL } },
+ { &hf_021_040_LDPJ, { "LDPJ, Local Decoding Position Jump", "asterix.021_040_LDPJ", FT_UINT8, BASE_DEC, VALS (valstr_021_040_LDPJ), 0x04, NULL, HFILL } },
+ { &hf_021_040_RCF, { "RCF, Range Check", "asterix.021_040_RCF", FT_UINT8, BASE_DEC, VALS (valstr_021_040_RCF), 0x02, NULL, HFILL } },
+ { &hf_021_040_TBC, { "TBC, Total Bits Corrected", "asterix.021_040_TBC", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_021_040_MBC, { "MBC, Maximum Bits Corrected", "asterix.021_040_MBC", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_021_070, { "070, Mode 3/A Code in Octal Representation", "asterix.021_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_070_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.021_070_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_021_071, { "071, Time of Applicability for Position", "asterix.021_071", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_071_VALUE, { "Time of Applicability for Position, [s]", "asterix.021_071_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_072, { "072, Time of Applicability for Velocity", "asterix.021_072", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_072_VALUE, { "Time of Applicability for Velocity, [s]", "asterix.021_072_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_073, { "073, Time of Message Reception for Position", "asterix.021_073", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_073_VALUE, { "Time of Message Reception for Position, [s]", "asterix.021_073_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_074, { "074, Time of Message Reception of Position-High Precision", "asterix.021_074", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_074_FSI, { "FSI, Full Second Indication", "asterix.021_074_FSI", FT_UINT8, BASE_DEC, VALS (valstr_021_074_FSI), 0xc0, NULL, HFILL } },
+ { &hf_021_074_TOMRP, { "TOMRP, Fractional Part of the Time of Message Reception for Position in the Ground Station, [s]", "asterix.021_074_TOMRP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_075, { "075, Time of Message Reception for Velocity", "asterix.021_075", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_075_VALUE, { "Time of Message Reception for Velocity, [s]", "asterix.021_075_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_076, { "076, Time of Message Reception of Velocity-High Precision", "asterix.021_076", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_076_FSI, { "FSI, Full Second Indication", "asterix.021_076_FSI", FT_UINT8, BASE_DEC, VALS (valstr_021_076_FSI), 0xc0, NULL, HFILL } },
+ { &hf_021_076_TOMRP, { "TOMRP, Fractional Part of the Time of Message Reception for Position in the Ground Station, [s]", "asterix.021_076_TOMRP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_077, { "077, Time of ASTERIX Report Transmission", "asterix.021_077", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_077_VALUE, { "Time of ASTERIX Report Transmission, [s]", "asterix.021_077_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_080, { "080, Target Address", "asterix.021_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_080_VALUE, { "Target Address", "asterix.021_080_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_090, { "090, Quality Indicators", "asterix.021_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_090_NUCRNACV, { "NUCRNACV, Navigation Uncertainty Category for Velocity NUCr or the Navigation Accuracy Category for Velocity NACv", "asterix.021_090_NUCRNACV", FT_UINT8, BASE_DEC, NULL, 0xe0, NULL, HFILL } },
+ { &hf_021_090_NUCPNIC, { "NUCPNIC, Navigation Uncertainty Category for Position NUCp or Navigation Integrity Category NIC", "asterix.021_090_NUCPNIC", FT_UINT8, BASE_DEC, NULL, 0x1e, NULL, HFILL } },
+ { &hf_021_090_NICBARO, { "NICBARO, Navigation Integrity Category for Barometric Altitude", "asterix.021_090_NICBARO", FT_UINT8, BASE_DEC, NULL, 0x80, NULL, HFILL } },
+ { &hf_021_090_SIL, { "SIL, Surveillance (version 1) or Source (version 2) Integrity Level", "asterix.021_090_SIL", FT_UINT8, BASE_DEC, NULL, 0x60, NULL, HFILL } },
+ { &hf_021_090_NACP, { "NACP, Navigation Accuracy Category for Position", "asterix.021_090_NACP", FT_UINT8, BASE_DEC, NULL, 0x1e, NULL, HFILL } },
+ { &hf_021_090_SILS, { "SILS, SIL-Supplement", "asterix.021_090_SILS", FT_UINT8, BASE_DEC, VALS (valstr_021_090_SILS), 0x20, NULL, HFILL } },
+ { &hf_021_090_SDA, { "SDA, Horizontal Position System Design Assurance Level (as Defined in Version 2)", "asterix.021_090_SDA", FT_UINT8, BASE_DEC, NULL, 0x18, NULL, HFILL } },
+ { &hf_021_090_GVA, { "GVA, Geometric Altitude Accuracy", "asterix.021_090_GVA", FT_UINT8, BASE_DEC, NULL, 0x06, NULL, HFILL } },
+ { &hf_021_090_PIC, { "PIC, Position Integrity Category", "asterix.021_090_PIC", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_021_110, { "110, Trajectory Intent", "asterix.021_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_110_TIS, { "TIS, Trajectory Intent Status", "asterix.021_110_TIS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_110_TIS_NAV, { "NAV", "asterix.021_110_TIS_NAV", FT_UINT8, BASE_DEC, VALS (valstr_021_110_TIS_NAV), 0x80, NULL, HFILL } },
+ { &hf_021_110_TIS_NVB, { "NVB", "asterix.021_110_TIS_NVB", FT_UINT8, BASE_DEC, VALS (valstr_021_110_TIS_NVB), 0x40, NULL, HFILL } },
+ { &hf_021_110_TID, { "TID, Trajectory Intent Data", "asterix.021_110_TID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_110_TID_TCA, { "TCA", "asterix.021_110_TID_TCA", FT_UINT8, BASE_DEC, VALS (valstr_021_110_TID_TCA), 0x80, NULL, HFILL } },
+ { &hf_021_110_TID_NC, { "NC", "asterix.021_110_TID_NC", FT_UINT8, BASE_DEC, VALS (valstr_021_110_TID_NC), 0x40, NULL, HFILL } },
+ { &hf_021_110_TID_TCPN, { "TCPN", "asterix.021_110_TID_TCPN", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_021_110_TID_ALT, { "ALT, Altitude in Two's Complement Form, [ft]", "asterix.021_110_TID_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_110_TID_LAT, { "LAT, In WGS.84 in Two's Complement, [°]", "asterix.021_110_TID_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_110_TID_LON, { "LON, In WGS.84 in Two's Complement, [°]", "asterix.021_110_TID_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_110_TID_PT, { "PT, Point Type", "asterix.021_110_TID_PT", FT_UINT8, BASE_DEC, VALS (valstr_021_110_TID_PT), 0xf0, NULL, HFILL } },
+ { &hf_021_110_TID_TD, { "TD", "asterix.021_110_TID_TD", FT_UINT8, BASE_DEC, VALS (valstr_021_110_TID_TD), 0x0c, NULL, HFILL } },
+ { &hf_021_110_TID_TRA, { "TRA", "asterix.021_110_TID_TRA", FT_UINT8, BASE_DEC, VALS (valstr_021_110_TID_TRA), 0x02, NULL, HFILL } },
+ { &hf_021_110_TID_TOA, { "TOA", "asterix.021_110_TID_TOA", FT_UINT8, BASE_DEC, VALS (valstr_021_110_TID_TOA), 0x01, NULL, HFILL } },
+ { &hf_021_110_TID_TOV, { "TOV, Time Over Point, [s]", "asterix.021_110_TID_TOV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_110_TID_TTR, { "TTR, TCP Turn Radius, [NM]", "asterix.021_110_TID_TTR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_130, { "130, Position in WGS-84 Co-ordinates", "asterix.021_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_130_LAT, { "LAT, Latitude, [°]", "asterix.021_130_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_130_LON, { "LON, Longitude, [°]", "asterix.021_130_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_131, { "131, High-Resolution Position in WGS-84 Co-ordinates", "asterix.021_131", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_131_LAT, { "LAT, Latitude, [°]", "asterix.021_131_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_131_LON, { "LON, Longitude, [°]", "asterix.021_131_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_132, { "132, Message Amplitude", "asterix.021_132", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_132_VALUE, { "Message Amplitude, [dBm]", "asterix.021_132_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_140, { "140, Geometric Height", "asterix.021_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_140_VALUE, { "Geometric Height, [ft]", "asterix.021_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_145, { "145, Flight Level", "asterix.021_145", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_145_VALUE, { "Flight Level, [FL]", "asterix.021_145_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_146, { "146, Selected Altitude", "asterix.021_146", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_146_SAS, { "SAS, Source Availability", "asterix.021_146_SAS", FT_UINT8, BASE_DEC, VALS (valstr_021_146_SAS), 0x80, NULL, HFILL } },
+ { &hf_021_146_S, { "S, Source", "asterix.021_146_S", FT_UINT8, BASE_DEC, VALS (valstr_021_146_S), 0x60, NULL, HFILL } },
+ { &hf_021_146_ALT, { "ALT, Altitude, [ft]", "asterix.021_146_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_148, { "148, Final State Selected Altitude", "asterix.021_148", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_148_MV, { "MV, Manage Vertical Mode", "asterix.021_148_MV", FT_UINT8, BASE_DEC, VALS (valstr_021_148_MV), 0x80, NULL, HFILL } },
+ { &hf_021_148_AH, { "AH, Altitude Hold Mode", "asterix.021_148_AH", FT_UINT8, BASE_DEC, VALS (valstr_021_148_AH), 0x40, NULL, HFILL } },
+ { &hf_021_148_AM, { "AM, Approach Mode", "asterix.021_148_AM", FT_UINT8, BASE_DEC, VALS (valstr_021_148_AM), 0x20, NULL, HFILL } },
+ { &hf_021_148_ALT, { "ALT, Altitude, [ft]", "asterix.021_148_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_150, { "150, Air Speed", "asterix.021_150", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_150_IM, { "IM", "asterix.021_150_IM", FT_UINT8, BASE_DEC, VALS (valstr_021_150_IM), 0x80, NULL, HFILL } },
+ { &hf_021_150_AS, { "AS, Air Speed (IAS or Mach)", "asterix.021_150_AS", FT_UINT16, BASE_DEC, NULL, 0x7fff, NULL, HFILL } },
+ { &hf_021_151, { "151, True Airspeed", "asterix.021_151", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_151_RE, { "RE, Range Exceeded Indicator", "asterix.021_151_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_151_RE), 0x80, NULL, HFILL } },
+ { &hf_021_151_TAS, { "TAS, True Air Speed, [kt]", "asterix.021_151_TAS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_152, { "152, Magnetic Heading", "asterix.021_152", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_152_VALUE, { "Magnetic Heading, [°]", "asterix.021_152_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_155, { "155, Barometric Vertical Rate", "asterix.021_155", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_155_RE, { "RE, Range Exceeded Indicator", "asterix.021_155_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_155_RE), 0x80, NULL, HFILL } },
+ { &hf_021_155_BVR, { "BVR, Barometric Vertical Rate, [ft/min]", "asterix.021_155_BVR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_157, { "157, Geometric Vertical Rate", "asterix.021_157", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_157_RE, { "RE, Range Exceeded Indicator", "asterix.021_157_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_157_RE), 0x80, NULL, HFILL } },
+ { &hf_021_157_GVR, { "GVR, Geometric Vertical Rate, [ft/min]", "asterix.021_157_GVR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_160, { "160, Airborne Ground Vector", "asterix.021_160", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_160_RE, { "RE, Range Exceeded Indicator", "asterix.021_160_RE", FT_UINT8, BASE_DEC, VALS (valstr_021_160_RE), 0x80, NULL, HFILL } },
+ { &hf_021_160_GS, { "GS, Ground Speed Referenced to WGS-84, [NM/s]", "asterix.021_160_GS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_160_TA, { "TA, Track Angle Clockwise Reference to True North, [°]", "asterix.021_160_TA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_161, { "161, Track Number", "asterix.021_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_161_TRNUM, { "TRNUM, Track Number", "asterix.021_161_TRNUM", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_021_165, { "165, Track Angle Rate", "asterix.021_165", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_165_TAR, { "TAR, Track Angle Rate, [°/s]", "asterix.021_165_TAR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_170, { "170, Target Identification", "asterix.021_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_170_VALUE, { "Target Identification", "asterix.021_170_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_200, { "200, Target Status", "asterix.021_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_200_ICF, { "ICF, Intent Change Flag (see Note)", "asterix.021_200_ICF", FT_UINT8, BASE_DEC, VALS (valstr_021_200_ICF), 0x80, NULL, HFILL } },
+ { &hf_021_200_LNAV, { "LNAV, LNAV Mode", "asterix.021_200_LNAV", FT_UINT8, BASE_DEC, VALS (valstr_021_200_LNAV), 0x40, NULL, HFILL } },
+ { &hf_021_200_ME, { "ME, Military Emergency", "asterix.021_200_ME", FT_UINT8, BASE_DEC, VALS (valstr_021_200_ME), 0x20, NULL, HFILL } },
+ { &hf_021_200_PS, { "PS, Priority Status", "asterix.021_200_PS", FT_UINT8, BASE_DEC, VALS (valstr_021_200_PS), 0x1c, NULL, HFILL } },
+ { &hf_021_200_SS, { "SS, Surveillance Status", "asterix.021_200_SS", FT_UINT8, BASE_DEC, VALS (valstr_021_200_SS), 0x03, NULL, HFILL } },
+ { &hf_021_210, { "210, MOPS Version", "asterix.021_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_210_VNS, { "VNS, Version Not Supported", "asterix.021_210_VNS", FT_UINT8, BASE_DEC, VALS (valstr_021_210_VNS), 0x40, NULL, HFILL } },
+ { &hf_021_210_VN, { "VN, Version Number", "asterix.021_210_VN", FT_UINT8, BASE_DEC, VALS (valstr_021_210_VN), 0x38, NULL, HFILL } },
+ { &hf_021_210_LTT, { "LTT, Link Technology Type", "asterix.021_210_LTT", FT_UINT8, BASE_DEC, VALS (valstr_021_210_LTT), 0x07, NULL, HFILL } },
+ { &hf_021_220, { "220, Met Information", "asterix.021_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_220_WS, { "WS, Wind Speed", "asterix.021_220_WS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_220_WS_VALUE, { "Wind Speed, [kt]", "asterix.021_220_WS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_220_WD, { "WD, Wind Direction", "asterix.021_220_WD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_220_WD_VALUE, { "Wind Direction, [°]", "asterix.021_220_WD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_220_TMP, { "TMP, Temperature", "asterix.021_220_TMP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_220_TMP_VALUE, { "Temperature, [°C]", "asterix.021_220_TMP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_220_TRB, { "TRB, Turbulence", "asterix.021_220_TRB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_220_TRB_VALUE, { "Turbulence", "asterix.021_220_TRB_VALUE", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_230, { "230, Roll Angle", "asterix.021_230", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_230_VALUE, { "Roll Angle, [°]", "asterix.021_230_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_250, { "250, Mode S MB Data", "asterix.021_250", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_250_VALUE, { "Mode S MB Data", "asterix.021_250_VALUE", FT_UINT64, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_260, { "260, ACAS Resolution Advisory Report", "asterix.021_260", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_260_TYP, { "TYP, Message Type (= 28 for 1090 ES, Version 2)", "asterix.021_260_TYP", FT_UINT8, BASE_DEC, NULL, 0xf8, NULL, HFILL } },
+ { &hf_021_260_STYP, { "STYP, Message Sub-type (= 2 for 1090 ES, Version 2)", "asterix.021_260_STYP", FT_UINT8, BASE_DEC, NULL, 0x07, NULL, HFILL } },
+ { &hf_021_260_ARA, { "ARA, Active Resolution Advisories", "asterix.021_260_ARA", FT_UINT16, BASE_DEC, NULL, 0xfffc, NULL, HFILL } },
+ { &hf_021_260_RAC, { "RAC, RAC (RA Complement) Record", "asterix.021_260_RAC", FT_UINT16, BASE_DEC, NULL, 0x03c0, NULL, HFILL } },
+ { &hf_021_260_RAT, { "RAT, RA Terminated", "asterix.021_260_RAT", FT_UINT8, BASE_DEC, NULL, 0x20, NULL, HFILL } },
+ { &hf_021_260_MTE, { "MTE, Multiple Threat Encounter", "asterix.021_260_MTE", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_021_260_TTI, { "TTI, Threat Type Indicator", "asterix.021_260_TTI", FT_UINT8, BASE_DEC, NULL, 0x0c, NULL, HFILL } },
+ { &hf_021_260_TID, { "TID, Threat Identity Data", "asterix.021_260_TID", FT_UINT32, BASE_DEC, NULL, 0x03ffffff, NULL, HFILL } },
+ { &hf_021_271, { "271, Surface Capabilities and Characteristics", "asterix.021_271", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_271_POA, { "POA, Position Offset Applied", "asterix.021_271_POA", FT_UINT8, BASE_DEC, VALS (valstr_021_271_POA), 0x20, NULL, HFILL } },
+ { &hf_021_271_CDTIS, { "CDTIS, Cockpit Display of Traffic Information Surface", "asterix.021_271_CDTIS", FT_UINT8, BASE_DEC, VALS (valstr_021_271_CDTIS), 0x10, NULL, HFILL } },
+ { &hf_021_271_B2LOW, { "B2LOW, Class B2 Transmit Power Less Than 70 Watts", "asterix.021_271_B2LOW", FT_UINT8, BASE_DEC, VALS (valstr_021_271_B2LOW), 0x08, NULL, HFILL } },
+ { &hf_021_271_RAS, { "RAS, Receiving ATC Services", "asterix.021_271_RAS", FT_UINT8, BASE_DEC, VALS (valstr_021_271_RAS), 0x04, NULL, HFILL } },
+ { &hf_021_271_IDENT, { "IDENT, Setting of IDENT Switch", "asterix.021_271_IDENT", FT_UINT8, BASE_DEC, VALS (valstr_021_271_IDENT), 0x02, NULL, HFILL } },
+ { &hf_021_271_LW, { "LW, Length and Width of the Aircraft", "asterix.021_271_LW", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_021_295, { "295, Data Ages", "asterix.021_295", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_AOS, { "AOS, Aircraft Operational Status Age", "asterix.021_295_AOS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_AOS_VALUE, { "Aircraft Operational Status Age, [s]", "asterix.021_295_AOS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_TRD, { "TRD, Target Report Descriptor Age", "asterix.021_295_TRD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_TRD_VALUE, { "Target Report Descriptor Age, [s]", "asterix.021_295_TRD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_M3A, { "M3A, Mode 3/A Age", "asterix.021_295_M3A", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_M3A_VALUE, { "Mode 3/A Age, [s]", "asterix.021_295_M3A_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_QI, { "QI, Quality Indicators Age", "asterix.021_295_QI", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_QI_VALUE, { "Quality Indicators Age, [s]", "asterix.021_295_QI_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_TI1, { "TI1, Trajectory Intent Age", "asterix.021_295_TI1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_TI1_VALUE, { "Trajectory Intent Age, [s]", "asterix.021_295_TI1_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_MAM, { "MAM, Message Amplitude Age", "asterix.021_295_MAM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_MAM_VALUE, { "Message Amplitude Age, [s]", "asterix.021_295_MAM_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_GH, { "GH, Geometric Height Age", "asterix.021_295_GH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_GH_VALUE, { "Geometric Height Age, [s]", "asterix.021_295_GH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_FL, { "FL, Flight Level Age", "asterix.021_295_FL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_FL_VALUE, { "Flight Level Age, [s]", "asterix.021_295_FL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_SAL, { "SAL, Selected Altitude Age", "asterix.021_295_SAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_SAL_VALUE, { "Selected Altitude Age, [s]", "asterix.021_295_SAL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_FSA, { "FSA, Final State Selected Altitude Age", "asterix.021_295_FSA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_FSA_VALUE, { "Final State Selected Altitude Age, [s]", "asterix.021_295_FSA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_AS, { "AS, Air Speed Age", "asterix.021_295_AS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_AS_VALUE, { "Air Speed Age, [s]", "asterix.021_295_AS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_TAS, { "TAS, True Air Speed Age", "asterix.021_295_TAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_TAS_VALUE, { "True Air Speed Age, [s]", "asterix.021_295_TAS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_MH, { "MH, Magnetic Heading Age", "asterix.021_295_MH", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_MH_VALUE, { "Magnetic Heading Age, [s]", "asterix.021_295_MH_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_BVR, { "BVR, Barometric Vertical Rate Age", "asterix.021_295_BVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_BVR_VALUE, { "Barometric Vertical Rate Age, [s]", "asterix.021_295_BVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_GVR, { "GVR, Geometric Vertical Rate Age", "asterix.021_295_GVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_GVR_VALUE, { "Geometric Vertical Rate Age, [s]", "asterix.021_295_GVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_GV, { "GV, Ground Vector Age", "asterix.021_295_GV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_GV_VALUE, { "Ground Vector Age, [s]", "asterix.021_295_GV_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_TAR, { "TAR, Track Angle Rate Age", "asterix.021_295_TAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_TAR_VALUE, { "Track Angle Rate Age, [s]", "asterix.021_295_TAR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_TI2, { "TI2, Target Identification Age", "asterix.021_295_TI2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_TI2_VALUE, { "Target Identification Age, [s]", "asterix.021_295_TI2_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_TS, { "TS, Target Status Age", "asterix.021_295_TS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_TS_VALUE, { "Target Status Age, [s]", "asterix.021_295_TS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_MET, { "MET, Met Information Age", "asterix.021_295_MET", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_MET_VALUE, { "Met Information Age, [s]", "asterix.021_295_MET_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_ROA, { "ROA, Roll Angle Age", "asterix.021_295_ROA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_ROA_VALUE, { "Roll Angle Age, [s]", "asterix.021_295_ROA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_ARA, { "ARA, ACAS Resolution Advisory Age", "asterix.021_295_ARA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_ARA_VALUE, { "ACAS Resolution Advisory Age, [s]", "asterix.021_295_ARA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_SCC, { "SCC, Surface Capabilities and Characteristics Age", "asterix.021_295_SCC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_295_SCC_VALUE, { "Surface Capabilities and Characteristics Age, [s]", "asterix.021_295_SCC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_400, { "400, Receiver ID", "asterix.021_400", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_400_VALUE, { "Receiver ID", "asterix.021_400_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_RE, { "RE, Reserved Expansion Field", "asterix.021_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_021_SP, { "SP, Special Purpose Field", "asterix.021_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_2_000, { "000, Report Type", "asterix.023_V1_2_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_2_000_VALUE, { "Report Type", "asterix.023_V1_2_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_2_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_023_V1_2_010, { "010, Data Source Identifier", "asterix.023_V1_2_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_2_010_SAC, { "SAC, System Area Code", "asterix.023_V1_2_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_2_010_SIC, { "SIC, System Identification Code", "asterix.023_V1_2_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_2_015, { "015, Service Type and Identification", "asterix.023_V1_2_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_2_015_SID, { "SID, Service Identification", "asterix.023_V1_2_015_SID", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_023_V1_2_015_STYP, { "STYP, Type of Service", "asterix.023_V1_2_015_STYP", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_2_015_STYP), 0x0f, NULL, HFILL } },
+ { &hf_023_V1_2_070, { "070, Time of Day", "asterix.023_V1_2_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_2_070_VALUE, { "Time of Day, [s]", "asterix.023_V1_2_070_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_2_100, { "100, Ground Station Status", "asterix.023_V1_2_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_2_100_NOGO, { "NOGO, Operational Release Status of the Data", "asterix.023_V1_2_100_NOGO", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_2_100_NOGO), 0x80, NULL, HFILL } },
+ { &hf_023_V1_2_100_ODP, { "ODP, Data Processor Overload Indicator", "asterix.023_V1_2_100_ODP", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_2_100_ODP), 0x40, NULL, HFILL } },
+ { &hf_023_V1_2_100_OXT, { "OXT, Ground Interface Data Communications Overload", "asterix.023_V1_2_100_OXT", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_2_100_OXT), 0x20, NULL, HFILL } },
+ { &hf_023_V1_2_100_MSC, { "MSC, Monitoring System Connected Status", "asterix.023_V1_2_100_MSC", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_2_100_MSC), 0x10, NULL, HFILL } },
+ { &hf_023_V1_2_100_TSV, { "TSV, Time Source Validity", "asterix.023_V1_2_100_TSV", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_2_100_TSV), 0x08, NULL, HFILL } },
+ { &hf_023_V1_2_100_SPO, { "SPO, Indication of Spoofing Attack", "asterix.023_V1_2_100_SPO", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_2_100_SPO), 0x04, NULL, HFILL } },
+ { &hf_023_V1_2_100_RN, { "RN, Renumbering Indication for Track ID", "asterix.023_V1_2_100_RN", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_2_100_RN), 0x02, NULL, HFILL } },
+ { &hf_023_V1_2_100_GSSP, { "GSSP, Ground Station Status Reporting Period, [s]", "asterix.023_V1_2_100_GSSP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_2_101, { "101, Service Configuration", "asterix.023_V1_2_101", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_2_101_RP, { "RP, Report Period for Category 021 Reports, [s]", "asterix.023_V1_2_101_RP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_2_101_SC, { "SC, Service Class", "asterix.023_V1_2_101_SC", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_2_101_SC), 0xe0, NULL, HFILL } },
+ { &hf_023_V1_2_101_SSRP, { "SSRP, Service Status Reporting Period, [s]", "asterix.023_V1_2_101_SSRP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_2_110, { "110, Service Status", "asterix.023_V1_2_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_2_110_STAT, { "STAT, Status of the Service", "asterix.023_V1_2_110_STAT", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_2_110_STAT), 0x0e, NULL, HFILL } },
+ { &hf_023_V1_2_120, { "120, Service Statistics", "asterix.023_V1_2_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_2_120_TYPE, { "TYPE, Type of Report Counter", "asterix.023_V1_2_120_TYPE", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_2_120_TYPE), 0x00, NULL, HFILL } },
+ { &hf_023_V1_2_120_REF, { "REF, Reference from which the Messages Are Countered", "asterix.023_V1_2_120_REF", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_2_120_REF), 0x80, NULL, HFILL } },
+ { &hf_023_V1_2_120_CV, { "CV, 32-bit Counter Value", "asterix.023_V1_2_120_CV", FT_UINT32, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_2_200, { "200, Operational Range", "asterix.023_V1_2_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_2_200_VALUE, { "Operational Range, [NM]", "asterix.023_V1_2_200_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_2_RE, { "RE, Reserved Expansion Field", "asterix.023_V1_2_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_2_SP, { "SP, Special Purpose Field", "asterix.023_V1_2_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_3_000, { "000, Report Type", "asterix.023_V1_3_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_3_000_VALUE, { "Report Type", "asterix.023_V1_3_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_3_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_023_V1_3_010, { "010, Data Source Identifier", "asterix.023_V1_3_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_3_010_SAC, { "SAC, System Area Code", "asterix.023_V1_3_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_3_010_SIC, { "SIC, System Identification Code", "asterix.023_V1_3_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_3_015, { "015, Service Type and Identification", "asterix.023_V1_3_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_3_015_SID, { "SID, Service Identification", "asterix.023_V1_3_015_SID", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_023_V1_3_015_STYP, { "STYP, Type of Service", "asterix.023_V1_3_015_STYP", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_3_015_STYP), 0x0f, NULL, HFILL } },
+ { &hf_023_V1_3_070, { "070, Time of Day", "asterix.023_V1_3_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_3_070_VALUE, { "Time of Day, [s]", "asterix.023_V1_3_070_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_3_100, { "100, Ground Station Status", "asterix.023_V1_3_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_3_100_NOGO, { "NOGO, Operational Release Status of the Data", "asterix.023_V1_3_100_NOGO", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_3_100_NOGO), 0x80, NULL, HFILL } },
+ { &hf_023_V1_3_100_ODP, { "ODP, Data Processor Overload Indicator", "asterix.023_V1_3_100_ODP", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_3_100_ODP), 0x40, NULL, HFILL } },
+ { &hf_023_V1_3_100_OXT, { "OXT, Ground Interface Data Communications Overload", "asterix.023_V1_3_100_OXT", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_3_100_OXT), 0x20, NULL, HFILL } },
+ { &hf_023_V1_3_100_MSC, { "MSC, Monitoring System Connected Status", "asterix.023_V1_3_100_MSC", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_3_100_MSC), 0x10, NULL, HFILL } },
+ { &hf_023_V1_3_100_TSV, { "TSV, Time Source Validity", "asterix.023_V1_3_100_TSV", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_3_100_TSV), 0x08, NULL, HFILL } },
+ { &hf_023_V1_3_100_SPO, { "SPO, Indication of Spoofing Attack", "asterix.023_V1_3_100_SPO", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_3_100_SPO), 0x04, NULL, HFILL } },
+ { &hf_023_V1_3_100_RN, { "RN, Renumbering Indication for Track ID", "asterix.023_V1_3_100_RN", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_3_100_RN), 0x02, NULL, HFILL } },
+ { &hf_023_V1_3_100_GSSP, { "GSSP, Ground Station Status Reporting Period, [s]", "asterix.023_V1_3_100_GSSP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_3_101, { "101, Service Configuration", "asterix.023_V1_3_101", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_3_101_RP, { "RP, Report Period for Category 021 Reports, [s]", "asterix.023_V1_3_101_RP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_3_101_SC, { "SC, Service Class", "asterix.023_V1_3_101_SC", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_3_101_SC), 0xe0, NULL, HFILL } },
+ { &hf_023_V1_3_101_SSRP, { "SSRP, Service Status Reporting Period, [s]", "asterix.023_V1_3_101_SSRP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_3_110, { "110, Service Status", "asterix.023_V1_3_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_3_110_STAT, { "STAT, Status of the Service", "asterix.023_V1_3_110_STAT", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_3_110_STAT), 0x0e, NULL, HFILL } },
+ { &hf_023_V1_3_120, { "120, Service Statistics", "asterix.023_V1_3_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_3_120_TYPE, { "TYPE, Type of Report Counter", "asterix.023_V1_3_120_TYPE", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_3_120_TYPE), 0x00, NULL, HFILL } },
+ { &hf_023_V1_3_120_REF, { "REF, Reference from which the Messages Are Countered", "asterix.023_V1_3_120_REF", FT_UINT8, BASE_DEC, VALS (valstr_023_V1_3_120_REF), 0x80, NULL, HFILL } },
+ { &hf_023_V1_3_120_CV, { "CV, 32-bit Counter Value", "asterix.023_V1_3_120_CV", FT_UINT32, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_3_200, { "200, Operational Range", "asterix.023_V1_3_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_3_200_VALUE, { "Operational Range, [NM]", "asterix.023_V1_3_200_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_3_RE, { "RE, Reserved Expansion Field", "asterix.023_V1_3_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_V1_3_SP, { "SP, Special Purpose Field", "asterix.023_V1_3_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_000, { "000, Report Type", "asterix.023_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_000_VALUE, { "Report Type", "asterix.023_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_023_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_023_010, { "010, Data Source Identifier", "asterix.023_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_010_SAC, { "SAC, System Area Code", "asterix.023_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_010_SIC, { "SIC, System Identification Code", "asterix.023_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_015, { "015, Service Type and Identification", "asterix.023_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_015_SID, { "SID, Service Identification", "asterix.023_015_SID", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_023_015_STYP, { "STYP, Type of Service", "asterix.023_015_STYP", FT_UINT8, BASE_DEC, VALS (valstr_023_015_STYP), 0x0f, NULL, HFILL } },
+ { &hf_023_070, { "070, Time of Day", "asterix.023_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_070_VALUE, { "Time of Day, [s]", "asterix.023_070_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_100, { "100, Ground Station Status", "asterix.023_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_100_NOGO, { "NOGO, Operational Release Status of the Data", "asterix.023_100_NOGO", FT_UINT8, BASE_DEC, VALS (valstr_023_100_NOGO), 0x80, NULL, HFILL } },
+ { &hf_023_100_ODP, { "ODP, Data Processor Overload Indicator", "asterix.023_100_ODP", FT_UINT8, BASE_DEC, VALS (valstr_023_100_ODP), 0x40, NULL, HFILL } },
+ { &hf_023_100_OXT, { "OXT, Ground Interface Data Communications Overload", "asterix.023_100_OXT", FT_UINT8, BASE_DEC, VALS (valstr_023_100_OXT), 0x20, NULL, HFILL } },
+ { &hf_023_100_MSC, { "MSC, Monitoring System Connected Status", "asterix.023_100_MSC", FT_UINT8, BASE_DEC, VALS (valstr_023_100_MSC), 0x10, NULL, HFILL } },
+ { &hf_023_100_TSV, { "TSV, Time Source Validity", "asterix.023_100_TSV", FT_UINT8, BASE_DEC, VALS (valstr_023_100_TSV), 0x08, NULL, HFILL } },
+ { &hf_023_100_SPO, { "SPO, Indication of Spoofing Attack", "asterix.023_100_SPO", FT_UINT8, BASE_DEC, VALS (valstr_023_100_SPO), 0x04, NULL, HFILL } },
+ { &hf_023_100_RN, { "RN, Renumbering Indication for Track ID", "asterix.023_100_RN", FT_UINT8, BASE_DEC, VALS (valstr_023_100_RN), 0x02, NULL, HFILL } },
+ { &hf_023_100_GSSP, { "GSSP, Ground Station Status Reporting Period, [s]", "asterix.023_100_GSSP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_101, { "101, Service Configuration", "asterix.023_101", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_101_RP, { "RP, Report Period for Category 021 Reports, [s]", "asterix.023_101_RP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_101_SC, { "SC, Service Class", "asterix.023_101_SC", FT_UINT8, BASE_DEC, VALS (valstr_023_101_SC), 0xe0, NULL, HFILL } },
+ { &hf_023_101_SSRP, { "SSRP, Service Status Reporting Period, [s]", "asterix.023_101_SSRP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_110, { "110, Service Status", "asterix.023_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_110_STAT, { "STAT, Status of the Service", "asterix.023_110_STAT", FT_UINT8, BASE_DEC, VALS (valstr_023_110_STAT), 0x0e, NULL, HFILL } },
+ { &hf_023_120, { "120, Service Statistics", "asterix.023_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_120_TYPE, { "TYPE, Type of Report Counter", "asterix.023_120_TYPE", FT_UINT8, BASE_DEC, VALS (valstr_023_120_TYPE), 0x00, NULL, HFILL } },
+ { &hf_023_120_REF, { "REF, Reference from which the Messages Are Countered", "asterix.023_120_REF", FT_UINT8, BASE_DEC, VALS (valstr_023_120_REF), 0x80, NULL, HFILL } },
+ { &hf_023_120_CV, { "CV, 32-bit Counter Value", "asterix.023_120_CV", FT_UINT32, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_200, { "200, Operational Range", "asterix.023_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_200_VALUE, { "Operational Range, [NM]", "asterix.023_200_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_RE, { "RE, Reserved Expansion Field", "asterix.023_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_023_SP, { "SP, Special Purpose Field", "asterix.023_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_000, { "000, Report Type", "asterix.025_V1_5_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_000_RTYP, { "RTYP, Report Type", "asterix.025_V1_5_000_RTYP", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_025_V1_5_000_RG, { "RG, Report Generation", "asterix.025_V1_5_000_RG", FT_UINT8, BASE_DEC, VALS (valstr_025_V1_5_000_RG), 0x01, NULL, HFILL } },
+ { &hf_025_V1_5_010, { "010, Data Source Identifier", "asterix.025_V1_5_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_010_SAC, { "SAC, System Area Code", "asterix.025_V1_5_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_010_SIC, { "SIC, System Identification Code", "asterix.025_V1_5_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_015, { "015, Service Identification", "asterix.025_V1_5_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_015_VALUE, { "Service Identification", "asterix.025_V1_5_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_020, { "020, Service Designator", "asterix.025_V1_5_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_020_VALUE, { "Service Designator", "asterix.025_V1_5_020_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_070, { "070, Time of Day", "asterix.025_V1_5_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_070_VALUE, { "Time of Day, [s]", "asterix.025_V1_5_070_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_100, { "100, System and Service Status", "asterix.025_V1_5_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_100_NOGO, { "NOGO", "asterix.025_V1_5_100_NOGO", FT_UINT8, BASE_DEC, VALS (valstr_025_V1_5_100_NOGO), 0x80, NULL, HFILL } },
+ { &hf_025_V1_5_100_OPS, { "OPS", "asterix.025_V1_5_100_OPS", FT_UINT8, BASE_DEC, VALS (valstr_025_V1_5_100_OPS), 0x60, NULL, HFILL } },
+ { &hf_025_V1_5_100_SSTAT, { "SSTAT", "asterix.025_V1_5_100_SSTAT", FT_UINT8, BASE_DEC, VALS (valstr_025_V1_5_100_SSTAT), 0x1e, NULL, HFILL } },
+ { &hf_025_V1_5_100_SYSTAT, { "SYSTAT", "asterix.025_V1_5_100_SYSTAT", FT_UINT8, BASE_DEC, VALS (valstr_025_V1_5_100_SYSTAT), 0x70, NULL, HFILL } },
+ { &hf_025_V1_5_100_SESTAT, { "SESTAT", "asterix.025_V1_5_100_SESTAT", FT_UINT8, BASE_DEC, VALS (valstr_025_V1_5_100_SESTAT), 0x0e, NULL, HFILL } },
+ { &hf_025_V1_5_105, { "105, System and Service Error Codes", "asterix.025_V1_5_105", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_105_VALUE, { "System and Service Error Codes", "asterix.025_V1_5_105_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_025_V1_5_105_VALUE), 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_120, { "120, Component Status", "asterix.025_V1_5_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_120_CID, { "CID, Component ID", "asterix.025_V1_5_120_CID", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_120_ERRC, { "ERRC, Error Code", "asterix.025_V1_5_120_ERRC", FT_UINT8, BASE_DEC, VALS (valstr_025_V1_5_120_ERRC), 0xfc, NULL, HFILL } },
+ { &hf_025_V1_5_120_CS, { "CS, Component State/Mode", "asterix.025_V1_5_120_CS", FT_UINT8, BASE_DEC, VALS (valstr_025_V1_5_120_CS), 0x03, NULL, HFILL } },
+ { &hf_025_V1_5_140, { "140, Service Statistics", "asterix.025_V1_5_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_140_TYPE, { "TYPE, Type of Report Counter", "asterix.025_V1_5_140_TYPE", FT_UINT8, BASE_DEC, VALS (valstr_025_V1_5_140_TYPE), 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_140_REF, { "REF, Reference from which the Messages Are Counted", "asterix.025_V1_5_140_REF", FT_UINT8, BASE_DEC, VALS (valstr_025_V1_5_140_REF), 0x80, NULL, HFILL } },
+ { &hf_025_V1_5_140_COUNT, { "COUNT, Counter Value", "asterix.025_V1_5_140_COUNT", FT_UINT32, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_200, { "200, Message Identification", "asterix.025_V1_5_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_200_VALUE, { "Message Identification", "asterix.025_V1_5_200_VALUE", FT_UINT24, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_600, { "600, Position of the System Reference Point", "asterix.025_V1_5_600", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_600_LAT, { "LAT, Latitude, [°]", "asterix.025_V1_5_600_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_600_LON, { "LON, Longitude, [°]", "asterix.025_V1_5_600_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_610, { "610, Height of the System Reference Point", "asterix.025_V1_5_610", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_610_VALUE, { "Height of the System Reference Point, [m]", "asterix.025_V1_5_610_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_V1_5_SP, { "SP, Special Purpose Field", "asterix.025_V1_5_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_000, { "000, Report Type", "asterix.025_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_000_RTYP, { "RTYP, Report Type", "asterix.025_000_RTYP", FT_UINT8, BASE_DEC, NULL, 0xfe, NULL, HFILL } },
+ { &hf_025_000_RG, { "RG, Report Generation", "asterix.025_000_RG", FT_UINT8, BASE_DEC, VALS (valstr_025_000_RG), 0x01, NULL, HFILL } },
+ { &hf_025_010, { "010, Data Source Identifier", "asterix.025_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_010_SAC, { "SAC, System Area Code", "asterix.025_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_010_SIC, { "SIC, System Identification Code", "asterix.025_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_015, { "015, Service Identification", "asterix.025_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_015_VALUE, { "Service Identification", "asterix.025_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_020, { "020, Service Designator", "asterix.025_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_020_VALUE, { "Service Designator", "asterix.025_020_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_070, { "070, Time of Day", "asterix.025_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_070_VALUE, { "Time of Day, [s]", "asterix.025_070_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_100, { "100, System and Service Status", "asterix.025_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_100_NOGO, { "NOGO", "asterix.025_100_NOGO", FT_UINT8, BASE_DEC, VALS (valstr_025_100_NOGO), 0x80, NULL, HFILL } },
+ { &hf_025_100_OPS, { "OPS", "asterix.025_100_OPS", FT_UINT8, BASE_DEC, VALS (valstr_025_100_OPS), 0x60, NULL, HFILL } },
+ { &hf_025_100_SSTAT, { "SSTAT", "asterix.025_100_SSTAT", FT_UINT8, BASE_DEC, VALS (valstr_025_100_SSTAT), 0x1e, NULL, HFILL } },
+ { &hf_025_100_SYSTAT, { "SYSTAT", "asterix.025_100_SYSTAT", FT_UINT8, BASE_DEC, VALS (valstr_025_100_SYSTAT), 0x70, NULL, HFILL } },
+ { &hf_025_100_SESTAT, { "SESTAT", "asterix.025_100_SESTAT", FT_UINT8, BASE_DEC, VALS (valstr_025_100_SESTAT), 0x0e, NULL, HFILL } },
+ { &hf_025_105, { "105, System and Service Error Codes", "asterix.025_105", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_105_VALUE, { "System and Service Error Codes", "asterix.025_105_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_025_105_VALUE), 0x00, NULL, HFILL } },
+ { &hf_025_120, { "120, Component Status", "asterix.025_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_120_CID, { "CID, Component ID", "asterix.025_120_CID", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_120_ERRC, { "ERRC, Error Code", "asterix.025_120_ERRC", FT_UINT8, BASE_DEC, VALS (valstr_025_120_ERRC), 0xfc, NULL, HFILL } },
+ { &hf_025_120_CS, { "CS, Component State/Mode", "asterix.025_120_CS", FT_UINT8, BASE_DEC, VALS (valstr_025_120_CS), 0x03, NULL, HFILL } },
+ { &hf_025_140, { "140, Service Statistics", "asterix.025_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_140_TYPE, { "TYPE, Type of Report Counter", "asterix.025_140_TYPE", FT_UINT8, BASE_DEC, VALS (valstr_025_140_TYPE), 0x00, NULL, HFILL } },
+ { &hf_025_140_REF, { "REF, Reference from which the Messages Are Counted", "asterix.025_140_REF", FT_UINT8, BASE_DEC, VALS (valstr_025_140_REF), 0x80, NULL, HFILL } },
+ { &hf_025_140_COUNT, { "COUNT, Counter Value", "asterix.025_140_COUNT", FT_UINT32, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_200, { "200, Message Identification", "asterix.025_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_200_VALUE, { "Message Identification", "asterix.025_200_VALUE", FT_UINT24, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_600, { "600, Position of the System Reference Point", "asterix.025_600", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_600_LAT, { "LAT, Latitude, [°]", "asterix.025_600_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_600_LON, { "LON, Longitude, [°]", "asterix.025_600_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_610, { "610, Height of the System Reference Point", "asterix.025_610", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_610_VALUE, { "Height of the System Reference Point, [m]", "asterix.025_610_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_025_SP, { "SP, Special Purpose Field", "asterix.025_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_010, { "010, Server Identification Tag", "asterix.032_V1_1_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_010_SAC, { "SAC, System Area Code", "asterix.032_V1_1_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_010_SIC, { "SIC, System Identification Code", "asterix.032_V1_1_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_015, { "015, User Number", "asterix.032_V1_1_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_015_VALUE, { "User Number", "asterix.032_V1_1_015_VALUE", FT_UINT16, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_018, { "018, Data Source Identification Tag", "asterix.032_V1_1_018", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_018_SAC, { "SAC, System Area Code", "asterix.032_V1_1_018_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_018_SIC, { "SIC, System Identification Code", "asterix.032_V1_1_018_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_020, { "020, Time of ASTERIX Report Generation", "asterix.032_V1_1_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_020_VALUE, { "Time of ASTERIX Report Generation, [s]", "asterix.032_V1_1_020_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_035, { "035, Type of Message", "asterix.032_V1_1_035", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_035_FAMILY, { "FAMILY", "asterix.032_V1_1_035_FAMILY", FT_UINT8, BASE_DEC, VALS (valstr_032_V1_1_035_FAMILY), 0xf0, NULL, HFILL } },
+ { &hf_032_V1_1_035_NATURE, { "NATURE", "asterix.032_V1_1_035_NATURE", FT_UINT8, BASE_DEC, VALS (valstr_032_V1_1_035_NATURE), 0x0f, NULL, HFILL } },
+ { &hf_032_V1_1_040, { "040, Track Number", "asterix.032_V1_1_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_040_VALUE, { "Track Number", "asterix.032_V1_1_040_VALUE", FT_UINT16, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_050, { "050, Composed Track Number", "asterix.032_V1_1_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_050_SUI, { "SUI, System Unit Identification", "asterix.032_V1_1_050_SUI", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_050_STN, { "STN, System Track Number", "asterix.032_V1_1_050_STN", FT_UINT16, BASE_DEC, NULL, 0xfffe, NULL, HFILL } },
+ { &hf_032_V1_1_060, { "060, Track Mode 3/A", "asterix.032_V1_1_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_060_MODE3A, { "MODE3A, (Mode 3/A Code) 4 Digits, Octal Representation", "asterix.032_V1_1_060_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_032_V1_1_400, { "400, Callsign", "asterix.032_V1_1_400", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_400_VALUE, { "Callsign", "asterix.032_V1_1_400_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_410, { "410, Plan Number", "asterix.032_V1_1_410", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_410_VALUE, { "Plan Number", "asterix.032_V1_1_410_VALUE", FT_UINT16, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_420, { "420, Flight Category", "asterix.032_V1_1_420", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_420_GATOAT, { "GATOAT", "asterix.032_V1_1_420_GATOAT", FT_UINT8, BASE_DEC, VALS (valstr_032_V1_1_420_GATOAT), 0xc0, NULL, HFILL } },
+ { &hf_032_V1_1_420_FR1FR2, { "FR1FR2", "asterix.032_V1_1_420_FR1FR2", FT_UINT8, BASE_DEC, VALS (valstr_032_V1_1_420_FR1FR2), 0x30, NULL, HFILL } },
+ { &hf_032_V1_1_420_SP3, { "SP3", "asterix.032_V1_1_420_SP3", FT_UINT8, BASE_DEC, NULL, 0x08, NULL, HFILL } },
+ { &hf_032_V1_1_420_SP2, { "SP2", "asterix.032_V1_1_420_SP2", FT_UINT8, BASE_DEC, NULL, 0x04, NULL, HFILL } },
+ { &hf_032_V1_1_420_SP1, { "SP1", "asterix.032_V1_1_420_SP1", FT_UINT8, BASE_DEC, NULL, 0x02, NULL, HFILL } },
+ { &hf_032_V1_1_430, { "430, Type of Aircraft", "asterix.032_V1_1_430", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_430_VALUE, { "Type of Aircraft", "asterix.032_V1_1_430_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_435, { "435, Wake Turbulence Category", "asterix.032_V1_1_435", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_435_VALUE, { "Wake Turbulence Category", "asterix.032_V1_1_435_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_032_V1_1_435_VALUE), 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_440, { "440, Departure Aerodrome", "asterix.032_V1_1_440", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_440_VALUE, { "Departure Aerodrome", "asterix.032_V1_1_440_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_450, { "450, Destination Aerodrome", "asterix.032_V1_1_450", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_450_VALUE, { "Destination Aerodrome", "asterix.032_V1_1_450_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_460, { "460, Allocated SSR Codes", "asterix.032_V1_1_460", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_460_OCT1, { "OCT1, 1st Octal Digit", "asterix.032_V1_1_460_OCT1", FT_UINT8, BASE_DEC, NULL, 0x0e, NULL, HFILL } },
+ { &hf_032_V1_1_460_OCT2, { "OCT2, 2nd Octal Digit", "asterix.032_V1_1_460_OCT2", FT_UINT16, BASE_DEC, NULL, 0x01c0, NULL, HFILL } },
+ { &hf_032_V1_1_460_OCT3, { "OCT3, 3rd Octal Digit", "asterix.032_V1_1_460_OCT3", FT_UINT8, BASE_DEC, NULL, 0x38, NULL, HFILL } },
+ { &hf_032_V1_1_460_OCT4, { "OCT4, 4th Octal Digit", "asterix.032_V1_1_460_OCT4", FT_UINT8, BASE_DEC, NULL, 0x07, NULL, HFILL } },
+ { &hf_032_V1_1_480, { "480, Current Cleared Flight Level", "asterix.032_V1_1_480", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_480_VALUE, { "Current Cleared Flight Level, [FL]", "asterix.032_V1_1_480_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_490, { "490, Current Control Position", "asterix.032_V1_1_490", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_490_CEN, { "CEN, Centre", "asterix.032_V1_1_490_CEN", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_490_POS, { "POS, Position", "asterix.032_V1_1_490_POS", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_500, { "500, Supplementary Flight Data", "asterix.032_V1_1_500", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_500_IFI, { "IFI, IFPS FLIGHT ID", "asterix.032_V1_1_500_IFI", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_500_IFI_TYP, { "TYP", "asterix.032_V1_1_500_IFI_TYP", FT_UINT8, BASE_DEC, VALS (valstr_032_V1_1_500_IFI_TYP), 0xc0, NULL, HFILL } },
+ { &hf_032_V1_1_500_IFI_NBR, { "NBR", "asterix.032_V1_1_500_IFI_NBR", FT_UINT32, BASE_DEC, NULL, 0x07ffffff, NULL, HFILL } },
+ { &hf_032_V1_1_500_RVP, { "RVP, RVSM & Flight Priority", "asterix.032_V1_1_500_RVP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_500_RVP_RVSM, { "RVSM", "asterix.032_V1_1_500_RVP_RVSM", FT_UINT8, BASE_DEC, VALS (valstr_032_V1_1_500_RVP_RVSM), 0x06, NULL, HFILL } },
+ { &hf_032_V1_1_500_RVP_HPR, { "HPR", "asterix.032_V1_1_500_RVP_HPR", FT_UINT8, BASE_DEC, VALS (valstr_032_V1_1_500_RVP_HPR), 0x01, NULL, HFILL } },
+ { &hf_032_V1_1_500_RDS, { "RDS, Runway Designation", "asterix.032_V1_1_500_RDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_500_RDS_NU1, { "NU1, First Number", "asterix.032_V1_1_500_RDS_NU1", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_500_RDS_NU2, { "NU2, Second Number", "asterix.032_V1_1_500_RDS_NU2", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_500_RDS_LTR, { "LTR, Letter", "asterix.032_V1_1_500_RDS_LTR", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_500_TOD, { "TOD, Time of Departure / Arrival", "asterix.032_V1_1_500_TOD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_500_TOD_TYP, { "TYP", "asterix.032_V1_1_500_TOD_TYP", FT_UINT8, BASE_DEC, VALS (valstr_032_V1_1_500_TOD_TYP), 0xf8, NULL, HFILL } },
+ { &hf_032_V1_1_500_TOD_DAY, { "DAY", "asterix.032_V1_1_500_TOD_DAY", FT_UINT8, BASE_DEC, VALS (valstr_032_V1_1_500_TOD_DAY), 0x06, NULL, HFILL } },
+ { &hf_032_V1_1_500_TOD_HOR, { "HOR", "asterix.032_V1_1_500_TOD_HOR", FT_UINT8, BASE_DEC, NULL, 0x1f, NULL, HFILL } },
+ { &hf_032_V1_1_500_TOD_MIN, { "MIN", "asterix.032_V1_1_500_TOD_MIN", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_032_V1_1_500_TOD_AVS, { "AVS", "asterix.032_V1_1_500_TOD_AVS", FT_UINT8, BASE_DEC, VALS (valstr_032_V1_1_500_TOD_AVS), 0x80, NULL, HFILL } },
+ { &hf_032_V1_1_500_TOD_SEC, { "SEC", "asterix.032_V1_1_500_TOD_SEC", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_032_V1_1_500_AST, { "AST, Aircraft Stand", "asterix.032_V1_1_500_AST", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_500_AST_VALUE, { "Aircraft Stand", "asterix.032_V1_1_500_AST_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_500_STS, { "STS, Stand Status", "asterix.032_V1_1_500_STS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_500_STS_EMP, { "EMP", "asterix.032_V1_1_500_STS_EMP", FT_UINT8, BASE_DEC, VALS (valstr_032_V1_1_500_STS_EMP), 0xc0, NULL, HFILL } },
+ { &hf_032_V1_1_500_STS_AVL, { "AVL", "asterix.032_V1_1_500_STS_AVL", FT_UINT8, BASE_DEC, VALS (valstr_032_V1_1_500_STS_AVL), 0x30, NULL, HFILL } },
+ { &hf_032_V1_1_500_SID, { "SID, Standard Instrument Departure", "asterix.032_V1_1_500_SID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_500_SID_VALUE, { "Standard Instrument Departure", "asterix.032_V1_1_500_SID_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_500_STAR, { "STAR, Standard Instrument Arrival", "asterix.032_V1_1_500_STAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_500_STAR_VALUE, { "Standard Instrument Arrival", "asterix.032_V1_1_500_STAR_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_V1_1_RE, { "RE, Reserved Expansion Field", "asterix.032_V1_1_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_010, { "010, Server Identification Tag", "asterix.032_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_010_SAC, { "SAC, System Area Code", "asterix.032_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_010_SIC, { "SIC, System Identification Code", "asterix.032_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_015, { "015, User Number", "asterix.032_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_015_VALUE, { "User Number", "asterix.032_015_VALUE", FT_UINT16, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_018, { "018, Data Source Identification Tag", "asterix.032_018", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_018_SAC, { "SAC, System Area Code", "asterix.032_018_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_018_SIC, { "SIC, System Identification Code", "asterix.032_018_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_020, { "020, Time of ASTERIX Report Generation", "asterix.032_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_020_VALUE, { "Time of ASTERIX Report Generation, [s]", "asterix.032_020_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_035, { "035, Type of Message", "asterix.032_035", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_035_FAMILY, { "FAMILY", "asterix.032_035_FAMILY", FT_UINT8, BASE_DEC, VALS (valstr_032_035_FAMILY), 0xf0, NULL, HFILL } },
+ { &hf_032_035_NATURE, { "NATURE", "asterix.032_035_NATURE", FT_UINT8, BASE_DEC, VALS (valstr_032_035_NATURE), 0x0f, NULL, HFILL } },
+ { &hf_032_040, { "040, Track Number", "asterix.032_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_040_VALUE, { "Track Number", "asterix.032_040_VALUE", FT_UINT16, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_050, { "050, Composed Track Number", "asterix.032_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_050_SUI, { "SUI, System Unit Identification", "asterix.032_050_SUI", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_050_STN, { "STN, System Track Number", "asterix.032_050_STN", FT_UINT16, BASE_DEC, NULL, 0xfffe, NULL, HFILL } },
+ { &hf_032_060, { "060, Track Mode 3/A", "asterix.032_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_060_MODE3A, { "MODE3A, (Mode 3/A Code) 4 Digits, Octal Representation", "asterix.032_060_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_032_400, { "400, Callsign", "asterix.032_400", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_400_VALUE, { "Callsign", "asterix.032_400_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_410, { "410, Plan Number", "asterix.032_410", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_410_VALUE, { "Plan Number", "asterix.032_410_VALUE", FT_UINT16, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_420, { "420, Flight Category", "asterix.032_420", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_420_GATOAT, { "GATOAT", "asterix.032_420_GATOAT", FT_UINT8, BASE_DEC, VALS (valstr_032_420_GATOAT), 0xc0, NULL, HFILL } },
+ { &hf_032_420_FR1FR2, { "FR1FR2", "asterix.032_420_FR1FR2", FT_UINT8, BASE_DEC, VALS (valstr_032_420_FR1FR2), 0x30, NULL, HFILL } },
+ { &hf_032_420_SP3, { "SP3", "asterix.032_420_SP3", FT_UINT8, BASE_DEC, NULL, 0x08, NULL, HFILL } },
+ { &hf_032_420_SP2, { "SP2", "asterix.032_420_SP2", FT_UINT8, BASE_DEC, NULL, 0x04, NULL, HFILL } },
+ { &hf_032_420_SP1, { "SP1", "asterix.032_420_SP1", FT_UINT8, BASE_DEC, NULL, 0x02, NULL, HFILL } },
+ { &hf_032_430, { "430, Type of Aircraft", "asterix.032_430", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_430_VALUE, { "Type of Aircraft", "asterix.032_430_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_435, { "435, Wake Turbulence Category", "asterix.032_435", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_435_VALUE, { "Wake Turbulence Category", "asterix.032_435_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_032_435_VALUE), 0x00, NULL, HFILL } },
+ { &hf_032_440, { "440, Departure Aerodrome", "asterix.032_440", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_440_VALUE, { "Departure Aerodrome", "asterix.032_440_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_450, { "450, Destination Aerodrome", "asterix.032_450", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_450_VALUE, { "Destination Aerodrome", "asterix.032_450_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_460, { "460, Allocated SSR Codes", "asterix.032_460", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_460_OCT1, { "OCT1, 1st Octal Digit", "asterix.032_460_OCT1", FT_UINT8, BASE_DEC, NULL, 0x0e, NULL, HFILL } },
+ { &hf_032_460_OCT2, { "OCT2, 2nd Octal Digit", "asterix.032_460_OCT2", FT_UINT16, BASE_DEC, NULL, 0x01c0, NULL, HFILL } },
+ { &hf_032_460_OCT3, { "OCT3, 3rd Octal Digit", "asterix.032_460_OCT3", FT_UINT8, BASE_DEC, NULL, 0x38, NULL, HFILL } },
+ { &hf_032_460_OCT4, { "OCT4, 4th Octal Digit", "asterix.032_460_OCT4", FT_UINT8, BASE_DEC, NULL, 0x07, NULL, HFILL } },
+ { &hf_032_480, { "480, Current Cleared Flight Level", "asterix.032_480", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_480_VALUE, { "Current Cleared Flight Level, [FL]", "asterix.032_480_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_490, { "490, Current Control Position", "asterix.032_490", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_490_CEN, { "CEN, Centre", "asterix.032_490_CEN", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_490_POS, { "POS, Position", "asterix.032_490_POS", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_500, { "500, Supplementary Flight Data", "asterix.032_500", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_500_IFI, { "IFI, IFPS FLIGHT ID", "asterix.032_500_IFI", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_500_IFI_TYP, { "TYP", "asterix.032_500_IFI_TYP", FT_UINT8, BASE_DEC, VALS (valstr_032_500_IFI_TYP), 0xc0, NULL, HFILL } },
+ { &hf_032_500_IFI_NBR, { "NBR", "asterix.032_500_IFI_NBR", FT_UINT32, BASE_DEC, NULL, 0x07ffffff, NULL, HFILL } },
+ { &hf_032_500_RVP, { "RVP, RVSM & Flight Priority", "asterix.032_500_RVP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_500_RVP_RVSM, { "RVSM", "asterix.032_500_RVP_RVSM", FT_UINT8, BASE_DEC, VALS (valstr_032_500_RVP_RVSM), 0x06, NULL, HFILL } },
+ { &hf_032_500_RVP_HPR, { "HPR", "asterix.032_500_RVP_HPR", FT_UINT8, BASE_DEC, VALS (valstr_032_500_RVP_HPR), 0x01, NULL, HFILL } },
+ { &hf_032_500_RDS, { "RDS, Runway Designation", "asterix.032_500_RDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_500_RDS_NU1, { "NU1, First Number", "asterix.032_500_RDS_NU1", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_500_RDS_NU2, { "NU2, Second Number", "asterix.032_500_RDS_NU2", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_500_RDS_LTR, { "LTR, Letter", "asterix.032_500_RDS_LTR", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_500_TOD, { "TOD, Time of Departure / Arrival", "asterix.032_500_TOD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_500_TOD_TYP, { "TYP", "asterix.032_500_TOD_TYP", FT_UINT8, BASE_DEC, VALS (valstr_032_500_TOD_TYP), 0xf8, NULL, HFILL } },
+ { &hf_032_500_TOD_DAY, { "DAY", "asterix.032_500_TOD_DAY", FT_UINT8, BASE_DEC, VALS (valstr_032_500_TOD_DAY), 0x06, NULL, HFILL } },
+ { &hf_032_500_TOD_HOR, { "HOR", "asterix.032_500_TOD_HOR", FT_UINT8, BASE_DEC, NULL, 0x1f, NULL, HFILL } },
+ { &hf_032_500_TOD_MIN, { "MIN", "asterix.032_500_TOD_MIN", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_032_500_TOD_AVS, { "AVS", "asterix.032_500_TOD_AVS", FT_UINT8, BASE_DEC, VALS (valstr_032_500_TOD_AVS), 0x80, NULL, HFILL } },
+ { &hf_032_500_TOD_SEC, { "SEC", "asterix.032_500_TOD_SEC", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_032_500_AST, { "AST, Aircraft Stand", "asterix.032_500_AST", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_500_AST_VALUE, { "Aircraft Stand", "asterix.032_500_AST_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_500_STS, { "STS, Stand Status", "asterix.032_500_STS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_500_STS_EMP, { "EMP", "asterix.032_500_STS_EMP", FT_UINT8, BASE_DEC, VALS (valstr_032_500_STS_EMP), 0xc0, NULL, HFILL } },
+ { &hf_032_500_STS_AVL, { "AVL", "asterix.032_500_STS_AVL", FT_UINT8, BASE_DEC, VALS (valstr_032_500_STS_AVL), 0x30, NULL, HFILL } },
+ { &hf_032_500_SID, { "SID, Standard Instrument Departure", "asterix.032_500_SID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_500_SID_VALUE, { "Standard Instrument Departure", "asterix.032_500_SID_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_500_STAR, { "STAR, Standard Instrument Arrival", "asterix.032_500_STAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_500_STAR_VALUE, { "Standard Instrument Arrival", "asterix.032_500_STAR_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_032_RE, { "RE, Reserved Expansion Field", "asterix.032_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_000, { "000, Message Type", "asterix.034_V1_27_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_000_VALUE, { "Message Type", "asterix.034_V1_27_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_010, { "010, Data Source Identifier", "asterix.034_V1_27_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_010_SAC, { "SAC, System Area Code", "asterix.034_V1_27_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_010_SIC, { "SIC, System Identification Code", "asterix.034_V1_27_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_020, { "020, Sector Number", "asterix.034_V1_27_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_020_VALUE, { "Sector Number, [°]", "asterix.034_V1_27_020_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_030, { "030, Time of Day", "asterix.034_V1_27_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_030_VALUE, { "Time of Day, [s]", "asterix.034_V1_27_030_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_041, { "041, Antenna Rotation Speed", "asterix.034_V1_27_041", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_041_VALUE, { "Antenna Rotation Speed, [s]", "asterix.034_V1_27_041_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_050, { "050, System Configuration and Status", "asterix.034_V1_27_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_050_COM, { "COM, Common Part", "asterix.034_V1_27_050_COM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_050_COM_NOGO, { "NOGO, Operational Release Status of the System", "asterix.034_V1_27_050_COM_NOGO", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_050_COM_NOGO), 0x80, NULL, HFILL } },
+ { &hf_034_V1_27_050_COM_RDPC, { "RDPC, Radar Data Processor Chain Selection Status", "asterix.034_V1_27_050_COM_RDPC", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_050_COM_RDPC), 0x40, NULL, HFILL } },
+ { &hf_034_V1_27_050_COM_RDPR, { "RDPR, Event to Signal a Reset/restart of the Selected Radar Data Processor Chain, I.e. Expect a New Assignment of Track Numbers", "asterix.034_V1_27_050_COM_RDPR", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_050_COM_RDPR), 0x20, NULL, HFILL } },
+ { &hf_034_V1_27_050_COM_OVLRDP, { "OVLRDP, Radar Data Processor Overload Indicator", "asterix.034_V1_27_050_COM_OVLRDP", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_050_COM_OVLRDP), 0x10, NULL, HFILL } },
+ { &hf_034_V1_27_050_COM_OVLXMT, { "OVLXMT, Transmission Subsystem Overload Status", "asterix.034_V1_27_050_COM_OVLXMT", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_050_COM_OVLXMT), 0x08, NULL, HFILL } },
+ { &hf_034_V1_27_050_COM_MSC, { "MSC, Monitoring System Connected Status", "asterix.034_V1_27_050_COM_MSC", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_050_COM_MSC), 0x04, NULL, HFILL } },
+ { &hf_034_V1_27_050_COM_TSV, { "TSV, Time Source Validity", "asterix.034_V1_27_050_COM_TSV", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_050_COM_TSV), 0x02, NULL, HFILL } },
+ { &hf_034_V1_27_050_PSR, { "PSR, Specific Status Information for a PSR Sensor", "asterix.034_V1_27_050_PSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_050_PSR_ANT, { "ANT, Selected Antenna", "asterix.034_V1_27_050_PSR_ANT", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_050_PSR_ANT), 0x80, NULL, HFILL } },
+ { &hf_034_V1_27_050_PSR_CHAB, { "CHAB, Channel A/B Selection Status", "asterix.034_V1_27_050_PSR_CHAB", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_050_PSR_CHAB), 0x60, NULL, HFILL } },
+ { &hf_034_V1_27_050_PSR_OVL, { "OVL, Overload Condition", "asterix.034_V1_27_050_PSR_OVL", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_050_PSR_OVL), 0x10, NULL, HFILL } },
+ { &hf_034_V1_27_050_PSR_MSC, { "MSC, Monitoring System Connected Status", "asterix.034_V1_27_050_PSR_MSC", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_050_PSR_MSC), 0x08, NULL, HFILL } },
+ { &hf_034_V1_27_050_SSR, { "SSR, Specific Status Information for a SSR Sensor", "asterix.034_V1_27_050_SSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_050_SSR_ANT, { "ANT, Selected Antenna", "asterix.034_V1_27_050_SSR_ANT", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_050_SSR_ANT), 0x80, NULL, HFILL } },
+ { &hf_034_V1_27_050_SSR_CHAB, { "CHAB, Channel A/B Selection Status", "asterix.034_V1_27_050_SSR_CHAB", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_050_SSR_CHAB), 0x60, NULL, HFILL } },
+ { &hf_034_V1_27_050_SSR_OVL, { "OVL, Overload Condition", "asterix.034_V1_27_050_SSR_OVL", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_050_SSR_OVL), 0x10, NULL, HFILL } },
+ { &hf_034_V1_27_050_SSR_MSC, { "MSC, Monitoring System Connected Status:", "asterix.034_V1_27_050_SSR_MSC", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_050_SSR_MSC), 0x08, NULL, HFILL } },
+ { &hf_034_V1_27_050_MDS, { "MDS, Specific Status Information for a Mode S Sensor", "asterix.034_V1_27_050_MDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_050_MDS_ANT, { "ANT, Selected Antenna", "asterix.034_V1_27_050_MDS_ANT", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_050_MDS_ANT), 0x80, NULL, HFILL } },
+ { &hf_034_V1_27_050_MDS_CHAB, { "CHAB, Channel A/B Selection Status", "asterix.034_V1_27_050_MDS_CHAB", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_050_MDS_CHAB), 0x60, NULL, HFILL } },
+ { &hf_034_V1_27_050_MDS_OVLSUR, { "OVLSUR, Overload Condition", "asterix.034_V1_27_050_MDS_OVLSUR", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_050_MDS_OVLSUR), 0x10, NULL, HFILL } },
+ { &hf_034_V1_27_050_MDS_MSC, { "MSC, Monitoring System Connected Status:", "asterix.034_V1_27_050_MDS_MSC", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_050_MDS_MSC), 0x08, NULL, HFILL } },
+ { &hf_034_V1_27_050_MDS_SCF, { "SCF, Channel A/B Selection Status for Surveillance Co-ordination Function", "asterix.034_V1_27_050_MDS_SCF", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_050_MDS_SCF), 0x04, NULL, HFILL } },
+ { &hf_034_V1_27_050_MDS_DLF, { "DLF, Channel A/B Selection Status for Data Link Function", "asterix.034_V1_27_050_MDS_DLF", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_050_MDS_DLF), 0x02, NULL, HFILL } },
+ { &hf_034_V1_27_050_MDS_OVLSCF, { "OVLSCF, Overload in Surveillance Co-ordination Function", "asterix.034_V1_27_050_MDS_OVLSCF", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_050_MDS_OVLSCF), 0x01, NULL, HFILL } },
+ { &hf_034_V1_27_050_MDS_OVLDLF, { "OVLDLF, Overload in Data Link Function", "asterix.034_V1_27_050_MDS_OVLDLF", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_050_MDS_OVLDLF), 0x80, NULL, HFILL } },
+ { &hf_034_V1_27_060, { "060, System Processing Mode", "asterix.034_V1_27_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_060_COM, { "COM, Common Part", "asterix.034_V1_27_060_COM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_060_COM_REDRDP, { "REDRDP, Reduction Steps in Use for An Overload of the RDP", "asterix.034_V1_27_060_COM_REDRDP", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_060_COM_REDRDP), 0x70, NULL, HFILL } },
+ { &hf_034_V1_27_060_COM_REDXMT, { "REDXMT, Reduction Steps in Use for An Overload of the Transmission Subsystem", "asterix.034_V1_27_060_COM_REDXMT", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_060_COM_REDXMT), 0x0e, NULL, HFILL } },
+ { &hf_034_V1_27_060_PSR, { "PSR, Specific Processing Mode Information for a PSR Sensor", "asterix.034_V1_27_060_PSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_060_PSR_POL, { "POL, Polarization in Use by PSR", "asterix.034_V1_27_060_PSR_POL", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_060_PSR_POL), 0x80, NULL, HFILL } },
+ { &hf_034_V1_27_060_PSR_REDRAD, { "REDRAD, Reduction Steps in Use as Result of An Overload Within the PSR Subsystem", "asterix.034_V1_27_060_PSR_REDRAD", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_060_PSR_REDRAD), 0x70, NULL, HFILL } },
+ { &hf_034_V1_27_060_PSR_STC, { "STC, Sensitivity Time Control Map in Use", "asterix.034_V1_27_060_PSR_STC", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_060_PSR_STC), 0x0c, NULL, HFILL } },
+ { &hf_034_V1_27_060_SSR, { "SSR, Specific Processing Mode Information for a SSR Sensor", "asterix.034_V1_27_060_SSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_060_SSR_REDRAD, { "REDRAD, Reduction Steps in Use as Result of An Overload Within the SSR Subsystem", "asterix.034_V1_27_060_SSR_REDRAD", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_060_SSR_REDRAD), 0xe0, NULL, HFILL } },
+ { &hf_034_V1_27_060_MDS, { "MDS, Specific Processing Mode Information for a Mode S Sensor", "asterix.034_V1_27_060_MDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_060_MDS_REDRAD, { "REDRAD, Reduction Steps in Use as Result of An Overload Within the Mode S Subsystem", "asterix.034_V1_27_060_MDS_REDRAD", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_060_MDS_REDRAD), 0xe0, NULL, HFILL } },
+ { &hf_034_V1_27_060_MDS_CLU, { "CLU, Cluster State", "asterix.034_V1_27_060_MDS_CLU", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_060_MDS_CLU), 0x10, NULL, HFILL } },
+ { &hf_034_V1_27_070, { "070, Message Count Values", "asterix.034_V1_27_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_070_TYP, { "TYP, Type of Message Counter", "asterix.034_V1_27_070_TYP", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_070_TYP), 0xf8, NULL, HFILL } },
+ { &hf_034_V1_27_070_COUNT, { "COUNT, COUNTER", "asterix.034_V1_27_070_COUNT", FT_UINT16, BASE_DEC, NULL, 0x07ff, NULL, HFILL } },
+ { &hf_034_V1_27_090, { "090, Collimation Error", "asterix.034_V1_27_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_090_RNG, { "RNG, Range Error, [NM]", "asterix.034_V1_27_090_RNG", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_090_AZM, { "AZM, Azimuth Error, [°]", "asterix.034_V1_27_090_AZM", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_100, { "100, Generic Polar Window", "asterix.034_V1_27_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_100_RHOST, { "RHOST, Rho Start, [NM]", "asterix.034_V1_27_100_RHOST", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_100_RHOEND, { "RHOEND, Rho End, [NM]", "asterix.034_V1_27_100_RHOEND", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_100_THETAST, { "THETAST, Theta Start, [°]", "asterix.034_V1_27_100_THETAST", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_100_THETAEND, { "THETAEND, Theta End, [°]", "asterix.034_V1_27_100_THETAEND", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_110, { "110, Data Filter", "asterix.034_V1_27_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_110_VALUE, { "Data Filter", "asterix.034_V1_27_110_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_27_110_VALUE), 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_120, { "120, 3D-Position Of Data Source", "asterix.034_V1_27_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_120_HGT, { "HGT, Height of Data Source, [m]", "asterix.034_V1_27_120_HGT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_120_LAT, { "LAT, Latitude, [°]", "asterix.034_V1_27_120_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_120_LON, { "LON, Longitude, [°]", "asterix.034_V1_27_120_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_RE, { "RE, Reserved Expansion Field", "asterix.034_V1_27_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_27_SP, { "SP, Special Purpose Field", "asterix.034_V1_27_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_000, { "000, Message Type", "asterix.034_V1_28_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_000_VALUE, { "Message Type", "asterix.034_V1_28_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_010, { "010, Data Source Identifier", "asterix.034_V1_28_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_010_SAC, { "SAC, System Area Code", "asterix.034_V1_28_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_010_SIC, { "SIC, System Identification Code", "asterix.034_V1_28_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_020, { "020, Sector Number", "asterix.034_V1_28_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_020_VALUE, { "Sector Number, [°]", "asterix.034_V1_28_020_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_030, { "030, Time of Day", "asterix.034_V1_28_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_030_VALUE, { "Time of Day, [s]", "asterix.034_V1_28_030_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_041, { "041, Antenna Rotation Speed", "asterix.034_V1_28_041", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_041_VALUE, { "Antenna Rotation Speed, [s]", "asterix.034_V1_28_041_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_050, { "050, System Configuration and Status", "asterix.034_V1_28_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_050_COM, { "COM, Common Part", "asterix.034_V1_28_050_COM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_050_COM_NOGO, { "NOGO, Operational Release Status of the System", "asterix.034_V1_28_050_COM_NOGO", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_050_COM_NOGO), 0x80, NULL, HFILL } },
+ { &hf_034_V1_28_050_COM_RDPC, { "RDPC, Radar Data Processor Chain Selection Status", "asterix.034_V1_28_050_COM_RDPC", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_050_COM_RDPC), 0x40, NULL, HFILL } },
+ { &hf_034_V1_28_050_COM_RDPR, { "RDPR, Event to Signal a Reset/restart of the Selected Radar Data Processor Chain, I.e. Expect a New Assignment of Track Numbers", "asterix.034_V1_28_050_COM_RDPR", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_050_COM_RDPR), 0x20, NULL, HFILL } },
+ { &hf_034_V1_28_050_COM_OVLRDP, { "OVLRDP, Radar Data Processor Overload Indicator", "asterix.034_V1_28_050_COM_OVLRDP", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_050_COM_OVLRDP), 0x10, NULL, HFILL } },
+ { &hf_034_V1_28_050_COM_OVLXMT, { "OVLXMT, Transmission Subsystem Overload Status", "asterix.034_V1_28_050_COM_OVLXMT", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_050_COM_OVLXMT), 0x08, NULL, HFILL } },
+ { &hf_034_V1_28_050_COM_MSC, { "MSC, Monitoring System Connected Status", "asterix.034_V1_28_050_COM_MSC", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_050_COM_MSC), 0x04, NULL, HFILL } },
+ { &hf_034_V1_28_050_COM_TSV, { "TSV, Time Source Validity", "asterix.034_V1_28_050_COM_TSV", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_050_COM_TSV), 0x02, NULL, HFILL } },
+ { &hf_034_V1_28_050_PSR, { "PSR, Specific Status Information for a PSR Sensor", "asterix.034_V1_28_050_PSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_050_PSR_ANT, { "ANT, Selected Antenna", "asterix.034_V1_28_050_PSR_ANT", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_050_PSR_ANT), 0x80, NULL, HFILL } },
+ { &hf_034_V1_28_050_PSR_CHAB, { "CHAB, Channel A/B Selection Status", "asterix.034_V1_28_050_PSR_CHAB", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_050_PSR_CHAB), 0x60, NULL, HFILL } },
+ { &hf_034_V1_28_050_PSR_OVL, { "OVL, Overload Condition", "asterix.034_V1_28_050_PSR_OVL", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_050_PSR_OVL), 0x10, NULL, HFILL } },
+ { &hf_034_V1_28_050_PSR_MSC, { "MSC, Monitoring System Connected Status", "asterix.034_V1_28_050_PSR_MSC", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_050_PSR_MSC), 0x08, NULL, HFILL } },
+ { &hf_034_V1_28_050_SSR, { "SSR, Specific Status Information for a SSR Sensor", "asterix.034_V1_28_050_SSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_050_SSR_ANT, { "ANT, Selected Antenna", "asterix.034_V1_28_050_SSR_ANT", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_050_SSR_ANT), 0x80, NULL, HFILL } },
+ { &hf_034_V1_28_050_SSR_CHAB, { "CHAB, Channel A/B Selection Status", "asterix.034_V1_28_050_SSR_CHAB", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_050_SSR_CHAB), 0x60, NULL, HFILL } },
+ { &hf_034_V1_28_050_SSR_OVL, { "OVL, Overload Condition", "asterix.034_V1_28_050_SSR_OVL", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_050_SSR_OVL), 0x10, NULL, HFILL } },
+ { &hf_034_V1_28_050_SSR_MSC, { "MSC, Monitoring System Connected Status:", "asterix.034_V1_28_050_SSR_MSC", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_050_SSR_MSC), 0x08, NULL, HFILL } },
+ { &hf_034_V1_28_050_MDS, { "MDS, Specific Status Information for a Mode S Sensor", "asterix.034_V1_28_050_MDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_050_MDS_ANT, { "ANT, Selected Antenna", "asterix.034_V1_28_050_MDS_ANT", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_050_MDS_ANT), 0x80, NULL, HFILL } },
+ { &hf_034_V1_28_050_MDS_CHAB, { "CHAB, Channel A/B Selection Status", "asterix.034_V1_28_050_MDS_CHAB", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_050_MDS_CHAB), 0x60, NULL, HFILL } },
+ { &hf_034_V1_28_050_MDS_OVLSUR, { "OVLSUR, Overload Condition", "asterix.034_V1_28_050_MDS_OVLSUR", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_050_MDS_OVLSUR), 0x10, NULL, HFILL } },
+ { &hf_034_V1_28_050_MDS_MSC, { "MSC, Monitoring System Connected Status:", "asterix.034_V1_28_050_MDS_MSC", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_050_MDS_MSC), 0x08, NULL, HFILL } },
+ { &hf_034_V1_28_050_MDS_SCF, { "SCF, Channel A/B Selection Status for Surveillance Co-ordination Function", "asterix.034_V1_28_050_MDS_SCF", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_050_MDS_SCF), 0x04, NULL, HFILL } },
+ { &hf_034_V1_28_050_MDS_DLF, { "DLF, Channel A/B Selection Status for Data Link Function", "asterix.034_V1_28_050_MDS_DLF", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_050_MDS_DLF), 0x02, NULL, HFILL } },
+ { &hf_034_V1_28_050_MDS_OVLSCF, { "OVLSCF, Overload in Surveillance Co-ordination Function", "asterix.034_V1_28_050_MDS_OVLSCF", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_050_MDS_OVLSCF), 0x01, NULL, HFILL } },
+ { &hf_034_V1_28_050_MDS_OVLDLF, { "OVLDLF, Overload in Data Link Function", "asterix.034_V1_28_050_MDS_OVLDLF", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_050_MDS_OVLDLF), 0x80, NULL, HFILL } },
+ { &hf_034_V1_28_060, { "060, System Processing Mode", "asterix.034_V1_28_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_060_COM, { "COM, Common Part", "asterix.034_V1_28_060_COM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_060_COM_REDRDP, { "REDRDP, Reduction Steps in Use for An Overload of the RDP", "asterix.034_V1_28_060_COM_REDRDP", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_060_COM_REDRDP), 0x70, NULL, HFILL } },
+ { &hf_034_V1_28_060_COM_REDXMT, { "REDXMT, Reduction Steps in Use for An Overload of the Transmission Subsystem", "asterix.034_V1_28_060_COM_REDXMT", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_060_COM_REDXMT), 0x0e, NULL, HFILL } },
+ { &hf_034_V1_28_060_PSR, { "PSR, Specific Processing Mode Information for a PSR Sensor", "asterix.034_V1_28_060_PSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_060_PSR_POL, { "POL, Polarization in Use by PSR", "asterix.034_V1_28_060_PSR_POL", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_060_PSR_POL), 0x80, NULL, HFILL } },
+ { &hf_034_V1_28_060_PSR_REDRAD, { "REDRAD, Reduction Steps in Use as Result of An Overload Within the PSR Subsystem", "asterix.034_V1_28_060_PSR_REDRAD", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_060_PSR_REDRAD), 0x70, NULL, HFILL } },
+ { &hf_034_V1_28_060_PSR_STC, { "STC, Sensitivity Time Control Map in Use", "asterix.034_V1_28_060_PSR_STC", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_060_PSR_STC), 0x0c, NULL, HFILL } },
+ { &hf_034_V1_28_060_SSR, { "SSR, Specific Processing Mode Information for a SSR Sensor", "asterix.034_V1_28_060_SSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_060_SSR_REDRAD, { "REDRAD, Reduction Steps in Use as Result of An Overload Within the SSR Subsystem", "asterix.034_V1_28_060_SSR_REDRAD", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_060_SSR_REDRAD), 0xe0, NULL, HFILL } },
+ { &hf_034_V1_28_060_MDS, { "MDS, Specific Processing Mode Information for a Mode S Sensor", "asterix.034_V1_28_060_MDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_060_MDS_REDRAD, { "REDRAD, Reduction Steps in Use as Result of An Overload Within the Mode S Subsystem", "asterix.034_V1_28_060_MDS_REDRAD", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_060_MDS_REDRAD), 0xe0, NULL, HFILL } },
+ { &hf_034_V1_28_060_MDS_CLU, { "CLU, Cluster State", "asterix.034_V1_28_060_MDS_CLU", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_060_MDS_CLU), 0x10, NULL, HFILL } },
+ { &hf_034_V1_28_070, { "070, Message Count Values", "asterix.034_V1_28_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_070_TYP, { "TYP, Type of Message Counter", "asterix.034_V1_28_070_TYP", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_070_TYP), 0xf8, NULL, HFILL } },
+ { &hf_034_V1_28_070_COUNT, { "COUNT, COUNTER", "asterix.034_V1_28_070_COUNT", FT_UINT16, BASE_DEC, NULL, 0x07ff, NULL, HFILL } },
+ { &hf_034_V1_28_090, { "090, Collimation Error", "asterix.034_V1_28_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_090_RNG, { "RNG, Range Error, [NM]", "asterix.034_V1_28_090_RNG", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_090_AZM, { "AZM, Azimuth Error, [°]", "asterix.034_V1_28_090_AZM", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_100, { "100, Generic Polar Window", "asterix.034_V1_28_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_100_RHOST, { "RHOST, Rho Start, [NM]", "asterix.034_V1_28_100_RHOST", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_100_RHOEND, { "RHOEND, Rho End, [NM]", "asterix.034_V1_28_100_RHOEND", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_100_THETAST, { "THETAST, Theta Start, [°]", "asterix.034_V1_28_100_THETAST", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_100_THETAEND, { "THETAEND, Theta End, [°]", "asterix.034_V1_28_100_THETAEND", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_110, { "110, Data Filter", "asterix.034_V1_28_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_110_VALUE, { "Data Filter", "asterix.034_V1_28_110_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_28_110_VALUE), 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_120, { "120, 3D-Position Of Data Source", "asterix.034_V1_28_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_120_HGT, { "HGT, Height of Data Source, [m]", "asterix.034_V1_28_120_HGT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_120_LAT, { "LAT, Latitude, [°]", "asterix.034_V1_28_120_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_120_LON, { "LON, Longitude, [°]", "asterix.034_V1_28_120_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_RE, { "RE, Reserved Expansion Field", "asterix.034_V1_28_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_28_SP, { "SP, Special Purpose Field", "asterix.034_V1_28_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_000, { "000, Message Type", "asterix.034_V1_29_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_000_VALUE, { "Message Type", "asterix.034_V1_29_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_010, { "010, Data Source Identifier", "asterix.034_V1_29_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_010_SAC, { "SAC, System Area Code", "asterix.034_V1_29_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_010_SIC, { "SIC, System Identification Code", "asterix.034_V1_29_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_020, { "020, Sector Number", "asterix.034_V1_29_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_020_VALUE, { "Sector Number, [°]", "asterix.034_V1_29_020_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_030, { "030, Time of Day", "asterix.034_V1_29_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_030_VALUE, { "Time of Day, [s]", "asterix.034_V1_29_030_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_041, { "041, Antenna Rotation Speed", "asterix.034_V1_29_041", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_041_VALUE, { "Antenna Rotation Speed, [s]", "asterix.034_V1_29_041_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_050, { "050, System Configuration and Status", "asterix.034_V1_29_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_050_COM, { "COM, Common Part", "asterix.034_V1_29_050_COM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_050_COM_NOGO, { "NOGO, Operational Release Status of the System", "asterix.034_V1_29_050_COM_NOGO", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_050_COM_NOGO), 0x80, NULL, HFILL } },
+ { &hf_034_V1_29_050_COM_RDPC, { "RDPC, Radar Data Processor Chain Selection Status", "asterix.034_V1_29_050_COM_RDPC", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_050_COM_RDPC), 0x40, NULL, HFILL } },
+ { &hf_034_V1_29_050_COM_RDPR, { "RDPR, Event to Signal a Reset/restart of the Selected Radar Data Processor Chain, I.e. Expect a New Assignment of Track Numbers", "asterix.034_V1_29_050_COM_RDPR", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_050_COM_RDPR), 0x20, NULL, HFILL } },
+ { &hf_034_V1_29_050_COM_OVLRDP, { "OVLRDP, Radar Data Processor Overload Indicator", "asterix.034_V1_29_050_COM_OVLRDP", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_050_COM_OVLRDP), 0x10, NULL, HFILL } },
+ { &hf_034_V1_29_050_COM_OVLXMT, { "OVLXMT, Transmission Subsystem Overload Status", "asterix.034_V1_29_050_COM_OVLXMT", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_050_COM_OVLXMT), 0x08, NULL, HFILL } },
+ { &hf_034_V1_29_050_COM_MSC, { "MSC, Monitoring System Connected Status", "asterix.034_V1_29_050_COM_MSC", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_050_COM_MSC), 0x04, NULL, HFILL } },
+ { &hf_034_V1_29_050_COM_TSV, { "TSV, Time Source Validity", "asterix.034_V1_29_050_COM_TSV", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_050_COM_TSV), 0x02, NULL, HFILL } },
+ { &hf_034_V1_29_050_PSR, { "PSR, Specific Status Information for a PSR Sensor", "asterix.034_V1_29_050_PSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_050_PSR_ANT, { "ANT, Selected Antenna", "asterix.034_V1_29_050_PSR_ANT", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_050_PSR_ANT), 0x80, NULL, HFILL } },
+ { &hf_034_V1_29_050_PSR_CHAB, { "CHAB, Channel A/B Selection Status", "asterix.034_V1_29_050_PSR_CHAB", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_050_PSR_CHAB), 0x60, NULL, HFILL } },
+ { &hf_034_V1_29_050_PSR_OVL, { "OVL, Overload Condition", "asterix.034_V1_29_050_PSR_OVL", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_050_PSR_OVL), 0x10, NULL, HFILL } },
+ { &hf_034_V1_29_050_PSR_MSC, { "MSC, Monitoring System Connected Status", "asterix.034_V1_29_050_PSR_MSC", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_050_PSR_MSC), 0x08, NULL, HFILL } },
+ { &hf_034_V1_29_050_SSR, { "SSR, Specific Status Information for a SSR Sensor", "asterix.034_V1_29_050_SSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_050_SSR_ANT, { "ANT, Selected Antenna", "asterix.034_V1_29_050_SSR_ANT", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_050_SSR_ANT), 0x80, NULL, HFILL } },
+ { &hf_034_V1_29_050_SSR_CHAB, { "CHAB, Channel A/B Selection Status", "asterix.034_V1_29_050_SSR_CHAB", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_050_SSR_CHAB), 0x60, NULL, HFILL } },
+ { &hf_034_V1_29_050_SSR_OVL, { "OVL, Overload Condition", "asterix.034_V1_29_050_SSR_OVL", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_050_SSR_OVL), 0x10, NULL, HFILL } },
+ { &hf_034_V1_29_050_SSR_MSC, { "MSC, Monitoring System Connected Status:", "asterix.034_V1_29_050_SSR_MSC", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_050_SSR_MSC), 0x08, NULL, HFILL } },
+ { &hf_034_V1_29_050_MDS, { "MDS, Specific Status Information for a Mode S Sensor", "asterix.034_V1_29_050_MDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_050_MDS_ANT, { "ANT, Selected Antenna", "asterix.034_V1_29_050_MDS_ANT", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_050_MDS_ANT), 0x80, NULL, HFILL } },
+ { &hf_034_V1_29_050_MDS_CHAB, { "CHAB, Channel A/B Selection Status", "asterix.034_V1_29_050_MDS_CHAB", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_050_MDS_CHAB), 0x60, NULL, HFILL } },
+ { &hf_034_V1_29_050_MDS_OVLSUR, { "OVLSUR, Overload Condition", "asterix.034_V1_29_050_MDS_OVLSUR", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_050_MDS_OVLSUR), 0x10, NULL, HFILL } },
+ { &hf_034_V1_29_050_MDS_MSC, { "MSC, Monitoring System Connected Status:", "asterix.034_V1_29_050_MDS_MSC", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_050_MDS_MSC), 0x08, NULL, HFILL } },
+ { &hf_034_V1_29_050_MDS_SCF, { "SCF, Channel A/B Selection Status for Surveillance Co-ordination Function", "asterix.034_V1_29_050_MDS_SCF", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_050_MDS_SCF), 0x04, NULL, HFILL } },
+ { &hf_034_V1_29_050_MDS_DLF, { "DLF, Channel A/B Selection Status for Data Link Function", "asterix.034_V1_29_050_MDS_DLF", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_050_MDS_DLF), 0x02, NULL, HFILL } },
+ { &hf_034_V1_29_050_MDS_OVLSCF, { "OVLSCF, Overload in Surveillance Co-ordination Function", "asterix.034_V1_29_050_MDS_OVLSCF", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_050_MDS_OVLSCF), 0x01, NULL, HFILL } },
+ { &hf_034_V1_29_050_MDS_OVLDLF, { "OVLDLF, Overload in Data Link Function", "asterix.034_V1_29_050_MDS_OVLDLF", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_050_MDS_OVLDLF), 0x80, NULL, HFILL } },
+ { &hf_034_V1_29_060, { "060, System Processing Mode", "asterix.034_V1_29_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_060_COM, { "COM, Common Part", "asterix.034_V1_29_060_COM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_060_COM_REDRDP, { "REDRDP, Reduction Steps in Use for An Overload of the RDP", "asterix.034_V1_29_060_COM_REDRDP", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_060_COM_REDRDP), 0x70, NULL, HFILL } },
+ { &hf_034_V1_29_060_COM_REDXMT, { "REDXMT, Reduction Steps in Use for An Overload of the Transmission Subsystem", "asterix.034_V1_29_060_COM_REDXMT", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_060_COM_REDXMT), 0x0e, NULL, HFILL } },
+ { &hf_034_V1_29_060_PSR, { "PSR, Specific Processing Mode Information for a PSR Sensor", "asterix.034_V1_29_060_PSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_060_PSR_POL, { "POL, Polarization in Use by PSR", "asterix.034_V1_29_060_PSR_POL", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_060_PSR_POL), 0x80, NULL, HFILL } },
+ { &hf_034_V1_29_060_PSR_REDRAD, { "REDRAD, Reduction Steps in Use as Result of An Overload Within the PSR Subsystem", "asterix.034_V1_29_060_PSR_REDRAD", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_060_PSR_REDRAD), 0x70, NULL, HFILL } },
+ { &hf_034_V1_29_060_PSR_STC, { "STC, Sensitivity Time Control Map in Use", "asterix.034_V1_29_060_PSR_STC", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_060_PSR_STC), 0x0c, NULL, HFILL } },
+ { &hf_034_V1_29_060_SSR, { "SSR, Specific Processing Mode Information for a SSR Sensor", "asterix.034_V1_29_060_SSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_060_SSR_REDRAD, { "REDRAD, Reduction Steps in Use as Result of An Overload Within the SSR Subsystem", "asterix.034_V1_29_060_SSR_REDRAD", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_060_SSR_REDRAD), 0xe0, NULL, HFILL } },
+ { &hf_034_V1_29_060_MDS, { "MDS, Specific Processing Mode Information for a Mode S Sensor", "asterix.034_V1_29_060_MDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_060_MDS_REDRAD, { "REDRAD, Reduction Steps in Use as Result of An Overload Within the Mode S Subsystem", "asterix.034_V1_29_060_MDS_REDRAD", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_060_MDS_REDRAD), 0xe0, NULL, HFILL } },
+ { &hf_034_V1_29_060_MDS_CLU, { "CLU, Cluster State", "asterix.034_V1_29_060_MDS_CLU", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_060_MDS_CLU), 0x10, NULL, HFILL } },
+ { &hf_034_V1_29_070, { "070, Message Count Values", "asterix.034_V1_29_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_070_TYP, { "TYP, Type of Message Counter", "asterix.034_V1_29_070_TYP", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_070_TYP), 0xf8, NULL, HFILL } },
+ { &hf_034_V1_29_070_COUNT, { "COUNT, COUNTER", "asterix.034_V1_29_070_COUNT", FT_UINT16, BASE_DEC, NULL, 0x07ff, NULL, HFILL } },
+ { &hf_034_V1_29_090, { "090, Collimation Error", "asterix.034_V1_29_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_090_RNG, { "RNG, Range Error, [NM]", "asterix.034_V1_29_090_RNG", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_090_AZM, { "AZM, Azimuth Error, [°]", "asterix.034_V1_29_090_AZM", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_100, { "100, Generic Polar Window", "asterix.034_V1_29_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_100_RHOST, { "RHOST, Rho Start, [NM]", "asterix.034_V1_29_100_RHOST", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_100_RHOEND, { "RHOEND, Rho End, [NM]", "asterix.034_V1_29_100_RHOEND", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_100_THETAST, { "THETAST, Theta Start, [°]", "asterix.034_V1_29_100_THETAST", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_100_THETAEND, { "THETAEND, Theta End, [°]", "asterix.034_V1_29_100_THETAEND", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_110, { "110, Data Filter", "asterix.034_V1_29_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_110_VALUE, { "Data Filter", "asterix.034_V1_29_110_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_034_V1_29_110_VALUE), 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_120, { "120, 3D-Position Of Data Source", "asterix.034_V1_29_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_120_HGT, { "HGT, Height of Data Source, [m]", "asterix.034_V1_29_120_HGT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_120_LAT, { "LAT, Latitude, [°]", "asterix.034_V1_29_120_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_120_LON, { "LON, Longitude, [°]", "asterix.034_V1_29_120_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_RE, { "RE, Reserved Expansion Field", "asterix.034_V1_29_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_V1_29_SP, { "SP, Special Purpose Field", "asterix.034_V1_29_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_000, { "000, Message Type", "asterix.034_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_000_VALUE, { "Message Type", "asterix.034_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_034_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_034_010, { "010, Data Source Identifier", "asterix.034_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_010_SAC, { "SAC, System Area Code", "asterix.034_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_010_SIC, { "SIC, System Identification Code", "asterix.034_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_020, { "020, Sector Number", "asterix.034_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_020_VALUE, { "Sector Number, [°]", "asterix.034_020_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_030, { "030, Time of Day", "asterix.034_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_030_VALUE, { "Time of Day, [s]", "asterix.034_030_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_041, { "041, Antenna Rotation Speed", "asterix.034_041", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_041_VALUE, { "Antenna Rotation Speed, [s]", "asterix.034_041_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_050, { "050, System Configuration and Status", "asterix.034_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_050_COM, { "COM, Common Part", "asterix.034_050_COM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_050_COM_NOGO, { "NOGO, Operational Release Status of the System", "asterix.034_050_COM_NOGO", FT_UINT8, BASE_DEC, VALS (valstr_034_050_COM_NOGO), 0x80, NULL, HFILL } },
+ { &hf_034_050_COM_RDPC, { "RDPC, Radar Data Processor Chain Selection Status", "asterix.034_050_COM_RDPC", FT_UINT8, BASE_DEC, VALS (valstr_034_050_COM_RDPC), 0x40, NULL, HFILL } },
+ { &hf_034_050_COM_RDPR, { "RDPR, Event to Signal a Reset/restart of the Selected Radar Data Processor Chain, I.e. Expect a New Assignment of Track Numbers", "asterix.034_050_COM_RDPR", FT_UINT8, BASE_DEC, VALS (valstr_034_050_COM_RDPR), 0x20, NULL, HFILL } },
+ { &hf_034_050_COM_OVLRDP, { "OVLRDP, Radar Data Processor Overload Indicator", "asterix.034_050_COM_OVLRDP", FT_UINT8, BASE_DEC, VALS (valstr_034_050_COM_OVLRDP), 0x10, NULL, HFILL } },
+ { &hf_034_050_COM_OVLXMT, { "OVLXMT, Transmission Subsystem Overload Status", "asterix.034_050_COM_OVLXMT", FT_UINT8, BASE_DEC, VALS (valstr_034_050_COM_OVLXMT), 0x08, NULL, HFILL } },
+ { &hf_034_050_COM_MSC, { "MSC, Monitoring System Connected Status", "asterix.034_050_COM_MSC", FT_UINT8, BASE_DEC, VALS (valstr_034_050_COM_MSC), 0x04, NULL, HFILL } },
+ { &hf_034_050_COM_TSV, { "TSV, Time Source Validity", "asterix.034_050_COM_TSV", FT_UINT8, BASE_DEC, VALS (valstr_034_050_COM_TSV), 0x02, NULL, HFILL } },
+ { &hf_034_050_PSR, { "PSR, Specific Status Information for a PSR Sensor", "asterix.034_050_PSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_050_PSR_ANT, { "ANT, Selected Antenna", "asterix.034_050_PSR_ANT", FT_UINT8, BASE_DEC, VALS (valstr_034_050_PSR_ANT), 0x80, NULL, HFILL } },
+ { &hf_034_050_PSR_CHAB, { "CHAB, Channel A/B Selection Status", "asterix.034_050_PSR_CHAB", FT_UINT8, BASE_DEC, VALS (valstr_034_050_PSR_CHAB), 0x60, NULL, HFILL } },
+ { &hf_034_050_PSR_OVL, { "OVL, Overload Condition", "asterix.034_050_PSR_OVL", FT_UINT8, BASE_DEC, VALS (valstr_034_050_PSR_OVL), 0x10, NULL, HFILL } },
+ { &hf_034_050_PSR_MSC, { "MSC, Monitoring System Connected Status", "asterix.034_050_PSR_MSC", FT_UINT8, BASE_DEC, VALS (valstr_034_050_PSR_MSC), 0x08, NULL, HFILL } },
+ { &hf_034_050_SSR, { "SSR, Specific Status Information for a SSR Sensor", "asterix.034_050_SSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_050_SSR_ANT, { "ANT, Selected Antenna", "asterix.034_050_SSR_ANT", FT_UINT8, BASE_DEC, VALS (valstr_034_050_SSR_ANT), 0x80, NULL, HFILL } },
+ { &hf_034_050_SSR_CHAB, { "CHAB, Channel A/B Selection Status", "asterix.034_050_SSR_CHAB", FT_UINT8, BASE_DEC, VALS (valstr_034_050_SSR_CHAB), 0x60, NULL, HFILL } },
+ { &hf_034_050_SSR_OVL, { "OVL, Overload Condition", "asterix.034_050_SSR_OVL", FT_UINT8, BASE_DEC, VALS (valstr_034_050_SSR_OVL), 0x10, NULL, HFILL } },
+ { &hf_034_050_SSR_MSC, { "MSC, Monitoring System Connected Status:", "asterix.034_050_SSR_MSC", FT_UINT8, BASE_DEC, VALS (valstr_034_050_SSR_MSC), 0x08, NULL, HFILL } },
+ { &hf_034_050_MDS, { "MDS, Specific Status Information for a Mode S Sensor", "asterix.034_050_MDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_050_MDS_ANT, { "ANT, Selected Antenna", "asterix.034_050_MDS_ANT", FT_UINT8, BASE_DEC, VALS (valstr_034_050_MDS_ANT), 0x80, NULL, HFILL } },
+ { &hf_034_050_MDS_CHAB, { "CHAB, Channel A/B Selection Status", "asterix.034_050_MDS_CHAB", FT_UINT8, BASE_DEC, VALS (valstr_034_050_MDS_CHAB), 0x60, NULL, HFILL } },
+ { &hf_034_050_MDS_OVLSUR, { "OVLSUR, Overload Condition", "asterix.034_050_MDS_OVLSUR", FT_UINT8, BASE_DEC, VALS (valstr_034_050_MDS_OVLSUR), 0x10, NULL, HFILL } },
+ { &hf_034_050_MDS_MSC, { "MSC, Monitoring System Connected Status:", "asterix.034_050_MDS_MSC", FT_UINT8, BASE_DEC, VALS (valstr_034_050_MDS_MSC), 0x08, NULL, HFILL } },
+ { &hf_034_050_MDS_SCF, { "SCF, Channel A/B Selection Status for Surveillance Co-ordination Function", "asterix.034_050_MDS_SCF", FT_UINT8, BASE_DEC, VALS (valstr_034_050_MDS_SCF), 0x04, NULL, HFILL } },
+ { &hf_034_050_MDS_DLF, { "DLF, Channel A/B Selection Status for Data Link Function", "asterix.034_050_MDS_DLF", FT_UINT8, BASE_DEC, VALS (valstr_034_050_MDS_DLF), 0x02, NULL, HFILL } },
+ { &hf_034_050_MDS_OVLSCF, { "OVLSCF, Overload in Surveillance Co-ordination Function", "asterix.034_050_MDS_OVLSCF", FT_UINT8, BASE_DEC, VALS (valstr_034_050_MDS_OVLSCF), 0x01, NULL, HFILL } },
+ { &hf_034_050_MDS_OVLDLF, { "OVLDLF, Overload in Data Link Function", "asterix.034_050_MDS_OVLDLF", FT_UINT8, BASE_DEC, VALS (valstr_034_050_MDS_OVLDLF), 0x80, NULL, HFILL } },
+ { &hf_034_060, { "060, System Processing Mode", "asterix.034_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_060_COM, { "COM, Common Part", "asterix.034_060_COM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_060_COM_REDRDP, { "REDRDP, Reduction Steps in Use for An Overload of the RDP", "asterix.034_060_COM_REDRDP", FT_UINT8, BASE_DEC, VALS (valstr_034_060_COM_REDRDP), 0x70, NULL, HFILL } },
+ { &hf_034_060_COM_REDXMT, { "REDXMT, Reduction Steps in Use for An Overload of the Transmission Subsystem", "asterix.034_060_COM_REDXMT", FT_UINT8, BASE_DEC, VALS (valstr_034_060_COM_REDXMT), 0x0e, NULL, HFILL } },
+ { &hf_034_060_PSR, { "PSR, Specific Processing Mode Information for a PSR Sensor", "asterix.034_060_PSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_060_PSR_POL, { "POL, Polarization in Use by PSR", "asterix.034_060_PSR_POL", FT_UINT8, BASE_DEC, VALS (valstr_034_060_PSR_POL), 0x80, NULL, HFILL } },
+ { &hf_034_060_PSR_REDRAD, { "REDRAD, Reduction Steps in Use as Result of An Overload Within the PSR Subsystem", "asterix.034_060_PSR_REDRAD", FT_UINT8, BASE_DEC, VALS (valstr_034_060_PSR_REDRAD), 0x70, NULL, HFILL } },
+ { &hf_034_060_PSR_STC, { "STC, Sensitivity Time Control Map in Use", "asterix.034_060_PSR_STC", FT_UINT8, BASE_DEC, VALS (valstr_034_060_PSR_STC), 0x0c, NULL, HFILL } },
+ { &hf_034_060_SSR, { "SSR, Specific Processing Mode Information for a SSR Sensor", "asterix.034_060_SSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_060_SSR_REDRAD, { "REDRAD, Reduction Steps in Use as Result of An Overload Within the SSR Subsystem", "asterix.034_060_SSR_REDRAD", FT_UINT8, BASE_DEC, VALS (valstr_034_060_SSR_REDRAD), 0xe0, NULL, HFILL } },
+ { &hf_034_060_MDS, { "MDS, Specific Processing Mode Information for a Mode S Sensor", "asterix.034_060_MDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_060_MDS_REDRAD, { "REDRAD, Reduction Steps in Use as Result of An Overload Within the Mode S Subsystem", "asterix.034_060_MDS_REDRAD", FT_UINT8, BASE_DEC, VALS (valstr_034_060_MDS_REDRAD), 0xe0, NULL, HFILL } },
+ { &hf_034_060_MDS_CLU, { "CLU, Cluster State", "asterix.034_060_MDS_CLU", FT_UINT8, BASE_DEC, VALS (valstr_034_060_MDS_CLU), 0x10, NULL, HFILL } },
+ { &hf_034_070, { "070, Message Count Values", "asterix.034_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_070_TYP, { "TYP, Type of Message Counter", "asterix.034_070_TYP", FT_UINT8, BASE_DEC, VALS (valstr_034_070_TYP), 0xf8, NULL, HFILL } },
+ { &hf_034_070_COUNT, { "COUNT, COUNTER", "asterix.034_070_COUNT", FT_UINT16, BASE_DEC, NULL, 0x07ff, NULL, HFILL } },
+ { &hf_034_090, { "090, Collimation Error", "asterix.034_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_090_RNG, { "RNG, Range Error, [NM]", "asterix.034_090_RNG", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_090_AZM, { "AZM, Azimuth Error, [°]", "asterix.034_090_AZM", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_100, { "100, Generic Polar Window", "asterix.034_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_100_RHOST, { "RHOST, Rho Start, [NM]", "asterix.034_100_RHOST", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_100_RHOEND, { "RHOEND, Rho End, [NM]", "asterix.034_100_RHOEND", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_100_THETAST, { "THETAST, Theta Start, [°]", "asterix.034_100_THETAST", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_100_THETAEND, { "THETAEND, Theta End, [°]", "asterix.034_100_THETAEND", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_110, { "110, Data Filter", "asterix.034_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_110_VALUE, { "Data Filter", "asterix.034_110_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_034_110_VALUE), 0x00, NULL, HFILL } },
+ { &hf_034_120, { "120, 3D-Position Of Data Source", "asterix.034_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_120_HGT, { "HGT, Height of Data Source, [m]", "asterix.034_120_HGT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_120_LAT, { "LAT, Latitude, [°]", "asterix.034_120_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_120_LON, { "LON, Longitude, [°]", "asterix.034_120_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_RE, { "RE, Reserved Expansion Field", "asterix.034_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_034_SP, { "SP, Special Purpose Field", "asterix.034_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_010, { "010, Data Source Identifier", "asterix.048_V1_27_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_010_SAC, { "SAC, System Area Code", "asterix.048_V1_27_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_010_SIC, { "SIC, System Identification Code", "asterix.048_V1_27_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_020, { "020, Target Report Descriptor", "asterix.048_V1_27_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_020_TYP, { "TYP", "asterix.048_V1_27_020_TYP", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_020_TYP), 0xe0, NULL, HFILL } },
+ { &hf_048_V1_27_020_SIM, { "SIM", "asterix.048_V1_27_020_SIM", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_020_SIM), 0x10, NULL, HFILL } },
+ { &hf_048_V1_27_020_RDP, { "RDP", "asterix.048_V1_27_020_RDP", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_020_RDP), 0x08, NULL, HFILL } },
+ { &hf_048_V1_27_020_SPI, { "SPI", "asterix.048_V1_27_020_SPI", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_020_SPI), 0x04, NULL, HFILL } },
+ { &hf_048_V1_27_020_RAB, { "RAB", "asterix.048_V1_27_020_RAB", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_020_RAB), 0x02, NULL, HFILL } },
+ { &hf_048_V1_27_020_TST, { "TST", "asterix.048_V1_27_020_TST", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_020_TST), 0x80, NULL, HFILL } },
+ { &hf_048_V1_27_020_ERR, { "ERR", "asterix.048_V1_27_020_ERR", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_020_ERR), 0x40, NULL, HFILL } },
+ { &hf_048_V1_27_020_XPP, { "XPP", "asterix.048_V1_27_020_XPP", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_020_XPP), 0x20, NULL, HFILL } },
+ { &hf_048_V1_27_020_ME, { "ME", "asterix.048_V1_27_020_ME", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_020_ME), 0x10, NULL, HFILL } },
+ { &hf_048_V1_27_020_MI, { "MI", "asterix.048_V1_27_020_MI", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_020_MI), 0x08, NULL, HFILL } },
+ { &hf_048_V1_27_020_FOEFRI, { "FOEFRI", "asterix.048_V1_27_020_FOEFRI", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_020_FOEFRI), 0x06, NULL, HFILL } },
+ { &hf_048_V1_27_030, { "030, Warning/Error Conditions and Target Classification", "asterix.048_V1_27_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_030_Subitem, { "Subitem, Subitem", "asterix.048_V1_27_030_Subitem", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_030_Subitem), 0xfe, NULL, HFILL } },
+ { &hf_048_V1_27_040, { "040, Measured Position in Polar Co-ordinates", "asterix.048_V1_27_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_040_RHO, { "RHO, [NM]", "asterix.048_V1_27_040_RHO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_040_THETA, { "THETA, [°]", "asterix.048_V1_27_040_THETA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_042, { "042, Calculated Position in Cartesian Co-ordinates", "asterix.048_V1_27_042", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_042_X, { "X, X-Component, [NM]", "asterix.048_V1_27_042_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_042_Y, { "Y, X-Component, [NM]", "asterix.048_V1_27_042_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_050, { "050, Mode-2 Code in Octal Representation", "asterix.048_V1_27_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_050_V, { "V", "asterix.048_V1_27_050_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_050_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_27_050_G, { "G", "asterix.048_V1_27_050_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_050_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_27_050_L, { "L", "asterix.048_V1_27_050_L", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_050_L), 0x20, NULL, HFILL } },
+ { &hf_048_V1_27_050_MODE2, { "MODE2, Mode-2 Code in Octal Representation", "asterix.048_V1_27_050_MODE2", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_V1_27_055, { "055, Mode-1 Code in Octal Representation", "asterix.048_V1_27_055", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_055_V, { "V", "asterix.048_V1_27_055_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_055_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_27_055_G, { "G", "asterix.048_V1_27_055_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_055_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_27_055_L, { "L", "asterix.048_V1_27_055_L", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_055_L), 0x20, NULL, HFILL } },
+ { &hf_048_V1_27_055_MODE1, { "MODE1, Mode-1 Code", "asterix.048_V1_27_055_MODE1", FT_UINT8, BASE_DEC, NULL, 0x1f, NULL, HFILL } },
+ { &hf_048_V1_27_060, { "060, Mode-2 Code Confidence Indicator", "asterix.048_V1_27_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_060_QA4, { "QA4", "asterix.048_V1_27_060_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_060_QA4), 0x08, NULL, HFILL } },
+ { &hf_048_V1_27_060_QA2, { "QA2", "asterix.048_V1_27_060_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_060_QA2), 0x04, NULL, HFILL } },
+ { &hf_048_V1_27_060_QA1, { "QA1", "asterix.048_V1_27_060_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_060_QA1), 0x02, NULL, HFILL } },
+ { &hf_048_V1_27_060_QB4, { "QB4", "asterix.048_V1_27_060_QB4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_060_QB4), 0x01, NULL, HFILL } },
+ { &hf_048_V1_27_060_QB2, { "QB2", "asterix.048_V1_27_060_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_060_QB2), 0x80, NULL, HFILL } },
+ { &hf_048_V1_27_060_QB1, { "QB1", "asterix.048_V1_27_060_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_060_QB1), 0x40, NULL, HFILL } },
+ { &hf_048_V1_27_060_QC4, { "QC4", "asterix.048_V1_27_060_QC4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_060_QC4), 0x20, NULL, HFILL } },
+ { &hf_048_V1_27_060_QC2, { "QC2", "asterix.048_V1_27_060_QC2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_060_QC2), 0x10, NULL, HFILL } },
+ { &hf_048_V1_27_060_QC1, { "QC1", "asterix.048_V1_27_060_QC1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_060_QC1), 0x08, NULL, HFILL } },
+ { &hf_048_V1_27_060_QD4, { "QD4", "asterix.048_V1_27_060_QD4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_060_QD4), 0x04, NULL, HFILL } },
+ { &hf_048_V1_27_060_QD2, { "QD2", "asterix.048_V1_27_060_QD2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_060_QD2), 0x02, NULL, HFILL } },
+ { &hf_048_V1_27_060_QD1, { "QD1", "asterix.048_V1_27_060_QD1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_060_QD1), 0x01, NULL, HFILL } },
+ { &hf_048_V1_27_065, { "065, Mode-1 Code Confidence Indicator", "asterix.048_V1_27_065", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_065_QA4, { "QA4", "asterix.048_V1_27_065_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_065_QA4), 0x10, NULL, HFILL } },
+ { &hf_048_V1_27_065_QA2, { "QA2", "asterix.048_V1_27_065_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_065_QA2), 0x08, NULL, HFILL } },
+ { &hf_048_V1_27_065_QA1, { "QA1", "asterix.048_V1_27_065_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_065_QA1), 0x04, NULL, HFILL } },
+ { &hf_048_V1_27_065_QB2, { "QB2", "asterix.048_V1_27_065_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_065_QB2), 0x02, NULL, HFILL } },
+ { &hf_048_V1_27_065_QB1, { "QB1", "asterix.048_V1_27_065_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_065_QB1), 0x01, NULL, HFILL } },
+ { &hf_048_V1_27_070, { "070, Mode-3/A Code in Octal Representation", "asterix.048_V1_27_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_070_V, { "V", "asterix.048_V1_27_070_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_070_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_27_070_G, { "G", "asterix.048_V1_27_070_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_070_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_27_070_L, { "L", "asterix.048_V1_27_070_L", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_070_L), 0x20, NULL, HFILL } },
+ { &hf_048_V1_27_070_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.048_V1_27_070_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_V1_27_080, { "080, Mode-3/A Code Confidence Indicator", "asterix.048_V1_27_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_080_QA4, { "QA4", "asterix.048_V1_27_080_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_080_QA4), 0x08, NULL, HFILL } },
+ { &hf_048_V1_27_080_QA2, { "QA2", "asterix.048_V1_27_080_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_080_QA2), 0x04, NULL, HFILL } },
+ { &hf_048_V1_27_080_QA1, { "QA1", "asterix.048_V1_27_080_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_080_QA1), 0x02, NULL, HFILL } },
+ { &hf_048_V1_27_080_QB4, { "QB4", "asterix.048_V1_27_080_QB4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_080_QB4), 0x01, NULL, HFILL } },
+ { &hf_048_V1_27_080_QB2, { "QB2", "asterix.048_V1_27_080_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_080_QB2), 0x80, NULL, HFILL } },
+ { &hf_048_V1_27_080_QB1, { "QB1", "asterix.048_V1_27_080_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_080_QB1), 0x40, NULL, HFILL } },
+ { &hf_048_V1_27_080_QC4, { "QC4", "asterix.048_V1_27_080_QC4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_080_QC4), 0x20, NULL, HFILL } },
+ { &hf_048_V1_27_080_QC2, { "QC2", "asterix.048_V1_27_080_QC2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_080_QC2), 0x10, NULL, HFILL } },
+ { &hf_048_V1_27_080_QC1, { "QC1", "asterix.048_V1_27_080_QC1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_080_QC1), 0x08, NULL, HFILL } },
+ { &hf_048_V1_27_080_QD4, { "QD4", "asterix.048_V1_27_080_QD4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_080_QD4), 0x04, NULL, HFILL } },
+ { &hf_048_V1_27_080_QD2, { "QD2", "asterix.048_V1_27_080_QD2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_080_QD2), 0x02, NULL, HFILL } },
+ { &hf_048_V1_27_080_QD1, { "QD1", "asterix.048_V1_27_080_QD1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_080_QD1), 0x01, NULL, HFILL } },
+ { &hf_048_V1_27_090, { "090, Flight Level in Binary Representation", "asterix.048_V1_27_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_090_V, { "V", "asterix.048_V1_27_090_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_090_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_27_090_G, { "G", "asterix.048_V1_27_090_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_090_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_27_090_FL, { "FL, [FL]", "asterix.048_V1_27_090_FL", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_100, { "100, Mode-C Code and Code Confidence Indicator", "asterix.048_V1_27_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_100_V, { "V", "asterix.048_V1_27_100_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_100_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_27_100_G, { "G", "asterix.048_V1_27_100_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_100_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_27_100_MODEC, { "MODEC, Mode-C Reply in Gray Notation", "asterix.048_V1_27_100_MODEC", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_V1_27_100_QC1, { "QC1", "asterix.048_V1_27_100_QC1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_100_QC1), 0x08, NULL, HFILL } },
+ { &hf_048_V1_27_100_QA1, { "QA1", "asterix.048_V1_27_100_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_100_QA1), 0x04, NULL, HFILL } },
+ { &hf_048_V1_27_100_QC2, { "QC2", "asterix.048_V1_27_100_QC2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_100_QC2), 0x02, NULL, HFILL } },
+ { &hf_048_V1_27_100_QA2, { "QA2", "asterix.048_V1_27_100_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_100_QA2), 0x01, NULL, HFILL } },
+ { &hf_048_V1_27_100_QC4, { "QC4", "asterix.048_V1_27_100_QC4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_100_QC4), 0x80, NULL, HFILL } },
+ { &hf_048_V1_27_100_QA4, { "QA4", "asterix.048_V1_27_100_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_100_QA4), 0x40, NULL, HFILL } },
+ { &hf_048_V1_27_100_QB1, { "QB1", "asterix.048_V1_27_100_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_100_QB1), 0x20, NULL, HFILL } },
+ { &hf_048_V1_27_100_QD1, { "QD1", "asterix.048_V1_27_100_QD1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_100_QD1), 0x10, NULL, HFILL } },
+ { &hf_048_V1_27_100_QB2, { "QB2", "asterix.048_V1_27_100_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_100_QB2), 0x08, NULL, HFILL } },
+ { &hf_048_V1_27_100_QD2, { "QD2", "asterix.048_V1_27_100_QD2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_100_QD2), 0x04, NULL, HFILL } },
+ { &hf_048_V1_27_100_QB4, { "QB4", "asterix.048_V1_27_100_QB4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_100_QB4), 0x02, NULL, HFILL } },
+ { &hf_048_V1_27_100_QD4, { "QD4", "asterix.048_V1_27_100_QD4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_100_QD4), 0x01, NULL, HFILL } },
+ { &hf_048_V1_27_110, { "110, Height Measured by a 3D Radar", "asterix.048_V1_27_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_110_3DH, { "3DH, 3D Height, in Binary Notation. Negative Values Are Expressed in Two's Complement, [ft]", "asterix.048_V1_27_110_3DH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_120, { "120, Radial Doppler Speed", "asterix.048_V1_27_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_120_CAL, { "CAL, Calculated Doppler Speed", "asterix.048_V1_27_120_CAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_120_CAL_D, { "D", "asterix.048_V1_27_120_CAL_D", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_120_CAL_D), 0x80, NULL, HFILL } },
+ { &hf_048_V1_27_120_CAL_CAL, { "CAL, Calculated Doppler Speed, Coded in Two's Complement, [m/s]", "asterix.048_V1_27_120_CAL_CAL", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_120_RDS, { "RDS, Raw Doppler Speed", "asterix.048_V1_27_120_RDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_120_RDS_DOP, { "DOP, Doppler Speed, [m/s]", "asterix.048_V1_27_120_RDS_DOP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_120_RDS_AMB, { "AMB, Ambiguity Range, [m/s]", "asterix.048_V1_27_120_RDS_AMB", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_120_RDS_FRQ, { "FRQ, Transmitter Frequency, [MHz]", "asterix.048_V1_27_120_RDS_FRQ", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_130, { "130, Radar Plot Characteristics", "asterix.048_V1_27_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_130_SRL, { "SRL, SSR Plot Runlength", "asterix.048_V1_27_130_SRL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_130_SRL_VALUE, { "SSR Plot Runlength, [°]", "asterix.048_V1_27_130_SRL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_130_SRR, { "SRR, Number of Received Replies for (M)SSR", "asterix.048_V1_27_130_SRR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_130_SRR_VALUE, { "Number of Received Replies for (M)SSR", "asterix.048_V1_27_130_SRR_VALUE", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_130_SAM, { "SAM, Amplitude of (M)SSR Reply", "asterix.048_V1_27_130_SAM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_130_SAM_VALUE, { "Amplitude of (M)SSR Reply, [dBm]", "asterix.048_V1_27_130_SAM_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_130_PRL, { "PRL, Primary Plot Runlength", "asterix.048_V1_27_130_PRL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_130_PRL_VALUE, { "Primary Plot Runlength, [°]", "asterix.048_V1_27_130_PRL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_130_PAM, { "PAM, Amplitude of Primary Plot", "asterix.048_V1_27_130_PAM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_130_PAM_VALUE, { "Amplitude of Primary Plot, [dBm]", "asterix.048_V1_27_130_PAM_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_130_RPD, { "RPD, Difference in Range Between PSR and SSR Plot", "asterix.048_V1_27_130_RPD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_130_RPD_VALUE, { "Difference in Range Between PSR and SSR Plot, [NM]", "asterix.048_V1_27_130_RPD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_130_APD, { "APD, Difference in Azimuth Between PSR and SSR Plot", "asterix.048_V1_27_130_APD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_130_APD_VALUE, { "Difference in Azimuth Between PSR and SSR Plot, [°]", "asterix.048_V1_27_130_APD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_140, { "140, Time of Day", "asterix.048_V1_27_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_140_VALUE, { "Time of Day, [s]", "asterix.048_V1_27_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_161, { "161, Track Number", "asterix.048_V1_27_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_161_TRN, { "TRN, Track Number", "asterix.048_V1_27_161_TRN", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_V1_27_170, { "170, Track Status", "asterix.048_V1_27_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_170_CNF, { "CNF, Confirmed Vs. Tentative Track", "asterix.048_V1_27_170_CNF", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_170_CNF), 0x80, NULL, HFILL } },
+ { &hf_048_V1_27_170_RAD, { "RAD, Type of Sensor(s) Maintaining Track", "asterix.048_V1_27_170_RAD", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_170_RAD), 0x60, NULL, HFILL } },
+ { &hf_048_V1_27_170_DOU, { "DOU, Signals Level of Confidence in Plot to Track Association Process", "asterix.048_V1_27_170_DOU", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_170_DOU), 0x10, NULL, HFILL } },
+ { &hf_048_V1_27_170_MAH, { "MAH, Manoeuvre Detection in Horizontal Sense", "asterix.048_V1_27_170_MAH", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_170_MAH), 0x08, NULL, HFILL } },
+ { &hf_048_V1_27_170_CDM, { "CDM, Climbing / Descending Mode", "asterix.048_V1_27_170_CDM", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_170_CDM), 0x06, NULL, HFILL } },
+ { &hf_048_V1_27_170_TRE, { "TRE, Signal for End_of_Track", "asterix.048_V1_27_170_TRE", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_170_TRE), 0x80, NULL, HFILL } },
+ { &hf_048_V1_27_170_GHO, { "GHO, Ghost Vs. True Target", "asterix.048_V1_27_170_GHO", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_170_GHO), 0x40, NULL, HFILL } },
+ { &hf_048_V1_27_170_SUP, { "SUP, Track Maintained with Track Information from Neighbouring Node B on the Cluster, or Network", "asterix.048_V1_27_170_SUP", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_170_SUP), 0x20, NULL, HFILL } },
+ { &hf_048_V1_27_170_TCC, { "TCC, Type of Plot Coordinate Transformation Mechanism:", "asterix.048_V1_27_170_TCC", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_170_TCC), 0x10, NULL, HFILL } },
+ { &hf_048_V1_27_200, { "200, Calculated Track Velocity in Polar Co-ordinates", "asterix.048_V1_27_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_200_GSP, { "GSP, Calculated Groundspeed, [NM/s]", "asterix.048_V1_27_200_GSP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_200_HDG, { "HDG, Calculated Heading, [°]", "asterix.048_V1_27_200_HDG", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_210, { "210, Track Quality", "asterix.048_V1_27_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_210_SIGX, { "SIGX, Sigma (X)) Standard Deviation on the Horizontal Axis of the Local Grid System, [NM]", "asterix.048_V1_27_210_SIGX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_210_SIGY, { "SIGY, Sigma (Y)) Standard Deviation on the Vertical Axis of the Local Grid System, [NM]", "asterix.048_V1_27_210_SIGY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_210_SIGV, { "SIGV, Sigma (V)) Standard Deviation on the Groundspeed Within the Local Grid System, [NM/s]", "asterix.048_V1_27_210_SIGV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_210_SIGH, { "SIGH, Sigma (H)) Standard Deviation on the Heading Within the Local Grid System, [°]", "asterix.048_V1_27_210_SIGH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_220, { "220, Aircraft Address", "asterix.048_V1_27_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_220_VALUE, { "Aircraft Address", "asterix.048_V1_27_220_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_230, { "230, Communications/ACAS Capability and Flight Status", "asterix.048_V1_27_230", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_230_COM, { "COM, Communications Capability of the Transponder", "asterix.048_V1_27_230_COM", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_230_COM), 0xe0, NULL, HFILL } },
+ { &hf_048_V1_27_230_STAT, { "STAT, Flight Status", "asterix.048_V1_27_230_STAT", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_230_STAT), 0x1c, NULL, HFILL } },
+ { &hf_048_V1_27_230_SI, { "SI, SI/II Transponder Capability", "asterix.048_V1_27_230_SI", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_230_SI), 0x02, NULL, HFILL } },
+ { &hf_048_V1_27_230_MSSC, { "MSSC, Mode-S Specific Service Capability", "asterix.048_V1_27_230_MSSC", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_230_MSSC), 0x80, NULL, HFILL } },
+ { &hf_048_V1_27_230_ARC, { "ARC, Altitude Reporting Capability", "asterix.048_V1_27_230_ARC", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_230_ARC), 0x40, NULL, HFILL } },
+ { &hf_048_V1_27_230_AIC, { "AIC, Aircraft Identification Capability", "asterix.048_V1_27_230_AIC", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_27_230_AIC), 0x20, NULL, HFILL } },
+ { &hf_048_V1_27_230_B1A, { "B1A, BDS 1,0 Bit 16", "asterix.048_V1_27_230_B1A", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_048_V1_27_230_B1B, { "B1B, BDS 1,0 Bits 37/40", "asterix.048_V1_27_230_B1B", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_048_V1_27_240, { "240, Aircraft Identification", "asterix.048_V1_27_240", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_240_VALUE, { "Aircraft Identification", "asterix.048_V1_27_240_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_250, { "250, Mode S MB Data", "asterix.048_V1_27_250", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_250_MBDATA, { "MBDATA, Mode S Comm B Message Data", "asterix.048_V1_27_250_MBDATA", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_250_BDS1, { "BDS1, Comm B Data Buffer Store 1 Address", "asterix.048_V1_27_250_BDS1", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_048_V1_27_250_BDS2, { "BDS2, Comm B Data Buffer Store 2 Address", "asterix.048_V1_27_250_BDS2", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_048_V1_27_260, { "260, ACAS Resolution Advisory Report", "asterix.048_V1_27_260", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_260_VALUE, { "ACAS Resolution Advisory Report", "asterix.048_V1_27_260_VALUE", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_RE, { "RE, Reserved Expansion Field", "asterix.048_V1_27_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_27_SP, { "SP, Special Purpose Field", "asterix.048_V1_27_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_010, { "010, Data Source Identifier", "asterix.048_V1_28_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_010_SAC, { "SAC, System Area Code", "asterix.048_V1_28_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_010_SIC, { "SIC, System Identification Code", "asterix.048_V1_28_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_020, { "020, Target Report Descriptor", "asterix.048_V1_28_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_020_TYP, { "TYP", "asterix.048_V1_28_020_TYP", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_020_TYP), 0xe0, NULL, HFILL } },
+ { &hf_048_V1_28_020_SIM, { "SIM", "asterix.048_V1_28_020_SIM", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_020_SIM), 0x10, NULL, HFILL } },
+ { &hf_048_V1_28_020_RDP, { "RDP", "asterix.048_V1_28_020_RDP", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_020_RDP), 0x08, NULL, HFILL } },
+ { &hf_048_V1_28_020_SPI, { "SPI", "asterix.048_V1_28_020_SPI", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_020_SPI), 0x04, NULL, HFILL } },
+ { &hf_048_V1_28_020_RAB, { "RAB", "asterix.048_V1_28_020_RAB", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_020_RAB), 0x02, NULL, HFILL } },
+ { &hf_048_V1_28_020_TST, { "TST", "asterix.048_V1_28_020_TST", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_020_TST), 0x80, NULL, HFILL } },
+ { &hf_048_V1_28_020_ERR, { "ERR", "asterix.048_V1_28_020_ERR", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_020_ERR), 0x40, NULL, HFILL } },
+ { &hf_048_V1_28_020_XPP, { "XPP", "asterix.048_V1_28_020_XPP", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_020_XPP), 0x20, NULL, HFILL } },
+ { &hf_048_V1_28_020_ME, { "ME", "asterix.048_V1_28_020_ME", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_020_ME), 0x10, NULL, HFILL } },
+ { &hf_048_V1_28_020_MI, { "MI", "asterix.048_V1_28_020_MI", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_020_MI), 0x08, NULL, HFILL } },
+ { &hf_048_V1_28_020_FOEFRI, { "FOEFRI", "asterix.048_V1_28_020_FOEFRI", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_020_FOEFRI), 0x06, NULL, HFILL } },
+ { &hf_048_V1_28_030, { "030, Warning/Error Conditions and Target Classification", "asterix.048_V1_28_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_030_Subitem, { "Subitem, Subitem", "asterix.048_V1_28_030_Subitem", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_030_Subitem), 0xfe, NULL, HFILL } },
+ { &hf_048_V1_28_040, { "040, Measured Position in Polar Co-ordinates", "asterix.048_V1_28_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_040_RHO, { "RHO, [NM]", "asterix.048_V1_28_040_RHO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_040_THETA, { "THETA, [°]", "asterix.048_V1_28_040_THETA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_042, { "042, Calculated Position in Cartesian Co-ordinates", "asterix.048_V1_28_042", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_042_X, { "X, X-Component, [NM]", "asterix.048_V1_28_042_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_042_Y, { "Y, X-Component, [NM]", "asterix.048_V1_28_042_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_050, { "050, Mode-2 Code in Octal Representation", "asterix.048_V1_28_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_050_V, { "V", "asterix.048_V1_28_050_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_050_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_28_050_G, { "G", "asterix.048_V1_28_050_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_050_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_28_050_L, { "L", "asterix.048_V1_28_050_L", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_050_L), 0x20, NULL, HFILL } },
+ { &hf_048_V1_28_050_MODE2, { "MODE2, Mode-2 Code in Octal Representation", "asterix.048_V1_28_050_MODE2", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_V1_28_055, { "055, Mode-1 Code in Octal Representation", "asterix.048_V1_28_055", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_055_V, { "V", "asterix.048_V1_28_055_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_055_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_28_055_G, { "G", "asterix.048_V1_28_055_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_055_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_28_055_L, { "L", "asterix.048_V1_28_055_L", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_055_L), 0x20, NULL, HFILL } },
+ { &hf_048_V1_28_055_MODE1, { "MODE1, Mode-1 Code", "asterix.048_V1_28_055_MODE1", FT_UINT8, BASE_DEC, NULL, 0x1f, NULL, HFILL } },
+ { &hf_048_V1_28_060, { "060, Mode-2 Code Confidence Indicator", "asterix.048_V1_28_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_060_QA4, { "QA4", "asterix.048_V1_28_060_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_060_QA4), 0x08, NULL, HFILL } },
+ { &hf_048_V1_28_060_QA2, { "QA2", "asterix.048_V1_28_060_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_060_QA2), 0x04, NULL, HFILL } },
+ { &hf_048_V1_28_060_QA1, { "QA1", "asterix.048_V1_28_060_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_060_QA1), 0x02, NULL, HFILL } },
+ { &hf_048_V1_28_060_QB4, { "QB4", "asterix.048_V1_28_060_QB4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_060_QB4), 0x01, NULL, HFILL } },
+ { &hf_048_V1_28_060_QB2, { "QB2", "asterix.048_V1_28_060_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_060_QB2), 0x80, NULL, HFILL } },
+ { &hf_048_V1_28_060_QB1, { "QB1", "asterix.048_V1_28_060_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_060_QB1), 0x40, NULL, HFILL } },
+ { &hf_048_V1_28_060_QC4, { "QC4", "asterix.048_V1_28_060_QC4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_060_QC4), 0x20, NULL, HFILL } },
+ { &hf_048_V1_28_060_QC2, { "QC2", "asterix.048_V1_28_060_QC2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_060_QC2), 0x10, NULL, HFILL } },
+ { &hf_048_V1_28_060_QC1, { "QC1", "asterix.048_V1_28_060_QC1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_060_QC1), 0x08, NULL, HFILL } },
+ { &hf_048_V1_28_060_QD4, { "QD4", "asterix.048_V1_28_060_QD4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_060_QD4), 0x04, NULL, HFILL } },
+ { &hf_048_V1_28_060_QD2, { "QD2", "asterix.048_V1_28_060_QD2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_060_QD2), 0x02, NULL, HFILL } },
+ { &hf_048_V1_28_060_QD1, { "QD1", "asterix.048_V1_28_060_QD1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_060_QD1), 0x01, NULL, HFILL } },
+ { &hf_048_V1_28_065, { "065, Mode-1 Code Confidence Indicator", "asterix.048_V1_28_065", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_065_QA4, { "QA4", "asterix.048_V1_28_065_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_065_QA4), 0x10, NULL, HFILL } },
+ { &hf_048_V1_28_065_QA2, { "QA2", "asterix.048_V1_28_065_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_065_QA2), 0x08, NULL, HFILL } },
+ { &hf_048_V1_28_065_QA1, { "QA1", "asterix.048_V1_28_065_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_065_QA1), 0x04, NULL, HFILL } },
+ { &hf_048_V1_28_065_QB2, { "QB2", "asterix.048_V1_28_065_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_065_QB2), 0x02, NULL, HFILL } },
+ { &hf_048_V1_28_065_QB1, { "QB1", "asterix.048_V1_28_065_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_065_QB1), 0x01, NULL, HFILL } },
+ { &hf_048_V1_28_070, { "070, Mode-3/A Code in Octal Representation", "asterix.048_V1_28_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_070_V, { "V", "asterix.048_V1_28_070_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_070_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_28_070_G, { "G", "asterix.048_V1_28_070_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_070_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_28_070_L, { "L", "asterix.048_V1_28_070_L", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_070_L), 0x20, NULL, HFILL } },
+ { &hf_048_V1_28_070_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.048_V1_28_070_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_V1_28_080, { "080, Mode-3/A Code Confidence Indicator", "asterix.048_V1_28_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_080_QA4, { "QA4", "asterix.048_V1_28_080_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_080_QA4), 0x08, NULL, HFILL } },
+ { &hf_048_V1_28_080_QA2, { "QA2", "asterix.048_V1_28_080_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_080_QA2), 0x04, NULL, HFILL } },
+ { &hf_048_V1_28_080_QA1, { "QA1", "asterix.048_V1_28_080_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_080_QA1), 0x02, NULL, HFILL } },
+ { &hf_048_V1_28_080_QB4, { "QB4", "asterix.048_V1_28_080_QB4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_080_QB4), 0x01, NULL, HFILL } },
+ { &hf_048_V1_28_080_QB2, { "QB2", "asterix.048_V1_28_080_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_080_QB2), 0x80, NULL, HFILL } },
+ { &hf_048_V1_28_080_QB1, { "QB1", "asterix.048_V1_28_080_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_080_QB1), 0x40, NULL, HFILL } },
+ { &hf_048_V1_28_080_QC4, { "QC4", "asterix.048_V1_28_080_QC4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_080_QC4), 0x20, NULL, HFILL } },
+ { &hf_048_V1_28_080_QC2, { "QC2", "asterix.048_V1_28_080_QC2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_080_QC2), 0x10, NULL, HFILL } },
+ { &hf_048_V1_28_080_QC1, { "QC1", "asterix.048_V1_28_080_QC1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_080_QC1), 0x08, NULL, HFILL } },
+ { &hf_048_V1_28_080_QD4, { "QD4", "asterix.048_V1_28_080_QD4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_080_QD4), 0x04, NULL, HFILL } },
+ { &hf_048_V1_28_080_QD2, { "QD2", "asterix.048_V1_28_080_QD2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_080_QD2), 0x02, NULL, HFILL } },
+ { &hf_048_V1_28_080_QD1, { "QD1", "asterix.048_V1_28_080_QD1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_080_QD1), 0x01, NULL, HFILL } },
+ { &hf_048_V1_28_090, { "090, Flight Level in Binary Representation", "asterix.048_V1_28_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_090_V, { "V", "asterix.048_V1_28_090_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_090_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_28_090_G, { "G", "asterix.048_V1_28_090_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_090_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_28_090_FL, { "FL, [FL]", "asterix.048_V1_28_090_FL", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_100, { "100, Mode-C Code and Code Confidence Indicator", "asterix.048_V1_28_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_100_V, { "V", "asterix.048_V1_28_100_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_100_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_28_100_G, { "G", "asterix.048_V1_28_100_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_100_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_28_100_MODEC, { "MODEC, Mode-C Reply in Gray Notation", "asterix.048_V1_28_100_MODEC", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_V1_28_100_QC1, { "QC1", "asterix.048_V1_28_100_QC1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_100_QC1), 0x08, NULL, HFILL } },
+ { &hf_048_V1_28_100_QA1, { "QA1", "asterix.048_V1_28_100_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_100_QA1), 0x04, NULL, HFILL } },
+ { &hf_048_V1_28_100_QC2, { "QC2", "asterix.048_V1_28_100_QC2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_100_QC2), 0x02, NULL, HFILL } },
+ { &hf_048_V1_28_100_QA2, { "QA2", "asterix.048_V1_28_100_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_100_QA2), 0x01, NULL, HFILL } },
+ { &hf_048_V1_28_100_QC4, { "QC4", "asterix.048_V1_28_100_QC4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_100_QC4), 0x80, NULL, HFILL } },
+ { &hf_048_V1_28_100_QA4, { "QA4", "asterix.048_V1_28_100_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_100_QA4), 0x40, NULL, HFILL } },
+ { &hf_048_V1_28_100_QB1, { "QB1", "asterix.048_V1_28_100_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_100_QB1), 0x20, NULL, HFILL } },
+ { &hf_048_V1_28_100_QD1, { "QD1", "asterix.048_V1_28_100_QD1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_100_QD1), 0x10, NULL, HFILL } },
+ { &hf_048_V1_28_100_QB2, { "QB2", "asterix.048_V1_28_100_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_100_QB2), 0x08, NULL, HFILL } },
+ { &hf_048_V1_28_100_QD2, { "QD2", "asterix.048_V1_28_100_QD2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_100_QD2), 0x04, NULL, HFILL } },
+ { &hf_048_V1_28_100_QB4, { "QB4", "asterix.048_V1_28_100_QB4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_100_QB4), 0x02, NULL, HFILL } },
+ { &hf_048_V1_28_100_QD4, { "QD4", "asterix.048_V1_28_100_QD4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_100_QD4), 0x01, NULL, HFILL } },
+ { &hf_048_V1_28_110, { "110, Height Measured by a 3D Radar", "asterix.048_V1_28_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_110_3DH, { "3DH, 3D Height, in Binary Notation. Negative Values Are Expressed in Two's Complement, [ft]", "asterix.048_V1_28_110_3DH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_120, { "120, Radial Doppler Speed", "asterix.048_V1_28_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_120_CAL, { "CAL, Calculated Doppler Speed", "asterix.048_V1_28_120_CAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_120_CAL_D, { "D", "asterix.048_V1_28_120_CAL_D", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_120_CAL_D), 0x80, NULL, HFILL } },
+ { &hf_048_V1_28_120_CAL_CAL, { "CAL, Calculated Doppler Speed, Coded in Two's Complement, [m/s]", "asterix.048_V1_28_120_CAL_CAL", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_120_RDS, { "RDS, Raw Doppler Speed", "asterix.048_V1_28_120_RDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_120_RDS_DOP, { "DOP, Doppler Speed, [m/s]", "asterix.048_V1_28_120_RDS_DOP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_120_RDS_AMB, { "AMB, Ambiguity Range, [m/s]", "asterix.048_V1_28_120_RDS_AMB", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_120_RDS_FRQ, { "FRQ, Transmitter Frequency, [MHz]", "asterix.048_V1_28_120_RDS_FRQ", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_130, { "130, Radar Plot Characteristics", "asterix.048_V1_28_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_130_SRL, { "SRL, SSR Plot Runlength", "asterix.048_V1_28_130_SRL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_130_SRL_VALUE, { "SSR Plot Runlength, [°]", "asterix.048_V1_28_130_SRL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_130_SRR, { "SRR, Number of Received Replies for (M)SSR", "asterix.048_V1_28_130_SRR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_130_SRR_VALUE, { "Number of Received Replies for (M)SSR", "asterix.048_V1_28_130_SRR_VALUE", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_130_SAM, { "SAM, Amplitude of (M)SSR Reply", "asterix.048_V1_28_130_SAM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_130_SAM_VALUE, { "Amplitude of (M)SSR Reply, [dBm]", "asterix.048_V1_28_130_SAM_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_130_PRL, { "PRL, Primary Plot Runlength", "asterix.048_V1_28_130_PRL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_130_PRL_VALUE, { "Primary Plot Runlength, [°]", "asterix.048_V1_28_130_PRL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_130_PAM, { "PAM, Amplitude of Primary Plot", "asterix.048_V1_28_130_PAM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_130_PAM_VALUE, { "Amplitude of Primary Plot, [dBm]", "asterix.048_V1_28_130_PAM_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_130_RPD, { "RPD, Difference in Range Between PSR and SSR Plot", "asterix.048_V1_28_130_RPD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_130_RPD_VALUE, { "Difference in Range Between PSR and SSR Plot, [NM]", "asterix.048_V1_28_130_RPD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_130_APD, { "APD, Difference in Azimuth Between PSR and SSR Plot", "asterix.048_V1_28_130_APD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_130_APD_VALUE, { "Difference in Azimuth Between PSR and SSR Plot, [°]", "asterix.048_V1_28_130_APD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_140, { "140, Time of Day", "asterix.048_V1_28_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_140_VALUE, { "Time of Day, [s]", "asterix.048_V1_28_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_161, { "161, Track Number", "asterix.048_V1_28_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_161_TRN, { "TRN, Track Number", "asterix.048_V1_28_161_TRN", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_V1_28_170, { "170, Track Status", "asterix.048_V1_28_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_170_CNF, { "CNF, Confirmed Vs. Tentative Track", "asterix.048_V1_28_170_CNF", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_170_CNF), 0x80, NULL, HFILL } },
+ { &hf_048_V1_28_170_RAD, { "RAD, Type of Sensor(s) Maintaining Track", "asterix.048_V1_28_170_RAD", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_170_RAD), 0x60, NULL, HFILL } },
+ { &hf_048_V1_28_170_DOU, { "DOU, Signals Level of Confidence in Plot to Track Association Process", "asterix.048_V1_28_170_DOU", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_170_DOU), 0x10, NULL, HFILL } },
+ { &hf_048_V1_28_170_MAH, { "MAH, Manoeuvre Detection in Horizontal Sense", "asterix.048_V1_28_170_MAH", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_170_MAH), 0x08, NULL, HFILL } },
+ { &hf_048_V1_28_170_CDM, { "CDM, Climbing / Descending Mode", "asterix.048_V1_28_170_CDM", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_170_CDM), 0x06, NULL, HFILL } },
+ { &hf_048_V1_28_170_TRE, { "TRE, Signal for End_of_Track", "asterix.048_V1_28_170_TRE", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_170_TRE), 0x80, NULL, HFILL } },
+ { &hf_048_V1_28_170_GHO, { "GHO, Ghost Vs. True Target", "asterix.048_V1_28_170_GHO", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_170_GHO), 0x40, NULL, HFILL } },
+ { &hf_048_V1_28_170_SUP, { "SUP, Track Maintained with Track Information from Neighbouring Node B on the Cluster, or Network", "asterix.048_V1_28_170_SUP", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_170_SUP), 0x20, NULL, HFILL } },
+ { &hf_048_V1_28_170_TCC, { "TCC, Type of Plot Coordinate Transformation Mechanism:", "asterix.048_V1_28_170_TCC", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_170_TCC), 0x10, NULL, HFILL } },
+ { &hf_048_V1_28_200, { "200, Calculated Track Velocity in Polar Co-ordinates", "asterix.048_V1_28_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_200_GSP, { "GSP, Calculated Groundspeed, [NM/s]", "asterix.048_V1_28_200_GSP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_200_HDG, { "HDG, Calculated Heading, [°]", "asterix.048_V1_28_200_HDG", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_210, { "210, Track Quality", "asterix.048_V1_28_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_210_SIGX, { "SIGX, Sigma (X)) Standard Deviation on the Horizontal Axis of the Local Grid System, [NM]", "asterix.048_V1_28_210_SIGX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_210_SIGY, { "SIGY, Sigma (Y)) Standard Deviation on the Vertical Axis of the Local Grid System, [NM]", "asterix.048_V1_28_210_SIGY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_210_SIGV, { "SIGV, Sigma (V)) Standard Deviation on the Groundspeed Within the Local Grid System, [NM/s]", "asterix.048_V1_28_210_SIGV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_210_SIGH, { "SIGH, Sigma (H)) Standard Deviation on the Heading Within the Local Grid System, [°]", "asterix.048_V1_28_210_SIGH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_220, { "220, Aircraft Address", "asterix.048_V1_28_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_220_VALUE, { "Aircraft Address", "asterix.048_V1_28_220_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_230, { "230, Communications/ACAS Capability and Flight Status", "asterix.048_V1_28_230", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_230_COM, { "COM, Communications Capability of the Transponder", "asterix.048_V1_28_230_COM", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_230_COM), 0xe0, NULL, HFILL } },
+ { &hf_048_V1_28_230_STAT, { "STAT, Flight Status", "asterix.048_V1_28_230_STAT", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_230_STAT), 0x1c, NULL, HFILL } },
+ { &hf_048_V1_28_230_SI, { "SI, SI/II Transponder Capability", "asterix.048_V1_28_230_SI", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_230_SI), 0x02, NULL, HFILL } },
+ { &hf_048_V1_28_230_MSSC, { "MSSC, Mode-S Specific Service Capability", "asterix.048_V1_28_230_MSSC", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_230_MSSC), 0x80, NULL, HFILL } },
+ { &hf_048_V1_28_230_ARC, { "ARC, Altitude Reporting Capability", "asterix.048_V1_28_230_ARC", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_230_ARC), 0x40, NULL, HFILL } },
+ { &hf_048_V1_28_230_AIC, { "AIC, Aircraft Identification Capability", "asterix.048_V1_28_230_AIC", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_28_230_AIC), 0x20, NULL, HFILL } },
+ { &hf_048_V1_28_230_B1A, { "B1A, BDS 1,0 Bit 16", "asterix.048_V1_28_230_B1A", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_048_V1_28_230_B1B, { "B1B, BDS 1,0 Bits 37/40", "asterix.048_V1_28_230_B1B", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_048_V1_28_240, { "240, Aircraft Identification", "asterix.048_V1_28_240", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_240_VALUE, { "Aircraft Identification", "asterix.048_V1_28_240_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_250, { "250, Mode S MB Data", "asterix.048_V1_28_250", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_250_MBDATA, { "MBDATA, Mode S Comm B Message Data", "asterix.048_V1_28_250_MBDATA", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_250_BDS1, { "BDS1, Comm B Data Buffer Store 1 Address", "asterix.048_V1_28_250_BDS1", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_048_V1_28_250_BDS2, { "BDS2, Comm B Data Buffer Store 2 Address", "asterix.048_V1_28_250_BDS2", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_048_V1_28_260, { "260, ACAS Resolution Advisory Report", "asterix.048_V1_28_260", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_260_VALUE, { "ACAS Resolution Advisory Report", "asterix.048_V1_28_260_VALUE", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_RE, { "RE, Reserved Expansion Field", "asterix.048_V1_28_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_28_SP, { "SP, Special Purpose Field", "asterix.048_V1_28_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_010, { "010, Data Source Identifier", "asterix.048_V1_29_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_010_SAC, { "SAC, System Area Code", "asterix.048_V1_29_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_010_SIC, { "SIC, System Identification Code", "asterix.048_V1_29_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_020, { "020, Target Report Descriptor", "asterix.048_V1_29_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_020_TYP, { "TYP", "asterix.048_V1_29_020_TYP", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_020_TYP), 0xe0, NULL, HFILL } },
+ { &hf_048_V1_29_020_SIM, { "SIM", "asterix.048_V1_29_020_SIM", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_020_SIM), 0x10, NULL, HFILL } },
+ { &hf_048_V1_29_020_RDP, { "RDP", "asterix.048_V1_29_020_RDP", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_020_RDP), 0x08, NULL, HFILL } },
+ { &hf_048_V1_29_020_SPI, { "SPI", "asterix.048_V1_29_020_SPI", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_020_SPI), 0x04, NULL, HFILL } },
+ { &hf_048_V1_29_020_RAB, { "RAB", "asterix.048_V1_29_020_RAB", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_020_RAB), 0x02, NULL, HFILL } },
+ { &hf_048_V1_29_020_TST, { "TST", "asterix.048_V1_29_020_TST", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_020_TST), 0x80, NULL, HFILL } },
+ { &hf_048_V1_29_020_ERR, { "ERR", "asterix.048_V1_29_020_ERR", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_020_ERR), 0x40, NULL, HFILL } },
+ { &hf_048_V1_29_020_XPP, { "XPP", "asterix.048_V1_29_020_XPP", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_020_XPP), 0x20, NULL, HFILL } },
+ { &hf_048_V1_29_020_ME, { "ME", "asterix.048_V1_29_020_ME", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_020_ME), 0x10, NULL, HFILL } },
+ { &hf_048_V1_29_020_MI, { "MI", "asterix.048_V1_29_020_MI", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_020_MI), 0x08, NULL, HFILL } },
+ { &hf_048_V1_29_020_FOEFRI, { "FOEFRI", "asterix.048_V1_29_020_FOEFRI", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_020_FOEFRI), 0x06, NULL, HFILL } },
+ { &hf_048_V1_29_030, { "030, Warning/Error Conditions and Target Classification", "asterix.048_V1_29_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_030_Subitem, { "Subitem, Subitem", "asterix.048_V1_29_030_Subitem", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_030_Subitem), 0xfe, NULL, HFILL } },
+ { &hf_048_V1_29_040, { "040, Measured Position in Polar Co-ordinates", "asterix.048_V1_29_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_040_RHO, { "RHO, [NM]", "asterix.048_V1_29_040_RHO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_040_THETA, { "THETA, [°]", "asterix.048_V1_29_040_THETA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_042, { "042, Calculated Position in Cartesian Co-ordinates", "asterix.048_V1_29_042", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_042_X, { "X, X-Component, [NM]", "asterix.048_V1_29_042_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_042_Y, { "Y, X-Component, [NM]", "asterix.048_V1_29_042_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_050, { "050, Mode-2 Code in Octal Representation", "asterix.048_V1_29_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_050_V, { "V", "asterix.048_V1_29_050_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_050_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_29_050_G, { "G", "asterix.048_V1_29_050_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_050_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_29_050_L, { "L", "asterix.048_V1_29_050_L", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_050_L), 0x20, NULL, HFILL } },
+ { &hf_048_V1_29_050_MODE2, { "MODE2, Mode-2 Code in Octal Representation", "asterix.048_V1_29_050_MODE2", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_V1_29_055, { "055, Mode-1 Code in Octal Representation", "asterix.048_V1_29_055", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_055_V, { "V", "asterix.048_V1_29_055_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_055_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_29_055_G, { "G", "asterix.048_V1_29_055_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_055_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_29_055_L, { "L", "asterix.048_V1_29_055_L", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_055_L), 0x20, NULL, HFILL } },
+ { &hf_048_V1_29_055_MODE1, { "MODE1, Mode-1 Code", "asterix.048_V1_29_055_MODE1", FT_UINT8, BASE_DEC, NULL, 0x1f, NULL, HFILL } },
+ { &hf_048_V1_29_060, { "060, Mode-2 Code Confidence Indicator", "asterix.048_V1_29_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_060_QA4, { "QA4", "asterix.048_V1_29_060_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_060_QA4), 0x08, NULL, HFILL } },
+ { &hf_048_V1_29_060_QA2, { "QA2", "asterix.048_V1_29_060_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_060_QA2), 0x04, NULL, HFILL } },
+ { &hf_048_V1_29_060_QA1, { "QA1", "asterix.048_V1_29_060_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_060_QA1), 0x02, NULL, HFILL } },
+ { &hf_048_V1_29_060_QB4, { "QB4", "asterix.048_V1_29_060_QB4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_060_QB4), 0x01, NULL, HFILL } },
+ { &hf_048_V1_29_060_QB2, { "QB2", "asterix.048_V1_29_060_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_060_QB2), 0x80, NULL, HFILL } },
+ { &hf_048_V1_29_060_QB1, { "QB1", "asterix.048_V1_29_060_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_060_QB1), 0x40, NULL, HFILL } },
+ { &hf_048_V1_29_060_QC4, { "QC4", "asterix.048_V1_29_060_QC4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_060_QC4), 0x20, NULL, HFILL } },
+ { &hf_048_V1_29_060_QC2, { "QC2", "asterix.048_V1_29_060_QC2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_060_QC2), 0x10, NULL, HFILL } },
+ { &hf_048_V1_29_060_QC1, { "QC1", "asterix.048_V1_29_060_QC1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_060_QC1), 0x08, NULL, HFILL } },
+ { &hf_048_V1_29_060_QD4, { "QD4", "asterix.048_V1_29_060_QD4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_060_QD4), 0x04, NULL, HFILL } },
+ { &hf_048_V1_29_060_QD2, { "QD2", "asterix.048_V1_29_060_QD2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_060_QD2), 0x02, NULL, HFILL } },
+ { &hf_048_V1_29_060_QD1, { "QD1", "asterix.048_V1_29_060_QD1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_060_QD1), 0x01, NULL, HFILL } },
+ { &hf_048_V1_29_065, { "065, Mode-1 Code Confidence Indicator", "asterix.048_V1_29_065", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_065_QA4, { "QA4", "asterix.048_V1_29_065_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_065_QA4), 0x10, NULL, HFILL } },
+ { &hf_048_V1_29_065_QA2, { "QA2", "asterix.048_V1_29_065_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_065_QA2), 0x08, NULL, HFILL } },
+ { &hf_048_V1_29_065_QA1, { "QA1", "asterix.048_V1_29_065_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_065_QA1), 0x04, NULL, HFILL } },
+ { &hf_048_V1_29_065_QB2, { "QB2", "asterix.048_V1_29_065_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_065_QB2), 0x02, NULL, HFILL } },
+ { &hf_048_V1_29_065_QB1, { "QB1", "asterix.048_V1_29_065_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_065_QB1), 0x01, NULL, HFILL } },
+ { &hf_048_V1_29_070, { "070, Mode-3/A Code in Octal Representation", "asterix.048_V1_29_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_070_V, { "V", "asterix.048_V1_29_070_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_070_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_29_070_G, { "G", "asterix.048_V1_29_070_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_070_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_29_070_L, { "L", "asterix.048_V1_29_070_L", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_070_L), 0x20, NULL, HFILL } },
+ { &hf_048_V1_29_070_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.048_V1_29_070_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_V1_29_080, { "080, Mode-3/A Code Confidence Indicator", "asterix.048_V1_29_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_080_QA4, { "QA4", "asterix.048_V1_29_080_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_080_QA4), 0x08, NULL, HFILL } },
+ { &hf_048_V1_29_080_QA2, { "QA2", "asterix.048_V1_29_080_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_080_QA2), 0x04, NULL, HFILL } },
+ { &hf_048_V1_29_080_QA1, { "QA1", "asterix.048_V1_29_080_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_080_QA1), 0x02, NULL, HFILL } },
+ { &hf_048_V1_29_080_QB4, { "QB4", "asterix.048_V1_29_080_QB4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_080_QB4), 0x01, NULL, HFILL } },
+ { &hf_048_V1_29_080_QB2, { "QB2", "asterix.048_V1_29_080_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_080_QB2), 0x80, NULL, HFILL } },
+ { &hf_048_V1_29_080_QB1, { "QB1", "asterix.048_V1_29_080_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_080_QB1), 0x40, NULL, HFILL } },
+ { &hf_048_V1_29_080_QC4, { "QC4", "asterix.048_V1_29_080_QC4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_080_QC4), 0x20, NULL, HFILL } },
+ { &hf_048_V1_29_080_QC2, { "QC2", "asterix.048_V1_29_080_QC2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_080_QC2), 0x10, NULL, HFILL } },
+ { &hf_048_V1_29_080_QC1, { "QC1", "asterix.048_V1_29_080_QC1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_080_QC1), 0x08, NULL, HFILL } },
+ { &hf_048_V1_29_080_QD4, { "QD4", "asterix.048_V1_29_080_QD4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_080_QD4), 0x04, NULL, HFILL } },
+ { &hf_048_V1_29_080_QD2, { "QD2", "asterix.048_V1_29_080_QD2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_080_QD2), 0x02, NULL, HFILL } },
+ { &hf_048_V1_29_080_QD1, { "QD1", "asterix.048_V1_29_080_QD1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_080_QD1), 0x01, NULL, HFILL } },
+ { &hf_048_V1_29_090, { "090, Flight Level in Binary Representation", "asterix.048_V1_29_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_090_V, { "V", "asterix.048_V1_29_090_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_090_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_29_090_G, { "G", "asterix.048_V1_29_090_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_090_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_29_090_FL, { "FL, [FL]", "asterix.048_V1_29_090_FL", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_100, { "100, Mode-C Code and Code Confidence Indicator", "asterix.048_V1_29_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_100_V, { "V", "asterix.048_V1_29_100_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_100_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_29_100_G, { "G", "asterix.048_V1_29_100_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_100_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_29_100_MODEC, { "MODEC, Mode-C Reply in Gray Notation", "asterix.048_V1_29_100_MODEC", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_V1_29_100_QC1, { "QC1", "asterix.048_V1_29_100_QC1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_100_QC1), 0x08, NULL, HFILL } },
+ { &hf_048_V1_29_100_QA1, { "QA1", "asterix.048_V1_29_100_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_100_QA1), 0x04, NULL, HFILL } },
+ { &hf_048_V1_29_100_QC2, { "QC2", "asterix.048_V1_29_100_QC2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_100_QC2), 0x02, NULL, HFILL } },
+ { &hf_048_V1_29_100_QA2, { "QA2", "asterix.048_V1_29_100_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_100_QA2), 0x01, NULL, HFILL } },
+ { &hf_048_V1_29_100_QC4, { "QC4", "asterix.048_V1_29_100_QC4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_100_QC4), 0x80, NULL, HFILL } },
+ { &hf_048_V1_29_100_QA4, { "QA4", "asterix.048_V1_29_100_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_100_QA4), 0x40, NULL, HFILL } },
+ { &hf_048_V1_29_100_QB1, { "QB1", "asterix.048_V1_29_100_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_100_QB1), 0x20, NULL, HFILL } },
+ { &hf_048_V1_29_100_QD1, { "QD1", "asterix.048_V1_29_100_QD1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_100_QD1), 0x10, NULL, HFILL } },
+ { &hf_048_V1_29_100_QB2, { "QB2", "asterix.048_V1_29_100_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_100_QB2), 0x08, NULL, HFILL } },
+ { &hf_048_V1_29_100_QD2, { "QD2", "asterix.048_V1_29_100_QD2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_100_QD2), 0x04, NULL, HFILL } },
+ { &hf_048_V1_29_100_QB4, { "QB4", "asterix.048_V1_29_100_QB4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_100_QB4), 0x02, NULL, HFILL } },
+ { &hf_048_V1_29_100_QD4, { "QD4", "asterix.048_V1_29_100_QD4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_100_QD4), 0x01, NULL, HFILL } },
+ { &hf_048_V1_29_110, { "110, Height Measured by a 3D Radar", "asterix.048_V1_29_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_110_3DH, { "3DH, 3D Height, in Binary Notation. Negative Values Are Expressed in Two's Complement, [ft]", "asterix.048_V1_29_110_3DH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_120, { "120, Radial Doppler Speed", "asterix.048_V1_29_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_120_CAL, { "CAL, Calculated Doppler Speed", "asterix.048_V1_29_120_CAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_120_CAL_D, { "D", "asterix.048_V1_29_120_CAL_D", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_120_CAL_D), 0x80, NULL, HFILL } },
+ { &hf_048_V1_29_120_CAL_CAL, { "CAL, Calculated Doppler Speed, Coded in Two's Complement, [m/s]", "asterix.048_V1_29_120_CAL_CAL", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_120_RDS, { "RDS, Raw Doppler Speed", "asterix.048_V1_29_120_RDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_120_RDS_DOP, { "DOP, Doppler Speed, [m/s]", "asterix.048_V1_29_120_RDS_DOP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_120_RDS_AMB, { "AMB, Ambiguity Range, [m/s]", "asterix.048_V1_29_120_RDS_AMB", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_120_RDS_FRQ, { "FRQ, Transmitter Frequency, [MHz]", "asterix.048_V1_29_120_RDS_FRQ", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_130, { "130, Radar Plot Characteristics", "asterix.048_V1_29_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_130_SRL, { "SRL, SSR Plot Runlength", "asterix.048_V1_29_130_SRL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_130_SRL_VALUE, { "SSR Plot Runlength, [°]", "asterix.048_V1_29_130_SRL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_130_SRR, { "SRR, Number of Received Replies for (M)SSR", "asterix.048_V1_29_130_SRR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_130_SRR_VALUE, { "Number of Received Replies for (M)SSR", "asterix.048_V1_29_130_SRR_VALUE", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_130_SAM, { "SAM, Amplitude of (M)SSR Reply", "asterix.048_V1_29_130_SAM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_130_SAM_VALUE, { "Amplitude of (M)SSR Reply, [dBm]", "asterix.048_V1_29_130_SAM_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_130_PRL, { "PRL, Primary Plot Runlength", "asterix.048_V1_29_130_PRL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_130_PRL_VALUE, { "Primary Plot Runlength, [°]", "asterix.048_V1_29_130_PRL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_130_PAM, { "PAM, Amplitude of Primary Plot", "asterix.048_V1_29_130_PAM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_130_PAM_VALUE, { "Amplitude of Primary Plot, [dBm]", "asterix.048_V1_29_130_PAM_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_130_RPD, { "RPD, Difference in Range Between PSR and SSR Plot", "asterix.048_V1_29_130_RPD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_130_RPD_VALUE, { "Difference in Range Between PSR and SSR Plot, [NM]", "asterix.048_V1_29_130_RPD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_130_APD, { "APD, Difference in Azimuth Between PSR and SSR Plot", "asterix.048_V1_29_130_APD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_130_APD_VALUE, { "Difference in Azimuth Between PSR and SSR Plot, [°]", "asterix.048_V1_29_130_APD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_140, { "140, Time of Day", "asterix.048_V1_29_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_140_VALUE, { "Time of Day, [s]", "asterix.048_V1_29_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_161, { "161, Track Number", "asterix.048_V1_29_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_161_TRN, { "TRN, Track Number", "asterix.048_V1_29_161_TRN", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_V1_29_170, { "170, Track Status", "asterix.048_V1_29_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_170_CNF, { "CNF, Confirmed Vs. Tentative Track", "asterix.048_V1_29_170_CNF", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_170_CNF), 0x80, NULL, HFILL } },
+ { &hf_048_V1_29_170_RAD, { "RAD, Type of Sensor(s) Maintaining Track", "asterix.048_V1_29_170_RAD", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_170_RAD), 0x60, NULL, HFILL } },
+ { &hf_048_V1_29_170_DOU, { "DOU, Signals Level of Confidence in Plot to Track Association Process", "asterix.048_V1_29_170_DOU", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_170_DOU), 0x10, NULL, HFILL } },
+ { &hf_048_V1_29_170_MAH, { "MAH, Manoeuvre Detection in Horizontal Sense", "asterix.048_V1_29_170_MAH", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_170_MAH), 0x08, NULL, HFILL } },
+ { &hf_048_V1_29_170_CDM, { "CDM, Climbing / Descending Mode", "asterix.048_V1_29_170_CDM", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_170_CDM), 0x06, NULL, HFILL } },
+ { &hf_048_V1_29_170_TRE, { "TRE, Signal for End_of_Track", "asterix.048_V1_29_170_TRE", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_170_TRE), 0x80, NULL, HFILL } },
+ { &hf_048_V1_29_170_GHO, { "GHO, Ghost Vs. True Target", "asterix.048_V1_29_170_GHO", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_170_GHO), 0x40, NULL, HFILL } },
+ { &hf_048_V1_29_170_SUP, { "SUP, Track Maintained with Track Information from Neighbouring Node B on the Cluster, or Network", "asterix.048_V1_29_170_SUP", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_170_SUP), 0x20, NULL, HFILL } },
+ { &hf_048_V1_29_170_TCC, { "TCC, Type of Plot Coordinate Transformation Mechanism:", "asterix.048_V1_29_170_TCC", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_170_TCC), 0x10, NULL, HFILL } },
+ { &hf_048_V1_29_200, { "200, Calculated Track Velocity in Polar Co-ordinates", "asterix.048_V1_29_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_200_GSP, { "GSP, Calculated Groundspeed, [NM/s]", "asterix.048_V1_29_200_GSP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_200_HDG, { "HDG, Calculated Heading, [°]", "asterix.048_V1_29_200_HDG", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_210, { "210, Track Quality", "asterix.048_V1_29_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_210_SIGX, { "SIGX, Sigma (X)) Standard Deviation on the Horizontal Axis of the Local Grid System, [NM]", "asterix.048_V1_29_210_SIGX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_210_SIGY, { "SIGY, Sigma (Y)) Standard Deviation on the Vertical Axis of the Local Grid System, [NM]", "asterix.048_V1_29_210_SIGY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_210_SIGV, { "SIGV, Sigma (V)) Standard Deviation on the Groundspeed Within the Local Grid System, [NM/s]", "asterix.048_V1_29_210_SIGV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_210_SIGH, { "SIGH, Sigma (H)) Standard Deviation on the Heading Within the Local Grid System, [°]", "asterix.048_V1_29_210_SIGH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_220, { "220, Aircraft Address", "asterix.048_V1_29_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_220_VALUE, { "Aircraft Address", "asterix.048_V1_29_220_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_230, { "230, Communications/ACAS Capability and Flight Status", "asterix.048_V1_29_230", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_230_COM, { "COM, Communications Capability of the Transponder", "asterix.048_V1_29_230_COM", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_230_COM), 0xe0, NULL, HFILL } },
+ { &hf_048_V1_29_230_STAT, { "STAT, Flight Status", "asterix.048_V1_29_230_STAT", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_230_STAT), 0x1c, NULL, HFILL } },
+ { &hf_048_V1_29_230_SI, { "SI, SI/II Transponder Capability", "asterix.048_V1_29_230_SI", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_230_SI), 0x02, NULL, HFILL } },
+ { &hf_048_V1_29_230_MSSC, { "MSSC, Mode-S Specific Service Capability", "asterix.048_V1_29_230_MSSC", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_230_MSSC), 0x80, NULL, HFILL } },
+ { &hf_048_V1_29_230_ARC, { "ARC, Altitude Reporting Capability", "asterix.048_V1_29_230_ARC", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_230_ARC), 0x40, NULL, HFILL } },
+ { &hf_048_V1_29_230_AIC, { "AIC, Aircraft Identification Capability", "asterix.048_V1_29_230_AIC", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_29_230_AIC), 0x20, NULL, HFILL } },
+ { &hf_048_V1_29_230_B1A, { "B1A, BDS 1,0 Bit 16", "asterix.048_V1_29_230_B1A", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_048_V1_29_230_B1B, { "B1B, BDS 1,0 Bits 37/40", "asterix.048_V1_29_230_B1B", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_048_V1_29_240, { "240, Aircraft Identification", "asterix.048_V1_29_240", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_240_VALUE, { "Aircraft Identification", "asterix.048_V1_29_240_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_250, { "250, BDS Register Data", "asterix.048_V1_29_250", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_250_MBDATA, { "MBDATA, Mode S Comm B Message Data", "asterix.048_V1_29_250_MBDATA", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_250_BDS1, { "BDS1, Comm B Data Buffer Store 1 Address", "asterix.048_V1_29_250_BDS1", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_048_V1_29_250_BDS2, { "BDS2, Comm B Data Buffer Store 2 Address", "asterix.048_V1_29_250_BDS2", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_048_V1_29_260, { "260, ACAS Resolution Advisory Report", "asterix.048_V1_29_260", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_260_VALUE, { "ACAS Resolution Advisory Report", "asterix.048_V1_29_260_VALUE", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_RE, { "RE, Reserved Expansion Field", "asterix.048_V1_29_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_29_SP, { "SP, Special Purpose Field", "asterix.048_V1_29_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_010, { "010, Data Source Identifier", "asterix.048_V1_30_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_010_SAC, { "SAC, System Area Code", "asterix.048_V1_30_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_010_SIC, { "SIC, System Identification Code", "asterix.048_V1_30_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_020, { "020, Target Report Descriptor", "asterix.048_V1_30_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_020_TYP, { "TYP", "asterix.048_V1_30_020_TYP", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_020_TYP), 0xe0, NULL, HFILL } },
+ { &hf_048_V1_30_020_SIM, { "SIM", "asterix.048_V1_30_020_SIM", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_020_SIM), 0x10, NULL, HFILL } },
+ { &hf_048_V1_30_020_RDP, { "RDP", "asterix.048_V1_30_020_RDP", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_020_RDP), 0x08, NULL, HFILL } },
+ { &hf_048_V1_30_020_SPI, { "SPI", "asterix.048_V1_30_020_SPI", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_020_SPI), 0x04, NULL, HFILL } },
+ { &hf_048_V1_30_020_RAB, { "RAB", "asterix.048_V1_30_020_RAB", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_020_RAB), 0x02, NULL, HFILL } },
+ { &hf_048_V1_30_020_TST, { "TST", "asterix.048_V1_30_020_TST", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_020_TST), 0x80, NULL, HFILL } },
+ { &hf_048_V1_30_020_ERR, { "ERR", "asterix.048_V1_30_020_ERR", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_020_ERR), 0x40, NULL, HFILL } },
+ { &hf_048_V1_30_020_XPP, { "XPP", "asterix.048_V1_30_020_XPP", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_020_XPP), 0x20, NULL, HFILL } },
+ { &hf_048_V1_30_020_ME, { "ME", "asterix.048_V1_30_020_ME", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_020_ME), 0x10, NULL, HFILL } },
+ { &hf_048_V1_30_020_MI, { "MI", "asterix.048_V1_30_020_MI", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_020_MI), 0x08, NULL, HFILL } },
+ { &hf_048_V1_30_020_FOEFRI, { "FOEFRI", "asterix.048_V1_30_020_FOEFRI", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_020_FOEFRI), 0x06, NULL, HFILL } },
+ { &hf_048_V1_30_030, { "030, Warning/Error Conditions and Target Classification", "asterix.048_V1_30_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_030_Subitem, { "Subitem, Subitem", "asterix.048_V1_30_030_Subitem", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_030_Subitem), 0xfe, NULL, HFILL } },
+ { &hf_048_V1_30_040, { "040, Measured Position in Polar Co-ordinates", "asterix.048_V1_30_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_040_RHO, { "RHO, [NM]", "asterix.048_V1_30_040_RHO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_040_THETA, { "THETA, [°]", "asterix.048_V1_30_040_THETA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_042, { "042, Calculated Position in Cartesian Co-ordinates", "asterix.048_V1_30_042", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_042_X, { "X, X-Component, [NM]", "asterix.048_V1_30_042_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_042_Y, { "Y, X-Component, [NM]", "asterix.048_V1_30_042_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_050, { "050, Mode-2 Code in Octal Representation", "asterix.048_V1_30_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_050_V, { "V", "asterix.048_V1_30_050_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_050_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_30_050_G, { "G", "asterix.048_V1_30_050_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_050_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_30_050_L, { "L", "asterix.048_V1_30_050_L", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_050_L), 0x20, NULL, HFILL } },
+ { &hf_048_V1_30_050_MODE2, { "MODE2, Mode-2 Code in Octal Representation", "asterix.048_V1_30_050_MODE2", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_V1_30_055, { "055, Mode-1 Code in Octal Representation", "asterix.048_V1_30_055", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_055_V, { "V", "asterix.048_V1_30_055_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_055_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_30_055_G, { "G", "asterix.048_V1_30_055_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_055_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_30_055_L, { "L", "asterix.048_V1_30_055_L", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_055_L), 0x20, NULL, HFILL } },
+ { &hf_048_V1_30_055_MODE1, { "MODE1, Mode-1 Code", "asterix.048_V1_30_055_MODE1", FT_UINT8, BASE_DEC, NULL, 0x1f, NULL, HFILL } },
+ { &hf_048_V1_30_060, { "060, Mode-2 Code Confidence Indicator", "asterix.048_V1_30_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_060_QA4, { "QA4", "asterix.048_V1_30_060_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_060_QA4), 0x08, NULL, HFILL } },
+ { &hf_048_V1_30_060_QA2, { "QA2", "asterix.048_V1_30_060_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_060_QA2), 0x04, NULL, HFILL } },
+ { &hf_048_V1_30_060_QA1, { "QA1", "asterix.048_V1_30_060_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_060_QA1), 0x02, NULL, HFILL } },
+ { &hf_048_V1_30_060_QB4, { "QB4", "asterix.048_V1_30_060_QB4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_060_QB4), 0x01, NULL, HFILL } },
+ { &hf_048_V1_30_060_QB2, { "QB2", "asterix.048_V1_30_060_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_060_QB2), 0x80, NULL, HFILL } },
+ { &hf_048_V1_30_060_QB1, { "QB1", "asterix.048_V1_30_060_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_060_QB1), 0x40, NULL, HFILL } },
+ { &hf_048_V1_30_060_QC4, { "QC4", "asterix.048_V1_30_060_QC4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_060_QC4), 0x20, NULL, HFILL } },
+ { &hf_048_V1_30_060_QC2, { "QC2", "asterix.048_V1_30_060_QC2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_060_QC2), 0x10, NULL, HFILL } },
+ { &hf_048_V1_30_060_QC1, { "QC1", "asterix.048_V1_30_060_QC1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_060_QC1), 0x08, NULL, HFILL } },
+ { &hf_048_V1_30_060_QD4, { "QD4", "asterix.048_V1_30_060_QD4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_060_QD4), 0x04, NULL, HFILL } },
+ { &hf_048_V1_30_060_QD2, { "QD2", "asterix.048_V1_30_060_QD2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_060_QD2), 0x02, NULL, HFILL } },
+ { &hf_048_V1_30_060_QD1, { "QD1", "asterix.048_V1_30_060_QD1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_060_QD1), 0x01, NULL, HFILL } },
+ { &hf_048_V1_30_065, { "065, Mode-1 Code Confidence Indicator", "asterix.048_V1_30_065", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_065_QA4, { "QA4", "asterix.048_V1_30_065_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_065_QA4), 0x10, NULL, HFILL } },
+ { &hf_048_V1_30_065_QA2, { "QA2", "asterix.048_V1_30_065_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_065_QA2), 0x08, NULL, HFILL } },
+ { &hf_048_V1_30_065_QA1, { "QA1", "asterix.048_V1_30_065_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_065_QA1), 0x04, NULL, HFILL } },
+ { &hf_048_V1_30_065_QB2, { "QB2", "asterix.048_V1_30_065_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_065_QB2), 0x02, NULL, HFILL } },
+ { &hf_048_V1_30_065_QB1, { "QB1", "asterix.048_V1_30_065_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_065_QB1), 0x01, NULL, HFILL } },
+ { &hf_048_V1_30_070, { "070, Mode-3/A Code in Octal Representation", "asterix.048_V1_30_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_070_V, { "V", "asterix.048_V1_30_070_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_070_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_30_070_G, { "G", "asterix.048_V1_30_070_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_070_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_30_070_L, { "L", "asterix.048_V1_30_070_L", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_070_L), 0x20, NULL, HFILL } },
+ { &hf_048_V1_30_070_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.048_V1_30_070_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_V1_30_080, { "080, Mode-3/A Code Confidence Indicator", "asterix.048_V1_30_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_080_QA4, { "QA4", "asterix.048_V1_30_080_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_080_QA4), 0x08, NULL, HFILL } },
+ { &hf_048_V1_30_080_QA2, { "QA2", "asterix.048_V1_30_080_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_080_QA2), 0x04, NULL, HFILL } },
+ { &hf_048_V1_30_080_QA1, { "QA1", "asterix.048_V1_30_080_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_080_QA1), 0x02, NULL, HFILL } },
+ { &hf_048_V1_30_080_QB4, { "QB4", "asterix.048_V1_30_080_QB4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_080_QB4), 0x01, NULL, HFILL } },
+ { &hf_048_V1_30_080_QB2, { "QB2", "asterix.048_V1_30_080_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_080_QB2), 0x80, NULL, HFILL } },
+ { &hf_048_V1_30_080_QB1, { "QB1", "asterix.048_V1_30_080_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_080_QB1), 0x40, NULL, HFILL } },
+ { &hf_048_V1_30_080_QC4, { "QC4", "asterix.048_V1_30_080_QC4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_080_QC4), 0x20, NULL, HFILL } },
+ { &hf_048_V1_30_080_QC2, { "QC2", "asterix.048_V1_30_080_QC2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_080_QC2), 0x10, NULL, HFILL } },
+ { &hf_048_V1_30_080_QC1, { "QC1", "asterix.048_V1_30_080_QC1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_080_QC1), 0x08, NULL, HFILL } },
+ { &hf_048_V1_30_080_QD4, { "QD4", "asterix.048_V1_30_080_QD4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_080_QD4), 0x04, NULL, HFILL } },
+ { &hf_048_V1_30_080_QD2, { "QD2", "asterix.048_V1_30_080_QD2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_080_QD2), 0x02, NULL, HFILL } },
+ { &hf_048_V1_30_080_QD1, { "QD1", "asterix.048_V1_30_080_QD1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_080_QD1), 0x01, NULL, HFILL } },
+ { &hf_048_V1_30_090, { "090, Flight Level in Binary Representation", "asterix.048_V1_30_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_090_V, { "V", "asterix.048_V1_30_090_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_090_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_30_090_G, { "G", "asterix.048_V1_30_090_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_090_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_30_090_FL, { "FL, [FL]", "asterix.048_V1_30_090_FL", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_100, { "100, Mode-C Code and Code Confidence Indicator", "asterix.048_V1_30_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_100_V, { "V", "asterix.048_V1_30_100_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_100_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_30_100_G, { "G", "asterix.048_V1_30_100_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_100_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_30_100_MODEC, { "MODEC, Mode-C Reply in Gray Notation", "asterix.048_V1_30_100_MODEC", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_V1_30_100_QC1, { "QC1", "asterix.048_V1_30_100_QC1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_100_QC1), 0x08, NULL, HFILL } },
+ { &hf_048_V1_30_100_QA1, { "QA1", "asterix.048_V1_30_100_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_100_QA1), 0x04, NULL, HFILL } },
+ { &hf_048_V1_30_100_QC2, { "QC2", "asterix.048_V1_30_100_QC2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_100_QC2), 0x02, NULL, HFILL } },
+ { &hf_048_V1_30_100_QA2, { "QA2", "asterix.048_V1_30_100_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_100_QA2), 0x01, NULL, HFILL } },
+ { &hf_048_V1_30_100_QC4, { "QC4", "asterix.048_V1_30_100_QC4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_100_QC4), 0x80, NULL, HFILL } },
+ { &hf_048_V1_30_100_QA4, { "QA4", "asterix.048_V1_30_100_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_100_QA4), 0x40, NULL, HFILL } },
+ { &hf_048_V1_30_100_QB1, { "QB1", "asterix.048_V1_30_100_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_100_QB1), 0x20, NULL, HFILL } },
+ { &hf_048_V1_30_100_QD1, { "QD1", "asterix.048_V1_30_100_QD1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_100_QD1), 0x10, NULL, HFILL } },
+ { &hf_048_V1_30_100_QB2, { "QB2", "asterix.048_V1_30_100_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_100_QB2), 0x08, NULL, HFILL } },
+ { &hf_048_V1_30_100_QD2, { "QD2", "asterix.048_V1_30_100_QD2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_100_QD2), 0x04, NULL, HFILL } },
+ { &hf_048_V1_30_100_QB4, { "QB4", "asterix.048_V1_30_100_QB4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_100_QB4), 0x02, NULL, HFILL } },
+ { &hf_048_V1_30_100_QD4, { "QD4", "asterix.048_V1_30_100_QD4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_100_QD4), 0x01, NULL, HFILL } },
+ { &hf_048_V1_30_110, { "110, Height Measured by a 3D Radar", "asterix.048_V1_30_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_110_3DH, { "3DH, 3D Height, in Binary Notation. Negative Values Are Expressed in Two's Complement, [ft]", "asterix.048_V1_30_110_3DH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_120, { "120, Radial Doppler Speed", "asterix.048_V1_30_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_120_CAL, { "CAL, Calculated Doppler Speed", "asterix.048_V1_30_120_CAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_120_CAL_D, { "D", "asterix.048_V1_30_120_CAL_D", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_120_CAL_D), 0x80, NULL, HFILL } },
+ { &hf_048_V1_30_120_CAL_CAL, { "CAL, Calculated Doppler Speed, Coded in Two's Complement, [m/s]", "asterix.048_V1_30_120_CAL_CAL", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_120_RDS, { "RDS, Raw Doppler Speed", "asterix.048_V1_30_120_RDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_120_RDS_DOP, { "DOP, Doppler Speed, [m/s]", "asterix.048_V1_30_120_RDS_DOP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_120_RDS_AMB, { "AMB, Ambiguity Range, [m/s]", "asterix.048_V1_30_120_RDS_AMB", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_120_RDS_FRQ, { "FRQ, Transmitter Frequency, [MHz]", "asterix.048_V1_30_120_RDS_FRQ", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_130, { "130, Radar Plot Characteristics", "asterix.048_V1_30_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_130_SRL, { "SRL, SSR Plot Runlength", "asterix.048_V1_30_130_SRL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_130_SRL_VALUE, { "SSR Plot Runlength, [°]", "asterix.048_V1_30_130_SRL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_130_SRR, { "SRR, Number of Received Replies for (M)SSR", "asterix.048_V1_30_130_SRR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_130_SRR_VALUE, { "Number of Received Replies for (M)SSR", "asterix.048_V1_30_130_SRR_VALUE", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_130_SAM, { "SAM, Amplitude of (M)SSR Reply", "asterix.048_V1_30_130_SAM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_130_SAM_VALUE, { "Amplitude of (M)SSR Reply, [dBm]", "asterix.048_V1_30_130_SAM_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_130_PRL, { "PRL, Primary Plot Runlength", "asterix.048_V1_30_130_PRL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_130_PRL_VALUE, { "Primary Plot Runlength, [°]", "asterix.048_V1_30_130_PRL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_130_PAM, { "PAM, Amplitude of Primary Plot", "asterix.048_V1_30_130_PAM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_130_PAM_VALUE, { "Amplitude of Primary Plot, [dBm]", "asterix.048_V1_30_130_PAM_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_130_RPD, { "RPD, Difference in Range Between PSR and SSR Plot", "asterix.048_V1_30_130_RPD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_130_RPD_VALUE, { "Difference in Range Between PSR and SSR Plot, [NM]", "asterix.048_V1_30_130_RPD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_130_APD, { "APD, Difference in Azimuth Between PSR and SSR Plot", "asterix.048_V1_30_130_APD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_130_APD_VALUE, { "Difference in Azimuth Between PSR and SSR Plot, [°]", "asterix.048_V1_30_130_APD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_140, { "140, Time of Day", "asterix.048_V1_30_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_140_VALUE, { "Time of Day, [s]", "asterix.048_V1_30_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_161, { "161, Track Number", "asterix.048_V1_30_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_161_TRN, { "TRN, Track Number", "asterix.048_V1_30_161_TRN", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_V1_30_170, { "170, Track Status", "asterix.048_V1_30_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_170_CNF, { "CNF, Confirmed Vs. Tentative Track", "asterix.048_V1_30_170_CNF", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_170_CNF), 0x80, NULL, HFILL } },
+ { &hf_048_V1_30_170_RAD, { "RAD, Type of Sensor(s) Maintaining Track", "asterix.048_V1_30_170_RAD", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_170_RAD), 0x60, NULL, HFILL } },
+ { &hf_048_V1_30_170_DOU, { "DOU, Signals Level of Confidence in Plot to Track Association Process", "asterix.048_V1_30_170_DOU", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_170_DOU), 0x10, NULL, HFILL } },
+ { &hf_048_V1_30_170_MAH, { "MAH, Manoeuvre Detection in Horizontal Sense", "asterix.048_V1_30_170_MAH", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_170_MAH), 0x08, NULL, HFILL } },
+ { &hf_048_V1_30_170_CDM, { "CDM, Climbing / Descending Mode", "asterix.048_V1_30_170_CDM", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_170_CDM), 0x06, NULL, HFILL } },
+ { &hf_048_V1_30_170_TRE, { "TRE, Signal for End_of_Track", "asterix.048_V1_30_170_TRE", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_170_TRE), 0x80, NULL, HFILL } },
+ { &hf_048_V1_30_170_GHO, { "GHO, Ghost Vs. True Target", "asterix.048_V1_30_170_GHO", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_170_GHO), 0x40, NULL, HFILL } },
+ { &hf_048_V1_30_170_SUP, { "SUP, Track Maintained with Track Information from Neighbouring Node B on the Cluster, or Network", "asterix.048_V1_30_170_SUP", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_170_SUP), 0x20, NULL, HFILL } },
+ { &hf_048_V1_30_170_TCC, { "TCC, Type of Plot Coordinate Transformation Mechanism:", "asterix.048_V1_30_170_TCC", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_170_TCC), 0x10, NULL, HFILL } },
+ { &hf_048_V1_30_200, { "200, Calculated Track Velocity in Polar Co-ordinates", "asterix.048_V1_30_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_200_GSP, { "GSP, Calculated Groundspeed, [NM/s]", "asterix.048_V1_30_200_GSP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_200_HDG, { "HDG, Calculated Heading, [°]", "asterix.048_V1_30_200_HDG", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_210, { "210, Track Quality", "asterix.048_V1_30_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_210_SIGX, { "SIGX, Sigma (X)) Standard Deviation on the Horizontal Axis of the Local Grid System, [NM]", "asterix.048_V1_30_210_SIGX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_210_SIGY, { "SIGY, Sigma (Y)) Standard Deviation on the Vertical Axis of the Local Grid System, [NM]", "asterix.048_V1_30_210_SIGY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_210_SIGV, { "SIGV, Sigma (V)) Standard Deviation on the Groundspeed Within the Local Grid System, [NM/s]", "asterix.048_V1_30_210_SIGV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_210_SIGH, { "SIGH, Sigma (H)) Standard Deviation on the Heading Within the Local Grid System, [°]", "asterix.048_V1_30_210_SIGH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_220, { "220, Aircraft Address", "asterix.048_V1_30_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_220_VALUE, { "Aircraft Address", "asterix.048_V1_30_220_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_230, { "230, Communications/ACAS Capability and Flight Status", "asterix.048_V1_30_230", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_230_COM, { "COM, Communications Capability of the Transponder", "asterix.048_V1_30_230_COM", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_230_COM), 0xe0, NULL, HFILL } },
+ { &hf_048_V1_30_230_STAT, { "STAT, Flight Status", "asterix.048_V1_30_230_STAT", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_230_STAT), 0x1c, NULL, HFILL } },
+ { &hf_048_V1_30_230_SI, { "SI, SI/II Transponder Capability", "asterix.048_V1_30_230_SI", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_230_SI), 0x02, NULL, HFILL } },
+ { &hf_048_V1_30_230_MSSC, { "MSSC, Mode-S Specific Service Capability", "asterix.048_V1_30_230_MSSC", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_230_MSSC), 0x80, NULL, HFILL } },
+ { &hf_048_V1_30_230_ARC, { "ARC, Altitude Reporting Capability", "asterix.048_V1_30_230_ARC", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_230_ARC), 0x40, NULL, HFILL } },
+ { &hf_048_V1_30_230_AIC, { "AIC, Aircraft Identification Capability", "asterix.048_V1_30_230_AIC", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_30_230_AIC), 0x20, NULL, HFILL } },
+ { &hf_048_V1_30_230_B1A, { "B1A, BDS 1,0 Bit 16", "asterix.048_V1_30_230_B1A", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_048_V1_30_230_B1B, { "B1B, BDS 1,0 Bits 37/40", "asterix.048_V1_30_230_B1B", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_048_V1_30_240, { "240, Aircraft Identification", "asterix.048_V1_30_240", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_240_VALUE, { "Aircraft Identification", "asterix.048_V1_30_240_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_250, { "250, BDS Register Data", "asterix.048_V1_30_250", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_250_MBDATA, { "MBDATA, Mode S Comm B Message Data", "asterix.048_V1_30_250_MBDATA", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_250_BDS1, { "BDS1, Comm B Data Buffer Store 1 Address", "asterix.048_V1_30_250_BDS1", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_048_V1_30_250_BDS2, { "BDS2, Comm B Data Buffer Store 2 Address", "asterix.048_V1_30_250_BDS2", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_048_V1_30_260, { "260, ACAS Resolution Advisory Report", "asterix.048_V1_30_260", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_260_VALUE, { "ACAS Resolution Advisory Report", "asterix.048_V1_30_260_VALUE", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_RE, { "RE, Reserved Expansion Field", "asterix.048_V1_30_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_30_SP, { "SP, Special Purpose Field", "asterix.048_V1_30_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_010, { "010, Data Source Identifier", "asterix.048_V1_31_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_010_SAC, { "SAC, System Area Code", "asterix.048_V1_31_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_010_SIC, { "SIC, System Identification Code", "asterix.048_V1_31_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_020, { "020, Target Report Descriptor", "asterix.048_V1_31_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_020_TYP, { "TYP", "asterix.048_V1_31_020_TYP", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_020_TYP), 0xe0, NULL, HFILL } },
+ { &hf_048_V1_31_020_SIM, { "SIM", "asterix.048_V1_31_020_SIM", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_020_SIM), 0x10, NULL, HFILL } },
+ { &hf_048_V1_31_020_RDP, { "RDP", "asterix.048_V1_31_020_RDP", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_020_RDP), 0x08, NULL, HFILL } },
+ { &hf_048_V1_31_020_SPI, { "SPI", "asterix.048_V1_31_020_SPI", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_020_SPI), 0x04, NULL, HFILL } },
+ { &hf_048_V1_31_020_RAB, { "RAB", "asterix.048_V1_31_020_RAB", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_020_RAB), 0x02, NULL, HFILL } },
+ { &hf_048_V1_31_020_TST, { "TST", "asterix.048_V1_31_020_TST", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_020_TST), 0x80, NULL, HFILL } },
+ { &hf_048_V1_31_020_ERR, { "ERR", "asterix.048_V1_31_020_ERR", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_020_ERR), 0x40, NULL, HFILL } },
+ { &hf_048_V1_31_020_XPP, { "XPP", "asterix.048_V1_31_020_XPP", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_020_XPP), 0x20, NULL, HFILL } },
+ { &hf_048_V1_31_020_ME, { "ME", "asterix.048_V1_31_020_ME", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_020_ME), 0x10, NULL, HFILL } },
+ { &hf_048_V1_31_020_MI, { "MI", "asterix.048_V1_31_020_MI", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_020_MI), 0x08, NULL, HFILL } },
+ { &hf_048_V1_31_020_FOEFRI, { "FOEFRI", "asterix.048_V1_31_020_FOEFRI", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_020_FOEFRI), 0x06, NULL, HFILL } },
+ { &hf_048_V1_31_020_ADSB, { "ADSB, On-Site ADS-B Information", "asterix.048_V1_31_020_ADSB", FT_UINT8, BASE_DEC, NULL, 0xc0, NULL, HFILL } },
+ { &hf_048_V1_31_020_SCN, { "SCN, Surveillance Cluster Network Information", "asterix.048_V1_31_020_SCN", FT_UINT8, BASE_DEC, NULL, 0x30, NULL, HFILL } },
+ { &hf_048_V1_31_020_PAI, { "PAI, Passive Acquisition Interface Information", "asterix.048_V1_31_020_PAI", FT_UINT8, BASE_DEC, NULL, 0x0c, NULL, HFILL } },
+ { &hf_048_V1_31_030, { "030, Warning/Error Conditions and Target Classification", "asterix.048_V1_31_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_030_Subitem, { "Subitem, Subitem", "asterix.048_V1_31_030_Subitem", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_030_Subitem), 0xfe, NULL, HFILL } },
+ { &hf_048_V1_31_040, { "040, Measured Position in Polar Co-ordinates", "asterix.048_V1_31_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_040_RHO, { "RHO, [NM]", "asterix.048_V1_31_040_RHO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_040_THETA, { "THETA, [°]", "asterix.048_V1_31_040_THETA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_042, { "042, Calculated Position in Cartesian Co-ordinates", "asterix.048_V1_31_042", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_042_X, { "X, X-Component, [NM]", "asterix.048_V1_31_042_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_042_Y, { "Y, X-Component, [NM]", "asterix.048_V1_31_042_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_050, { "050, Mode-2 Code in Octal Representation", "asterix.048_V1_31_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_050_V, { "V", "asterix.048_V1_31_050_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_050_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_31_050_G, { "G", "asterix.048_V1_31_050_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_050_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_31_050_L, { "L", "asterix.048_V1_31_050_L", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_050_L), 0x20, NULL, HFILL } },
+ { &hf_048_V1_31_050_MODE2, { "MODE2, Mode-2 Code in Octal Representation", "asterix.048_V1_31_050_MODE2", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_V1_31_055, { "055, Mode-1 Code in Octal Representation", "asterix.048_V1_31_055", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_055_V, { "V", "asterix.048_V1_31_055_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_055_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_31_055_G, { "G", "asterix.048_V1_31_055_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_055_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_31_055_L, { "L", "asterix.048_V1_31_055_L", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_055_L), 0x20, NULL, HFILL } },
+ { &hf_048_V1_31_055_MODE1, { "MODE1, Mode-1 Code", "asterix.048_V1_31_055_MODE1", FT_UINT8, BASE_DEC, NULL, 0x1f, NULL, HFILL } },
+ { &hf_048_V1_31_060, { "060, Mode-2 Code Confidence Indicator", "asterix.048_V1_31_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_060_QA4, { "QA4", "asterix.048_V1_31_060_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_060_QA4), 0x08, NULL, HFILL } },
+ { &hf_048_V1_31_060_QA2, { "QA2", "asterix.048_V1_31_060_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_060_QA2), 0x04, NULL, HFILL } },
+ { &hf_048_V1_31_060_QA1, { "QA1", "asterix.048_V1_31_060_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_060_QA1), 0x02, NULL, HFILL } },
+ { &hf_048_V1_31_060_QB4, { "QB4", "asterix.048_V1_31_060_QB4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_060_QB4), 0x01, NULL, HFILL } },
+ { &hf_048_V1_31_060_QB2, { "QB2", "asterix.048_V1_31_060_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_060_QB2), 0x80, NULL, HFILL } },
+ { &hf_048_V1_31_060_QB1, { "QB1", "asterix.048_V1_31_060_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_060_QB1), 0x40, NULL, HFILL } },
+ { &hf_048_V1_31_060_QC4, { "QC4", "asterix.048_V1_31_060_QC4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_060_QC4), 0x20, NULL, HFILL } },
+ { &hf_048_V1_31_060_QC2, { "QC2", "asterix.048_V1_31_060_QC2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_060_QC2), 0x10, NULL, HFILL } },
+ { &hf_048_V1_31_060_QC1, { "QC1", "asterix.048_V1_31_060_QC1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_060_QC1), 0x08, NULL, HFILL } },
+ { &hf_048_V1_31_060_QD4, { "QD4", "asterix.048_V1_31_060_QD4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_060_QD4), 0x04, NULL, HFILL } },
+ { &hf_048_V1_31_060_QD2, { "QD2", "asterix.048_V1_31_060_QD2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_060_QD2), 0x02, NULL, HFILL } },
+ { &hf_048_V1_31_060_QD1, { "QD1", "asterix.048_V1_31_060_QD1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_060_QD1), 0x01, NULL, HFILL } },
+ { &hf_048_V1_31_065, { "065, Mode-1 Code Confidence Indicator", "asterix.048_V1_31_065", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_065_QA4, { "QA4", "asterix.048_V1_31_065_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_065_QA4), 0x10, NULL, HFILL } },
+ { &hf_048_V1_31_065_QA2, { "QA2", "asterix.048_V1_31_065_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_065_QA2), 0x08, NULL, HFILL } },
+ { &hf_048_V1_31_065_QA1, { "QA1", "asterix.048_V1_31_065_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_065_QA1), 0x04, NULL, HFILL } },
+ { &hf_048_V1_31_065_QB2, { "QB2", "asterix.048_V1_31_065_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_065_QB2), 0x02, NULL, HFILL } },
+ { &hf_048_V1_31_065_QB1, { "QB1", "asterix.048_V1_31_065_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_065_QB1), 0x01, NULL, HFILL } },
+ { &hf_048_V1_31_070, { "070, Mode-3/A Code in Octal Representation", "asterix.048_V1_31_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_070_V, { "V", "asterix.048_V1_31_070_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_070_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_31_070_G, { "G", "asterix.048_V1_31_070_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_070_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_31_070_L, { "L", "asterix.048_V1_31_070_L", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_070_L), 0x20, NULL, HFILL } },
+ { &hf_048_V1_31_070_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.048_V1_31_070_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_V1_31_080, { "080, Mode-3/A Code Confidence Indicator", "asterix.048_V1_31_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_080_QA4, { "QA4", "asterix.048_V1_31_080_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_080_QA4), 0x08, NULL, HFILL } },
+ { &hf_048_V1_31_080_QA2, { "QA2", "asterix.048_V1_31_080_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_080_QA2), 0x04, NULL, HFILL } },
+ { &hf_048_V1_31_080_QA1, { "QA1", "asterix.048_V1_31_080_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_080_QA1), 0x02, NULL, HFILL } },
+ { &hf_048_V1_31_080_QB4, { "QB4", "asterix.048_V1_31_080_QB4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_080_QB4), 0x01, NULL, HFILL } },
+ { &hf_048_V1_31_080_QB2, { "QB2", "asterix.048_V1_31_080_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_080_QB2), 0x80, NULL, HFILL } },
+ { &hf_048_V1_31_080_QB1, { "QB1", "asterix.048_V1_31_080_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_080_QB1), 0x40, NULL, HFILL } },
+ { &hf_048_V1_31_080_QC4, { "QC4", "asterix.048_V1_31_080_QC4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_080_QC4), 0x20, NULL, HFILL } },
+ { &hf_048_V1_31_080_QC2, { "QC2", "asterix.048_V1_31_080_QC2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_080_QC2), 0x10, NULL, HFILL } },
+ { &hf_048_V1_31_080_QC1, { "QC1", "asterix.048_V1_31_080_QC1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_080_QC1), 0x08, NULL, HFILL } },
+ { &hf_048_V1_31_080_QD4, { "QD4", "asterix.048_V1_31_080_QD4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_080_QD4), 0x04, NULL, HFILL } },
+ { &hf_048_V1_31_080_QD2, { "QD2", "asterix.048_V1_31_080_QD2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_080_QD2), 0x02, NULL, HFILL } },
+ { &hf_048_V1_31_080_QD1, { "QD1", "asterix.048_V1_31_080_QD1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_080_QD1), 0x01, NULL, HFILL } },
+ { &hf_048_V1_31_090, { "090, Flight Level in Binary Representation", "asterix.048_V1_31_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_090_V, { "V", "asterix.048_V1_31_090_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_090_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_31_090_G, { "G", "asterix.048_V1_31_090_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_090_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_31_090_FL, { "FL, [FL]", "asterix.048_V1_31_090_FL", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_100, { "100, Mode-C Code and Code Confidence Indicator", "asterix.048_V1_31_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_100_V, { "V", "asterix.048_V1_31_100_V", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_100_V), 0x80, NULL, HFILL } },
+ { &hf_048_V1_31_100_G, { "G", "asterix.048_V1_31_100_G", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_100_G), 0x40, NULL, HFILL } },
+ { &hf_048_V1_31_100_MODEC, { "MODEC, Mode-C Reply in Gray Notation", "asterix.048_V1_31_100_MODEC", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_V1_31_100_QC1, { "QC1", "asterix.048_V1_31_100_QC1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_100_QC1), 0x08, NULL, HFILL } },
+ { &hf_048_V1_31_100_QA1, { "QA1", "asterix.048_V1_31_100_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_100_QA1), 0x04, NULL, HFILL } },
+ { &hf_048_V1_31_100_QC2, { "QC2", "asterix.048_V1_31_100_QC2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_100_QC2), 0x02, NULL, HFILL } },
+ { &hf_048_V1_31_100_QA2, { "QA2", "asterix.048_V1_31_100_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_100_QA2), 0x01, NULL, HFILL } },
+ { &hf_048_V1_31_100_QC4, { "QC4", "asterix.048_V1_31_100_QC4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_100_QC4), 0x80, NULL, HFILL } },
+ { &hf_048_V1_31_100_QA4, { "QA4", "asterix.048_V1_31_100_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_100_QA4), 0x40, NULL, HFILL } },
+ { &hf_048_V1_31_100_QB1, { "QB1", "asterix.048_V1_31_100_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_100_QB1), 0x20, NULL, HFILL } },
+ { &hf_048_V1_31_100_QD1, { "QD1", "asterix.048_V1_31_100_QD1", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_100_QD1), 0x10, NULL, HFILL } },
+ { &hf_048_V1_31_100_QB2, { "QB2", "asterix.048_V1_31_100_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_100_QB2), 0x08, NULL, HFILL } },
+ { &hf_048_V1_31_100_QD2, { "QD2", "asterix.048_V1_31_100_QD2", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_100_QD2), 0x04, NULL, HFILL } },
+ { &hf_048_V1_31_100_QB4, { "QB4", "asterix.048_V1_31_100_QB4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_100_QB4), 0x02, NULL, HFILL } },
+ { &hf_048_V1_31_100_QD4, { "QD4", "asterix.048_V1_31_100_QD4", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_100_QD4), 0x01, NULL, HFILL } },
+ { &hf_048_V1_31_110, { "110, Height Measured by a 3D Radar", "asterix.048_V1_31_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_110_3DH, { "3DH, 3D Height, in Binary Notation. Negative Values Are Expressed in Two's Complement, [ft]", "asterix.048_V1_31_110_3DH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_120, { "120, Radial Doppler Speed", "asterix.048_V1_31_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_120_CAL, { "CAL, Calculated Doppler Speed", "asterix.048_V1_31_120_CAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_120_CAL_D, { "D", "asterix.048_V1_31_120_CAL_D", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_120_CAL_D), 0x80, NULL, HFILL } },
+ { &hf_048_V1_31_120_CAL_CAL, { "CAL, Calculated Doppler Speed, Coded in Two's Complement, [m/s]", "asterix.048_V1_31_120_CAL_CAL", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_120_RDS, { "RDS, Raw Doppler Speed", "asterix.048_V1_31_120_RDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_120_RDS_DOP, { "DOP, Doppler Speed, [m/s]", "asterix.048_V1_31_120_RDS_DOP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_120_RDS_AMB, { "AMB, Ambiguity Range, [m/s]", "asterix.048_V1_31_120_RDS_AMB", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_120_RDS_FRQ, { "FRQ, Transmitter Frequency, [MHz]", "asterix.048_V1_31_120_RDS_FRQ", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_130, { "130, Radar Plot Characteristics", "asterix.048_V1_31_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_130_SRL, { "SRL, SSR Plot Runlength", "asterix.048_V1_31_130_SRL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_130_SRL_VALUE, { "SSR Plot Runlength, [°]", "asterix.048_V1_31_130_SRL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_130_SRR, { "SRR, Number of Received Replies for (M)SSR", "asterix.048_V1_31_130_SRR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_130_SRR_VALUE, { "Number of Received Replies for (M)SSR", "asterix.048_V1_31_130_SRR_VALUE", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_130_SAM, { "SAM, Amplitude of (M)SSR Reply", "asterix.048_V1_31_130_SAM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_130_SAM_VALUE, { "Amplitude of (M)SSR Reply, [dBm]", "asterix.048_V1_31_130_SAM_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_130_PRL, { "PRL, Primary Plot Runlength", "asterix.048_V1_31_130_PRL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_130_PRL_VALUE, { "Primary Plot Runlength, [°]", "asterix.048_V1_31_130_PRL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_130_PAM, { "PAM, Amplitude of Primary Plot", "asterix.048_V1_31_130_PAM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_130_PAM_VALUE, { "Amplitude of Primary Plot, [dBm]", "asterix.048_V1_31_130_PAM_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_130_RPD, { "RPD, Difference in Range Between PSR and SSR Plot", "asterix.048_V1_31_130_RPD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_130_RPD_VALUE, { "Difference in Range Between PSR and SSR Plot, [NM]", "asterix.048_V1_31_130_RPD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_130_APD, { "APD, Difference in Azimuth Between PSR and SSR Plot", "asterix.048_V1_31_130_APD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_130_APD_VALUE, { "Difference in Azimuth Between PSR and SSR Plot, [°]", "asterix.048_V1_31_130_APD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_140, { "140, Time of Day", "asterix.048_V1_31_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_140_VALUE, { "Time of Day, [s]", "asterix.048_V1_31_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_161, { "161, Track Number", "asterix.048_V1_31_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_161_TRN, { "TRN, Track Number", "asterix.048_V1_31_161_TRN", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_V1_31_170, { "170, Track Status", "asterix.048_V1_31_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_170_CNF, { "CNF, Confirmed Vs. Tentative Track", "asterix.048_V1_31_170_CNF", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_170_CNF), 0x80, NULL, HFILL } },
+ { &hf_048_V1_31_170_RAD, { "RAD, Type of Sensor(s) Maintaining Track", "asterix.048_V1_31_170_RAD", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_170_RAD), 0x60, NULL, HFILL } },
+ { &hf_048_V1_31_170_DOU, { "DOU, Signals Level of Confidence in Plot to Track Association Process", "asterix.048_V1_31_170_DOU", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_170_DOU), 0x10, NULL, HFILL } },
+ { &hf_048_V1_31_170_MAH, { "MAH, Manoeuvre Detection in Horizontal Sense", "asterix.048_V1_31_170_MAH", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_170_MAH), 0x08, NULL, HFILL } },
+ { &hf_048_V1_31_170_CDM, { "CDM, Climbing / Descending Mode", "asterix.048_V1_31_170_CDM", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_170_CDM), 0x06, NULL, HFILL } },
+ { &hf_048_V1_31_170_TRE, { "TRE, Signal for End_of_Track", "asterix.048_V1_31_170_TRE", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_170_TRE), 0x80, NULL, HFILL } },
+ { &hf_048_V1_31_170_GHO, { "GHO, Ghost Vs. True Target", "asterix.048_V1_31_170_GHO", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_170_GHO), 0x40, NULL, HFILL } },
+ { &hf_048_V1_31_170_SUP, { "SUP, Track Maintained with Track Information from Neighbouring Node B on the Cluster, or Network", "asterix.048_V1_31_170_SUP", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_170_SUP), 0x20, NULL, HFILL } },
+ { &hf_048_V1_31_170_TCC, { "TCC, Type of Plot Coordinate Transformation Mechanism:", "asterix.048_V1_31_170_TCC", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_170_TCC), 0x10, NULL, HFILL } },
+ { &hf_048_V1_31_200, { "200, Calculated Track Velocity in Polar Co-ordinates", "asterix.048_V1_31_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_200_GSP, { "GSP, Calculated Groundspeed, [NM/s]", "asterix.048_V1_31_200_GSP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_200_HDG, { "HDG, Calculated Heading, [°]", "asterix.048_V1_31_200_HDG", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_210, { "210, Track Quality", "asterix.048_V1_31_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_210_SIGX, { "SIGX, Sigma (X)) Standard Deviation on the Horizontal Axis of the Local Grid System, [NM]", "asterix.048_V1_31_210_SIGX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_210_SIGY, { "SIGY, Sigma (Y)) Standard Deviation on the Vertical Axis of the Local Grid System, [NM]", "asterix.048_V1_31_210_SIGY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_210_SIGV, { "SIGV, Sigma (V)) Standard Deviation on the Groundspeed Within the Local Grid System, [NM/s]", "asterix.048_V1_31_210_SIGV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_210_SIGH, { "SIGH, Sigma (H)) Standard Deviation on the Heading Within the Local Grid System, [°]", "asterix.048_V1_31_210_SIGH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_220, { "220, Aircraft Address", "asterix.048_V1_31_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_220_VALUE, { "Aircraft Address", "asterix.048_V1_31_220_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_230, { "230, Communications/ACAS Capability and Flight Status", "asterix.048_V1_31_230", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_230_COM, { "COM, Communications Capability of the Transponder", "asterix.048_V1_31_230_COM", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_230_COM), 0xe0, NULL, HFILL } },
+ { &hf_048_V1_31_230_STAT, { "STAT, Flight Status", "asterix.048_V1_31_230_STAT", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_230_STAT), 0x1c, NULL, HFILL } },
+ { &hf_048_V1_31_230_SI, { "SI, SI/II Transponder Capability", "asterix.048_V1_31_230_SI", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_230_SI), 0x02, NULL, HFILL } },
+ { &hf_048_V1_31_230_MSSC, { "MSSC, Mode-S Specific Service Capability", "asterix.048_V1_31_230_MSSC", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_230_MSSC), 0x80, NULL, HFILL } },
+ { &hf_048_V1_31_230_ARC, { "ARC, Altitude Reporting Capability", "asterix.048_V1_31_230_ARC", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_230_ARC), 0x40, NULL, HFILL } },
+ { &hf_048_V1_31_230_AIC, { "AIC, Aircraft Identification Capability", "asterix.048_V1_31_230_AIC", FT_UINT8, BASE_DEC, VALS (valstr_048_V1_31_230_AIC), 0x20, NULL, HFILL } },
+ { &hf_048_V1_31_230_B1A, { "B1A, BDS 1,0 Bit 16", "asterix.048_V1_31_230_B1A", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_048_V1_31_230_B1B, { "B1B, BDS 1,0 Bits 37/40", "asterix.048_V1_31_230_B1B", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_048_V1_31_240, { "240, Aircraft Identification", "asterix.048_V1_31_240", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_240_VALUE, { "Aircraft Identification", "asterix.048_V1_31_240_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_250, { "250, BDS Register Data", "asterix.048_V1_31_250", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_250_MBDATA, { "MBDATA, Mode S Comm B Message Data", "asterix.048_V1_31_250_MBDATA", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_250_BDS1, { "BDS1, Comm B Data Buffer Store 1 Address", "asterix.048_V1_31_250_BDS1", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_048_V1_31_250_BDS2, { "BDS2, Comm B Data Buffer Store 2 Address", "asterix.048_V1_31_250_BDS2", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_048_V1_31_260, { "260, ACAS Resolution Advisory Report", "asterix.048_V1_31_260", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_260_VALUE, { "ACAS Resolution Advisory Report", "asterix.048_V1_31_260_VALUE", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_RE, { "RE, Reserved Expansion Field", "asterix.048_V1_31_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_V1_31_SP, { "SP, Special Purpose Field", "asterix.048_V1_31_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_010, { "010, Data Source Identifier", "asterix.048_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_010_SAC, { "SAC, System Area Code", "asterix.048_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_010_SIC, { "SIC, System Identification Code", "asterix.048_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_020, { "020, Target Report Descriptor", "asterix.048_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_020_TYP, { "TYP", "asterix.048_020_TYP", FT_UINT8, BASE_DEC, VALS (valstr_048_020_TYP), 0xe0, NULL, HFILL } },
+ { &hf_048_020_SIM, { "SIM", "asterix.048_020_SIM", FT_UINT8, BASE_DEC, VALS (valstr_048_020_SIM), 0x10, NULL, HFILL } },
+ { &hf_048_020_RDP, { "RDP", "asterix.048_020_RDP", FT_UINT8, BASE_DEC, VALS (valstr_048_020_RDP), 0x08, NULL, HFILL } },
+ { &hf_048_020_SPI, { "SPI", "asterix.048_020_SPI", FT_UINT8, BASE_DEC, VALS (valstr_048_020_SPI), 0x04, NULL, HFILL } },
+ { &hf_048_020_RAB, { "RAB", "asterix.048_020_RAB", FT_UINT8, BASE_DEC, VALS (valstr_048_020_RAB), 0x02, NULL, HFILL } },
+ { &hf_048_020_TST, { "TST", "asterix.048_020_TST", FT_UINT8, BASE_DEC, VALS (valstr_048_020_TST), 0x80, NULL, HFILL } },
+ { &hf_048_020_ERR, { "ERR", "asterix.048_020_ERR", FT_UINT8, BASE_DEC, VALS (valstr_048_020_ERR), 0x40, NULL, HFILL } },
+ { &hf_048_020_XPP, { "XPP", "asterix.048_020_XPP", FT_UINT8, BASE_DEC, VALS (valstr_048_020_XPP), 0x20, NULL, HFILL } },
+ { &hf_048_020_ME, { "ME", "asterix.048_020_ME", FT_UINT8, BASE_DEC, VALS (valstr_048_020_ME), 0x10, NULL, HFILL } },
+ { &hf_048_020_MI, { "MI", "asterix.048_020_MI", FT_UINT8, BASE_DEC, VALS (valstr_048_020_MI), 0x08, NULL, HFILL } },
+ { &hf_048_020_FOEFRI, { "FOEFRI", "asterix.048_020_FOEFRI", FT_UINT8, BASE_DEC, VALS (valstr_048_020_FOEFRI), 0x06, NULL, HFILL } },
+ { &hf_048_020_ADSB, { "ADSB, On-Site ADS-B Information", "asterix.048_020_ADSB", FT_UINT8, BASE_DEC, NULL, 0xc0, NULL, HFILL } },
+ { &hf_048_020_SCN, { "SCN, Surveillance Cluster Network Information", "asterix.048_020_SCN", FT_UINT8, BASE_DEC, NULL, 0x30, NULL, HFILL } },
+ { &hf_048_020_PAI, { "PAI, Passive Acquisition Interface Information", "asterix.048_020_PAI", FT_UINT8, BASE_DEC, NULL, 0x0c, NULL, HFILL } },
+ { &hf_048_030, { "030, Warning/Error Conditions and Target Classification", "asterix.048_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_030_Subitem, { "Subitem, Subitem", "asterix.048_030_Subitem", FT_UINT8, BASE_DEC, VALS (valstr_048_030_Subitem), 0xfe, NULL, HFILL } },
+ { &hf_048_040, { "040, Measured Position in Polar Co-ordinates", "asterix.048_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_040_RHO, { "RHO, [NM]", "asterix.048_040_RHO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_040_THETA, { "THETA, [°]", "asterix.048_040_THETA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_042, { "042, Calculated Position in Cartesian Co-ordinates", "asterix.048_042", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_042_X, { "X, X-Component, [NM]", "asterix.048_042_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_042_Y, { "Y, X-Component, [NM]", "asterix.048_042_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_050, { "050, Mode-2 Code in Octal Representation", "asterix.048_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_050_V, { "V", "asterix.048_050_V", FT_UINT8, BASE_DEC, VALS (valstr_048_050_V), 0x80, NULL, HFILL } },
+ { &hf_048_050_G, { "G", "asterix.048_050_G", FT_UINT8, BASE_DEC, VALS (valstr_048_050_G), 0x40, NULL, HFILL } },
+ { &hf_048_050_L, { "L", "asterix.048_050_L", FT_UINT8, BASE_DEC, VALS (valstr_048_050_L), 0x20, NULL, HFILL } },
+ { &hf_048_050_MODE2, { "MODE2, Mode-2 Code in Octal Representation", "asterix.048_050_MODE2", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_055, { "055, Mode-1 Code in Octal Representation", "asterix.048_055", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_055_V, { "V", "asterix.048_055_V", FT_UINT8, BASE_DEC, VALS (valstr_048_055_V), 0x80, NULL, HFILL } },
+ { &hf_048_055_G, { "G", "asterix.048_055_G", FT_UINT8, BASE_DEC, VALS (valstr_048_055_G), 0x40, NULL, HFILL } },
+ { &hf_048_055_L, { "L", "asterix.048_055_L", FT_UINT8, BASE_DEC, VALS (valstr_048_055_L), 0x20, NULL, HFILL } },
+ { &hf_048_055_MODE1, { "MODE1, Mode-1 Code", "asterix.048_055_MODE1", FT_UINT8, BASE_DEC, NULL, 0x1f, NULL, HFILL } },
+ { &hf_048_060, { "060, Mode-2 Code Confidence Indicator", "asterix.048_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_060_QA4, { "QA4", "asterix.048_060_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_060_QA4), 0x08, NULL, HFILL } },
+ { &hf_048_060_QA2, { "QA2", "asterix.048_060_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_060_QA2), 0x04, NULL, HFILL } },
+ { &hf_048_060_QA1, { "QA1", "asterix.048_060_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_060_QA1), 0x02, NULL, HFILL } },
+ { &hf_048_060_QB4, { "QB4", "asterix.048_060_QB4", FT_UINT8, BASE_DEC, VALS (valstr_048_060_QB4), 0x01, NULL, HFILL } },
+ { &hf_048_060_QB2, { "QB2", "asterix.048_060_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_060_QB2), 0x80, NULL, HFILL } },
+ { &hf_048_060_QB1, { "QB1", "asterix.048_060_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_060_QB1), 0x40, NULL, HFILL } },
+ { &hf_048_060_QC4, { "QC4", "asterix.048_060_QC4", FT_UINT8, BASE_DEC, VALS (valstr_048_060_QC4), 0x20, NULL, HFILL } },
+ { &hf_048_060_QC2, { "QC2", "asterix.048_060_QC2", FT_UINT8, BASE_DEC, VALS (valstr_048_060_QC2), 0x10, NULL, HFILL } },
+ { &hf_048_060_QC1, { "QC1", "asterix.048_060_QC1", FT_UINT8, BASE_DEC, VALS (valstr_048_060_QC1), 0x08, NULL, HFILL } },
+ { &hf_048_060_QD4, { "QD4", "asterix.048_060_QD4", FT_UINT8, BASE_DEC, VALS (valstr_048_060_QD4), 0x04, NULL, HFILL } },
+ { &hf_048_060_QD2, { "QD2", "asterix.048_060_QD2", FT_UINT8, BASE_DEC, VALS (valstr_048_060_QD2), 0x02, NULL, HFILL } },
+ { &hf_048_060_QD1, { "QD1", "asterix.048_060_QD1", FT_UINT8, BASE_DEC, VALS (valstr_048_060_QD1), 0x01, NULL, HFILL } },
+ { &hf_048_065, { "065, Mode-1 Code Confidence Indicator", "asterix.048_065", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_065_QA4, { "QA4", "asterix.048_065_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_065_QA4), 0x10, NULL, HFILL } },
+ { &hf_048_065_QA2, { "QA2", "asterix.048_065_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_065_QA2), 0x08, NULL, HFILL } },
+ { &hf_048_065_QA1, { "QA1", "asterix.048_065_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_065_QA1), 0x04, NULL, HFILL } },
+ { &hf_048_065_QB2, { "QB2", "asterix.048_065_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_065_QB2), 0x02, NULL, HFILL } },
+ { &hf_048_065_QB1, { "QB1", "asterix.048_065_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_065_QB1), 0x01, NULL, HFILL } },
+ { &hf_048_070, { "070, Mode-3/A Code in Octal Representation", "asterix.048_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_070_V, { "V", "asterix.048_070_V", FT_UINT8, BASE_DEC, VALS (valstr_048_070_V), 0x80, NULL, HFILL } },
+ { &hf_048_070_G, { "G", "asterix.048_070_G", FT_UINT8, BASE_DEC, VALS (valstr_048_070_G), 0x40, NULL, HFILL } },
+ { &hf_048_070_L, { "L", "asterix.048_070_L", FT_UINT8, BASE_DEC, VALS (valstr_048_070_L), 0x20, NULL, HFILL } },
+ { &hf_048_070_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.048_070_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_080, { "080, Mode-3/A Code Confidence Indicator", "asterix.048_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_080_QA4, { "QA4", "asterix.048_080_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_080_QA4), 0x08, NULL, HFILL } },
+ { &hf_048_080_QA2, { "QA2", "asterix.048_080_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_080_QA2), 0x04, NULL, HFILL } },
+ { &hf_048_080_QA1, { "QA1", "asterix.048_080_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_080_QA1), 0x02, NULL, HFILL } },
+ { &hf_048_080_QB4, { "QB4", "asterix.048_080_QB4", FT_UINT8, BASE_DEC, VALS (valstr_048_080_QB4), 0x01, NULL, HFILL } },
+ { &hf_048_080_QB2, { "QB2", "asterix.048_080_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_080_QB2), 0x80, NULL, HFILL } },
+ { &hf_048_080_QB1, { "QB1", "asterix.048_080_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_080_QB1), 0x40, NULL, HFILL } },
+ { &hf_048_080_QC4, { "QC4", "asterix.048_080_QC4", FT_UINT8, BASE_DEC, VALS (valstr_048_080_QC4), 0x20, NULL, HFILL } },
+ { &hf_048_080_QC2, { "QC2", "asterix.048_080_QC2", FT_UINT8, BASE_DEC, VALS (valstr_048_080_QC2), 0x10, NULL, HFILL } },
+ { &hf_048_080_QC1, { "QC1", "asterix.048_080_QC1", FT_UINT8, BASE_DEC, VALS (valstr_048_080_QC1), 0x08, NULL, HFILL } },
+ { &hf_048_080_QD4, { "QD4", "asterix.048_080_QD4", FT_UINT8, BASE_DEC, VALS (valstr_048_080_QD4), 0x04, NULL, HFILL } },
+ { &hf_048_080_QD2, { "QD2", "asterix.048_080_QD2", FT_UINT8, BASE_DEC, VALS (valstr_048_080_QD2), 0x02, NULL, HFILL } },
+ { &hf_048_080_QD1, { "QD1", "asterix.048_080_QD1", FT_UINT8, BASE_DEC, VALS (valstr_048_080_QD1), 0x01, NULL, HFILL } },
+ { &hf_048_090, { "090, Flight Level in Binary Representation", "asterix.048_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_090_V, { "V", "asterix.048_090_V", FT_UINT8, BASE_DEC, VALS (valstr_048_090_V), 0x80, NULL, HFILL } },
+ { &hf_048_090_G, { "G", "asterix.048_090_G", FT_UINT8, BASE_DEC, VALS (valstr_048_090_G), 0x40, NULL, HFILL } },
+ { &hf_048_090_FL, { "FL, [FL]", "asterix.048_090_FL", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_100, { "100, Mode-C Code and Code Confidence Indicator", "asterix.048_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_100_V, { "V", "asterix.048_100_V", FT_UINT8, BASE_DEC, VALS (valstr_048_100_V), 0x80, NULL, HFILL } },
+ { &hf_048_100_G, { "G", "asterix.048_100_G", FT_UINT8, BASE_DEC, VALS (valstr_048_100_G), 0x40, NULL, HFILL } },
+ { &hf_048_100_MODEC, { "MODEC, Mode-C Reply in Gray Notation", "asterix.048_100_MODEC", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_100_QC1, { "QC1", "asterix.048_100_QC1", FT_UINT8, BASE_DEC, VALS (valstr_048_100_QC1), 0x08, NULL, HFILL } },
+ { &hf_048_100_QA1, { "QA1", "asterix.048_100_QA1", FT_UINT8, BASE_DEC, VALS (valstr_048_100_QA1), 0x04, NULL, HFILL } },
+ { &hf_048_100_QC2, { "QC2", "asterix.048_100_QC2", FT_UINT8, BASE_DEC, VALS (valstr_048_100_QC2), 0x02, NULL, HFILL } },
+ { &hf_048_100_QA2, { "QA2", "asterix.048_100_QA2", FT_UINT8, BASE_DEC, VALS (valstr_048_100_QA2), 0x01, NULL, HFILL } },
+ { &hf_048_100_QC4, { "QC4", "asterix.048_100_QC4", FT_UINT8, BASE_DEC, VALS (valstr_048_100_QC4), 0x80, NULL, HFILL } },
+ { &hf_048_100_QA4, { "QA4", "asterix.048_100_QA4", FT_UINT8, BASE_DEC, VALS (valstr_048_100_QA4), 0x40, NULL, HFILL } },
+ { &hf_048_100_QB1, { "QB1", "asterix.048_100_QB1", FT_UINT8, BASE_DEC, VALS (valstr_048_100_QB1), 0x20, NULL, HFILL } },
+ { &hf_048_100_QD1, { "QD1", "asterix.048_100_QD1", FT_UINT8, BASE_DEC, VALS (valstr_048_100_QD1), 0x10, NULL, HFILL } },
+ { &hf_048_100_QB2, { "QB2", "asterix.048_100_QB2", FT_UINT8, BASE_DEC, VALS (valstr_048_100_QB2), 0x08, NULL, HFILL } },
+ { &hf_048_100_QD2, { "QD2", "asterix.048_100_QD2", FT_UINT8, BASE_DEC, VALS (valstr_048_100_QD2), 0x04, NULL, HFILL } },
+ { &hf_048_100_QB4, { "QB4", "asterix.048_100_QB4", FT_UINT8, BASE_DEC, VALS (valstr_048_100_QB4), 0x02, NULL, HFILL } },
+ { &hf_048_100_QD4, { "QD4", "asterix.048_100_QD4", FT_UINT8, BASE_DEC, VALS (valstr_048_100_QD4), 0x01, NULL, HFILL } },
+ { &hf_048_110, { "110, Height Measured by a 3D Radar", "asterix.048_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_110_3DH, { "3DH, 3D Height, in Binary Notation. Negative Values Are Expressed in Two's Complement, [ft]", "asterix.048_110_3DH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_120, { "120, Radial Doppler Speed", "asterix.048_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_120_CAL, { "CAL, Calculated Doppler Speed", "asterix.048_120_CAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_120_CAL_D, { "D", "asterix.048_120_CAL_D", FT_UINT8, BASE_DEC, VALS (valstr_048_120_CAL_D), 0x80, NULL, HFILL } },
+ { &hf_048_120_CAL_CAL, { "CAL, Calculated Doppler Speed, Coded in Two's Complement, [m/s]", "asterix.048_120_CAL_CAL", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_120_RDS, { "RDS, Raw Doppler Speed", "asterix.048_120_RDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_120_RDS_DOP, { "DOP, Doppler Speed, [m/s]", "asterix.048_120_RDS_DOP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_120_RDS_AMB, { "AMB, Ambiguity Range, [m/s]", "asterix.048_120_RDS_AMB", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_120_RDS_FRQ, { "FRQ, Transmitter Frequency, [MHz]", "asterix.048_120_RDS_FRQ", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_130, { "130, Radar Plot Characteristics", "asterix.048_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_130_SRL, { "SRL, SSR Plot Runlength", "asterix.048_130_SRL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_130_SRL_VALUE, { "SSR Plot Runlength, [°]", "asterix.048_130_SRL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_130_SRR, { "SRR, Number of Received Replies for (M)SSR", "asterix.048_130_SRR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_130_SRR_VALUE, { "Number of Received Replies for (M)SSR", "asterix.048_130_SRR_VALUE", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_130_SAM, { "SAM, Amplitude of (M)SSR Reply", "asterix.048_130_SAM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_130_SAM_VALUE, { "Amplitude of (M)SSR Reply, [dBm]", "asterix.048_130_SAM_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_130_PRL, { "PRL, Primary Plot Runlength", "asterix.048_130_PRL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_130_PRL_VALUE, { "Primary Plot Runlength, [°]", "asterix.048_130_PRL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_130_PAM, { "PAM, Amplitude of Primary Plot", "asterix.048_130_PAM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_130_PAM_VALUE, { "Amplitude of Primary Plot, [dBm]", "asterix.048_130_PAM_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_130_RPD, { "RPD, Difference in Range Between PSR and SSR Plot", "asterix.048_130_RPD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_130_RPD_VALUE, { "Difference in Range Between PSR and SSR Plot, [NM]", "asterix.048_130_RPD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_130_APD, { "APD, Difference in Azimuth Between PSR and SSR Plot", "asterix.048_130_APD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_130_APD_VALUE, { "Difference in Azimuth Between PSR and SSR Plot, [°]", "asterix.048_130_APD_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_140, { "140, Time of Day", "asterix.048_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_140_VALUE, { "Time of Day, [s]", "asterix.048_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_161, { "161, Track Number", "asterix.048_161", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_161_TRN, { "TRN, Track Number", "asterix.048_161_TRN", FT_UINT16, BASE_DEC, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_048_170, { "170, Track Status", "asterix.048_170", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_170_CNF, { "CNF, Confirmed Vs. Tentative Track", "asterix.048_170_CNF", FT_UINT8, BASE_DEC, VALS (valstr_048_170_CNF), 0x80, NULL, HFILL } },
+ { &hf_048_170_RAD, { "RAD, Type of Sensor(s) Maintaining Track", "asterix.048_170_RAD", FT_UINT8, BASE_DEC, VALS (valstr_048_170_RAD), 0x60, NULL, HFILL } },
+ { &hf_048_170_DOU, { "DOU, Signals Level of Confidence in Plot to Track Association Process", "asterix.048_170_DOU", FT_UINT8, BASE_DEC, VALS (valstr_048_170_DOU), 0x10, NULL, HFILL } },
+ { &hf_048_170_MAH, { "MAH, Manoeuvre Detection in Horizontal Sense", "asterix.048_170_MAH", FT_UINT8, BASE_DEC, VALS (valstr_048_170_MAH), 0x08, NULL, HFILL } },
+ { &hf_048_170_CDM, { "CDM, Climbing / Descending Mode", "asterix.048_170_CDM", FT_UINT8, BASE_DEC, VALS (valstr_048_170_CDM), 0x06, NULL, HFILL } },
+ { &hf_048_170_TRE, { "TRE, Signal for End_of_Track", "asterix.048_170_TRE", FT_UINT8, BASE_DEC, VALS (valstr_048_170_TRE), 0x80, NULL, HFILL } },
+ { &hf_048_170_GHO, { "GHO, Ghost Vs. True Target", "asterix.048_170_GHO", FT_UINT8, BASE_DEC, VALS (valstr_048_170_GHO), 0x40, NULL, HFILL } },
+ { &hf_048_170_SUP, { "SUP, Track Maintained with Track Information from Neighbouring Node B on the Cluster, or Network", "asterix.048_170_SUP", FT_UINT8, BASE_DEC, VALS (valstr_048_170_SUP), 0x20, NULL, HFILL } },
+ { &hf_048_170_TCC, { "TCC, Type of Plot Coordinate Transformation Mechanism:", "asterix.048_170_TCC", FT_UINT8, BASE_DEC, VALS (valstr_048_170_TCC), 0x10, NULL, HFILL } },
+ { &hf_048_200, { "200, Calculated Track Velocity in Polar Co-ordinates", "asterix.048_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_200_GSP, { "GSP, Calculated Groundspeed, [NM/s]", "asterix.048_200_GSP", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_200_HDG, { "HDG, Calculated Heading, [°]", "asterix.048_200_HDG", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_210, { "210, Track Quality", "asterix.048_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_210_SIGX, { "SIGX, Sigma (X)) Standard Deviation on the Horizontal Axis of the Local Grid System, [NM]", "asterix.048_210_SIGX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_210_SIGY, { "SIGY, Sigma (Y)) Standard Deviation on the Vertical Axis of the Local Grid System, [NM]", "asterix.048_210_SIGY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_210_SIGV, { "SIGV, Sigma (V)) Standard Deviation on the Groundspeed Within the Local Grid System, [NM/s]", "asterix.048_210_SIGV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_210_SIGH, { "SIGH, Sigma (H)) Standard Deviation on the Heading Within the Local Grid System, [°]", "asterix.048_210_SIGH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_220, { "220, Aircraft Address", "asterix.048_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_220_VALUE, { "Aircraft Address", "asterix.048_220_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_230, { "230, Communications/ACAS Capability and Flight Status", "asterix.048_230", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_230_COM, { "COM, Communications Capability of the Transponder", "asterix.048_230_COM", FT_UINT8, BASE_DEC, VALS (valstr_048_230_COM), 0xe0, NULL, HFILL } },
+ { &hf_048_230_STAT, { "STAT, Flight Status", "asterix.048_230_STAT", FT_UINT8, BASE_DEC, VALS (valstr_048_230_STAT), 0x1c, NULL, HFILL } },
+ { &hf_048_230_SI, { "SI, SI/II Transponder Capability", "asterix.048_230_SI", FT_UINT8, BASE_DEC, VALS (valstr_048_230_SI), 0x02, NULL, HFILL } },
+ { &hf_048_230_MSSC, { "MSSC, Mode-S Specific Service Capability", "asterix.048_230_MSSC", FT_UINT8, BASE_DEC, VALS (valstr_048_230_MSSC), 0x80, NULL, HFILL } },
+ { &hf_048_230_ARC, { "ARC, Altitude Reporting Capability", "asterix.048_230_ARC", FT_UINT8, BASE_DEC, VALS (valstr_048_230_ARC), 0x40, NULL, HFILL } },
+ { &hf_048_230_AIC, { "AIC, Aircraft Identification Capability", "asterix.048_230_AIC", FT_UINT8, BASE_DEC, VALS (valstr_048_230_AIC), 0x20, NULL, HFILL } },
+ { &hf_048_230_B1A, { "B1A, BDS 1,0 Bit 16", "asterix.048_230_B1A", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_048_230_B1B, { "B1B, BDS 1,0 Bits 37/40", "asterix.048_230_B1B", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_048_240, { "240, Aircraft Identification", "asterix.048_240", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_240_VALUE, { "Aircraft Identification", "asterix.048_240_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_250, { "250, BDS Register Data", "asterix.048_250", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_250_MBDATA, { "MBDATA, Mode S Comm B Message Data", "asterix.048_250_MBDATA", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_250_BDS1, { "BDS1, Comm B Data Buffer Store 1 Address", "asterix.048_250_BDS1", FT_UINT8, BASE_DEC, NULL, 0xf0, NULL, HFILL } },
+ { &hf_048_250_BDS2, { "BDS2, Comm B Data Buffer Store 2 Address", "asterix.048_250_BDS2", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_048_260, { "260, ACAS Resolution Advisory Report", "asterix.048_260", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_260_VALUE, { "ACAS Resolution Advisory Report", "asterix.048_260_VALUE", FT_UINT56, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_RE, { "RE, Reserved Expansion Field", "asterix.048_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_048_SP, { "SP, Special Purpose Field", "asterix.048_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_010, { "010, Data Source Identifier", "asterix.062_V1_17_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_010_SAC, { "SAC, System Area Code", "asterix.062_V1_17_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_010_SIC, { "SIC, System Identification Code", "asterix.062_V1_17_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_015, { "015, Service Identification", "asterix.062_V1_17_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_015_VALUE, { "Service Identification", "asterix.062_V1_17_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_040, { "040, Track Number", "asterix.062_V1_17_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_040_VALUE, { "Track Number", "asterix.062_V1_17_040_VALUE", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_060, { "060, Track Mode 3/A Code", "asterix.062_V1_17_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_060_V, { "V, Validated", "asterix.062_V1_17_060_V", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_060_V), 0x80, NULL, HFILL } },
+ { &hf_062_V1_17_060_G, { "G, Garbled", "asterix.062_V1_17_060_G", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_060_G), 0x40, NULL, HFILL } },
+ { &hf_062_V1_17_060_CH, { "CH, Change in Mode 3/A", "asterix.062_V1_17_060_CH", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_060_CH), 0x20, NULL, HFILL } },
+ { &hf_062_V1_17_060_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.062_V1_17_060_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_062_V1_17_070, { "070, Time Of Track Information", "asterix.062_V1_17_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_070_VALUE, { "Time Of Track Information, [s]", "asterix.062_V1_17_070_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_080, { "080, Track Status", "asterix.062_V1_17_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_080_MON, { "MON", "asterix.062_V1_17_080_MON", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_MON), 0x80, NULL, HFILL } },
+ { &hf_062_V1_17_080_SPI, { "SPI", "asterix.062_V1_17_080_SPI", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_SPI), 0x40, NULL, HFILL } },
+ { &hf_062_V1_17_080_MRH, { "MRH, Most Reliable Height", "asterix.062_V1_17_080_MRH", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_MRH), 0x20, NULL, HFILL } },
+ { &hf_062_V1_17_080_SRC, { "SRC, Source of Calculated Track Altitude for I062/130", "asterix.062_V1_17_080_SRC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_SRC), 0x1c, NULL, HFILL } },
+ { &hf_062_V1_17_080_CNF, { "CNF", "asterix.062_V1_17_080_CNF", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_CNF), 0x02, NULL, HFILL } },
+ { &hf_062_V1_17_080_SIM, { "SIM", "asterix.062_V1_17_080_SIM", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_SIM), 0x80, NULL, HFILL } },
+ { &hf_062_V1_17_080_TSE, { "TSE", "asterix.062_V1_17_080_TSE", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_TSE), 0x40, NULL, HFILL } },
+ { &hf_062_V1_17_080_TSB, { "TSB", "asterix.062_V1_17_080_TSB", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_TSB), 0x20, NULL, HFILL } },
+ { &hf_062_V1_17_080_FPC, { "FPC", "asterix.062_V1_17_080_FPC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_FPC), 0x10, NULL, HFILL } },
+ { &hf_062_V1_17_080_AFF, { "AFF", "asterix.062_V1_17_080_AFF", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_AFF), 0x08, NULL, HFILL } },
+ { &hf_062_V1_17_080_STP, { "STP", "asterix.062_V1_17_080_STP", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_STP), 0x04, NULL, HFILL } },
+ { &hf_062_V1_17_080_KOS, { "KOS", "asterix.062_V1_17_080_KOS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_KOS), 0x02, NULL, HFILL } },
+ { &hf_062_V1_17_080_AMA, { "AMA", "asterix.062_V1_17_080_AMA", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_AMA), 0x80, NULL, HFILL } },
+ { &hf_062_V1_17_080_MD4, { "MD4", "asterix.062_V1_17_080_MD4", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_MD4), 0x60, NULL, HFILL } },
+ { &hf_062_V1_17_080_ME, { "ME", "asterix.062_V1_17_080_ME", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_ME), 0x10, NULL, HFILL } },
+ { &hf_062_V1_17_080_MI, { "MI", "asterix.062_V1_17_080_MI", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_MI), 0x08, NULL, HFILL } },
+ { &hf_062_V1_17_080_MD5, { "MD5", "asterix.062_V1_17_080_MD5", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_MD5), 0x06, NULL, HFILL } },
+ { &hf_062_V1_17_080_CST, { "CST", "asterix.062_V1_17_080_CST", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_CST), 0x80, NULL, HFILL } },
+ { &hf_062_V1_17_080_PSR, { "PSR", "asterix.062_V1_17_080_PSR", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_PSR), 0x40, NULL, HFILL } },
+ { &hf_062_V1_17_080_SSR, { "SSR", "asterix.062_V1_17_080_SSR", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_SSR), 0x20, NULL, HFILL } },
+ { &hf_062_V1_17_080_MDS, { "MDS", "asterix.062_V1_17_080_MDS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_MDS), 0x10, NULL, HFILL } },
+ { &hf_062_V1_17_080_ADS, { "ADS", "asterix.062_V1_17_080_ADS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_ADS), 0x08, NULL, HFILL } },
+ { &hf_062_V1_17_080_SUC, { "SUC", "asterix.062_V1_17_080_SUC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_SUC), 0x04, NULL, HFILL } },
+ { &hf_062_V1_17_080_AAC, { "AAC", "asterix.062_V1_17_080_AAC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_AAC), 0x02, NULL, HFILL } },
+ { &hf_062_V1_17_080_SDS, { "SDS", "asterix.062_V1_17_080_SDS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_SDS), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_17_080_EMS, { "EMS", "asterix.062_V1_17_080_EMS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_EMS), 0x38, NULL, HFILL } },
+ { &hf_062_V1_17_080_PFT, { "PFT", "asterix.062_V1_17_080_PFT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_PFT), 0x04, NULL, HFILL } },
+ { &hf_062_V1_17_080_FPLT, { "FPLT", "asterix.062_V1_17_080_FPLT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_FPLT), 0x02, NULL, HFILL } },
+ { &hf_062_V1_17_080_DUPT, { "DUPT", "asterix.062_V1_17_080_DUPT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_DUPT), 0x80, NULL, HFILL } },
+ { &hf_062_V1_17_080_DUPF, { "DUPF", "asterix.062_V1_17_080_DUPF", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_DUPF), 0x40, NULL, HFILL } },
+ { &hf_062_V1_17_080_DUPM, { "DUPM", "asterix.062_V1_17_080_DUPM", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_080_DUPM), 0x20, NULL, HFILL } },
+ { &hf_062_V1_17_100, { "100, Calculated Track Position (Cartesian)", "asterix.062_V1_17_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_100_X, { "X, X Coordinate, [m]", "asterix.062_V1_17_100_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_100_Y, { "Y, Y Coordinate, [m]", "asterix.062_V1_17_100_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_105, { "105, Calculated Position In WGS-84 Co-ordinates", "asterix.062_V1_17_105", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_105_LAT, { "LAT, Latitude, [°]", "asterix.062_V1_17_105_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_105_LON, { "LON, Longitude, [°]", "asterix.062_V1_17_105_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_110, { "110, Mode 5 Data Reports and Extended Mode 1 Code", "asterix.062_V1_17_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_110_SUM, { "SUM, Mode 5 Summary", "asterix.062_V1_17_110_SUM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_110_SUM_M5, { "M5", "asterix.062_V1_17_110_SUM_M5", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_110_SUM_M5), 0x80, NULL, HFILL } },
+ { &hf_062_V1_17_110_SUM_ID, { "ID", "asterix.062_V1_17_110_SUM_ID", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_110_SUM_ID), 0x40, NULL, HFILL } },
+ { &hf_062_V1_17_110_SUM_DA, { "DA", "asterix.062_V1_17_110_SUM_DA", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_110_SUM_DA), 0x20, NULL, HFILL } },
+ { &hf_062_V1_17_110_SUM_M1, { "M1", "asterix.062_V1_17_110_SUM_M1", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_110_SUM_M1), 0x10, NULL, HFILL } },
+ { &hf_062_V1_17_110_SUM_M2, { "M2", "asterix.062_V1_17_110_SUM_M2", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_110_SUM_M2), 0x08, NULL, HFILL } },
+ { &hf_062_V1_17_110_SUM_M3, { "M3", "asterix.062_V1_17_110_SUM_M3", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_110_SUM_M3), 0x04, NULL, HFILL } },
+ { &hf_062_V1_17_110_SUM_MC, { "MC", "asterix.062_V1_17_110_SUM_MC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_110_SUM_MC), 0x02, NULL, HFILL } },
+ { &hf_062_V1_17_110_SUM_X, { "X, X-pulse from Mode 5 Data Reply or Report", "asterix.062_V1_17_110_SUM_X", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_110_SUM_X), 0x01, NULL, HFILL } },
+ { &hf_062_V1_17_110_PMN, { "PMN, Mode 5 PIN/ National Origin/Mission Code", "asterix.062_V1_17_110_PMN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_110_PMN_PIN, { "PIN, PIN Code", "asterix.062_V1_17_110_PMN_PIN", FT_UINT16, BASE_DEC, NULL, 0x3fff, NULL, HFILL } },
+ { &hf_062_V1_17_110_PMN_NAT, { "NAT, National Origin", "asterix.062_V1_17_110_PMN_NAT", FT_UINT8, BASE_DEC, NULL, 0x1f, NULL, HFILL } },
+ { &hf_062_V1_17_110_PMN_MIS, { "MIS, Mission Code", "asterix.062_V1_17_110_PMN_MIS", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_062_V1_17_110_POS, { "POS, Mode 5 Reported Position", "asterix.062_V1_17_110_POS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_110_POS_LAT, { "LAT, Latitude, [°]", "asterix.062_V1_17_110_POS_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_110_POS_LON, { "LON, Longitude, [°]", "asterix.062_V1_17_110_POS_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_110_GA, { "GA, Mode 5 GNSS-derived Altitude", "asterix.062_V1_17_110_GA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_110_GA_RES, { "RES, Resolution with which the GNSS-derived Altitude (GA) is Reported", "asterix.062_V1_17_110_GA_RES", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_110_GA_RES), 0x40, NULL, HFILL } },
+ { &hf_062_V1_17_110_GA_GA, { "GA, GNSS-derived Altitude of Target, Expressed as Height Above WGS 84 Ellipsoid, [ft]", "asterix.062_V1_17_110_GA_GA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_110_EM1, { "EM1, Extended Mode 1 Code in Octal Representation", "asterix.062_V1_17_110_EM1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_110_EM1_EM1, { "EM1, Extended Mode 1 Reply in Octal Representation", "asterix.062_V1_17_110_EM1_EM1", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_062_V1_17_110_TOS, { "TOS, Time Offset for POS and GA", "asterix.062_V1_17_110_TOS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_110_TOS_VALUE, { "Time Offset for POS and GA, [s]", "asterix.062_V1_17_110_TOS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_110_XP, { "XP, X Pulse Presence", "asterix.062_V1_17_110_XP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_110_XP_X5, { "X5, X-pulse from Mode 5 Data Reply or Report", "asterix.062_V1_17_110_XP_X5", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_110_XP_X5), 0x10, NULL, HFILL } },
+ { &hf_062_V1_17_110_XP_XC, { "XC, X-pulse from Mode C Reply", "asterix.062_V1_17_110_XP_XC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_110_XP_XC), 0x08, NULL, HFILL } },
+ { &hf_062_V1_17_110_XP_X3, { "X3, X-pulse from Mode 3/A Reply", "asterix.062_V1_17_110_XP_X3", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_110_XP_X3), 0x04, NULL, HFILL } },
+ { &hf_062_V1_17_110_XP_X2, { "X2, X-pulse from Mode 2 Reply", "asterix.062_V1_17_110_XP_X2", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_110_XP_X2), 0x02, NULL, HFILL } },
+ { &hf_062_V1_17_110_XP_X1, { "X1, X-pulse from Mode 1 Reply", "asterix.062_V1_17_110_XP_X1", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_110_XP_X1), 0x01, NULL, HFILL } },
+ { &hf_062_V1_17_120, { "120, Track Mode 2 Code", "asterix.062_V1_17_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_120_MODE2, { "MODE2, Mode-2 Code in Octal Representation", "asterix.062_V1_17_120_MODE2", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_062_V1_17_130, { "130, Calculated Track Geometric Altitude", "asterix.062_V1_17_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_130_VALUE, { "Calculated Track Geometric Altitude, [ft]", "asterix.062_V1_17_130_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_135, { "135, Calculated Track Barometric Altitude", "asterix.062_V1_17_135", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_135_QNH, { "QNH", "asterix.062_V1_17_135_QNH", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_135_QNH), 0x80, NULL, HFILL } },
+ { &hf_062_V1_17_135_CTB, { "CTB, Calculated Track Barometric Altitude, [FL]", "asterix.062_V1_17_135_CTB", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_136, { "136, Measured Flight Level", "asterix.062_V1_17_136", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_136_VALUE, { "Measured Flight Level, [FL]", "asterix.062_V1_17_136_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_185, { "185, Calculated Track Velocity (Cartesian)", "asterix.062_V1_17_185", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_185_VX, { "VX, Velocity (X-component), [m/s]", "asterix.062_V1_17_185_VX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_185_VY, { "VY, Velocity (Y-component), [m/s]", "asterix.062_V1_17_185_VY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_200, { "200, Mode of Movement", "asterix.062_V1_17_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_200_TRANS, { "TRANS, Transversal Acceleration", "asterix.062_V1_17_200_TRANS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_200_TRANS), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_17_200_LONG, { "LONG, Longitudinal Acceleration", "asterix.062_V1_17_200_LONG", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_200_LONG), 0x30, NULL, HFILL } },
+ { &hf_062_V1_17_200_VERT, { "VERT, Transversal Acceleration", "asterix.062_V1_17_200_VERT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_200_VERT), 0x0c, NULL, HFILL } },
+ { &hf_062_V1_17_200_ADF, { "ADF, Altitude Discrepancy Flag", "asterix.062_V1_17_200_ADF", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_200_ADF), 0x02, NULL, HFILL } },
+ { &hf_062_V1_17_210, { "210, Calculated Acceleration (Cartesian)", "asterix.062_V1_17_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_210_AX, { "AX, [m/s2]", "asterix.062_V1_17_210_AX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_210_AY, { "AY, [m/s2]", "asterix.062_V1_17_210_AY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_220, { "220, Calculated Rate of Climb/Descent", "asterix.062_V1_17_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_220_VALUE, { "Calculated Rate of Climb/Descent, [ft/min]", "asterix.062_V1_17_220_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_245, { "245, Target Identification", "asterix.062_V1_17_245", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_245_STI, { "STI", "asterix.062_V1_17_245_STI", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_245_STI), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_17_245_CHR, { "CHR, Characters 1-8 (Coded on 6 Bits Each) Defining Target Identification", "asterix.062_V1_17_245_CHR", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_270, { "270, Target Size and Orientation", "asterix.062_V1_17_270", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_270_LENGTH, { "LENGTH, Length, [m]", "asterix.062_V1_17_270_LENGTH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_270_ORIENTATION, { "ORIENTATION, Orientation, [°]", "asterix.062_V1_17_270_ORIENTATION", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_270_WIDTH, { "WIDTH, Width, [m]", "asterix.062_V1_17_270_WIDTH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_290, { "290, System Track Update Ages", "asterix.062_V1_17_290", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_290_TRK, { "TRK, Track Age", "asterix.062_V1_17_290_TRK", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_290_TRK_VALUE, { "Track Age, [s]", "asterix.062_V1_17_290_TRK_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_290_PSR, { "PSR, PSR Age", "asterix.062_V1_17_290_PSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_290_PSR_VALUE, { "PSR Age, [s]", "asterix.062_V1_17_290_PSR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_290_SSR, { "SSR, SSR Age", "asterix.062_V1_17_290_SSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_290_SSR_VALUE, { "SSR Age, [s]", "asterix.062_V1_17_290_SSR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_290_MDS, { "MDS, Mode S Age", "asterix.062_V1_17_290_MDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_290_MDS_VALUE, { "Mode S Age, [s]", "asterix.062_V1_17_290_MDS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_290_ADS, { "ADS, ADS-C Age", "asterix.062_V1_17_290_ADS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_290_ADS_VALUE, { "ADS-C Age, [s]", "asterix.062_V1_17_290_ADS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_290_ES, { "ES, ADS-B Extended Squitter Age", "asterix.062_V1_17_290_ES", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_290_ES_VALUE, { "ADS-B Extended Squitter Age, [s]", "asterix.062_V1_17_290_ES_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_290_VDL, { "VDL, ADS-B VDL Mode 4 Age", "asterix.062_V1_17_290_VDL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_290_VDL_VALUE, { "ADS-B VDL Mode 4 Age, [s]", "asterix.062_V1_17_290_VDL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_290_UAT, { "UAT, ADS-B UAT Age", "asterix.062_V1_17_290_UAT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_290_UAT_VALUE, { "ADS-B UAT Age, [s]", "asterix.062_V1_17_290_UAT_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_290_LOP, { "LOP, Loop Age", "asterix.062_V1_17_290_LOP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_290_LOP_VALUE, { "Loop Age, [s]", "asterix.062_V1_17_290_LOP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_290_MLT, { "MLT, Multilateration Age", "asterix.062_V1_17_290_MLT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_290_MLT_VALUE, { "Multilateration Age, [s]", "asterix.062_V1_17_290_MLT_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295, { "295, Track Data Ages", "asterix.062_V1_17_295", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_MFL, { "MFL, Measured Flight Level Age", "asterix.062_V1_17_295_MFL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_MFL_VALUE, { "Measured Flight Level Age, [s]", "asterix.062_V1_17_295_MFL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_MD1, { "MD1, Mode 1 Age", "asterix.062_V1_17_295_MD1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_MD1_VALUE, { "Mode 1 Age, [s]", "asterix.062_V1_17_295_MD1_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_MD2, { "MD2, Mode 2 Age", "asterix.062_V1_17_295_MD2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_MD2_VALUE, { "Mode 2 Age, [s]", "asterix.062_V1_17_295_MD2_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_MDA, { "MDA, Mode 3/A Age", "asterix.062_V1_17_295_MDA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_MDA_VALUE, { "Mode 3/A Age, [s]", "asterix.062_V1_17_295_MDA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_MD4, { "MD4, Mode 4 Age", "asterix.062_V1_17_295_MD4", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_MD4_VALUE, { "Mode 4 Age, [s]", "asterix.062_V1_17_295_MD4_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_MD5, { "MD5, Mode 5 Age", "asterix.062_V1_17_295_MD5", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_MD5_VALUE, { "Mode 5 Age, [s]", "asterix.062_V1_17_295_MD5_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_MHG, { "MHG, Magnetic Heading Age", "asterix.062_V1_17_295_MHG", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_MHG_VALUE, { "Magnetic Heading Age, [s]", "asterix.062_V1_17_295_MHG_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_IAS, { "IAS, Indicated Airspeed / Mach Nb Age", "asterix.062_V1_17_295_IAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_IAS_VALUE, { "Indicated Airspeed / Mach Nb Age, [s]", "asterix.062_V1_17_295_IAS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_TAS, { "TAS, True Airspeed Age", "asterix.062_V1_17_295_TAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_TAS_VALUE, { "True Airspeed Age, [s]", "asterix.062_V1_17_295_TAS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_SAL, { "SAL, Selected Altitude Age", "asterix.062_V1_17_295_SAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_SAL_VALUE, { "Selected Altitude Age, [s]", "asterix.062_V1_17_295_SAL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_FSS, { "FSS, Final State Selected Altitude Age", "asterix.062_V1_17_295_FSS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_FSS_VALUE, { "Final State Selected Altitude Age, [s]", "asterix.062_V1_17_295_FSS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_TID, { "TID, Trajectory Intent Age", "asterix.062_V1_17_295_TID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_TID_VALUE, { "Trajectory Intent Age, [s]", "asterix.062_V1_17_295_TID_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_COM, { "COM, Communication/ACAS Capability and Flight Status Age", "asterix.062_V1_17_295_COM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_COM_VALUE, { "Communication/ACAS Capability and Flight Status Age, [s]", "asterix.062_V1_17_295_COM_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_SAB, { "SAB, Status Reported by ADS-B Age", "asterix.062_V1_17_295_SAB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_SAB_VALUE, { "Status Reported by ADS-B Age, [s]", "asterix.062_V1_17_295_SAB_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_ACS, { "ACS, ACAS Resolution Advisory Report Age", "asterix.062_V1_17_295_ACS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_ACS_VALUE, { "ACAS Resolution Advisory Report Age, [s]", "asterix.062_V1_17_295_ACS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_BVR, { "BVR, Barometric Vertical Rate Age", "asterix.062_V1_17_295_BVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_BVR_VALUE, { "Barometric Vertical Rate Age, [s]", "asterix.062_V1_17_295_BVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_GVR, { "GVR, Geometrical Vertical Rate Age", "asterix.062_V1_17_295_GVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_GVR_VALUE, { "Geometrical Vertical Rate Age, [s]", "asterix.062_V1_17_295_GVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_RAN, { "RAN, Roll Angle Age", "asterix.062_V1_17_295_RAN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_RAN_VALUE, { "Roll Angle Age, [s]", "asterix.062_V1_17_295_RAN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_TAR, { "TAR, Track Angle Rate Age", "asterix.062_V1_17_295_TAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_TAR_VALUE, { "Track Angle Rate Age, [s]", "asterix.062_V1_17_295_TAR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_TAN, { "TAN, Track Angle Age", "asterix.062_V1_17_295_TAN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_TAN_VALUE, { "Track Angle Age, [s]", "asterix.062_V1_17_295_TAN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_GSP, { "GSP, Ground Speed Age", "asterix.062_V1_17_295_GSP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_GSP_VALUE, { "Ground Speed Age, [s]", "asterix.062_V1_17_295_GSP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_VUN, { "VUN, Velocity Uncertainty Age", "asterix.062_V1_17_295_VUN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_VUN_VALUE, { "Velocity Uncertainty Age, [s]", "asterix.062_V1_17_295_VUN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_MET, { "MET, Meteorological Data Age", "asterix.062_V1_17_295_MET", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_MET_VALUE, { "Meteorological Data Age, [s]", "asterix.062_V1_17_295_MET_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_EMC, { "EMC, Emitter Category Age", "asterix.062_V1_17_295_EMC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_EMC_VALUE, { "Emitter Category Age, [s]", "asterix.062_V1_17_295_EMC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_POS, { "POS, Position Age", "asterix.062_V1_17_295_POS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_POS_VALUE, { "Position Age, [s]", "asterix.062_V1_17_295_POS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_GAL, { "GAL, Geometric Altitude Age", "asterix.062_V1_17_295_GAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_GAL_VALUE, { "Geometric Altitude Age, [s]", "asterix.062_V1_17_295_GAL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_PUN, { "PUN, Position Uncertainty Age", "asterix.062_V1_17_295_PUN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_PUN_VALUE, { "Position Uncertainty Age, [s]", "asterix.062_V1_17_295_PUN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_MB, { "MB, Mode S MB Data Age", "asterix.062_V1_17_295_MB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_MB_VALUE, { "Mode S MB Data Age, [s]", "asterix.062_V1_17_295_MB_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_IAR, { "IAR, Indicated Airspeed Data Age", "asterix.062_V1_17_295_IAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_IAR_VALUE, { "Indicated Airspeed Data Age, [s]", "asterix.062_V1_17_295_IAR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_MAC, { "MAC, Mach Number Data Age", "asterix.062_V1_17_295_MAC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_MAC_VALUE, { "Mach Number Data Age, [s]", "asterix.062_V1_17_295_MAC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_BPS, { "BPS, Barometric Pressure Setting Data Age", "asterix.062_V1_17_295_BPS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_295_BPS_VALUE, { "Barometric Pressure Setting Data Age, [s]", "asterix.062_V1_17_295_BPS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_300, { "300, Vehicle Fleet Identification", "asterix.062_V1_17_300", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_300_VALUE, { "Vehicle Fleet Identification", "asterix.062_V1_17_300_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_300_VALUE), 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_340, { "340, Measured Information", "asterix.062_V1_17_340", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_340_SID, { "SID, Sensor Identification", "asterix.062_V1_17_340_SID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_340_SID_SAC, { "SAC, System Area Code", "asterix.062_V1_17_340_SID_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_340_SID_SIC, { "SIC, System Identification Code", "asterix.062_V1_17_340_SID_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_340_POS, { "POS, Measured Position", "asterix.062_V1_17_340_POS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_340_POS_RHO, { "RHO, Measured Distance, [NM]", "asterix.062_V1_17_340_POS_RHO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_340_POS_THETA, { "THETA, Measured Azimuth, [°]", "asterix.062_V1_17_340_POS_THETA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_340_HEIGHT, { "HEIGHT, Measured 3-D Height", "asterix.062_V1_17_340_HEIGHT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_340_HEIGHT_VALUE, { "Measured 3-D Height, [ft]", "asterix.062_V1_17_340_HEIGHT_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_340_MDC, { "MDC", "asterix.062_V1_17_340_MDC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_340_MDC_V, { "V, Validated", "asterix.062_V1_17_340_MDC_V", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_340_MDC_V), 0x80, NULL, HFILL } },
+ { &hf_062_V1_17_340_MDC_G, { "G, Garbled", "asterix.062_V1_17_340_MDC_G", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_340_MDC_G), 0x40, NULL, HFILL } },
+ { &hf_062_V1_17_340_MDC_LMC, { "LMC, Last Measured Mode C Code, [FL]", "asterix.062_V1_17_340_MDC_LMC", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_340_MDA, { "MDA", "asterix.062_V1_17_340_MDA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_340_MDA_V, { "V, Validated", "asterix.062_V1_17_340_MDA_V", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_340_MDA_V), 0x80, NULL, HFILL } },
+ { &hf_062_V1_17_340_MDA_G, { "G, Garbled", "asterix.062_V1_17_340_MDA_G", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_340_MDA_G), 0x40, NULL, HFILL } },
+ { &hf_062_V1_17_340_MDA_L, { "L", "asterix.062_V1_17_340_MDA_L", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_340_MDA_L), 0x20, NULL, HFILL } },
+ { &hf_062_V1_17_340_MDA_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.062_V1_17_340_MDA_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_062_V1_17_340_TYP, { "TYP", "asterix.062_V1_17_340_TYP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_340_TYP_TYP, { "TYP, Report Type", "asterix.062_V1_17_340_TYP_TYP", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_340_TYP_TYP), 0xe0, NULL, HFILL } },
+ { &hf_062_V1_17_340_TYP_SIM, { "SIM", "asterix.062_V1_17_340_TYP_SIM", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_340_TYP_SIM), 0x10, NULL, HFILL } },
+ { &hf_062_V1_17_340_TYP_RAB, { "RAB", "asterix.062_V1_17_340_TYP_RAB", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_340_TYP_RAB), 0x08, NULL, HFILL } },
+ { &hf_062_V1_17_340_TYP_TST, { "TST", "asterix.062_V1_17_340_TYP_TST", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_340_TYP_TST), 0x04, NULL, HFILL } },
+ { &hf_062_V1_17_380, { "380, Aircraft Derived Data", "asterix.062_V1_17_380", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_ADR, { "ADR, Target Address", "asterix.062_V1_17_380_ADR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_ADR_VALUE, { "Target Address", "asterix.062_V1_17_380_ADR_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_ID, { "ID, Target Identification", "asterix.062_V1_17_380_ID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_ID_VALUE, { "Target Identification", "asterix.062_V1_17_380_ID_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_MHG, { "MHG, Magnetic Heading", "asterix.062_V1_17_380_MHG", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_MHG_VALUE, { "Magnetic Heading, [°]", "asterix.062_V1_17_380_MHG_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_IAS, { "IAS, Indicated Airspeed/Mach No", "asterix.062_V1_17_380_IAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_IAS_IM, { "IM", "asterix.062_V1_17_380_IAS_IM", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_IAS_IM), 0x80, NULL, HFILL } },
+ { &hf_062_V1_17_380_IAS_IAS, { "IAS", "asterix.062_V1_17_380_IAS_IAS", FT_UINT16, BASE_DEC, NULL, 0x7fff, NULL, HFILL } },
+ { &hf_062_V1_17_380_TAS, { "TAS, True Airspeed", "asterix.062_V1_17_380_TAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_TAS_VALUE, { "True Airspeed, [kt]", "asterix.062_V1_17_380_TAS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_SAL, { "SAL, Selected Altitude", "asterix.062_V1_17_380_SAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_SAL_SAS, { "SAS", "asterix.062_V1_17_380_SAL_SAS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_SAL_SAS), 0x80, NULL, HFILL } },
+ { &hf_062_V1_17_380_SAL_SRC, { "SRC", "asterix.062_V1_17_380_SAL_SRC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_SAL_SRC), 0x60, NULL, HFILL } },
+ { &hf_062_V1_17_380_SAL_ALT, { "ALT, Altitude in Two's Complement Form, [ft]", "asterix.062_V1_17_380_SAL_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_FSS, { "FSS, Final State Selected Altitude", "asterix.062_V1_17_380_FSS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_FSS_MV, { "MV, Manage Vertical Mode", "asterix.062_V1_17_380_FSS_MV", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_FSS_MV), 0x80, NULL, HFILL } },
+ { &hf_062_V1_17_380_FSS_AH, { "AH, Altitude Hold", "asterix.062_V1_17_380_FSS_AH", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_FSS_AH), 0x40, NULL, HFILL } },
+ { &hf_062_V1_17_380_FSS_AM, { "AM, Approach Mode", "asterix.062_V1_17_380_FSS_AM", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_FSS_AM), 0x20, NULL, HFILL } },
+ { &hf_062_V1_17_380_FSS_ALT, { "ALT, Altitude in Two's Complement Form, [ft]", "asterix.062_V1_17_380_FSS_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_TIS, { "TIS, Trajectory Intent Status", "asterix.062_V1_17_380_TIS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_TIS_NAV, { "NAV, TID Available", "asterix.062_V1_17_380_TIS_NAV", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_TIS_NAV), 0x80, NULL, HFILL } },
+ { &hf_062_V1_17_380_TIS_NVB, { "NVB, TID Valid", "asterix.062_V1_17_380_TIS_NVB", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_TIS_NVB), 0x40, NULL, HFILL } },
+ { &hf_062_V1_17_380_TID, { "TID, Trajectory Intent Data", "asterix.062_V1_17_380_TID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_TID_TCA, { "TCA, TCP Number Availability", "asterix.062_V1_17_380_TID_TCA", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_TID_TCA), 0x80, NULL, HFILL } },
+ { &hf_062_V1_17_380_TID_NC, { "NC, TCP Compliance", "asterix.062_V1_17_380_TID_NC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_TID_NC), 0x40, NULL, HFILL } },
+ { &hf_062_V1_17_380_TID_TCPN, { "TCPN, Trajectory Change Point Number", "asterix.062_V1_17_380_TID_TCPN", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_062_V1_17_380_TID_ALT, { "ALT, Altitude in Two's Complement Form, [ft]", "asterix.062_V1_17_380_TID_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_TID_LAT, { "LAT, Latitude in WGS.84 in Two's Complement, [°]", "asterix.062_V1_17_380_TID_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_TID_LON, { "LON, Longitude in WGS.84 in Two's Complement, [°]", "asterix.062_V1_17_380_TID_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_TID_PT, { "PT, Point Type", "asterix.062_V1_17_380_TID_PT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_TID_PT), 0xf0, NULL, HFILL } },
+ { &hf_062_V1_17_380_TID_TD, { "TD, Turn Direction", "asterix.062_V1_17_380_TID_TD", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_TID_TD), 0x0c, NULL, HFILL } },
+ { &hf_062_V1_17_380_TID_TRA, { "TRA, Turn Radius Availability", "asterix.062_V1_17_380_TID_TRA", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_TID_TRA), 0x02, NULL, HFILL } },
+ { &hf_062_V1_17_380_TID_TOA, { "TOA, TOV Available", "asterix.062_V1_17_380_TID_TOA", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_TID_TOA), 0x01, NULL, HFILL } },
+ { &hf_062_V1_17_380_TID_TOV, { "TOV, Time Over Point, [s]", "asterix.062_V1_17_380_TID_TOV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_TID_TTR, { "TTR, TCP Turn Radius, [NM]", "asterix.062_V1_17_380_TID_TTR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_COM, { "COM, Communications/ACAS Capability and Flight Status", "asterix.062_V1_17_380_COM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_COM_COM, { "COM, Communications Capability of the Transponder", "asterix.062_V1_17_380_COM_COM", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_COM_COM), 0xe0, NULL, HFILL } },
+ { &hf_062_V1_17_380_COM_STAT, { "STAT, Flight Status", "asterix.062_V1_17_380_COM_STAT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_COM_STAT), 0x1c, NULL, HFILL } },
+ { &hf_062_V1_17_380_COM_SSC, { "SSC, Specific Service Capability", "asterix.062_V1_17_380_COM_SSC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_COM_SSC), 0x80, NULL, HFILL } },
+ { &hf_062_V1_17_380_COM_ARC, { "ARC, Altitude Reporting Capability", "asterix.062_V1_17_380_COM_ARC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_COM_ARC), 0x40, NULL, HFILL } },
+ { &hf_062_V1_17_380_COM_AIC, { "AIC, Aircraft Identification Capability", "asterix.062_V1_17_380_COM_AIC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_COM_AIC), 0x20, NULL, HFILL } },
+ { &hf_062_V1_17_380_COM_B1A, { "B1A, BDS 1,0 Bit 16", "asterix.062_V1_17_380_COM_B1A", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_062_V1_17_380_COM_B1B, { "B1B, BDS BDS 1,0 Bits 37/40", "asterix.062_V1_17_380_COM_B1B", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_062_V1_17_380_SAB, { "SAB, Status Reported by ADS-B", "asterix.062_V1_17_380_SAB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_SAB_AC, { "AC, ACAS Status", "asterix.062_V1_17_380_SAB_AC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_SAB_AC), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_17_380_SAB_MN, { "MN, Multiple Navigational Aids Status", "asterix.062_V1_17_380_SAB_MN", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_SAB_MN), 0x30, NULL, HFILL } },
+ { &hf_062_V1_17_380_SAB_DC, { "DC, Differential Correction Status", "asterix.062_V1_17_380_SAB_DC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_SAB_DC), 0x0c, NULL, HFILL } },
+ { &hf_062_V1_17_380_SAB_GBS, { "GBS, Ground Bit Set", "asterix.062_V1_17_380_SAB_GBS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_SAB_GBS), 0x02, NULL, HFILL } },
+ { &hf_062_V1_17_380_SAB_STAT, { "STAT, Flight Status", "asterix.062_V1_17_380_SAB_STAT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_SAB_STAT), 0x07, NULL, HFILL } },
+ { &hf_062_V1_17_380_ACS, { "ACS, ACAS Resolution Advisory Report", "asterix.062_V1_17_380_ACS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_ACS_VALUE, { "ACAS Resolution Advisory Report", "asterix.062_V1_17_380_ACS_VALUE", FT_UINT56, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_BVR, { "BVR, Barometric Vertical Rate", "asterix.062_V1_17_380_BVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_BVR_VALUE, { "Barometric Vertical Rate, [ft/min]", "asterix.062_V1_17_380_BVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_GVR, { "GVR, Geometric Vertical Rate", "asterix.062_V1_17_380_GVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_GVR_VALUE, { "Geometric Vertical Rate, [ft/min]", "asterix.062_V1_17_380_GVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_RAN, { "RAN, Roll Angle", "asterix.062_V1_17_380_RAN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_RAN_VALUE, { "Roll Angle, [°]", "asterix.062_V1_17_380_RAN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_TAR, { "TAR, Track Angle Rate", "asterix.062_V1_17_380_TAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_TAR_TI, { "TI, Turn Indicator", "asterix.062_V1_17_380_TAR_TI", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_TAR_TI), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_17_380_TAR_ROT, { "ROT, Rate of Turn in Two's Complement Form, [°/s]", "asterix.062_V1_17_380_TAR_ROT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_TAN, { "TAN, Track Angle", "asterix.062_V1_17_380_TAN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_TAN_VALUE, { "Track Angle, [°]", "asterix.062_V1_17_380_TAN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_GS, { "GS, Ground Speed", "asterix.062_V1_17_380_GS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_GS_VALUE, { "Ground Speed, [NM/s]", "asterix.062_V1_17_380_GS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_VUN, { "VUN, Velocity Uncertainty", "asterix.062_V1_17_380_VUN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_VUN_VALUE, { "Velocity Uncertainty", "asterix.062_V1_17_380_VUN_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_MET, { "MET, Meteorological Data", "asterix.062_V1_17_380_MET", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_MET_WS, { "WS, Wind Speed Valid Flag", "asterix.062_V1_17_380_MET_WS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_MET_WS), 0x80, NULL, HFILL } },
+ { &hf_062_V1_17_380_MET_WD, { "WD, Wind Direction Valid Flag", "asterix.062_V1_17_380_MET_WD", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_MET_WD), 0x40, NULL, HFILL } },
+ { &hf_062_V1_17_380_MET_TMP, { "TMP, Temperature Valid Flag", "asterix.062_V1_17_380_MET_TMP", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_MET_TMP), 0x20, NULL, HFILL } },
+ { &hf_062_V1_17_380_MET_TRB, { "TRB, Turbulence Valid Flag", "asterix.062_V1_17_380_MET_TRB", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_MET_TRB), 0x10, NULL, HFILL } },
+ { &hf_062_V1_17_380_MET_WSD, { "WSD, Wind Speed, [kt]", "asterix.062_V1_17_380_MET_WSD", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_MET_WDD, { "WDD, Wind Direction, [°]", "asterix.062_V1_17_380_MET_WDD", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_MET_TMPD, { "TMPD, Temperature in Degrees Celsius, [°C]", "asterix.062_V1_17_380_MET_TMPD", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_MET_TRBD, { "TRBD, Turbulence", "asterix.062_V1_17_380_MET_TRBD", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_EMC, { "EMC, Emitter Category", "asterix.062_V1_17_380_EMC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_EMC_VALUE, { "Emitter Category", "asterix.062_V1_17_380_EMC_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_380_EMC_VALUE), 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_POS, { "POS, Position", "asterix.062_V1_17_380_POS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_POS_LAT, { "LAT, Latitude in WGS.84 in Two's Complement Form, [°]", "asterix.062_V1_17_380_POS_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_POS_LON, { "LON, Longitude in WGS.84 in Two's Complement Form, [°]", "asterix.062_V1_17_380_POS_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_GAL, { "GAL, Geometric Altitude", "asterix.062_V1_17_380_GAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_GAL_VALUE, { "Geometric Altitude, [ft]", "asterix.062_V1_17_380_GAL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_PUN, { "PUN, Position Uncertainty", "asterix.062_V1_17_380_PUN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_PUN_PUN, { "PUN, Position Uncertainty", "asterix.062_V1_17_380_PUN_PUN", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_062_V1_17_380_MB, { "MB, MODE S MB DATA", "asterix.062_V1_17_380_MB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_MB_VALUE, { "MODE S MB DATA", "asterix.062_V1_17_380_MB_VALUE", FT_UINT64, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_IAR, { "IAR, Indicated Airspeed", "asterix.062_V1_17_380_IAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_IAR_VALUE, { "Indicated Airspeed, [kt]", "asterix.062_V1_17_380_IAR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_MAC, { "MAC, Mach Number", "asterix.062_V1_17_380_MAC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_MAC_VALUE, { "Mach Number, [Mach]", "asterix.062_V1_17_380_MAC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_BPS, { "BPS, Barometric Pressure Setting (derived from Mode S BDS 4,0)", "asterix.062_V1_17_380_BPS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_380_BPS_BPS, { "BPS, [mb]", "asterix.062_V1_17_380_BPS_BPS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390, { "390, Flight Plan Related Data", "asterix.062_V1_17_390", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_TAG, { "TAG, FPPS Identification Tag", "asterix.062_V1_17_390_TAG", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_TAG_SAC, { "SAC, System Area Code", "asterix.062_V1_17_390_TAG_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_TAG_SIC, { "SIC, System Identification Code", "asterix.062_V1_17_390_TAG_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_CS, { "CS, Callsign", "asterix.062_V1_17_390_CS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_CS_VALUE, { "Callsign", "asterix.062_V1_17_390_CS_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_IFI, { "IFI, IFPS_FLIGHT_ID", "asterix.062_V1_17_390_IFI", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_IFI_TYP, { "TYP", "asterix.062_V1_17_390_IFI_TYP", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_390_IFI_TYP), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_17_390_IFI_NBR, { "NBR, Number from 0 to 99 999 999", "asterix.062_V1_17_390_IFI_NBR", FT_UINT32, BASE_DEC, NULL, 0x07ffffff, NULL, HFILL } },
+ { &hf_062_V1_17_390_FCT, { "FCT, Flight Category", "asterix.062_V1_17_390_FCT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_FCT_GATOAT, { "GATOAT", "asterix.062_V1_17_390_FCT_GATOAT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_390_FCT_GATOAT), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_17_390_FCT_FR1FR2, { "FR1FR2", "asterix.062_V1_17_390_FCT_FR1FR2", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_390_FCT_FR1FR2), 0x30, NULL, HFILL } },
+ { &hf_062_V1_17_390_FCT_RVSM, { "RVSM", "asterix.062_V1_17_390_FCT_RVSM", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_390_FCT_RVSM), 0x0c, NULL, HFILL } },
+ { &hf_062_V1_17_390_FCT_HPR, { "HPR", "asterix.062_V1_17_390_FCT_HPR", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_390_FCT_HPR), 0x02, NULL, HFILL } },
+ { &hf_062_V1_17_390_TAC, { "TAC, Type of Aircraft", "asterix.062_V1_17_390_TAC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_TAC_VALUE, { "Type of Aircraft", "asterix.062_V1_17_390_TAC_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_WTC, { "WTC, Wake Turbulence Category", "asterix.062_V1_17_390_WTC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_WTC_VALUE, { "Wake Turbulence Category", "asterix.062_V1_17_390_WTC_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_DEP, { "DEP, Departure Airport", "asterix.062_V1_17_390_DEP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_DEP_VALUE, { "Departure Airport", "asterix.062_V1_17_390_DEP_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_DST, { "DST, Destination Airport", "asterix.062_V1_17_390_DST", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_DST_VALUE, { "Destination Airport", "asterix.062_V1_17_390_DST_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_RDS, { "RDS, Runway Designation", "asterix.062_V1_17_390_RDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_RDS_NU1, { "NU1, First Number", "asterix.062_V1_17_390_RDS_NU1", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_RDS_NU2, { "NU2, Second Number", "asterix.062_V1_17_390_RDS_NU2", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_RDS_LTR, { "LTR, Letter", "asterix.062_V1_17_390_RDS_LTR", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_CFL, { "CFL, Current Cleared Flight Level", "asterix.062_V1_17_390_CFL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_CFL_VALUE, { "Current Cleared Flight Level, [FL]", "asterix.062_V1_17_390_CFL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_CTL, { "CTL, Current Control Position", "asterix.062_V1_17_390_CTL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_CTL_CENTRE, { "CENTRE, 8-bit Group Identification Code", "asterix.062_V1_17_390_CTL_CENTRE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_CTL_POSITION, { "POSITION, 8-bit Control Position Identification Code", "asterix.062_V1_17_390_CTL_POSITION", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_TOD, { "TOD, Time of Departure / Arrival", "asterix.062_V1_17_390_TOD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_TOD_TYP, { "TYP", "asterix.062_V1_17_390_TOD_TYP", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_390_TOD_TYP), 0xf8, NULL, HFILL } },
+ { &hf_062_V1_17_390_TOD_DAY, { "DAY", "asterix.062_V1_17_390_TOD_DAY", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_390_TOD_DAY), 0x06, NULL, HFILL } },
+ { &hf_062_V1_17_390_TOD_HOR, { "HOR, Hours", "asterix.062_V1_17_390_TOD_HOR", FT_UINT8, BASE_DEC, NULL, 0x1f, NULL, HFILL } },
+ { &hf_062_V1_17_390_TOD_MIN, { "MIN, Minutes", "asterix.062_V1_17_390_TOD_MIN", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_062_V1_17_390_TOD_AVS, { "AVS, Seconds Available Flag", "asterix.062_V1_17_390_TOD_AVS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_390_TOD_AVS), 0x80, NULL, HFILL } },
+ { &hf_062_V1_17_390_TOD_SEC, { "SEC, Seconds", "asterix.062_V1_17_390_TOD_SEC", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_062_V1_17_390_AST, { "AST, Aircraft Stand", "asterix.062_V1_17_390_AST", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_AST_VALUE, { "Aircraft Stand", "asterix.062_V1_17_390_AST_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_STS, { "STS, Stand Status", "asterix.062_V1_17_390_STS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_STS_EMP, { "EMP", "asterix.062_V1_17_390_STS_EMP", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_390_STS_EMP), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_17_390_STS_AVL, { "AVL", "asterix.062_V1_17_390_STS_AVL", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_390_STS_AVL), 0x30, NULL, HFILL } },
+ { &hf_062_V1_17_390_STD, { "STD, Standard Instrument Departure", "asterix.062_V1_17_390_STD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_STD_VALUE, { "Standard Instrument Departure", "asterix.062_V1_17_390_STD_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_STA, { "STA, Standard Instrument Arrival", "asterix.062_V1_17_390_STA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_STA_VALUE, { "Standard Instrument Arrival", "asterix.062_V1_17_390_STA_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_PEM, { "PEM, Pre-Emergency Mode 3/A", "asterix.062_V1_17_390_PEM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_PEM_VA, { "VA", "asterix.062_V1_17_390_PEM_VA", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_17_390_PEM_VA), 0x10, NULL, HFILL } },
+ { &hf_062_V1_17_390_PEM_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.062_V1_17_390_PEM_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_062_V1_17_390_PEC, { "PEC, Pre-Emergency Callsign", "asterix.062_V1_17_390_PEC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_390_PEC_VALUE, { "Pre-Emergency Callsign", "asterix.062_V1_17_390_PEC_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_500, { "500, Estimated Accuracies", "asterix.062_V1_17_500", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_500_APC, { "APC, Estimated Accuracy Of Track Position (Cartesian)", "asterix.062_V1_17_500_APC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_500_APC_X, { "X, APC (X-Component), [m]", "asterix.062_V1_17_500_APC_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_500_APC_Y, { "Y, APC (Y-Component), [m]", "asterix.062_V1_17_500_APC_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_500_COV, { "COV, XY Covariance Component", "asterix.062_V1_17_500_COV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_500_COV_VALUE, { "XY Covariance Component, [m]", "asterix.062_V1_17_500_COV_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_500_APW, { "APW, Estimated Accuracy Of Track Position (WGS-84)", "asterix.062_V1_17_500_APW", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_500_APW_LAT, { "LAT, APW (Latitude Component), [°]", "asterix.062_V1_17_500_APW_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_500_APW_LON, { "LON, APW (Longitude Component), [°]", "asterix.062_V1_17_500_APW_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_500_AGA, { "AGA, Estimated Accuracy Of Calculated Track Geometric Altitude", "asterix.062_V1_17_500_AGA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_500_AGA_VALUE, { "Estimated Accuracy Of Calculated Track Geometric Altitude, [ft]", "asterix.062_V1_17_500_AGA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_500_ABA, { "ABA, Estimated Accuracy Of Calculated Track Barometric Altitude", "asterix.062_V1_17_500_ABA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_500_ABA_VALUE, { "Estimated Accuracy Of Calculated Track Barometric Altitude, [FL]", "asterix.062_V1_17_500_ABA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_500_ATV, { "ATV, Estimated Accuracy Of Track Velocity (Cartesian)", "asterix.062_V1_17_500_ATV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_500_ATV_X, { "X, ATV (X-Component), [m/s]", "asterix.062_V1_17_500_ATV_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_500_ATV_Y, { "Y, ATV (Y-Component), [m/s]", "asterix.062_V1_17_500_ATV_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_500_AA, { "AA, Estimated Accuracy Of Acceleration (Cartesian)", "asterix.062_V1_17_500_AA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_500_AA_X, { "X, AA (X-Component), [m/s2]", "asterix.062_V1_17_500_AA_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_500_AA_Y, { "Y, AA (Y-Component), [m/s2]", "asterix.062_V1_17_500_AA_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_500_ARC, { "ARC, Estimated Accuracy Of Rate Of Climb/Descent", "asterix.062_V1_17_500_ARC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_500_ARC_VALUE, { "Estimated Accuracy Of Rate Of Climb/Descent, [ft/min]", "asterix.062_V1_17_500_ARC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_510, { "510, Composed Track Number", "asterix.062_V1_17_510", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_510_MIDENT, { "MIDENT, Master System Unit Identification", "asterix.062_V1_17_510_MIDENT", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_510_MTRACK, { "MTRACK, Master System Track Number", "asterix.062_V1_17_510_MTRACK", FT_UINT16, BASE_DEC, NULL, 0xfffe, NULL, HFILL } },
+ { &hf_062_V1_17_510_SIDENT, { "SIDENT, Slave System Unit Identification", "asterix.062_V1_17_510_SIDENT", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_510_STRACK, { "STRACK, Slave System Track Number", "asterix.062_V1_17_510_STRACK", FT_UINT16, BASE_DEC, NULL, 0xfffe, NULL, HFILL } },
+ { &hf_062_V1_17_RE, { "RE, Reserved Expansion Field", "asterix.062_V1_17_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_17_SP, { "SP, Special Purpose Field", "asterix.062_V1_17_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_010, { "010, Data Source Identifier", "asterix.062_V1_18_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_010_SAC, { "SAC, System Area Code", "asterix.062_V1_18_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_010_SIC, { "SIC, System Identification Code", "asterix.062_V1_18_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_015, { "015, Service Identification", "asterix.062_V1_18_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_015_VALUE, { "Service Identification", "asterix.062_V1_18_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_040, { "040, Track Number", "asterix.062_V1_18_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_040_VALUE, { "Track Number", "asterix.062_V1_18_040_VALUE", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_060, { "060, Track Mode 3/A Code", "asterix.062_V1_18_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_060_V, { "V, Validated", "asterix.062_V1_18_060_V", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_060_V), 0x80, NULL, HFILL } },
+ { &hf_062_V1_18_060_G, { "G, Garbled", "asterix.062_V1_18_060_G", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_060_G), 0x40, NULL, HFILL } },
+ { &hf_062_V1_18_060_CH, { "CH, Change in Mode 3/A", "asterix.062_V1_18_060_CH", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_060_CH), 0x20, NULL, HFILL } },
+ { &hf_062_V1_18_060_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.062_V1_18_060_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_062_V1_18_070, { "070, Time Of Track Information", "asterix.062_V1_18_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_070_VALUE, { "Time Of Track Information, [s]", "asterix.062_V1_18_070_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_080, { "080, Track Status", "asterix.062_V1_18_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_080_MON, { "MON", "asterix.062_V1_18_080_MON", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_MON), 0x80, NULL, HFILL } },
+ { &hf_062_V1_18_080_SPI, { "SPI", "asterix.062_V1_18_080_SPI", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_SPI), 0x40, NULL, HFILL } },
+ { &hf_062_V1_18_080_MRH, { "MRH, Most Reliable Height", "asterix.062_V1_18_080_MRH", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_MRH), 0x20, NULL, HFILL } },
+ { &hf_062_V1_18_080_SRC, { "SRC, Source of Calculated Track Altitude for I062/130", "asterix.062_V1_18_080_SRC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_SRC), 0x1c, NULL, HFILL } },
+ { &hf_062_V1_18_080_CNF, { "CNF", "asterix.062_V1_18_080_CNF", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_CNF), 0x02, NULL, HFILL } },
+ { &hf_062_V1_18_080_SIM, { "SIM", "asterix.062_V1_18_080_SIM", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_SIM), 0x80, NULL, HFILL } },
+ { &hf_062_V1_18_080_TSE, { "TSE", "asterix.062_V1_18_080_TSE", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_TSE), 0x40, NULL, HFILL } },
+ { &hf_062_V1_18_080_TSB, { "TSB", "asterix.062_V1_18_080_TSB", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_TSB), 0x20, NULL, HFILL } },
+ { &hf_062_V1_18_080_FPC, { "FPC", "asterix.062_V1_18_080_FPC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_FPC), 0x10, NULL, HFILL } },
+ { &hf_062_V1_18_080_AFF, { "AFF", "asterix.062_V1_18_080_AFF", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_AFF), 0x08, NULL, HFILL } },
+ { &hf_062_V1_18_080_STP, { "STP", "asterix.062_V1_18_080_STP", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_STP), 0x04, NULL, HFILL } },
+ { &hf_062_V1_18_080_KOS, { "KOS", "asterix.062_V1_18_080_KOS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_KOS), 0x02, NULL, HFILL } },
+ { &hf_062_V1_18_080_AMA, { "AMA", "asterix.062_V1_18_080_AMA", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_AMA), 0x80, NULL, HFILL } },
+ { &hf_062_V1_18_080_MD4, { "MD4", "asterix.062_V1_18_080_MD4", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_MD4), 0x60, NULL, HFILL } },
+ { &hf_062_V1_18_080_ME, { "ME", "asterix.062_V1_18_080_ME", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_ME), 0x10, NULL, HFILL } },
+ { &hf_062_V1_18_080_MI, { "MI", "asterix.062_V1_18_080_MI", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_MI), 0x08, NULL, HFILL } },
+ { &hf_062_V1_18_080_MD5, { "MD5", "asterix.062_V1_18_080_MD5", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_MD5), 0x06, NULL, HFILL } },
+ { &hf_062_V1_18_080_CST, { "CST", "asterix.062_V1_18_080_CST", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_CST), 0x80, NULL, HFILL } },
+ { &hf_062_V1_18_080_PSR, { "PSR", "asterix.062_V1_18_080_PSR", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_PSR), 0x40, NULL, HFILL } },
+ { &hf_062_V1_18_080_SSR, { "SSR", "asterix.062_V1_18_080_SSR", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_SSR), 0x20, NULL, HFILL } },
+ { &hf_062_V1_18_080_MDS, { "MDS", "asterix.062_V1_18_080_MDS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_MDS), 0x10, NULL, HFILL } },
+ { &hf_062_V1_18_080_ADS, { "ADS", "asterix.062_V1_18_080_ADS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_ADS), 0x08, NULL, HFILL } },
+ { &hf_062_V1_18_080_SUC, { "SUC", "asterix.062_V1_18_080_SUC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_SUC), 0x04, NULL, HFILL } },
+ { &hf_062_V1_18_080_AAC, { "AAC", "asterix.062_V1_18_080_AAC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_AAC), 0x02, NULL, HFILL } },
+ { &hf_062_V1_18_080_SDS, { "SDS", "asterix.062_V1_18_080_SDS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_SDS), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_18_080_EMS, { "EMS", "asterix.062_V1_18_080_EMS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_EMS), 0x38, NULL, HFILL } },
+ { &hf_062_V1_18_080_PFT, { "PFT", "asterix.062_V1_18_080_PFT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_PFT), 0x04, NULL, HFILL } },
+ { &hf_062_V1_18_080_FPLT, { "FPLT", "asterix.062_V1_18_080_FPLT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_FPLT), 0x02, NULL, HFILL } },
+ { &hf_062_V1_18_080_DUPT, { "DUPT", "asterix.062_V1_18_080_DUPT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_DUPT), 0x80, NULL, HFILL } },
+ { &hf_062_V1_18_080_DUPF, { "DUPF", "asterix.062_V1_18_080_DUPF", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_DUPF), 0x40, NULL, HFILL } },
+ { &hf_062_V1_18_080_DUPM, { "DUPM", "asterix.062_V1_18_080_DUPM", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_DUPM), 0x20, NULL, HFILL } },
+ { &hf_062_V1_18_080_SFC, { "SFC", "asterix.062_V1_18_080_SFC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_SFC), 0x10, NULL, HFILL } },
+ { &hf_062_V1_18_080_IDD, { "IDD", "asterix.062_V1_18_080_IDD", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_IDD), 0x08, NULL, HFILL } },
+ { &hf_062_V1_18_080_IEC, { "IEC", "asterix.062_V1_18_080_IEC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_080_IEC), 0x04, NULL, HFILL } },
+ { &hf_062_V1_18_100, { "100, Calculated Track Position (Cartesian)", "asterix.062_V1_18_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_100_X, { "X, X Coordinate, [m]", "asterix.062_V1_18_100_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_100_Y, { "Y, Y Coordinate, [m]", "asterix.062_V1_18_100_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_105, { "105, Calculated Position In WGS-84 Co-ordinates", "asterix.062_V1_18_105", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_105_LAT, { "LAT, Latitude, [°]", "asterix.062_V1_18_105_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_105_LON, { "LON, Longitude, [°]", "asterix.062_V1_18_105_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_110, { "110, Mode 5 Data Reports and Extended Mode 1 Code", "asterix.062_V1_18_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_110_SUM, { "SUM, Mode 5 Summary", "asterix.062_V1_18_110_SUM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_110_SUM_M5, { "M5", "asterix.062_V1_18_110_SUM_M5", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_110_SUM_M5), 0x80, NULL, HFILL } },
+ { &hf_062_V1_18_110_SUM_ID, { "ID", "asterix.062_V1_18_110_SUM_ID", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_110_SUM_ID), 0x40, NULL, HFILL } },
+ { &hf_062_V1_18_110_SUM_DA, { "DA", "asterix.062_V1_18_110_SUM_DA", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_110_SUM_DA), 0x20, NULL, HFILL } },
+ { &hf_062_V1_18_110_SUM_M1, { "M1", "asterix.062_V1_18_110_SUM_M1", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_110_SUM_M1), 0x10, NULL, HFILL } },
+ { &hf_062_V1_18_110_SUM_M2, { "M2", "asterix.062_V1_18_110_SUM_M2", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_110_SUM_M2), 0x08, NULL, HFILL } },
+ { &hf_062_V1_18_110_SUM_M3, { "M3", "asterix.062_V1_18_110_SUM_M3", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_110_SUM_M3), 0x04, NULL, HFILL } },
+ { &hf_062_V1_18_110_SUM_MC, { "MC", "asterix.062_V1_18_110_SUM_MC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_110_SUM_MC), 0x02, NULL, HFILL } },
+ { &hf_062_V1_18_110_SUM_X, { "X, X-pulse from Mode 5 Data Reply or Report", "asterix.062_V1_18_110_SUM_X", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_110_SUM_X), 0x01, NULL, HFILL } },
+ { &hf_062_V1_18_110_PMN, { "PMN, Mode 5 PIN/ National Origin/Mission Code", "asterix.062_V1_18_110_PMN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_110_PMN_PIN, { "PIN, PIN Code", "asterix.062_V1_18_110_PMN_PIN", FT_UINT16, BASE_DEC, NULL, 0x3fff, NULL, HFILL } },
+ { &hf_062_V1_18_110_PMN_NAT, { "NAT, National Origin", "asterix.062_V1_18_110_PMN_NAT", FT_UINT8, BASE_DEC, NULL, 0x1f, NULL, HFILL } },
+ { &hf_062_V1_18_110_PMN_MIS, { "MIS, Mission Code", "asterix.062_V1_18_110_PMN_MIS", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_062_V1_18_110_POS, { "POS, Mode 5 Reported Position", "asterix.062_V1_18_110_POS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_110_POS_LAT, { "LAT, Latitude, [°]", "asterix.062_V1_18_110_POS_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_110_POS_LON, { "LON, Longitude, [°]", "asterix.062_V1_18_110_POS_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_110_GA, { "GA, Mode 5 GNSS-derived Altitude", "asterix.062_V1_18_110_GA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_110_GA_RES, { "RES, Resolution with which the GNSS-derived Altitude (GA) is Reported", "asterix.062_V1_18_110_GA_RES", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_110_GA_RES), 0x40, NULL, HFILL } },
+ { &hf_062_V1_18_110_GA_GA, { "GA, GNSS-derived Altitude of Target, Expressed as Height Above WGS 84 Ellipsoid, [ft]", "asterix.062_V1_18_110_GA_GA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_110_EM1, { "EM1, Extended Mode 1 Code in Octal Representation", "asterix.062_V1_18_110_EM1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_110_EM1_EM1, { "EM1, Extended Mode 1 Reply in Octal Representation", "asterix.062_V1_18_110_EM1_EM1", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_062_V1_18_110_TOS, { "TOS, Time Offset for POS and GA", "asterix.062_V1_18_110_TOS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_110_TOS_VALUE, { "Time Offset for POS and GA, [s]", "asterix.062_V1_18_110_TOS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_110_XP, { "XP, X Pulse Presence", "asterix.062_V1_18_110_XP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_110_XP_X5, { "X5, X-pulse from Mode 5 Data Reply or Report", "asterix.062_V1_18_110_XP_X5", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_110_XP_X5), 0x10, NULL, HFILL } },
+ { &hf_062_V1_18_110_XP_XC, { "XC, X-pulse from Mode C Reply", "asterix.062_V1_18_110_XP_XC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_110_XP_XC), 0x08, NULL, HFILL } },
+ { &hf_062_V1_18_110_XP_X3, { "X3, X-pulse from Mode 3/A Reply", "asterix.062_V1_18_110_XP_X3", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_110_XP_X3), 0x04, NULL, HFILL } },
+ { &hf_062_V1_18_110_XP_X2, { "X2, X-pulse from Mode 2 Reply", "asterix.062_V1_18_110_XP_X2", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_110_XP_X2), 0x02, NULL, HFILL } },
+ { &hf_062_V1_18_110_XP_X1, { "X1, X-pulse from Mode 1 Reply", "asterix.062_V1_18_110_XP_X1", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_110_XP_X1), 0x01, NULL, HFILL } },
+ { &hf_062_V1_18_120, { "120, Track Mode 2 Code", "asterix.062_V1_18_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_120_MODE2, { "MODE2, Mode-2 Code in Octal Representation", "asterix.062_V1_18_120_MODE2", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_062_V1_18_130, { "130, Calculated Track Geometric Altitude", "asterix.062_V1_18_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_130_VALUE, { "Calculated Track Geometric Altitude, [ft]", "asterix.062_V1_18_130_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_135, { "135, Calculated Track Barometric Altitude", "asterix.062_V1_18_135", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_135_QNH, { "QNH", "asterix.062_V1_18_135_QNH", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_135_QNH), 0x80, NULL, HFILL } },
+ { &hf_062_V1_18_135_CTB, { "CTB, Calculated Track Barometric Altitude, [FL]", "asterix.062_V1_18_135_CTB", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_136, { "136, Measured Flight Level", "asterix.062_V1_18_136", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_136_VALUE, { "Measured Flight Level, [FL]", "asterix.062_V1_18_136_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_185, { "185, Calculated Track Velocity (Cartesian)", "asterix.062_V1_18_185", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_185_VX, { "VX, Velocity (X-component), [m/s]", "asterix.062_V1_18_185_VX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_185_VY, { "VY, Velocity (Y-component), [m/s]", "asterix.062_V1_18_185_VY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_200, { "200, Mode of Movement", "asterix.062_V1_18_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_200_TRANS, { "TRANS, Transversal Acceleration", "asterix.062_V1_18_200_TRANS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_200_TRANS), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_18_200_LONG, { "LONG, Longitudinal Acceleration", "asterix.062_V1_18_200_LONG", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_200_LONG), 0x30, NULL, HFILL } },
+ { &hf_062_V1_18_200_VERT, { "VERT, Transversal Acceleration", "asterix.062_V1_18_200_VERT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_200_VERT), 0x0c, NULL, HFILL } },
+ { &hf_062_V1_18_200_ADF, { "ADF, Altitude Discrepancy Flag", "asterix.062_V1_18_200_ADF", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_200_ADF), 0x02, NULL, HFILL } },
+ { &hf_062_V1_18_210, { "210, Calculated Acceleration (Cartesian)", "asterix.062_V1_18_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_210_AX, { "AX, [m/s2]", "asterix.062_V1_18_210_AX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_210_AY, { "AY, [m/s2]", "asterix.062_V1_18_210_AY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_220, { "220, Calculated Rate of Climb/Descent", "asterix.062_V1_18_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_220_VALUE, { "Calculated Rate of Climb/Descent, [ft/min]", "asterix.062_V1_18_220_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_245, { "245, Target Identification", "asterix.062_V1_18_245", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_245_STI, { "STI", "asterix.062_V1_18_245_STI", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_245_STI), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_18_245_CHR, { "CHR, Characters 1-8 (Coded on 6 Bits Each) Defining Target Identification", "asterix.062_V1_18_245_CHR", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_270, { "270, Target Size and Orientation", "asterix.062_V1_18_270", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_270_LENGTH, { "LENGTH, Length, [m]", "asterix.062_V1_18_270_LENGTH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_270_ORIENTATION, { "ORIENTATION, Orientation, [°]", "asterix.062_V1_18_270_ORIENTATION", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_270_WIDTH, { "WIDTH, Width, [m]", "asterix.062_V1_18_270_WIDTH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_290, { "290, System Track Update Ages", "asterix.062_V1_18_290", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_290_TRK, { "TRK, Track Age", "asterix.062_V1_18_290_TRK", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_290_TRK_VALUE, { "Track Age, [s]", "asterix.062_V1_18_290_TRK_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_290_PSR, { "PSR, PSR Age", "asterix.062_V1_18_290_PSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_290_PSR_VALUE, { "PSR Age, [s]", "asterix.062_V1_18_290_PSR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_290_SSR, { "SSR, SSR Age", "asterix.062_V1_18_290_SSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_290_SSR_VALUE, { "SSR Age, [s]", "asterix.062_V1_18_290_SSR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_290_MDS, { "MDS, Mode S Age", "asterix.062_V1_18_290_MDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_290_MDS_VALUE, { "Mode S Age, [s]", "asterix.062_V1_18_290_MDS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_290_ADS, { "ADS, ADS-C Age", "asterix.062_V1_18_290_ADS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_290_ADS_VALUE, { "ADS-C Age, [s]", "asterix.062_V1_18_290_ADS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_290_ES, { "ES, ADS-B Extended Squitter Age", "asterix.062_V1_18_290_ES", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_290_ES_VALUE, { "ADS-B Extended Squitter Age, [s]", "asterix.062_V1_18_290_ES_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_290_VDL, { "VDL, ADS-B VDL Mode 4 Age", "asterix.062_V1_18_290_VDL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_290_VDL_VALUE, { "ADS-B VDL Mode 4 Age, [s]", "asterix.062_V1_18_290_VDL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_290_UAT, { "UAT, ADS-B UAT Age", "asterix.062_V1_18_290_UAT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_290_UAT_VALUE, { "ADS-B UAT Age, [s]", "asterix.062_V1_18_290_UAT_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_290_LOP, { "LOP, Loop Age", "asterix.062_V1_18_290_LOP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_290_LOP_VALUE, { "Loop Age, [s]", "asterix.062_V1_18_290_LOP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_290_MLT, { "MLT, Multilateration Age", "asterix.062_V1_18_290_MLT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_290_MLT_VALUE, { "Multilateration Age, [s]", "asterix.062_V1_18_290_MLT_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295, { "295, Track Data Ages", "asterix.062_V1_18_295", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_MFL, { "MFL, Measured Flight Level Age", "asterix.062_V1_18_295_MFL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_MFL_VALUE, { "Measured Flight Level Age, [s]", "asterix.062_V1_18_295_MFL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_MD1, { "MD1, Mode 1 Age", "asterix.062_V1_18_295_MD1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_MD1_VALUE, { "Mode 1 Age, [s]", "asterix.062_V1_18_295_MD1_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_MD2, { "MD2, Mode 2 Age", "asterix.062_V1_18_295_MD2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_MD2_VALUE, { "Mode 2 Age, [s]", "asterix.062_V1_18_295_MD2_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_MDA, { "MDA, Mode 3/A Age", "asterix.062_V1_18_295_MDA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_MDA_VALUE, { "Mode 3/A Age, [s]", "asterix.062_V1_18_295_MDA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_MD4, { "MD4, Mode 4 Age", "asterix.062_V1_18_295_MD4", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_MD4_VALUE, { "Mode 4 Age, [s]", "asterix.062_V1_18_295_MD4_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_MD5, { "MD5, Mode 5 Age", "asterix.062_V1_18_295_MD5", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_MD5_VALUE, { "Mode 5 Age, [s]", "asterix.062_V1_18_295_MD5_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_MHG, { "MHG, Magnetic Heading Age", "asterix.062_V1_18_295_MHG", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_MHG_VALUE, { "Magnetic Heading Age, [s]", "asterix.062_V1_18_295_MHG_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_IAS, { "IAS, Indicated Airspeed / Mach Nb Age", "asterix.062_V1_18_295_IAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_IAS_VALUE, { "Indicated Airspeed / Mach Nb Age, [s]", "asterix.062_V1_18_295_IAS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_TAS, { "TAS, True Airspeed Age", "asterix.062_V1_18_295_TAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_TAS_VALUE, { "True Airspeed Age, [s]", "asterix.062_V1_18_295_TAS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_SAL, { "SAL, Selected Altitude Age", "asterix.062_V1_18_295_SAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_SAL_VALUE, { "Selected Altitude Age, [s]", "asterix.062_V1_18_295_SAL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_FSS, { "FSS, Final State Selected Altitude Age", "asterix.062_V1_18_295_FSS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_FSS_VALUE, { "Final State Selected Altitude Age, [s]", "asterix.062_V1_18_295_FSS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_TID, { "TID, Trajectory Intent Age", "asterix.062_V1_18_295_TID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_TID_VALUE, { "Trajectory Intent Age, [s]", "asterix.062_V1_18_295_TID_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_COM, { "COM, Communication/ACAS Capability and Flight Status Age", "asterix.062_V1_18_295_COM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_COM_VALUE, { "Communication/ACAS Capability and Flight Status Age, [s]", "asterix.062_V1_18_295_COM_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_SAB, { "SAB, Status Reported by ADS-B Age", "asterix.062_V1_18_295_SAB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_SAB_VALUE, { "Status Reported by ADS-B Age, [s]", "asterix.062_V1_18_295_SAB_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_ACS, { "ACS, ACAS Resolution Advisory Report Age", "asterix.062_V1_18_295_ACS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_ACS_VALUE, { "ACAS Resolution Advisory Report Age, [s]", "asterix.062_V1_18_295_ACS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_BVR, { "BVR, Barometric Vertical Rate Age", "asterix.062_V1_18_295_BVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_BVR_VALUE, { "Barometric Vertical Rate Age, [s]", "asterix.062_V1_18_295_BVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_GVR, { "GVR, Geometrical Vertical Rate Age", "asterix.062_V1_18_295_GVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_GVR_VALUE, { "Geometrical Vertical Rate Age, [s]", "asterix.062_V1_18_295_GVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_RAN, { "RAN, Roll Angle Age", "asterix.062_V1_18_295_RAN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_RAN_VALUE, { "Roll Angle Age, [s]", "asterix.062_V1_18_295_RAN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_TAR, { "TAR, Track Angle Rate Age", "asterix.062_V1_18_295_TAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_TAR_VALUE, { "Track Angle Rate Age, [s]", "asterix.062_V1_18_295_TAR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_TAN, { "TAN, Track Angle Age", "asterix.062_V1_18_295_TAN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_TAN_VALUE, { "Track Angle Age, [s]", "asterix.062_V1_18_295_TAN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_GSP, { "GSP, Ground Speed Age", "asterix.062_V1_18_295_GSP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_GSP_VALUE, { "Ground Speed Age, [s]", "asterix.062_V1_18_295_GSP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_VUN, { "VUN, Velocity Uncertainty Age", "asterix.062_V1_18_295_VUN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_VUN_VALUE, { "Velocity Uncertainty Age, [s]", "asterix.062_V1_18_295_VUN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_MET, { "MET, Meteorological Data Age", "asterix.062_V1_18_295_MET", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_MET_VALUE, { "Meteorological Data Age, [s]", "asterix.062_V1_18_295_MET_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_EMC, { "EMC, Emitter Category Age", "asterix.062_V1_18_295_EMC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_EMC_VALUE, { "Emitter Category Age, [s]", "asterix.062_V1_18_295_EMC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_POS, { "POS, Position Age", "asterix.062_V1_18_295_POS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_POS_VALUE, { "Position Age, [s]", "asterix.062_V1_18_295_POS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_GAL, { "GAL, Geometric Altitude Age", "asterix.062_V1_18_295_GAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_GAL_VALUE, { "Geometric Altitude Age, [s]", "asterix.062_V1_18_295_GAL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_PUN, { "PUN, Position Uncertainty Age", "asterix.062_V1_18_295_PUN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_PUN_VALUE, { "Position Uncertainty Age, [s]", "asterix.062_V1_18_295_PUN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_MB, { "MB, Mode S MB Data Age", "asterix.062_V1_18_295_MB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_MB_VALUE, { "Mode S MB Data Age, [s]", "asterix.062_V1_18_295_MB_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_IAR, { "IAR, Indicated Airspeed Data Age", "asterix.062_V1_18_295_IAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_IAR_VALUE, { "Indicated Airspeed Data Age, [s]", "asterix.062_V1_18_295_IAR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_MAC, { "MAC, Mach Number Data Age", "asterix.062_V1_18_295_MAC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_MAC_VALUE, { "Mach Number Data Age, [s]", "asterix.062_V1_18_295_MAC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_BPS, { "BPS, Barometric Pressure Setting Data Age", "asterix.062_V1_18_295_BPS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_295_BPS_VALUE, { "Barometric Pressure Setting Data Age, [s]", "asterix.062_V1_18_295_BPS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_300, { "300, Vehicle Fleet Identification", "asterix.062_V1_18_300", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_300_VALUE, { "Vehicle Fleet Identification", "asterix.062_V1_18_300_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_300_VALUE), 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_340, { "340, Measured Information", "asterix.062_V1_18_340", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_340_SID, { "SID, Sensor Identification", "asterix.062_V1_18_340_SID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_340_SID_SAC, { "SAC, System Area Code", "asterix.062_V1_18_340_SID_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_340_SID_SIC, { "SIC, System Identification Code", "asterix.062_V1_18_340_SID_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_340_POS, { "POS, Measured Position", "asterix.062_V1_18_340_POS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_340_POS_RHO, { "RHO, Measured Distance, [NM]", "asterix.062_V1_18_340_POS_RHO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_340_POS_THETA, { "THETA, Measured Azimuth, [°]", "asterix.062_V1_18_340_POS_THETA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_340_HEIGHT, { "HEIGHT, Measured 3-D Height", "asterix.062_V1_18_340_HEIGHT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_340_HEIGHT_VALUE, { "Measured 3-D Height, [ft]", "asterix.062_V1_18_340_HEIGHT_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_340_MDC, { "MDC", "asterix.062_V1_18_340_MDC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_340_MDC_V, { "V, Validated", "asterix.062_V1_18_340_MDC_V", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_340_MDC_V), 0x80, NULL, HFILL } },
+ { &hf_062_V1_18_340_MDC_G, { "G, Garbled", "asterix.062_V1_18_340_MDC_G", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_340_MDC_G), 0x40, NULL, HFILL } },
+ { &hf_062_V1_18_340_MDC_LMC, { "LMC, Last Measured Mode C Code, [FL]", "asterix.062_V1_18_340_MDC_LMC", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_340_MDA, { "MDA", "asterix.062_V1_18_340_MDA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_340_MDA_V, { "V, Validated", "asterix.062_V1_18_340_MDA_V", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_340_MDA_V), 0x80, NULL, HFILL } },
+ { &hf_062_V1_18_340_MDA_G, { "G, Garbled", "asterix.062_V1_18_340_MDA_G", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_340_MDA_G), 0x40, NULL, HFILL } },
+ { &hf_062_V1_18_340_MDA_L, { "L", "asterix.062_V1_18_340_MDA_L", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_340_MDA_L), 0x20, NULL, HFILL } },
+ { &hf_062_V1_18_340_MDA_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.062_V1_18_340_MDA_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_062_V1_18_340_TYP, { "TYP", "asterix.062_V1_18_340_TYP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_340_TYP_TYP, { "TYP, Report Type", "asterix.062_V1_18_340_TYP_TYP", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_340_TYP_TYP), 0xe0, NULL, HFILL } },
+ { &hf_062_V1_18_340_TYP_SIM, { "SIM", "asterix.062_V1_18_340_TYP_SIM", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_340_TYP_SIM), 0x10, NULL, HFILL } },
+ { &hf_062_V1_18_340_TYP_RAB, { "RAB", "asterix.062_V1_18_340_TYP_RAB", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_340_TYP_RAB), 0x08, NULL, HFILL } },
+ { &hf_062_V1_18_340_TYP_TST, { "TST", "asterix.062_V1_18_340_TYP_TST", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_340_TYP_TST), 0x04, NULL, HFILL } },
+ { &hf_062_V1_18_380, { "380, Aircraft Derived Data", "asterix.062_V1_18_380", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_ADR, { "ADR, Target Address", "asterix.062_V1_18_380_ADR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_ADR_VALUE, { "Target Address", "asterix.062_V1_18_380_ADR_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_ID, { "ID, Target Identification", "asterix.062_V1_18_380_ID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_ID_VALUE, { "Target Identification", "asterix.062_V1_18_380_ID_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_MHG, { "MHG, Magnetic Heading", "asterix.062_V1_18_380_MHG", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_MHG_VALUE, { "Magnetic Heading, [°]", "asterix.062_V1_18_380_MHG_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_IAS, { "IAS, Indicated Airspeed/Mach No", "asterix.062_V1_18_380_IAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_IAS_IM, { "IM", "asterix.062_V1_18_380_IAS_IM", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_IAS_IM), 0x80, NULL, HFILL } },
+ { &hf_062_V1_18_380_IAS_IAS, { "IAS", "asterix.062_V1_18_380_IAS_IAS", FT_UINT16, BASE_DEC, NULL, 0x7fff, NULL, HFILL } },
+ { &hf_062_V1_18_380_TAS, { "TAS, True Airspeed", "asterix.062_V1_18_380_TAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_TAS_VALUE, { "True Airspeed, [kt]", "asterix.062_V1_18_380_TAS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_SAL, { "SAL, Selected Altitude", "asterix.062_V1_18_380_SAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_SAL_SAS, { "SAS", "asterix.062_V1_18_380_SAL_SAS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_SAL_SAS), 0x80, NULL, HFILL } },
+ { &hf_062_V1_18_380_SAL_SRC, { "SRC", "asterix.062_V1_18_380_SAL_SRC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_SAL_SRC), 0x60, NULL, HFILL } },
+ { &hf_062_V1_18_380_SAL_ALT, { "ALT, Altitude in Two's Complement Form, [ft]", "asterix.062_V1_18_380_SAL_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_FSS, { "FSS, Final State Selected Altitude", "asterix.062_V1_18_380_FSS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_FSS_MV, { "MV, Manage Vertical Mode", "asterix.062_V1_18_380_FSS_MV", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_FSS_MV), 0x80, NULL, HFILL } },
+ { &hf_062_V1_18_380_FSS_AH, { "AH, Altitude Hold", "asterix.062_V1_18_380_FSS_AH", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_FSS_AH), 0x40, NULL, HFILL } },
+ { &hf_062_V1_18_380_FSS_AM, { "AM, Approach Mode", "asterix.062_V1_18_380_FSS_AM", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_FSS_AM), 0x20, NULL, HFILL } },
+ { &hf_062_V1_18_380_FSS_ALT, { "ALT, Altitude in Two's Complement Form, [ft]", "asterix.062_V1_18_380_FSS_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_TIS, { "TIS, Trajectory Intent Status", "asterix.062_V1_18_380_TIS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_TIS_NAV, { "NAV, TID Available", "asterix.062_V1_18_380_TIS_NAV", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_TIS_NAV), 0x80, NULL, HFILL } },
+ { &hf_062_V1_18_380_TIS_NVB, { "NVB, TID Valid", "asterix.062_V1_18_380_TIS_NVB", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_TIS_NVB), 0x40, NULL, HFILL } },
+ { &hf_062_V1_18_380_TID, { "TID, Trajectory Intent Data", "asterix.062_V1_18_380_TID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_TID_TCA, { "TCA, TCP Number Availability", "asterix.062_V1_18_380_TID_TCA", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_TID_TCA), 0x80, NULL, HFILL } },
+ { &hf_062_V1_18_380_TID_NC, { "NC, TCP Compliance", "asterix.062_V1_18_380_TID_NC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_TID_NC), 0x40, NULL, HFILL } },
+ { &hf_062_V1_18_380_TID_TCPN, { "TCPN, Trajectory Change Point Number", "asterix.062_V1_18_380_TID_TCPN", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_062_V1_18_380_TID_ALT, { "ALT, Altitude in Two's Complement Form, [ft]", "asterix.062_V1_18_380_TID_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_TID_LAT, { "LAT, Latitude in WGS.84 in Two's Complement, [°]", "asterix.062_V1_18_380_TID_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_TID_LON, { "LON, Longitude in WGS.84 in Two's Complement, [°]", "asterix.062_V1_18_380_TID_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_TID_PT, { "PT, Point Type", "asterix.062_V1_18_380_TID_PT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_TID_PT), 0xf0, NULL, HFILL } },
+ { &hf_062_V1_18_380_TID_TD, { "TD, Turn Direction", "asterix.062_V1_18_380_TID_TD", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_TID_TD), 0x0c, NULL, HFILL } },
+ { &hf_062_V1_18_380_TID_TRA, { "TRA, Turn Radius Availability", "asterix.062_V1_18_380_TID_TRA", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_TID_TRA), 0x02, NULL, HFILL } },
+ { &hf_062_V1_18_380_TID_TOA, { "TOA, TOV Available", "asterix.062_V1_18_380_TID_TOA", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_TID_TOA), 0x01, NULL, HFILL } },
+ { &hf_062_V1_18_380_TID_TOV, { "TOV, Time Over Point, [s]", "asterix.062_V1_18_380_TID_TOV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_TID_TTR, { "TTR, TCP Turn Radius, [NM]", "asterix.062_V1_18_380_TID_TTR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_COM, { "COM, Communications/ACAS Capability and Flight Status", "asterix.062_V1_18_380_COM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_COM_COM, { "COM, Communications Capability of the Transponder", "asterix.062_V1_18_380_COM_COM", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_COM_COM), 0xe0, NULL, HFILL } },
+ { &hf_062_V1_18_380_COM_STAT, { "STAT, Flight Status", "asterix.062_V1_18_380_COM_STAT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_COM_STAT), 0x1c, NULL, HFILL } },
+ { &hf_062_V1_18_380_COM_SSC, { "SSC, Specific Service Capability", "asterix.062_V1_18_380_COM_SSC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_COM_SSC), 0x80, NULL, HFILL } },
+ { &hf_062_V1_18_380_COM_ARC, { "ARC, Altitude Reporting Capability", "asterix.062_V1_18_380_COM_ARC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_COM_ARC), 0x40, NULL, HFILL } },
+ { &hf_062_V1_18_380_COM_AIC, { "AIC, Aircraft Identification Capability", "asterix.062_V1_18_380_COM_AIC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_COM_AIC), 0x20, NULL, HFILL } },
+ { &hf_062_V1_18_380_COM_B1A, { "B1A, BDS 1,0 Bit 16", "asterix.062_V1_18_380_COM_B1A", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_062_V1_18_380_COM_B1B, { "B1B, BDS BDS 1,0 Bits 37/40", "asterix.062_V1_18_380_COM_B1B", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_062_V1_18_380_SAB, { "SAB, Status Reported by ADS-B", "asterix.062_V1_18_380_SAB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_SAB_AC, { "AC, ACAS Status", "asterix.062_V1_18_380_SAB_AC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_SAB_AC), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_18_380_SAB_MN, { "MN, Multiple Navigational Aids Status", "asterix.062_V1_18_380_SAB_MN", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_SAB_MN), 0x30, NULL, HFILL } },
+ { &hf_062_V1_18_380_SAB_DC, { "DC, Differential Correction Status", "asterix.062_V1_18_380_SAB_DC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_SAB_DC), 0x0c, NULL, HFILL } },
+ { &hf_062_V1_18_380_SAB_GBS, { "GBS, Ground Bit Set", "asterix.062_V1_18_380_SAB_GBS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_SAB_GBS), 0x02, NULL, HFILL } },
+ { &hf_062_V1_18_380_SAB_STAT, { "STAT, Flight Status", "asterix.062_V1_18_380_SAB_STAT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_SAB_STAT), 0x07, NULL, HFILL } },
+ { &hf_062_V1_18_380_ACS, { "ACS, ACAS Resolution Advisory Report", "asterix.062_V1_18_380_ACS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_ACS_VALUE, { "ACAS Resolution Advisory Report", "asterix.062_V1_18_380_ACS_VALUE", FT_UINT56, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_BVR, { "BVR, Barometric Vertical Rate", "asterix.062_V1_18_380_BVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_BVR_VALUE, { "Barometric Vertical Rate, [ft/min]", "asterix.062_V1_18_380_BVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_GVR, { "GVR, Geometric Vertical Rate", "asterix.062_V1_18_380_GVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_GVR_VALUE, { "Geometric Vertical Rate, [ft/min]", "asterix.062_V1_18_380_GVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_RAN, { "RAN, Roll Angle", "asterix.062_V1_18_380_RAN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_RAN_VALUE, { "Roll Angle, [°]", "asterix.062_V1_18_380_RAN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_TAR, { "TAR, Track Angle Rate", "asterix.062_V1_18_380_TAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_TAR_TI, { "TI, Turn Indicator", "asterix.062_V1_18_380_TAR_TI", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_TAR_TI), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_18_380_TAR_ROT, { "ROT, Rate of Turn in Two's Complement Form, [°/s]", "asterix.062_V1_18_380_TAR_ROT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_TAN, { "TAN, Track Angle", "asterix.062_V1_18_380_TAN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_TAN_VALUE, { "Track Angle, [°]", "asterix.062_V1_18_380_TAN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_GS, { "GS, Ground Speed", "asterix.062_V1_18_380_GS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_GS_VALUE, { "Ground Speed, [NM/s]", "asterix.062_V1_18_380_GS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_VUN, { "VUN, Velocity Uncertainty", "asterix.062_V1_18_380_VUN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_VUN_VALUE, { "Velocity Uncertainty", "asterix.062_V1_18_380_VUN_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_MET, { "MET, Meteorological Data", "asterix.062_V1_18_380_MET", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_MET_WS, { "WS, Wind Speed Valid Flag", "asterix.062_V1_18_380_MET_WS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_MET_WS), 0x80, NULL, HFILL } },
+ { &hf_062_V1_18_380_MET_WD, { "WD, Wind Direction Valid Flag", "asterix.062_V1_18_380_MET_WD", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_MET_WD), 0x40, NULL, HFILL } },
+ { &hf_062_V1_18_380_MET_TMP, { "TMP, Temperature Valid Flag", "asterix.062_V1_18_380_MET_TMP", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_MET_TMP), 0x20, NULL, HFILL } },
+ { &hf_062_V1_18_380_MET_TRB, { "TRB, Turbulence Valid Flag", "asterix.062_V1_18_380_MET_TRB", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_MET_TRB), 0x10, NULL, HFILL } },
+ { &hf_062_V1_18_380_MET_WSD, { "WSD, Wind Speed, [kt]", "asterix.062_V1_18_380_MET_WSD", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_MET_WDD, { "WDD, Wind Direction, [°]", "asterix.062_V1_18_380_MET_WDD", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_MET_TMPD, { "TMPD, Temperature in Degrees Celsius, [°C]", "asterix.062_V1_18_380_MET_TMPD", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_MET_TRBD, { "TRBD, Turbulence", "asterix.062_V1_18_380_MET_TRBD", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_EMC, { "EMC, Emitter Category", "asterix.062_V1_18_380_EMC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_EMC_VALUE, { "Emitter Category", "asterix.062_V1_18_380_EMC_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_380_EMC_VALUE), 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_POS, { "POS, Position", "asterix.062_V1_18_380_POS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_POS_LAT, { "LAT, Latitude in WGS.84 in Two's Complement Form, [°]", "asterix.062_V1_18_380_POS_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_POS_LON, { "LON, Longitude in WGS.84 in Two's Complement Form, [°]", "asterix.062_V1_18_380_POS_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_GAL, { "GAL, Geometric Altitude", "asterix.062_V1_18_380_GAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_GAL_VALUE, { "Geometric Altitude, [ft]", "asterix.062_V1_18_380_GAL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_PUN, { "PUN, Position Uncertainty", "asterix.062_V1_18_380_PUN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_PUN_PUN, { "PUN, Position Uncertainty", "asterix.062_V1_18_380_PUN_PUN", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_062_V1_18_380_MB, { "MB, MODE S MB DATA", "asterix.062_V1_18_380_MB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_MB_VALUE, { "MODE S MB DATA", "asterix.062_V1_18_380_MB_VALUE", FT_UINT64, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_IAR, { "IAR, Indicated Airspeed", "asterix.062_V1_18_380_IAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_IAR_VALUE, { "Indicated Airspeed, [kt]", "asterix.062_V1_18_380_IAR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_MAC, { "MAC, Mach Number", "asterix.062_V1_18_380_MAC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_MAC_VALUE, { "Mach Number, [Mach]", "asterix.062_V1_18_380_MAC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_BPS, { "BPS, Barometric Pressure Setting (derived from Mode S BDS 4,0)", "asterix.062_V1_18_380_BPS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_380_BPS_BPS, { "BPS, [mb]", "asterix.062_V1_18_380_BPS_BPS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390, { "390, Flight Plan Related Data", "asterix.062_V1_18_390", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_TAG, { "TAG, FPPS Identification Tag", "asterix.062_V1_18_390_TAG", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_TAG_SAC, { "SAC, System Area Code", "asterix.062_V1_18_390_TAG_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_TAG_SIC, { "SIC, System Identification Code", "asterix.062_V1_18_390_TAG_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_CS, { "CS, Callsign", "asterix.062_V1_18_390_CS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_CS_VALUE, { "Callsign", "asterix.062_V1_18_390_CS_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_IFI, { "IFI, IFPS_FLIGHT_ID", "asterix.062_V1_18_390_IFI", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_IFI_TYP, { "TYP", "asterix.062_V1_18_390_IFI_TYP", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_390_IFI_TYP), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_18_390_IFI_NBR, { "NBR, Number from 0 to 99 999 999", "asterix.062_V1_18_390_IFI_NBR", FT_UINT32, BASE_DEC, NULL, 0x07ffffff, NULL, HFILL } },
+ { &hf_062_V1_18_390_FCT, { "FCT, Flight Category", "asterix.062_V1_18_390_FCT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_FCT_GATOAT, { "GATOAT", "asterix.062_V1_18_390_FCT_GATOAT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_390_FCT_GATOAT), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_18_390_FCT_FR1FR2, { "FR1FR2", "asterix.062_V1_18_390_FCT_FR1FR2", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_390_FCT_FR1FR2), 0x30, NULL, HFILL } },
+ { &hf_062_V1_18_390_FCT_RVSM, { "RVSM", "asterix.062_V1_18_390_FCT_RVSM", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_390_FCT_RVSM), 0x0c, NULL, HFILL } },
+ { &hf_062_V1_18_390_FCT_HPR, { "HPR", "asterix.062_V1_18_390_FCT_HPR", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_390_FCT_HPR), 0x02, NULL, HFILL } },
+ { &hf_062_V1_18_390_TAC, { "TAC, Type of Aircraft", "asterix.062_V1_18_390_TAC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_TAC_VALUE, { "Type of Aircraft", "asterix.062_V1_18_390_TAC_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_WTC, { "WTC, Wake Turbulence Category", "asterix.062_V1_18_390_WTC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_WTC_VALUE, { "Wake Turbulence Category", "asterix.062_V1_18_390_WTC_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_DEP, { "DEP, Departure Airport", "asterix.062_V1_18_390_DEP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_DEP_VALUE, { "Departure Airport", "asterix.062_V1_18_390_DEP_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_DST, { "DST, Destination Airport", "asterix.062_V1_18_390_DST", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_DST_VALUE, { "Destination Airport", "asterix.062_V1_18_390_DST_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_RDS, { "RDS, Runway Designation", "asterix.062_V1_18_390_RDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_RDS_NU1, { "NU1, First Number", "asterix.062_V1_18_390_RDS_NU1", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_RDS_NU2, { "NU2, Second Number", "asterix.062_V1_18_390_RDS_NU2", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_RDS_LTR, { "LTR, Letter", "asterix.062_V1_18_390_RDS_LTR", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_CFL, { "CFL, Current Cleared Flight Level", "asterix.062_V1_18_390_CFL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_CFL_VALUE, { "Current Cleared Flight Level, [FL]", "asterix.062_V1_18_390_CFL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_CTL, { "CTL, Current Control Position", "asterix.062_V1_18_390_CTL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_CTL_CENTRE, { "CENTRE, 8-bit Group Identification Code", "asterix.062_V1_18_390_CTL_CENTRE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_CTL_POSITION, { "POSITION, 8-bit Control Position Identification Code", "asterix.062_V1_18_390_CTL_POSITION", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_TOD, { "TOD, Time of Departure / Arrival", "asterix.062_V1_18_390_TOD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_TOD_TYP, { "TYP", "asterix.062_V1_18_390_TOD_TYP", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_390_TOD_TYP), 0xf8, NULL, HFILL } },
+ { &hf_062_V1_18_390_TOD_DAY, { "DAY", "asterix.062_V1_18_390_TOD_DAY", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_390_TOD_DAY), 0x06, NULL, HFILL } },
+ { &hf_062_V1_18_390_TOD_HOR, { "HOR, Hours", "asterix.062_V1_18_390_TOD_HOR", FT_UINT8, BASE_DEC, NULL, 0x1f, NULL, HFILL } },
+ { &hf_062_V1_18_390_TOD_MIN, { "MIN, Minutes", "asterix.062_V1_18_390_TOD_MIN", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_062_V1_18_390_TOD_AVS, { "AVS, Seconds Available Flag", "asterix.062_V1_18_390_TOD_AVS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_390_TOD_AVS), 0x80, NULL, HFILL } },
+ { &hf_062_V1_18_390_TOD_SEC, { "SEC, Seconds", "asterix.062_V1_18_390_TOD_SEC", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_062_V1_18_390_AST, { "AST, Aircraft Stand", "asterix.062_V1_18_390_AST", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_AST_VALUE, { "Aircraft Stand", "asterix.062_V1_18_390_AST_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_STS, { "STS, Stand Status", "asterix.062_V1_18_390_STS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_STS_EMP, { "EMP", "asterix.062_V1_18_390_STS_EMP", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_390_STS_EMP), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_18_390_STS_AVL, { "AVL", "asterix.062_V1_18_390_STS_AVL", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_390_STS_AVL), 0x30, NULL, HFILL } },
+ { &hf_062_V1_18_390_STD, { "STD, Standard Instrument Departure", "asterix.062_V1_18_390_STD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_STD_VALUE, { "Standard Instrument Departure", "asterix.062_V1_18_390_STD_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_STA, { "STA, Standard Instrument Arrival", "asterix.062_V1_18_390_STA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_STA_VALUE, { "Standard Instrument Arrival", "asterix.062_V1_18_390_STA_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_PEM, { "PEM, Pre-Emergency Mode 3/A", "asterix.062_V1_18_390_PEM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_PEM_VA, { "VA", "asterix.062_V1_18_390_PEM_VA", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_18_390_PEM_VA), 0x10, NULL, HFILL } },
+ { &hf_062_V1_18_390_PEM_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.062_V1_18_390_PEM_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_062_V1_18_390_PEC, { "PEC, Pre-Emergency Callsign", "asterix.062_V1_18_390_PEC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_390_PEC_VALUE, { "Pre-Emergency Callsign", "asterix.062_V1_18_390_PEC_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_500, { "500, Estimated Accuracies", "asterix.062_V1_18_500", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_500_APC, { "APC, Estimated Accuracy Of Track Position (Cartesian)", "asterix.062_V1_18_500_APC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_500_APC_X, { "X, APC (X-Component), [m]", "asterix.062_V1_18_500_APC_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_500_APC_Y, { "Y, APC (Y-Component), [m]", "asterix.062_V1_18_500_APC_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_500_COV, { "COV, XY Covariance Component", "asterix.062_V1_18_500_COV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_500_COV_VALUE, { "XY Covariance Component, [m]", "asterix.062_V1_18_500_COV_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_500_APW, { "APW, Estimated Accuracy Of Track Position (WGS-84)", "asterix.062_V1_18_500_APW", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_500_APW_LAT, { "LAT, APW (Latitude Component), [°]", "asterix.062_V1_18_500_APW_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_500_APW_LON, { "LON, APW (Longitude Component), [°]", "asterix.062_V1_18_500_APW_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_500_AGA, { "AGA, Estimated Accuracy Of Calculated Track Geometric Altitude", "asterix.062_V1_18_500_AGA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_500_AGA_VALUE, { "Estimated Accuracy Of Calculated Track Geometric Altitude, [ft]", "asterix.062_V1_18_500_AGA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_500_ABA, { "ABA, Estimated Accuracy Of Calculated Track Barometric Altitude", "asterix.062_V1_18_500_ABA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_500_ABA_VALUE, { "Estimated Accuracy Of Calculated Track Barometric Altitude, [FL]", "asterix.062_V1_18_500_ABA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_500_ATV, { "ATV, Estimated Accuracy Of Track Velocity (Cartesian)", "asterix.062_V1_18_500_ATV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_500_ATV_X, { "X, ATV (X-Component), [m/s]", "asterix.062_V1_18_500_ATV_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_500_ATV_Y, { "Y, ATV (Y-Component), [m/s]", "asterix.062_V1_18_500_ATV_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_500_AA, { "AA, Estimated Accuracy Of Acceleration (Cartesian)", "asterix.062_V1_18_500_AA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_500_AA_X, { "X, AA (X-Component), [m/s2]", "asterix.062_V1_18_500_AA_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_500_AA_Y, { "Y, AA (Y-Component), [m/s2]", "asterix.062_V1_18_500_AA_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_500_ARC, { "ARC, Estimated Accuracy Of Rate Of Climb/Descent", "asterix.062_V1_18_500_ARC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_500_ARC_VALUE, { "Estimated Accuracy Of Rate Of Climb/Descent, [ft/min]", "asterix.062_V1_18_500_ARC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_510, { "510, Composed Track Number", "asterix.062_V1_18_510", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_510_MIDENT, { "MIDENT, Master System Unit Identification", "asterix.062_V1_18_510_MIDENT", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_510_MTRACK, { "MTRACK, Master System Track Number", "asterix.062_V1_18_510_MTRACK", FT_UINT16, BASE_DEC, NULL, 0xfffe, NULL, HFILL } },
+ { &hf_062_V1_18_510_SIDENT, { "SIDENT, Slave System Unit Identification", "asterix.062_V1_18_510_SIDENT", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_510_STRACK, { "STRACK, Slave System Track Number", "asterix.062_V1_18_510_STRACK", FT_UINT16, BASE_DEC, NULL, 0xfffe, NULL, HFILL } },
+ { &hf_062_V1_18_RE, { "RE, Reserved Expansion Field", "asterix.062_V1_18_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_18_SP, { "SP, Special Purpose Field", "asterix.062_V1_18_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_010, { "010, Data Source Identifier", "asterix.062_V1_19_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_010_SAC, { "SAC, System Area Code", "asterix.062_V1_19_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_010_SIC, { "SIC, System Identification Code", "asterix.062_V1_19_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_015, { "015, Service Identification", "asterix.062_V1_19_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_015_VALUE, { "Service Identification", "asterix.062_V1_19_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_040, { "040, Track Number", "asterix.062_V1_19_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_040_VALUE, { "Track Number", "asterix.062_V1_19_040_VALUE", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_060, { "060, Track Mode 3/A Code", "asterix.062_V1_19_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_060_V, { "V, Validated", "asterix.062_V1_19_060_V", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_060_V), 0x80, NULL, HFILL } },
+ { &hf_062_V1_19_060_G, { "G, Garbled", "asterix.062_V1_19_060_G", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_060_G), 0x40, NULL, HFILL } },
+ { &hf_062_V1_19_060_CH, { "CH, Change in Mode 3/A", "asterix.062_V1_19_060_CH", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_060_CH), 0x20, NULL, HFILL } },
+ { &hf_062_V1_19_060_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.062_V1_19_060_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_062_V1_19_070, { "070, Time Of Track Information", "asterix.062_V1_19_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_070_VALUE, { "Time Of Track Information, [s]", "asterix.062_V1_19_070_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_080, { "080, Track Status", "asterix.062_V1_19_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_080_MON, { "MON", "asterix.062_V1_19_080_MON", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_MON), 0x80, NULL, HFILL } },
+ { &hf_062_V1_19_080_SPI, { "SPI", "asterix.062_V1_19_080_SPI", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_SPI), 0x40, NULL, HFILL } },
+ { &hf_062_V1_19_080_MRH, { "MRH, Most Reliable Height", "asterix.062_V1_19_080_MRH", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_MRH), 0x20, NULL, HFILL } },
+ { &hf_062_V1_19_080_SRC, { "SRC, Source of Calculated Track Altitude for I062/130", "asterix.062_V1_19_080_SRC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_SRC), 0x1c, NULL, HFILL } },
+ { &hf_062_V1_19_080_CNF, { "CNF", "asterix.062_V1_19_080_CNF", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_CNF), 0x02, NULL, HFILL } },
+ { &hf_062_V1_19_080_SIM, { "SIM", "asterix.062_V1_19_080_SIM", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_SIM), 0x80, NULL, HFILL } },
+ { &hf_062_V1_19_080_TSE, { "TSE", "asterix.062_V1_19_080_TSE", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_TSE), 0x40, NULL, HFILL } },
+ { &hf_062_V1_19_080_TSB, { "TSB", "asterix.062_V1_19_080_TSB", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_TSB), 0x20, NULL, HFILL } },
+ { &hf_062_V1_19_080_FPC, { "FPC", "asterix.062_V1_19_080_FPC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_FPC), 0x10, NULL, HFILL } },
+ { &hf_062_V1_19_080_AFF, { "AFF", "asterix.062_V1_19_080_AFF", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_AFF), 0x08, NULL, HFILL } },
+ { &hf_062_V1_19_080_STP, { "STP", "asterix.062_V1_19_080_STP", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_STP), 0x04, NULL, HFILL } },
+ { &hf_062_V1_19_080_KOS, { "KOS", "asterix.062_V1_19_080_KOS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_KOS), 0x02, NULL, HFILL } },
+ { &hf_062_V1_19_080_AMA, { "AMA", "asterix.062_V1_19_080_AMA", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_AMA), 0x80, NULL, HFILL } },
+ { &hf_062_V1_19_080_MD4, { "MD4", "asterix.062_V1_19_080_MD4", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_MD4), 0x60, NULL, HFILL } },
+ { &hf_062_V1_19_080_ME, { "ME", "asterix.062_V1_19_080_ME", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_ME), 0x10, NULL, HFILL } },
+ { &hf_062_V1_19_080_MI, { "MI", "asterix.062_V1_19_080_MI", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_MI), 0x08, NULL, HFILL } },
+ { &hf_062_V1_19_080_MD5, { "MD5", "asterix.062_V1_19_080_MD5", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_MD5), 0x06, NULL, HFILL } },
+ { &hf_062_V1_19_080_CST, { "CST", "asterix.062_V1_19_080_CST", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_CST), 0x80, NULL, HFILL } },
+ { &hf_062_V1_19_080_PSR, { "PSR", "asterix.062_V1_19_080_PSR", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_PSR), 0x40, NULL, HFILL } },
+ { &hf_062_V1_19_080_SSR, { "SSR", "asterix.062_V1_19_080_SSR", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_SSR), 0x20, NULL, HFILL } },
+ { &hf_062_V1_19_080_MDS, { "MDS", "asterix.062_V1_19_080_MDS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_MDS), 0x10, NULL, HFILL } },
+ { &hf_062_V1_19_080_ADS, { "ADS", "asterix.062_V1_19_080_ADS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_ADS), 0x08, NULL, HFILL } },
+ { &hf_062_V1_19_080_SUC, { "SUC", "asterix.062_V1_19_080_SUC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_SUC), 0x04, NULL, HFILL } },
+ { &hf_062_V1_19_080_AAC, { "AAC", "asterix.062_V1_19_080_AAC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_AAC), 0x02, NULL, HFILL } },
+ { &hf_062_V1_19_080_SDS, { "SDS", "asterix.062_V1_19_080_SDS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_SDS), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_19_080_EMS, { "EMS", "asterix.062_V1_19_080_EMS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_EMS), 0x38, NULL, HFILL } },
+ { &hf_062_V1_19_080_PFT, { "PFT", "asterix.062_V1_19_080_PFT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_PFT), 0x04, NULL, HFILL } },
+ { &hf_062_V1_19_080_FPLT, { "FPLT", "asterix.062_V1_19_080_FPLT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_FPLT), 0x02, NULL, HFILL } },
+ { &hf_062_V1_19_080_DUPT, { "DUPT", "asterix.062_V1_19_080_DUPT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_DUPT), 0x80, NULL, HFILL } },
+ { &hf_062_V1_19_080_DUPF, { "DUPF", "asterix.062_V1_19_080_DUPF", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_DUPF), 0x40, NULL, HFILL } },
+ { &hf_062_V1_19_080_DUPM, { "DUPM", "asterix.062_V1_19_080_DUPM", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_DUPM), 0x20, NULL, HFILL } },
+ { &hf_062_V1_19_080_SFC, { "SFC", "asterix.062_V1_19_080_SFC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_SFC), 0x10, NULL, HFILL } },
+ { &hf_062_V1_19_080_IDD, { "IDD", "asterix.062_V1_19_080_IDD", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_IDD), 0x08, NULL, HFILL } },
+ { &hf_062_V1_19_080_IEC, { "IEC", "asterix.062_V1_19_080_IEC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_080_IEC), 0x04, NULL, HFILL } },
+ { &hf_062_V1_19_100, { "100, Calculated Track Position (Cartesian)", "asterix.062_V1_19_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_100_X, { "X, X Coordinate, [m]", "asterix.062_V1_19_100_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_100_Y, { "Y, Y Coordinate, [m]", "asterix.062_V1_19_100_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_105, { "105, Calculated Position In WGS-84 Co-ordinates", "asterix.062_V1_19_105", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_105_LAT, { "LAT, Latitude, [°]", "asterix.062_V1_19_105_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_105_LON, { "LON, Longitude, [°]", "asterix.062_V1_19_105_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_110, { "110, Mode 5 Data Reports and Extended Mode 1 Code", "asterix.062_V1_19_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_110_SUM, { "SUM, Mode 5 Summary", "asterix.062_V1_19_110_SUM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_110_SUM_M5, { "M5", "asterix.062_V1_19_110_SUM_M5", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_110_SUM_M5), 0x80, NULL, HFILL } },
+ { &hf_062_V1_19_110_SUM_ID, { "ID", "asterix.062_V1_19_110_SUM_ID", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_110_SUM_ID), 0x40, NULL, HFILL } },
+ { &hf_062_V1_19_110_SUM_DA, { "DA", "asterix.062_V1_19_110_SUM_DA", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_110_SUM_DA), 0x20, NULL, HFILL } },
+ { &hf_062_V1_19_110_SUM_M1, { "M1", "asterix.062_V1_19_110_SUM_M1", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_110_SUM_M1), 0x10, NULL, HFILL } },
+ { &hf_062_V1_19_110_SUM_M2, { "M2", "asterix.062_V1_19_110_SUM_M2", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_110_SUM_M2), 0x08, NULL, HFILL } },
+ { &hf_062_V1_19_110_SUM_M3, { "M3", "asterix.062_V1_19_110_SUM_M3", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_110_SUM_M3), 0x04, NULL, HFILL } },
+ { &hf_062_V1_19_110_SUM_MC, { "MC", "asterix.062_V1_19_110_SUM_MC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_110_SUM_MC), 0x02, NULL, HFILL } },
+ { &hf_062_V1_19_110_SUM_X, { "X, X-pulse from Mode 5 Data Reply or Report", "asterix.062_V1_19_110_SUM_X", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_110_SUM_X), 0x01, NULL, HFILL } },
+ { &hf_062_V1_19_110_PMN, { "PMN, Mode 5 PIN/ National Origin/Mission Code", "asterix.062_V1_19_110_PMN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_110_PMN_PIN, { "PIN, PIN Code", "asterix.062_V1_19_110_PMN_PIN", FT_UINT16, BASE_DEC, NULL, 0x3fff, NULL, HFILL } },
+ { &hf_062_V1_19_110_PMN_NAT, { "NAT, National Origin", "asterix.062_V1_19_110_PMN_NAT", FT_UINT8, BASE_DEC, NULL, 0x1f, NULL, HFILL } },
+ { &hf_062_V1_19_110_PMN_MIS, { "MIS, Mission Code", "asterix.062_V1_19_110_PMN_MIS", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_062_V1_19_110_POS, { "POS, Mode 5 Reported Position", "asterix.062_V1_19_110_POS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_110_POS_LAT, { "LAT, Latitude, [°]", "asterix.062_V1_19_110_POS_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_110_POS_LON, { "LON, Longitude, [°]", "asterix.062_V1_19_110_POS_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_110_GA, { "GA, Mode 5 GNSS-derived Altitude", "asterix.062_V1_19_110_GA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_110_GA_RES, { "RES, Resolution with which the GNSS-derived Altitude (GA) is Reported", "asterix.062_V1_19_110_GA_RES", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_110_GA_RES), 0x40, NULL, HFILL } },
+ { &hf_062_V1_19_110_GA_GA, { "GA, GNSS-derived Altitude of Target, Expressed as Height Above WGS 84 Ellipsoid, [ft]", "asterix.062_V1_19_110_GA_GA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_110_EM1, { "EM1, Extended Mode 1 Code in Octal Representation", "asterix.062_V1_19_110_EM1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_110_EM1_EM1, { "EM1, Extended Mode 1 Reply in Octal Representation", "asterix.062_V1_19_110_EM1_EM1", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_062_V1_19_110_TOS, { "TOS, Time Offset for POS and GA", "asterix.062_V1_19_110_TOS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_110_TOS_VALUE, { "Time Offset for POS and GA, [s]", "asterix.062_V1_19_110_TOS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_110_XP, { "XP, X Pulse Presence", "asterix.062_V1_19_110_XP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_110_XP_X5, { "X5, X-pulse from Mode 5 Data Reply or Report", "asterix.062_V1_19_110_XP_X5", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_110_XP_X5), 0x10, NULL, HFILL } },
+ { &hf_062_V1_19_110_XP_XC, { "XC, X-pulse from Mode C Reply", "asterix.062_V1_19_110_XP_XC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_110_XP_XC), 0x08, NULL, HFILL } },
+ { &hf_062_V1_19_110_XP_X3, { "X3, X-pulse from Mode 3/A Reply", "asterix.062_V1_19_110_XP_X3", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_110_XP_X3), 0x04, NULL, HFILL } },
+ { &hf_062_V1_19_110_XP_X2, { "X2, X-pulse from Mode 2 Reply", "asterix.062_V1_19_110_XP_X2", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_110_XP_X2), 0x02, NULL, HFILL } },
+ { &hf_062_V1_19_110_XP_X1, { "X1, X-pulse from Mode 1 Reply", "asterix.062_V1_19_110_XP_X1", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_110_XP_X1), 0x01, NULL, HFILL } },
+ { &hf_062_V1_19_120, { "120, Track Mode 2 Code", "asterix.062_V1_19_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_120_MODE2, { "MODE2, Mode-2 Code in Octal Representation", "asterix.062_V1_19_120_MODE2", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_062_V1_19_130, { "130, Calculated Track Geometric Altitude", "asterix.062_V1_19_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_130_VALUE, { "Calculated Track Geometric Altitude, [ft]", "asterix.062_V1_19_130_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_135, { "135, Calculated Track Barometric Altitude", "asterix.062_V1_19_135", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_135_QNH, { "QNH", "asterix.062_V1_19_135_QNH", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_135_QNH), 0x80, NULL, HFILL } },
+ { &hf_062_V1_19_135_CTB, { "CTB, Calculated Track Barometric Altitude, [FL]", "asterix.062_V1_19_135_CTB", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_136, { "136, Measured Flight Level", "asterix.062_V1_19_136", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_136_VALUE, { "Measured Flight Level, [FL]", "asterix.062_V1_19_136_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_185, { "185, Calculated Track Velocity (Cartesian)", "asterix.062_V1_19_185", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_185_VX, { "VX, Velocity (X-component), [m/s]", "asterix.062_V1_19_185_VX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_185_VY, { "VY, Velocity (Y-component), [m/s]", "asterix.062_V1_19_185_VY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_200, { "200, Mode of Movement", "asterix.062_V1_19_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_200_TRANS, { "TRANS, Transversal Acceleration", "asterix.062_V1_19_200_TRANS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_200_TRANS), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_19_200_LONG, { "LONG, Longitudinal Acceleration", "asterix.062_V1_19_200_LONG", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_200_LONG), 0x30, NULL, HFILL } },
+ { &hf_062_V1_19_200_VERT, { "VERT, Transversal Acceleration", "asterix.062_V1_19_200_VERT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_200_VERT), 0x0c, NULL, HFILL } },
+ { &hf_062_V1_19_200_ADF, { "ADF, Altitude Discrepancy Flag", "asterix.062_V1_19_200_ADF", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_200_ADF), 0x02, NULL, HFILL } },
+ { &hf_062_V1_19_210, { "210, Calculated Acceleration (Cartesian)", "asterix.062_V1_19_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_210_AX, { "AX, [m/s2]", "asterix.062_V1_19_210_AX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_210_AY, { "AY, [m/s2]", "asterix.062_V1_19_210_AY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_220, { "220, Calculated Rate of Climb/Descent", "asterix.062_V1_19_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_220_VALUE, { "Calculated Rate of Climb/Descent, [ft/min]", "asterix.062_V1_19_220_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_245, { "245, Target Identification", "asterix.062_V1_19_245", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_245_STI, { "STI", "asterix.062_V1_19_245_STI", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_245_STI), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_19_245_CHR, { "CHR, Characters 1-8 (Coded on 6 Bits Each) Defining Target Identification", "asterix.062_V1_19_245_CHR", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_270, { "270, Target Size and Orientation", "asterix.062_V1_19_270", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_270_LENGTH, { "LENGTH, Length, [m]", "asterix.062_V1_19_270_LENGTH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_270_ORIENTATION, { "ORIENTATION, Orientation, [°]", "asterix.062_V1_19_270_ORIENTATION", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_270_WIDTH, { "WIDTH, Width, [m]", "asterix.062_V1_19_270_WIDTH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_290, { "290, System Track Update Ages", "asterix.062_V1_19_290", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_290_TRK, { "TRK, Track Age", "asterix.062_V1_19_290_TRK", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_290_TRK_VALUE, { "Track Age, [s]", "asterix.062_V1_19_290_TRK_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_290_PSR, { "PSR, PSR Age", "asterix.062_V1_19_290_PSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_290_PSR_VALUE, { "PSR Age, [s]", "asterix.062_V1_19_290_PSR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_290_SSR, { "SSR, SSR Age", "asterix.062_V1_19_290_SSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_290_SSR_VALUE, { "SSR Age, [s]", "asterix.062_V1_19_290_SSR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_290_MDS, { "MDS, Mode S Age", "asterix.062_V1_19_290_MDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_290_MDS_VALUE, { "Mode S Age, [s]", "asterix.062_V1_19_290_MDS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_290_ADS, { "ADS, ADS-C Age", "asterix.062_V1_19_290_ADS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_290_ADS_VALUE, { "ADS-C Age, [s]", "asterix.062_V1_19_290_ADS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_290_ES, { "ES, ADS-B Extended Squitter Age", "asterix.062_V1_19_290_ES", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_290_ES_VALUE, { "ADS-B Extended Squitter Age, [s]", "asterix.062_V1_19_290_ES_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_290_VDL, { "VDL, ADS-B VDL Mode 4 Age", "asterix.062_V1_19_290_VDL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_290_VDL_VALUE, { "ADS-B VDL Mode 4 Age, [s]", "asterix.062_V1_19_290_VDL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_290_UAT, { "UAT, ADS-B UAT Age", "asterix.062_V1_19_290_UAT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_290_UAT_VALUE, { "ADS-B UAT Age, [s]", "asterix.062_V1_19_290_UAT_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_290_LOP, { "LOP, Loop Age", "asterix.062_V1_19_290_LOP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_290_LOP_VALUE, { "Loop Age, [s]", "asterix.062_V1_19_290_LOP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_290_MLT, { "MLT, Multilateration Age", "asterix.062_V1_19_290_MLT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_290_MLT_VALUE, { "Multilateration Age, [s]", "asterix.062_V1_19_290_MLT_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295, { "295, Track Data Ages", "asterix.062_V1_19_295", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_MFL, { "MFL, Measured Flight Level Age", "asterix.062_V1_19_295_MFL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_MFL_VALUE, { "Measured Flight Level Age, [s]", "asterix.062_V1_19_295_MFL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_MD1, { "MD1, Mode 1 Age", "asterix.062_V1_19_295_MD1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_MD1_VALUE, { "Mode 1 Age, [s]", "asterix.062_V1_19_295_MD1_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_MD2, { "MD2, Mode 2 Age", "asterix.062_V1_19_295_MD2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_MD2_VALUE, { "Mode 2 Age, [s]", "asterix.062_V1_19_295_MD2_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_MDA, { "MDA, Mode 3/A Age", "asterix.062_V1_19_295_MDA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_MDA_VALUE, { "Mode 3/A Age, [s]", "asterix.062_V1_19_295_MDA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_MD4, { "MD4, Mode 4 Age", "asterix.062_V1_19_295_MD4", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_MD4_VALUE, { "Mode 4 Age, [s]", "asterix.062_V1_19_295_MD4_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_MD5, { "MD5, Mode 5 Age", "asterix.062_V1_19_295_MD5", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_MD5_VALUE, { "Mode 5 Age, [s]", "asterix.062_V1_19_295_MD5_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_MHG, { "MHG, Magnetic Heading Age", "asterix.062_V1_19_295_MHG", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_MHG_VALUE, { "Magnetic Heading Age, [s]", "asterix.062_V1_19_295_MHG_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_IAS, { "IAS, Indicated Airspeed / Mach Nb Age", "asterix.062_V1_19_295_IAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_IAS_VALUE, { "Indicated Airspeed / Mach Nb Age, [s]", "asterix.062_V1_19_295_IAS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_TAS, { "TAS, True Airspeed Age", "asterix.062_V1_19_295_TAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_TAS_VALUE, { "True Airspeed Age, [s]", "asterix.062_V1_19_295_TAS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_SAL, { "SAL, Selected Altitude Age", "asterix.062_V1_19_295_SAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_SAL_VALUE, { "Selected Altitude Age, [s]", "asterix.062_V1_19_295_SAL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_FSS, { "FSS, Final State Selected Altitude Age", "asterix.062_V1_19_295_FSS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_FSS_VALUE, { "Final State Selected Altitude Age, [s]", "asterix.062_V1_19_295_FSS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_TID, { "TID, Trajectory Intent Age", "asterix.062_V1_19_295_TID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_TID_VALUE, { "Trajectory Intent Age, [s]", "asterix.062_V1_19_295_TID_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_COM, { "COM, Communication/ACAS Capability and Flight Status Age", "asterix.062_V1_19_295_COM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_COM_VALUE, { "Communication/ACAS Capability and Flight Status Age, [s]", "asterix.062_V1_19_295_COM_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_SAB, { "SAB, Status Reported by ADS-B Age", "asterix.062_V1_19_295_SAB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_SAB_VALUE, { "Status Reported by ADS-B Age, [s]", "asterix.062_V1_19_295_SAB_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_ACS, { "ACS, ACAS Resolution Advisory Report Age", "asterix.062_V1_19_295_ACS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_ACS_VALUE, { "ACAS Resolution Advisory Report Age, [s]", "asterix.062_V1_19_295_ACS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_BVR, { "BVR, Barometric Vertical Rate Age", "asterix.062_V1_19_295_BVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_BVR_VALUE, { "Barometric Vertical Rate Age, [s]", "asterix.062_V1_19_295_BVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_GVR, { "GVR, Geometrical Vertical Rate Age", "asterix.062_V1_19_295_GVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_GVR_VALUE, { "Geometrical Vertical Rate Age, [s]", "asterix.062_V1_19_295_GVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_RAN, { "RAN, Roll Angle Age", "asterix.062_V1_19_295_RAN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_RAN_VALUE, { "Roll Angle Age, [s]", "asterix.062_V1_19_295_RAN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_TAR, { "TAR, Track Angle Rate Age", "asterix.062_V1_19_295_TAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_TAR_VALUE, { "Track Angle Rate Age, [s]", "asterix.062_V1_19_295_TAR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_TAN, { "TAN, Track Angle Age", "asterix.062_V1_19_295_TAN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_TAN_VALUE, { "Track Angle Age, [s]", "asterix.062_V1_19_295_TAN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_GSP, { "GSP, Ground Speed Age", "asterix.062_V1_19_295_GSP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_GSP_VALUE, { "Ground Speed Age, [s]", "asterix.062_V1_19_295_GSP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_VUN, { "VUN, Velocity Uncertainty Age", "asterix.062_V1_19_295_VUN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_VUN_VALUE, { "Velocity Uncertainty Age, [s]", "asterix.062_V1_19_295_VUN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_MET, { "MET, Meteorological Data Age", "asterix.062_V1_19_295_MET", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_MET_VALUE, { "Meteorological Data Age, [s]", "asterix.062_V1_19_295_MET_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_EMC, { "EMC, Emitter Category Age", "asterix.062_V1_19_295_EMC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_EMC_VALUE, { "Emitter Category Age, [s]", "asterix.062_V1_19_295_EMC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_POS, { "POS, Position Age", "asterix.062_V1_19_295_POS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_POS_VALUE, { "Position Age, [s]", "asterix.062_V1_19_295_POS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_GAL, { "GAL, Geometric Altitude Age", "asterix.062_V1_19_295_GAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_GAL_VALUE, { "Geometric Altitude Age, [s]", "asterix.062_V1_19_295_GAL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_PUN, { "PUN, Position Uncertainty Age", "asterix.062_V1_19_295_PUN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_PUN_VALUE, { "Position Uncertainty Age, [s]", "asterix.062_V1_19_295_PUN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_MB, { "MB, Mode S MB Data Age", "asterix.062_V1_19_295_MB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_MB_VALUE, { "Mode S MB Data Age, [s]", "asterix.062_V1_19_295_MB_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_IAR, { "IAR, Indicated Airspeed Data Age", "asterix.062_V1_19_295_IAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_IAR_VALUE, { "Indicated Airspeed Data Age, [s]", "asterix.062_V1_19_295_IAR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_MAC, { "MAC, Mach Number Data Age", "asterix.062_V1_19_295_MAC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_MAC_VALUE, { "Mach Number Data Age, [s]", "asterix.062_V1_19_295_MAC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_BPS, { "BPS, Barometric Pressure Setting Data Age", "asterix.062_V1_19_295_BPS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_295_BPS_VALUE, { "Barometric Pressure Setting Data Age, [s]", "asterix.062_V1_19_295_BPS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_300, { "300, Vehicle Fleet Identification", "asterix.062_V1_19_300", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_300_VALUE, { "Vehicle Fleet Identification", "asterix.062_V1_19_300_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_300_VALUE), 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_340, { "340, Measured Information", "asterix.062_V1_19_340", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_340_SID, { "SID, Sensor Identification", "asterix.062_V1_19_340_SID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_340_SID_SAC, { "SAC, System Area Code", "asterix.062_V1_19_340_SID_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_340_SID_SIC, { "SIC, System Identification Code", "asterix.062_V1_19_340_SID_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_340_POS, { "POS, Measured Position", "asterix.062_V1_19_340_POS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_340_POS_RHO, { "RHO, Measured Distance, [NM]", "asterix.062_V1_19_340_POS_RHO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_340_POS_THETA, { "THETA, Measured Azimuth, [°]", "asterix.062_V1_19_340_POS_THETA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_340_HEIGHT, { "HEIGHT, Measured 3-D Height", "asterix.062_V1_19_340_HEIGHT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_340_HEIGHT_VALUE, { "Measured 3-D Height, [ft]", "asterix.062_V1_19_340_HEIGHT_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_340_MDC, { "MDC", "asterix.062_V1_19_340_MDC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_340_MDC_V, { "V, Validated", "asterix.062_V1_19_340_MDC_V", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_340_MDC_V), 0x80, NULL, HFILL } },
+ { &hf_062_V1_19_340_MDC_G, { "G, Garbled", "asterix.062_V1_19_340_MDC_G", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_340_MDC_G), 0x40, NULL, HFILL } },
+ { &hf_062_V1_19_340_MDC_LMC, { "LMC, Last Measured Mode C Code, [FL]", "asterix.062_V1_19_340_MDC_LMC", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_340_MDA, { "MDA", "asterix.062_V1_19_340_MDA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_340_MDA_V, { "V, Validated", "asterix.062_V1_19_340_MDA_V", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_340_MDA_V), 0x80, NULL, HFILL } },
+ { &hf_062_V1_19_340_MDA_G, { "G, Garbled", "asterix.062_V1_19_340_MDA_G", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_340_MDA_G), 0x40, NULL, HFILL } },
+ { &hf_062_V1_19_340_MDA_L, { "L", "asterix.062_V1_19_340_MDA_L", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_340_MDA_L), 0x20, NULL, HFILL } },
+ { &hf_062_V1_19_340_MDA_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.062_V1_19_340_MDA_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_062_V1_19_340_TYP, { "TYP", "asterix.062_V1_19_340_TYP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_340_TYP_TYP, { "TYP, Report Type", "asterix.062_V1_19_340_TYP_TYP", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_340_TYP_TYP), 0xe0, NULL, HFILL } },
+ { &hf_062_V1_19_340_TYP_SIM, { "SIM", "asterix.062_V1_19_340_TYP_SIM", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_340_TYP_SIM), 0x10, NULL, HFILL } },
+ { &hf_062_V1_19_340_TYP_RAB, { "RAB", "asterix.062_V1_19_340_TYP_RAB", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_340_TYP_RAB), 0x08, NULL, HFILL } },
+ { &hf_062_V1_19_340_TYP_TST, { "TST", "asterix.062_V1_19_340_TYP_TST", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_340_TYP_TST), 0x04, NULL, HFILL } },
+ { &hf_062_V1_19_380, { "380, Aircraft Derived Data", "asterix.062_V1_19_380", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_ADR, { "ADR, Target Address", "asterix.062_V1_19_380_ADR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_ADR_VALUE, { "Target Address", "asterix.062_V1_19_380_ADR_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_ID, { "ID, Target Identification", "asterix.062_V1_19_380_ID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_ID_VALUE, { "Target Identification", "asterix.062_V1_19_380_ID_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_MHG, { "MHG, Magnetic Heading", "asterix.062_V1_19_380_MHG", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_MHG_VALUE, { "Magnetic Heading, [°]", "asterix.062_V1_19_380_MHG_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_IAS, { "IAS, Indicated Airspeed/Mach No", "asterix.062_V1_19_380_IAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_IAS_IM, { "IM", "asterix.062_V1_19_380_IAS_IM", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_IAS_IM), 0x80, NULL, HFILL } },
+ { &hf_062_V1_19_380_IAS_IAS, { "IAS", "asterix.062_V1_19_380_IAS_IAS", FT_UINT16, BASE_DEC, NULL, 0x7fff, NULL, HFILL } },
+ { &hf_062_V1_19_380_TAS, { "TAS, True Airspeed", "asterix.062_V1_19_380_TAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_TAS_VALUE, { "True Airspeed, [kt]", "asterix.062_V1_19_380_TAS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_SAL, { "SAL, Selected Altitude", "asterix.062_V1_19_380_SAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_SAL_SAS, { "SAS", "asterix.062_V1_19_380_SAL_SAS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_SAL_SAS), 0x80, NULL, HFILL } },
+ { &hf_062_V1_19_380_SAL_SRC, { "SRC", "asterix.062_V1_19_380_SAL_SRC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_SAL_SRC), 0x60, NULL, HFILL } },
+ { &hf_062_V1_19_380_SAL_ALT, { "ALT, Altitude in Two's Complement Form, [ft]", "asterix.062_V1_19_380_SAL_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_FSS, { "FSS, Final State Selected Altitude", "asterix.062_V1_19_380_FSS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_FSS_MV, { "MV, Manage Vertical Mode", "asterix.062_V1_19_380_FSS_MV", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_FSS_MV), 0x80, NULL, HFILL } },
+ { &hf_062_V1_19_380_FSS_AH, { "AH, Altitude Hold", "asterix.062_V1_19_380_FSS_AH", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_FSS_AH), 0x40, NULL, HFILL } },
+ { &hf_062_V1_19_380_FSS_AM, { "AM, Approach Mode", "asterix.062_V1_19_380_FSS_AM", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_FSS_AM), 0x20, NULL, HFILL } },
+ { &hf_062_V1_19_380_FSS_ALT, { "ALT, Altitude in Two's Complement Form, [ft]", "asterix.062_V1_19_380_FSS_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_TIS, { "TIS, Trajectory Intent Status", "asterix.062_V1_19_380_TIS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_TIS_NAV, { "NAV, TID Available", "asterix.062_V1_19_380_TIS_NAV", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_TIS_NAV), 0x80, NULL, HFILL } },
+ { &hf_062_V1_19_380_TIS_NVB, { "NVB, TID Valid", "asterix.062_V1_19_380_TIS_NVB", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_TIS_NVB), 0x40, NULL, HFILL } },
+ { &hf_062_V1_19_380_TID, { "TID, Trajectory Intent Data", "asterix.062_V1_19_380_TID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_TID_TCA, { "TCA, TCP Number Availability", "asterix.062_V1_19_380_TID_TCA", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_TID_TCA), 0x80, NULL, HFILL } },
+ { &hf_062_V1_19_380_TID_NC, { "NC, TCP Compliance", "asterix.062_V1_19_380_TID_NC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_TID_NC), 0x40, NULL, HFILL } },
+ { &hf_062_V1_19_380_TID_TCPN, { "TCPN, Trajectory Change Point Number", "asterix.062_V1_19_380_TID_TCPN", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_062_V1_19_380_TID_ALT, { "ALT, Altitude in Two's Complement Form, [ft]", "asterix.062_V1_19_380_TID_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_TID_LAT, { "LAT, Latitude in WGS.84 in Two's Complement, [°]", "asterix.062_V1_19_380_TID_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_TID_LON, { "LON, Longitude in WGS.84 in Two's Complement, [°]", "asterix.062_V1_19_380_TID_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_TID_PT, { "PT, Point Type", "asterix.062_V1_19_380_TID_PT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_TID_PT), 0xf0, NULL, HFILL } },
+ { &hf_062_V1_19_380_TID_TD, { "TD, Turn Direction", "asterix.062_V1_19_380_TID_TD", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_TID_TD), 0x0c, NULL, HFILL } },
+ { &hf_062_V1_19_380_TID_TRA, { "TRA, Turn Radius Availability", "asterix.062_V1_19_380_TID_TRA", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_TID_TRA), 0x02, NULL, HFILL } },
+ { &hf_062_V1_19_380_TID_TOA, { "TOA, TOV Available", "asterix.062_V1_19_380_TID_TOA", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_TID_TOA), 0x01, NULL, HFILL } },
+ { &hf_062_V1_19_380_TID_TOV, { "TOV, Time Over Point, [s]", "asterix.062_V1_19_380_TID_TOV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_TID_TTR, { "TTR, TCP Turn Radius, [NM]", "asterix.062_V1_19_380_TID_TTR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_COM, { "COM, Communications/ACAS Capability and Flight Status", "asterix.062_V1_19_380_COM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_COM_COM, { "COM, Communications Capability of the Transponder", "asterix.062_V1_19_380_COM_COM", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_COM_COM), 0xe0, NULL, HFILL } },
+ { &hf_062_V1_19_380_COM_STAT, { "STAT, Flight Status", "asterix.062_V1_19_380_COM_STAT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_COM_STAT), 0x1c, NULL, HFILL } },
+ { &hf_062_V1_19_380_COM_SSC, { "SSC, Specific Service Capability", "asterix.062_V1_19_380_COM_SSC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_COM_SSC), 0x80, NULL, HFILL } },
+ { &hf_062_V1_19_380_COM_ARC, { "ARC, Altitude Reporting Capability", "asterix.062_V1_19_380_COM_ARC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_COM_ARC), 0x40, NULL, HFILL } },
+ { &hf_062_V1_19_380_COM_AIC, { "AIC, Aircraft Identification Capability", "asterix.062_V1_19_380_COM_AIC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_COM_AIC), 0x20, NULL, HFILL } },
+ { &hf_062_V1_19_380_COM_B1A, { "B1A, BDS 1,0 Bit 16", "asterix.062_V1_19_380_COM_B1A", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_062_V1_19_380_COM_B1B, { "B1B, BDS BDS 1,0 Bits 37/40", "asterix.062_V1_19_380_COM_B1B", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_062_V1_19_380_SAB, { "SAB, Status Reported by ADS-B", "asterix.062_V1_19_380_SAB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_SAB_AC, { "AC, ACAS Status", "asterix.062_V1_19_380_SAB_AC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_SAB_AC), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_19_380_SAB_MN, { "MN, Multiple Navigational Aids Status", "asterix.062_V1_19_380_SAB_MN", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_SAB_MN), 0x30, NULL, HFILL } },
+ { &hf_062_V1_19_380_SAB_DC, { "DC, Differential Correction Status", "asterix.062_V1_19_380_SAB_DC", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_SAB_DC), 0x0c, NULL, HFILL } },
+ { &hf_062_V1_19_380_SAB_GBS, { "GBS, Ground Bit Set", "asterix.062_V1_19_380_SAB_GBS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_SAB_GBS), 0x02, NULL, HFILL } },
+ { &hf_062_V1_19_380_SAB_STAT, { "STAT, Flight Status", "asterix.062_V1_19_380_SAB_STAT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_SAB_STAT), 0x07, NULL, HFILL } },
+ { &hf_062_V1_19_380_ACS, { "ACS, ACAS Resolution Advisory Report", "asterix.062_V1_19_380_ACS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_ACS_VALUE, { "ACAS Resolution Advisory Report", "asterix.062_V1_19_380_ACS_VALUE", FT_UINT56, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_BVR, { "BVR, Barometric Vertical Rate", "asterix.062_V1_19_380_BVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_BVR_VALUE, { "Barometric Vertical Rate, [ft/min]", "asterix.062_V1_19_380_BVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_GVR, { "GVR, Geometric Vertical Rate", "asterix.062_V1_19_380_GVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_GVR_VALUE, { "Geometric Vertical Rate, [ft/min]", "asterix.062_V1_19_380_GVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_RAN, { "RAN, Roll Angle", "asterix.062_V1_19_380_RAN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_RAN_VALUE, { "Roll Angle, [°]", "asterix.062_V1_19_380_RAN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_TAR, { "TAR, Track Angle Rate", "asterix.062_V1_19_380_TAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_TAR_TI, { "TI, Turn Indicator", "asterix.062_V1_19_380_TAR_TI", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_TAR_TI), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_19_380_TAR_ROT, { "ROT, Rate of Turn in Two's Complement Form, [°/s]", "asterix.062_V1_19_380_TAR_ROT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_TAN, { "TAN, Track Angle", "asterix.062_V1_19_380_TAN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_TAN_VALUE, { "Track Angle, [°]", "asterix.062_V1_19_380_TAN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_GS, { "GS, Ground Speed", "asterix.062_V1_19_380_GS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_GS_VALUE, { "Ground Speed, [NM/s]", "asterix.062_V1_19_380_GS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_VUN, { "VUN, Velocity Uncertainty", "asterix.062_V1_19_380_VUN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_VUN_VALUE, { "Velocity Uncertainty", "asterix.062_V1_19_380_VUN_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_MET, { "MET, Meteorological Data", "asterix.062_V1_19_380_MET", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_MET_WS, { "WS, Wind Speed Valid Flag", "asterix.062_V1_19_380_MET_WS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_MET_WS), 0x80, NULL, HFILL } },
+ { &hf_062_V1_19_380_MET_WD, { "WD, Wind Direction Valid Flag", "asterix.062_V1_19_380_MET_WD", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_MET_WD), 0x40, NULL, HFILL } },
+ { &hf_062_V1_19_380_MET_TMP, { "TMP, Temperature Valid Flag", "asterix.062_V1_19_380_MET_TMP", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_MET_TMP), 0x20, NULL, HFILL } },
+ { &hf_062_V1_19_380_MET_TRB, { "TRB, Turbulence Valid Flag", "asterix.062_V1_19_380_MET_TRB", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_MET_TRB), 0x10, NULL, HFILL } },
+ { &hf_062_V1_19_380_MET_WSD, { "WSD, Wind Speed, [kt]", "asterix.062_V1_19_380_MET_WSD", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_MET_WDD, { "WDD, Wind Direction, [°]", "asterix.062_V1_19_380_MET_WDD", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_MET_TMPD, { "TMPD, Temperature in Degrees Celsius, [°C]", "asterix.062_V1_19_380_MET_TMPD", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_MET_TRBD, { "TRBD, Turbulence", "asterix.062_V1_19_380_MET_TRBD", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_EMC, { "EMC, Emitter Category", "asterix.062_V1_19_380_EMC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_EMC_VALUE, { "Emitter Category", "asterix.062_V1_19_380_EMC_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_380_EMC_VALUE), 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_POS, { "POS, Position", "asterix.062_V1_19_380_POS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_POS_LAT, { "LAT, Latitude in WGS.84 in Two's Complement Form, [°]", "asterix.062_V1_19_380_POS_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_POS_LON, { "LON, Longitude in WGS.84 in Two's Complement Form, [°]", "asterix.062_V1_19_380_POS_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_GAL, { "GAL, Geometric Altitude", "asterix.062_V1_19_380_GAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_GAL_VALUE, { "Geometric Altitude, [ft]", "asterix.062_V1_19_380_GAL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_PUN, { "PUN, Position Uncertainty", "asterix.062_V1_19_380_PUN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_PUN_PUN, { "PUN, Position Uncertainty", "asterix.062_V1_19_380_PUN_PUN", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_062_V1_19_380_MB, { "MB, MODE S MB DATA", "asterix.062_V1_19_380_MB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_MB_VALUE, { "MODE S MB DATA", "asterix.062_V1_19_380_MB_VALUE", FT_UINT64, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_IAR, { "IAR, Indicated Airspeed", "asterix.062_V1_19_380_IAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_IAR_VALUE, { "Indicated Airspeed, [kt]", "asterix.062_V1_19_380_IAR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_MAC, { "MAC, Mach Number", "asterix.062_V1_19_380_MAC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_MAC_VALUE, { "Mach Number, [Mach]", "asterix.062_V1_19_380_MAC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_BPS, { "BPS, Barometric Pressure Setting", "asterix.062_V1_19_380_BPS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_380_BPS_BPS, { "BPS, [mb]", "asterix.062_V1_19_380_BPS_BPS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390, { "390, Flight Plan Related Data", "asterix.062_V1_19_390", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_TAG, { "TAG, FPPS Identification Tag", "asterix.062_V1_19_390_TAG", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_TAG_SAC, { "SAC, System Area Code", "asterix.062_V1_19_390_TAG_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_TAG_SIC, { "SIC, System Identification Code", "asterix.062_V1_19_390_TAG_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_CS, { "CS, Callsign", "asterix.062_V1_19_390_CS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_CS_VALUE, { "Callsign", "asterix.062_V1_19_390_CS_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_IFI, { "IFI, IFPS_FLIGHT_ID", "asterix.062_V1_19_390_IFI", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_IFI_TYP, { "TYP", "asterix.062_V1_19_390_IFI_TYP", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_390_IFI_TYP), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_19_390_IFI_NBR, { "NBR, Number from 0 to 99 999 999", "asterix.062_V1_19_390_IFI_NBR", FT_UINT32, BASE_DEC, NULL, 0x07ffffff, NULL, HFILL } },
+ { &hf_062_V1_19_390_FCT, { "FCT, Flight Category", "asterix.062_V1_19_390_FCT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_FCT_GATOAT, { "GATOAT", "asterix.062_V1_19_390_FCT_GATOAT", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_390_FCT_GATOAT), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_19_390_FCT_FR1FR2, { "FR1FR2", "asterix.062_V1_19_390_FCT_FR1FR2", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_390_FCT_FR1FR2), 0x30, NULL, HFILL } },
+ { &hf_062_V1_19_390_FCT_RVSM, { "RVSM", "asterix.062_V1_19_390_FCT_RVSM", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_390_FCT_RVSM), 0x0c, NULL, HFILL } },
+ { &hf_062_V1_19_390_FCT_HPR, { "HPR", "asterix.062_V1_19_390_FCT_HPR", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_390_FCT_HPR), 0x02, NULL, HFILL } },
+ { &hf_062_V1_19_390_TAC, { "TAC, Type of Aircraft", "asterix.062_V1_19_390_TAC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_TAC_VALUE, { "Type of Aircraft", "asterix.062_V1_19_390_TAC_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_WTC, { "WTC, Wake Turbulence Category", "asterix.062_V1_19_390_WTC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_WTC_VALUE, { "Wake Turbulence Category", "asterix.062_V1_19_390_WTC_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_DEP, { "DEP, Departure Airport", "asterix.062_V1_19_390_DEP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_DEP_VALUE, { "Departure Airport", "asterix.062_V1_19_390_DEP_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_DST, { "DST, Destination Airport", "asterix.062_V1_19_390_DST", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_DST_VALUE, { "Destination Airport", "asterix.062_V1_19_390_DST_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_RDS, { "RDS, Runway Designation", "asterix.062_V1_19_390_RDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_RDS_NU1, { "NU1, First Number", "asterix.062_V1_19_390_RDS_NU1", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_RDS_NU2, { "NU2, Second Number", "asterix.062_V1_19_390_RDS_NU2", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_RDS_LTR, { "LTR, Letter", "asterix.062_V1_19_390_RDS_LTR", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_CFL, { "CFL, Current Cleared Flight Level", "asterix.062_V1_19_390_CFL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_CFL_VALUE, { "Current Cleared Flight Level, [FL]", "asterix.062_V1_19_390_CFL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_CTL, { "CTL, Current Control Position", "asterix.062_V1_19_390_CTL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_CTL_CENTRE, { "CENTRE, 8-bit Group Identification Code", "asterix.062_V1_19_390_CTL_CENTRE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_CTL_POSITION, { "POSITION, 8-bit Control Position Identification Code", "asterix.062_V1_19_390_CTL_POSITION", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_TOD, { "TOD, Time of Departure / Arrival", "asterix.062_V1_19_390_TOD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_TOD_TYP, { "TYP", "asterix.062_V1_19_390_TOD_TYP", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_390_TOD_TYP), 0xf8, NULL, HFILL } },
+ { &hf_062_V1_19_390_TOD_DAY, { "DAY", "asterix.062_V1_19_390_TOD_DAY", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_390_TOD_DAY), 0x06, NULL, HFILL } },
+ { &hf_062_V1_19_390_TOD_HOR, { "HOR, Hours", "asterix.062_V1_19_390_TOD_HOR", FT_UINT8, BASE_DEC, NULL, 0x1f, NULL, HFILL } },
+ { &hf_062_V1_19_390_TOD_MIN, { "MIN, Minutes", "asterix.062_V1_19_390_TOD_MIN", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_062_V1_19_390_TOD_AVS, { "AVS, Seconds Available Flag", "asterix.062_V1_19_390_TOD_AVS", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_390_TOD_AVS), 0x80, NULL, HFILL } },
+ { &hf_062_V1_19_390_TOD_SEC, { "SEC, Seconds", "asterix.062_V1_19_390_TOD_SEC", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_062_V1_19_390_AST, { "AST, Aircraft Stand", "asterix.062_V1_19_390_AST", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_AST_VALUE, { "Aircraft Stand", "asterix.062_V1_19_390_AST_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_STS, { "STS, Stand Status", "asterix.062_V1_19_390_STS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_STS_EMP, { "EMP", "asterix.062_V1_19_390_STS_EMP", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_390_STS_EMP), 0xc0, NULL, HFILL } },
+ { &hf_062_V1_19_390_STS_AVL, { "AVL", "asterix.062_V1_19_390_STS_AVL", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_390_STS_AVL), 0x30, NULL, HFILL } },
+ { &hf_062_V1_19_390_STD, { "STD, Standard Instrument Departure", "asterix.062_V1_19_390_STD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_STD_VALUE, { "Standard Instrument Departure", "asterix.062_V1_19_390_STD_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_STA, { "STA, Standard Instrument Arrival", "asterix.062_V1_19_390_STA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_STA_VALUE, { "Standard Instrument Arrival", "asterix.062_V1_19_390_STA_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_PEM, { "PEM, Pre-Emergency Mode 3/A", "asterix.062_V1_19_390_PEM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_PEM_VA, { "VA", "asterix.062_V1_19_390_PEM_VA", FT_UINT8, BASE_DEC, VALS (valstr_062_V1_19_390_PEM_VA), 0x10, NULL, HFILL } },
+ { &hf_062_V1_19_390_PEM_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.062_V1_19_390_PEM_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_062_V1_19_390_PEC, { "PEC, Pre-Emergency Callsign", "asterix.062_V1_19_390_PEC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_390_PEC_VALUE, { "Pre-Emergency Callsign", "asterix.062_V1_19_390_PEC_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_500, { "500, Estimated Accuracies", "asterix.062_V1_19_500", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_500_APC, { "APC, Estimated Accuracy Of Track Position (Cartesian)", "asterix.062_V1_19_500_APC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_500_APC_X, { "X, APC (X-Component), [m]", "asterix.062_V1_19_500_APC_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_500_APC_Y, { "Y, APC (Y-Component), [m]", "asterix.062_V1_19_500_APC_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_500_COV, { "COV, XY Covariance Component", "asterix.062_V1_19_500_COV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_500_COV_VALUE, { "XY Covariance Component, [m]", "asterix.062_V1_19_500_COV_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_500_APW, { "APW, Estimated Accuracy Of Track Position (WGS-84)", "asterix.062_V1_19_500_APW", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_500_APW_LAT, { "LAT, APW (Latitude Component), [°]", "asterix.062_V1_19_500_APW_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_500_APW_LON, { "LON, APW (Longitude Component), [°]", "asterix.062_V1_19_500_APW_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_500_AGA, { "AGA, Estimated Accuracy Of Calculated Track Geometric Altitude", "asterix.062_V1_19_500_AGA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_500_AGA_VALUE, { "Estimated Accuracy Of Calculated Track Geometric Altitude, [ft]", "asterix.062_V1_19_500_AGA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_500_ABA, { "ABA, Estimated Accuracy Of Calculated Track Barometric Altitude", "asterix.062_V1_19_500_ABA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_500_ABA_VALUE, { "Estimated Accuracy Of Calculated Track Barometric Altitude, [FL]", "asterix.062_V1_19_500_ABA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_500_ATV, { "ATV, Estimated Accuracy Of Track Velocity (Cartesian)", "asterix.062_V1_19_500_ATV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_500_ATV_X, { "X, ATV (X-Component), [m/s]", "asterix.062_V1_19_500_ATV_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_500_ATV_Y, { "Y, ATV (Y-Component), [m/s]", "asterix.062_V1_19_500_ATV_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_500_AA, { "AA, Estimated Accuracy Of Acceleration (Cartesian)", "asterix.062_V1_19_500_AA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_500_AA_X, { "X, AA (X-Component), [m/s2]", "asterix.062_V1_19_500_AA_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_500_AA_Y, { "Y, AA (Y-Component), [m/s2]", "asterix.062_V1_19_500_AA_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_500_ARC, { "ARC, Estimated Accuracy Of Rate Of Climb/Descent", "asterix.062_V1_19_500_ARC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_500_ARC_VALUE, { "Estimated Accuracy Of Rate Of Climb/Descent, [ft/min]", "asterix.062_V1_19_500_ARC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_510, { "510, Composed Track Number", "asterix.062_V1_19_510", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_510_MIDENT, { "MIDENT, Master System Unit Identification", "asterix.062_V1_19_510_MIDENT", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_510_MTRACK, { "MTRACK, Master System Track Number", "asterix.062_V1_19_510_MTRACK", FT_UINT16, BASE_DEC, NULL, 0xfffe, NULL, HFILL } },
+ { &hf_062_V1_19_510_SIDENT, { "SIDENT, Slave System Unit Identification", "asterix.062_V1_19_510_SIDENT", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_510_STRACK, { "STRACK, Slave System Track Number", "asterix.062_V1_19_510_STRACK", FT_UINT16, BASE_DEC, NULL, 0xfffe, NULL, HFILL } },
+ { &hf_062_V1_19_RE, { "RE, Reserved Expansion Field", "asterix.062_V1_19_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_V1_19_SP, { "SP, Special Purpose Field", "asterix.062_V1_19_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_010, { "010, Data Source Identifier", "asterix.062_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_010_SAC, { "SAC, System Area Code", "asterix.062_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_010_SIC, { "SIC, System Identification Code", "asterix.062_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_015, { "015, Service Identification", "asterix.062_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_015_VALUE, { "Service Identification", "asterix.062_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_040, { "040, Track Number", "asterix.062_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_040_VALUE, { "Track Number", "asterix.062_040_VALUE", FT_UINT16, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_060, { "060, Track Mode 3/A Code", "asterix.062_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_060_V, { "V, Validated", "asterix.062_060_V", FT_UINT8, BASE_DEC, VALS (valstr_062_060_V), 0x80, NULL, HFILL } },
+ { &hf_062_060_G, { "G, Garbled", "asterix.062_060_G", FT_UINT8, BASE_DEC, VALS (valstr_062_060_G), 0x40, NULL, HFILL } },
+ { &hf_062_060_CH, { "CH, Change in Mode 3/A", "asterix.062_060_CH", FT_UINT8, BASE_DEC, VALS (valstr_062_060_CH), 0x20, NULL, HFILL } },
+ { &hf_062_060_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.062_060_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_062_070, { "070, Time Of Track Information", "asterix.062_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_070_VALUE, { "Time Of Track Information, [s]", "asterix.062_070_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_080, { "080, Track Status", "asterix.062_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_080_MON, { "MON", "asterix.062_080_MON", FT_UINT8, BASE_DEC, VALS (valstr_062_080_MON), 0x80, NULL, HFILL } },
+ { &hf_062_080_SPI, { "SPI", "asterix.062_080_SPI", FT_UINT8, BASE_DEC, VALS (valstr_062_080_SPI), 0x40, NULL, HFILL } },
+ { &hf_062_080_MRH, { "MRH, Most Reliable Height", "asterix.062_080_MRH", FT_UINT8, BASE_DEC, VALS (valstr_062_080_MRH), 0x20, NULL, HFILL } },
+ { &hf_062_080_SRC, { "SRC, Source of Calculated Track Altitude for I062/130", "asterix.062_080_SRC", FT_UINT8, BASE_DEC, VALS (valstr_062_080_SRC), 0x1c, NULL, HFILL } },
+ { &hf_062_080_CNF, { "CNF", "asterix.062_080_CNF", FT_UINT8, BASE_DEC, VALS (valstr_062_080_CNF), 0x02, NULL, HFILL } },
+ { &hf_062_080_SIM, { "SIM", "asterix.062_080_SIM", FT_UINT8, BASE_DEC, VALS (valstr_062_080_SIM), 0x80, NULL, HFILL } },
+ { &hf_062_080_TSE, { "TSE", "asterix.062_080_TSE", FT_UINT8, BASE_DEC, VALS (valstr_062_080_TSE), 0x40, NULL, HFILL } },
+ { &hf_062_080_TSB, { "TSB", "asterix.062_080_TSB", FT_UINT8, BASE_DEC, VALS (valstr_062_080_TSB), 0x20, NULL, HFILL } },
+ { &hf_062_080_FPC, { "FPC", "asterix.062_080_FPC", FT_UINT8, BASE_DEC, VALS (valstr_062_080_FPC), 0x10, NULL, HFILL } },
+ { &hf_062_080_AFF, { "AFF", "asterix.062_080_AFF", FT_UINT8, BASE_DEC, VALS (valstr_062_080_AFF), 0x08, NULL, HFILL } },
+ { &hf_062_080_STP, { "STP", "asterix.062_080_STP", FT_UINT8, BASE_DEC, VALS (valstr_062_080_STP), 0x04, NULL, HFILL } },
+ { &hf_062_080_KOS, { "KOS", "asterix.062_080_KOS", FT_UINT8, BASE_DEC, VALS (valstr_062_080_KOS), 0x02, NULL, HFILL } },
+ { &hf_062_080_AMA, { "AMA", "asterix.062_080_AMA", FT_UINT8, BASE_DEC, VALS (valstr_062_080_AMA), 0x80, NULL, HFILL } },
+ { &hf_062_080_MD4, { "MD4", "asterix.062_080_MD4", FT_UINT8, BASE_DEC, VALS (valstr_062_080_MD4), 0x60, NULL, HFILL } },
+ { &hf_062_080_ME, { "ME", "asterix.062_080_ME", FT_UINT8, BASE_DEC, VALS (valstr_062_080_ME), 0x10, NULL, HFILL } },
+ { &hf_062_080_MI, { "MI", "asterix.062_080_MI", FT_UINT8, BASE_DEC, VALS (valstr_062_080_MI), 0x08, NULL, HFILL } },
+ { &hf_062_080_MD5, { "MD5", "asterix.062_080_MD5", FT_UINT8, BASE_DEC, VALS (valstr_062_080_MD5), 0x06, NULL, HFILL } },
+ { &hf_062_080_CST, { "CST", "asterix.062_080_CST", FT_UINT8, BASE_DEC, VALS (valstr_062_080_CST), 0x80, NULL, HFILL } },
+ { &hf_062_080_PSR, { "PSR", "asterix.062_080_PSR", FT_UINT8, BASE_DEC, VALS (valstr_062_080_PSR), 0x40, NULL, HFILL } },
+ { &hf_062_080_SSR, { "SSR", "asterix.062_080_SSR", FT_UINT8, BASE_DEC, VALS (valstr_062_080_SSR), 0x20, NULL, HFILL } },
+ { &hf_062_080_MDS, { "MDS", "asterix.062_080_MDS", FT_UINT8, BASE_DEC, VALS (valstr_062_080_MDS), 0x10, NULL, HFILL } },
+ { &hf_062_080_ADS, { "ADS", "asterix.062_080_ADS", FT_UINT8, BASE_DEC, VALS (valstr_062_080_ADS), 0x08, NULL, HFILL } },
+ { &hf_062_080_SUC, { "SUC", "asterix.062_080_SUC", FT_UINT8, BASE_DEC, VALS (valstr_062_080_SUC), 0x04, NULL, HFILL } },
+ { &hf_062_080_AAC, { "AAC", "asterix.062_080_AAC", FT_UINT8, BASE_DEC, VALS (valstr_062_080_AAC), 0x02, NULL, HFILL } },
+ { &hf_062_080_SDS, { "SDS", "asterix.062_080_SDS", FT_UINT8, BASE_DEC, VALS (valstr_062_080_SDS), 0xc0, NULL, HFILL } },
+ { &hf_062_080_EMS, { "EMS", "asterix.062_080_EMS", FT_UINT8, BASE_DEC, VALS (valstr_062_080_EMS), 0x38, NULL, HFILL } },
+ { &hf_062_080_PFT, { "PFT", "asterix.062_080_PFT", FT_UINT8, BASE_DEC, VALS (valstr_062_080_PFT), 0x04, NULL, HFILL } },
+ { &hf_062_080_FPLT, { "FPLT", "asterix.062_080_FPLT", FT_UINT8, BASE_DEC, VALS (valstr_062_080_FPLT), 0x02, NULL, HFILL } },
+ { &hf_062_080_DUPT, { "DUPT", "asterix.062_080_DUPT", FT_UINT8, BASE_DEC, VALS (valstr_062_080_DUPT), 0x80, NULL, HFILL } },
+ { &hf_062_080_DUPF, { "DUPF", "asterix.062_080_DUPF", FT_UINT8, BASE_DEC, VALS (valstr_062_080_DUPF), 0x40, NULL, HFILL } },
+ { &hf_062_080_DUPM, { "DUPM", "asterix.062_080_DUPM", FT_UINT8, BASE_DEC, VALS (valstr_062_080_DUPM), 0x20, NULL, HFILL } },
+ { &hf_062_080_SFC, { "SFC", "asterix.062_080_SFC", FT_UINT8, BASE_DEC, VALS (valstr_062_080_SFC), 0x10, NULL, HFILL } },
+ { &hf_062_080_IDD, { "IDD", "asterix.062_080_IDD", FT_UINT8, BASE_DEC, VALS (valstr_062_080_IDD), 0x08, NULL, HFILL } },
+ { &hf_062_080_IEC, { "IEC", "asterix.062_080_IEC", FT_UINT8, BASE_DEC, VALS (valstr_062_080_IEC), 0x04, NULL, HFILL } },
+ { &hf_062_100, { "100, Calculated Track Position (Cartesian)", "asterix.062_100", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_100_X, { "X, X Coordinate, [m]", "asterix.062_100_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_100_Y, { "Y, Y Coordinate, [m]", "asterix.062_100_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_105, { "105, Calculated Position In WGS-84 Co-ordinates", "asterix.062_105", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_105_LAT, { "LAT, Latitude, [°]", "asterix.062_105_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_105_LON, { "LON, Longitude, [°]", "asterix.062_105_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_110, { "110, Mode 5 Data Reports and Extended Mode 1 Code", "asterix.062_110", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_110_SUM, { "SUM, Mode 5 Summary", "asterix.062_110_SUM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_110_SUM_M5, { "M5", "asterix.062_110_SUM_M5", FT_UINT8, BASE_DEC, VALS (valstr_062_110_SUM_M5), 0x80, NULL, HFILL } },
+ { &hf_062_110_SUM_ID, { "ID", "asterix.062_110_SUM_ID", FT_UINT8, BASE_DEC, VALS (valstr_062_110_SUM_ID), 0x40, NULL, HFILL } },
+ { &hf_062_110_SUM_DA, { "DA", "asterix.062_110_SUM_DA", FT_UINT8, BASE_DEC, VALS (valstr_062_110_SUM_DA), 0x20, NULL, HFILL } },
+ { &hf_062_110_SUM_M1, { "M1", "asterix.062_110_SUM_M1", FT_UINT8, BASE_DEC, VALS (valstr_062_110_SUM_M1), 0x10, NULL, HFILL } },
+ { &hf_062_110_SUM_M2, { "M2", "asterix.062_110_SUM_M2", FT_UINT8, BASE_DEC, VALS (valstr_062_110_SUM_M2), 0x08, NULL, HFILL } },
+ { &hf_062_110_SUM_M3, { "M3", "asterix.062_110_SUM_M3", FT_UINT8, BASE_DEC, VALS (valstr_062_110_SUM_M3), 0x04, NULL, HFILL } },
+ { &hf_062_110_SUM_MC, { "MC", "asterix.062_110_SUM_MC", FT_UINT8, BASE_DEC, VALS (valstr_062_110_SUM_MC), 0x02, NULL, HFILL } },
+ { &hf_062_110_SUM_X, { "X, X-pulse from Mode 5 Data Reply or Report", "asterix.062_110_SUM_X", FT_UINT8, BASE_DEC, VALS (valstr_062_110_SUM_X), 0x01, NULL, HFILL } },
+ { &hf_062_110_PMN, { "PMN, Mode 5 PIN/ National Origin/Mission Code", "asterix.062_110_PMN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_110_PMN_PIN, { "PIN, PIN Code", "asterix.062_110_PMN_PIN", FT_UINT16, BASE_DEC, NULL, 0x3fff, NULL, HFILL } },
+ { &hf_062_110_PMN_NAT, { "NAT, National Origin", "asterix.062_110_PMN_NAT", FT_UINT8, BASE_DEC, NULL, 0x1f, NULL, HFILL } },
+ { &hf_062_110_PMN_MIS, { "MIS, Mission Code", "asterix.062_110_PMN_MIS", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_062_110_POS, { "POS, Mode 5 Reported Position", "asterix.062_110_POS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_110_POS_LAT, { "LAT, Latitude, [°]", "asterix.062_110_POS_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_110_POS_LON, { "LON, Longitude, [°]", "asterix.062_110_POS_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_110_GA, { "GA, Mode 5 GNSS-derived Altitude", "asterix.062_110_GA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_110_GA_RES, { "RES, Resolution with which the GNSS-derived Altitude (GA) is Reported", "asterix.062_110_GA_RES", FT_UINT8, BASE_DEC, VALS (valstr_062_110_GA_RES), 0x40, NULL, HFILL } },
+ { &hf_062_110_GA_GA, { "GA, GNSS-derived Altitude of Target, Expressed as Height Above WGS 84 Ellipsoid, [ft]", "asterix.062_110_GA_GA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_110_EM1, { "EM1, Extended Mode 1 Code in Octal Representation", "asterix.062_110_EM1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_110_EM1_EM1, { "EM1, Extended Mode 1 Reply in Octal Representation", "asterix.062_110_EM1_EM1", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_062_110_TOS, { "TOS, Time Offset for POS and GA", "asterix.062_110_TOS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_110_TOS_VALUE, { "Time Offset for POS and GA, [s]", "asterix.062_110_TOS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_110_XP, { "XP, X Pulse Presence", "asterix.062_110_XP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_110_XP_X5, { "X5, X-pulse from Mode 5 Data Reply or Report", "asterix.062_110_XP_X5", FT_UINT8, BASE_DEC, VALS (valstr_062_110_XP_X5), 0x10, NULL, HFILL } },
+ { &hf_062_110_XP_XC, { "XC, X-pulse from Mode C Reply", "asterix.062_110_XP_XC", FT_UINT8, BASE_DEC, VALS (valstr_062_110_XP_XC), 0x08, NULL, HFILL } },
+ { &hf_062_110_XP_X3, { "X3, X-pulse from Mode 3/A Reply", "asterix.062_110_XP_X3", FT_UINT8, BASE_DEC, VALS (valstr_062_110_XP_X3), 0x04, NULL, HFILL } },
+ { &hf_062_110_XP_X2, { "X2, X-pulse from Mode 2 Reply", "asterix.062_110_XP_X2", FT_UINT8, BASE_DEC, VALS (valstr_062_110_XP_X2), 0x02, NULL, HFILL } },
+ { &hf_062_110_XP_X1, { "X1, X-pulse from Mode 1 Reply", "asterix.062_110_XP_X1", FT_UINT8, BASE_DEC, VALS (valstr_062_110_XP_X1), 0x01, NULL, HFILL } },
+ { &hf_062_120, { "120, Track Mode 2 Code", "asterix.062_120", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_120_MODE2, { "MODE2, Mode-2 Code in Octal Representation", "asterix.062_120_MODE2", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_062_130, { "130, Calculated Track Geometric Altitude", "asterix.062_130", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_130_VALUE, { "Calculated Track Geometric Altitude, [ft]", "asterix.062_130_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_135, { "135, Calculated Track Barometric Altitude", "asterix.062_135", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_135_QNH, { "QNH", "asterix.062_135_QNH", FT_UINT8, BASE_DEC, VALS (valstr_062_135_QNH), 0x80, NULL, HFILL } },
+ { &hf_062_135_CTB, { "CTB, Calculated Track Barometric Altitude, [FL]", "asterix.062_135_CTB", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_136, { "136, Measured Flight Level", "asterix.062_136", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_136_VALUE, { "Measured Flight Level, [FL]", "asterix.062_136_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_185, { "185, Calculated Track Velocity (Cartesian)", "asterix.062_185", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_185_VX, { "VX, Velocity (X-component), [m/s]", "asterix.062_185_VX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_185_VY, { "VY, Velocity (Y-component), [m/s]", "asterix.062_185_VY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_200, { "200, Mode of Movement", "asterix.062_200", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_200_TRANS, { "TRANS, Transversal Acceleration", "asterix.062_200_TRANS", FT_UINT8, BASE_DEC, VALS (valstr_062_200_TRANS), 0xc0, NULL, HFILL } },
+ { &hf_062_200_LONG, { "LONG, Longitudinal Acceleration", "asterix.062_200_LONG", FT_UINT8, BASE_DEC, VALS (valstr_062_200_LONG), 0x30, NULL, HFILL } },
+ { &hf_062_200_VERT, { "VERT, Transversal Acceleration", "asterix.062_200_VERT", FT_UINT8, BASE_DEC, VALS (valstr_062_200_VERT), 0x0c, NULL, HFILL } },
+ { &hf_062_200_ADF, { "ADF, Altitude Discrepancy Flag", "asterix.062_200_ADF", FT_UINT8, BASE_DEC, VALS (valstr_062_200_ADF), 0x02, NULL, HFILL } },
+ { &hf_062_210, { "210, Calculated Acceleration (Cartesian)", "asterix.062_210", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_210_AX, { "AX, [m/s2]", "asterix.062_210_AX", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_210_AY, { "AY, [m/s2]", "asterix.062_210_AY", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_220, { "220, Calculated Rate of Climb/Descent", "asterix.062_220", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_220_VALUE, { "Calculated Rate of Climb/Descent, [ft/min]", "asterix.062_220_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_245, { "245, Target Identification", "asterix.062_245", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_245_STI, { "STI", "asterix.062_245_STI", FT_UINT8, BASE_DEC, VALS (valstr_062_245_STI), 0xc0, NULL, HFILL } },
+ { &hf_062_245_CHR, { "CHR, Characters 1-8 (Coded on 6 Bits Each) Defining Target Identification", "asterix.062_245_CHR", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_270, { "270, Target Size and Orientation", "asterix.062_270", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_270_LENGTH, { "LENGTH, Length, [m]", "asterix.062_270_LENGTH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_270_ORIENTATION, { "ORIENTATION, Orientation, [°]", "asterix.062_270_ORIENTATION", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_270_WIDTH, { "WIDTH, Width, [m]", "asterix.062_270_WIDTH", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_290, { "290, System Track Update Ages", "asterix.062_290", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_290_TRK, { "TRK, Track Age", "asterix.062_290_TRK", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_290_TRK_VALUE, { "Track Age, [s]", "asterix.062_290_TRK_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_290_PSR, { "PSR, PSR Age", "asterix.062_290_PSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_290_PSR_VALUE, { "PSR Age, [s]", "asterix.062_290_PSR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_290_SSR, { "SSR, SSR Age", "asterix.062_290_SSR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_290_SSR_VALUE, { "SSR Age, [s]", "asterix.062_290_SSR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_290_MDS, { "MDS, Mode S Age", "asterix.062_290_MDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_290_MDS_VALUE, { "Mode S Age, [s]", "asterix.062_290_MDS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_290_ADS, { "ADS, ADS-C Age", "asterix.062_290_ADS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_290_ADS_VALUE, { "ADS-C Age, [s]", "asterix.062_290_ADS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_290_ES, { "ES, ADS-B Extended Squitter Age", "asterix.062_290_ES", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_290_ES_VALUE, { "ADS-B Extended Squitter Age, [s]", "asterix.062_290_ES_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_290_VDL, { "VDL, ADS-B VDL Mode 4 Age", "asterix.062_290_VDL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_290_VDL_VALUE, { "ADS-B VDL Mode 4 Age, [s]", "asterix.062_290_VDL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_290_UAT, { "UAT, ADS-B UAT Age", "asterix.062_290_UAT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_290_UAT_VALUE, { "ADS-B UAT Age, [s]", "asterix.062_290_UAT_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_290_LOP, { "LOP, Loop Age", "asterix.062_290_LOP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_290_LOP_VALUE, { "Loop Age, [s]", "asterix.062_290_LOP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_290_MLT, { "MLT, Multilateration Age", "asterix.062_290_MLT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_290_MLT_VALUE, { "Multilateration Age, [s]", "asterix.062_290_MLT_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295, { "295, Track Data Ages", "asterix.062_295", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_MFL, { "MFL, Measured Flight Level Age", "asterix.062_295_MFL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_MFL_VALUE, { "Measured Flight Level Age, [s]", "asterix.062_295_MFL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_MD1, { "MD1, Mode 1 Age", "asterix.062_295_MD1", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_MD1_VALUE, { "Mode 1 Age, [s]", "asterix.062_295_MD1_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_MD2, { "MD2, Mode 2 Age", "asterix.062_295_MD2", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_MD2_VALUE, { "Mode 2 Age, [s]", "asterix.062_295_MD2_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_MDA, { "MDA, Mode 3/A Age", "asterix.062_295_MDA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_MDA_VALUE, { "Mode 3/A Age, [s]", "asterix.062_295_MDA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_MD4, { "MD4, Mode 4 Age", "asterix.062_295_MD4", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_MD4_VALUE, { "Mode 4 Age, [s]", "asterix.062_295_MD4_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_MD5, { "MD5, Mode 5 Age", "asterix.062_295_MD5", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_MD5_VALUE, { "Mode 5 Age, [s]", "asterix.062_295_MD5_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_MHG, { "MHG, Magnetic Heading Age", "asterix.062_295_MHG", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_MHG_VALUE, { "Magnetic Heading Age, [s]", "asterix.062_295_MHG_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_IAS, { "IAS, Indicated Airspeed / Mach Nb Age", "asterix.062_295_IAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_IAS_VALUE, { "Indicated Airspeed / Mach Nb Age, [s]", "asterix.062_295_IAS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_TAS, { "TAS, True Airspeed Age", "asterix.062_295_TAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_TAS_VALUE, { "True Airspeed Age, [s]", "asterix.062_295_TAS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_SAL, { "SAL, Selected Altitude Age", "asterix.062_295_SAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_SAL_VALUE, { "Selected Altitude Age, [s]", "asterix.062_295_SAL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_FSS, { "FSS, Final State Selected Altitude Age", "asterix.062_295_FSS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_FSS_VALUE, { "Final State Selected Altitude Age, [s]", "asterix.062_295_FSS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_TID, { "TID, Trajectory Intent Age", "asterix.062_295_TID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_TID_VALUE, { "Trajectory Intent Age, [s]", "asterix.062_295_TID_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_COM, { "COM, Communication/ACAS Capability and Flight Status Age", "asterix.062_295_COM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_COM_VALUE, { "Communication/ACAS Capability and Flight Status Age, [s]", "asterix.062_295_COM_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_SAB, { "SAB, Status Reported by ADS-B Age", "asterix.062_295_SAB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_SAB_VALUE, { "Status Reported by ADS-B Age, [s]", "asterix.062_295_SAB_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_ACS, { "ACS, ACAS Resolution Advisory Report Age", "asterix.062_295_ACS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_ACS_VALUE, { "ACAS Resolution Advisory Report Age, [s]", "asterix.062_295_ACS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_BVR, { "BVR, Barometric Vertical Rate Age", "asterix.062_295_BVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_BVR_VALUE, { "Barometric Vertical Rate Age, [s]", "asterix.062_295_BVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_GVR, { "GVR, Geometrical Vertical Rate Age", "asterix.062_295_GVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_GVR_VALUE, { "Geometrical Vertical Rate Age, [s]", "asterix.062_295_GVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_RAN, { "RAN, Roll Angle Age", "asterix.062_295_RAN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_RAN_VALUE, { "Roll Angle Age, [s]", "asterix.062_295_RAN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_TAR, { "TAR, Track Angle Rate Age", "asterix.062_295_TAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_TAR_VALUE, { "Track Angle Rate Age, [s]", "asterix.062_295_TAR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_TAN, { "TAN, Track Angle Age", "asterix.062_295_TAN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_TAN_VALUE, { "Track Angle Age, [s]", "asterix.062_295_TAN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_GSP, { "GSP, Ground Speed Age", "asterix.062_295_GSP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_GSP_VALUE, { "Ground Speed Age, [s]", "asterix.062_295_GSP_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_VUN, { "VUN, Velocity Uncertainty Age", "asterix.062_295_VUN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_VUN_VALUE, { "Velocity Uncertainty Age, [s]", "asterix.062_295_VUN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_MET, { "MET, Meteorological Data Age", "asterix.062_295_MET", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_MET_VALUE, { "Meteorological Data Age, [s]", "asterix.062_295_MET_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_EMC, { "EMC, Emitter Category Age", "asterix.062_295_EMC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_EMC_VALUE, { "Emitter Category Age, [s]", "asterix.062_295_EMC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_POS, { "POS, Position Age", "asterix.062_295_POS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_POS_VALUE, { "Position Age, [s]", "asterix.062_295_POS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_GAL, { "GAL, Geometric Altitude Age", "asterix.062_295_GAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_GAL_VALUE, { "Geometric Altitude Age, [s]", "asterix.062_295_GAL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_PUN, { "PUN, Position Uncertainty Age", "asterix.062_295_PUN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_PUN_VALUE, { "Position Uncertainty Age, [s]", "asterix.062_295_PUN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_MB, { "MB, Mode S MB Data Age", "asterix.062_295_MB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_MB_VALUE, { "Mode S MB Data Age, [s]", "asterix.062_295_MB_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_IAR, { "IAR, Indicated Airspeed Data Age", "asterix.062_295_IAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_IAR_VALUE, { "Indicated Airspeed Data Age, [s]", "asterix.062_295_IAR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_MAC, { "MAC, Mach Number Data Age", "asterix.062_295_MAC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_MAC_VALUE, { "Mach Number Data Age, [s]", "asterix.062_295_MAC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_BPS, { "BPS, Barometric Pressure Setting Data Age", "asterix.062_295_BPS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_295_BPS_VALUE, { "Barometric Pressure Setting Data Age, [s]", "asterix.062_295_BPS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_300, { "300, Vehicle Fleet Identification", "asterix.062_300", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_300_VALUE, { "Vehicle Fleet Identification", "asterix.062_300_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_062_300_VALUE), 0x00, NULL, HFILL } },
+ { &hf_062_340, { "340, Measured Information", "asterix.062_340", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_340_SID, { "SID, Sensor Identification", "asterix.062_340_SID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_340_SID_SAC, { "SAC, System Area Code", "asterix.062_340_SID_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_340_SID_SIC, { "SIC, System Identification Code", "asterix.062_340_SID_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_340_POS, { "POS, Measured Position", "asterix.062_340_POS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_340_POS_RHO, { "RHO, Measured Distance, [NM]", "asterix.062_340_POS_RHO", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_340_POS_THETA, { "THETA, Measured Azimuth, [°]", "asterix.062_340_POS_THETA", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_340_HEIGHT, { "HEIGHT, Measured 3-D Height", "asterix.062_340_HEIGHT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_340_HEIGHT_VALUE, { "Measured 3-D Height, [ft]", "asterix.062_340_HEIGHT_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_340_MDC, { "MDC", "asterix.062_340_MDC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_340_MDC_V, { "V, Validated", "asterix.062_340_MDC_V", FT_UINT8, BASE_DEC, VALS (valstr_062_340_MDC_V), 0x80, NULL, HFILL } },
+ { &hf_062_340_MDC_G, { "G, Garbled", "asterix.062_340_MDC_G", FT_UINT8, BASE_DEC, VALS (valstr_062_340_MDC_G), 0x40, NULL, HFILL } },
+ { &hf_062_340_MDC_LMC, { "LMC, Last Measured Mode C Code, [FL]", "asterix.062_340_MDC_LMC", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_340_MDA, { "MDA", "asterix.062_340_MDA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_340_MDA_V, { "V, Validated", "asterix.062_340_MDA_V", FT_UINT8, BASE_DEC, VALS (valstr_062_340_MDA_V), 0x80, NULL, HFILL } },
+ { &hf_062_340_MDA_G, { "G, Garbled", "asterix.062_340_MDA_G", FT_UINT8, BASE_DEC, VALS (valstr_062_340_MDA_G), 0x40, NULL, HFILL } },
+ { &hf_062_340_MDA_L, { "L", "asterix.062_340_MDA_L", FT_UINT8, BASE_DEC, VALS (valstr_062_340_MDA_L), 0x20, NULL, HFILL } },
+ { &hf_062_340_MDA_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.062_340_MDA_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_062_340_TYP, { "TYP", "asterix.062_340_TYP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_340_TYP_TYP, { "TYP, Report Type", "asterix.062_340_TYP_TYP", FT_UINT8, BASE_DEC, VALS (valstr_062_340_TYP_TYP), 0xe0, NULL, HFILL } },
+ { &hf_062_340_TYP_SIM, { "SIM", "asterix.062_340_TYP_SIM", FT_UINT8, BASE_DEC, VALS (valstr_062_340_TYP_SIM), 0x10, NULL, HFILL } },
+ { &hf_062_340_TYP_RAB, { "RAB", "asterix.062_340_TYP_RAB", FT_UINT8, BASE_DEC, VALS (valstr_062_340_TYP_RAB), 0x08, NULL, HFILL } },
+ { &hf_062_340_TYP_TST, { "TST", "asterix.062_340_TYP_TST", FT_UINT8, BASE_DEC, VALS (valstr_062_340_TYP_TST), 0x04, NULL, HFILL } },
+ { &hf_062_380, { "380, Aircraft Derived Data", "asterix.062_380", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_ADR, { "ADR, Target Address", "asterix.062_380_ADR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_ADR_VALUE, { "Target Address", "asterix.062_380_ADR_VALUE", FT_UINT24, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_ID, { "ID, Target Identification", "asterix.062_380_ID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_ID_VALUE, { "Target Identification", "asterix.062_380_ID_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_MHG, { "MHG, Magnetic Heading", "asterix.062_380_MHG", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_MHG_VALUE, { "Magnetic Heading, [°]", "asterix.062_380_MHG_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_IAS, { "IAS, Indicated Airspeed/Mach No", "asterix.062_380_IAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_IAS_IM, { "IM", "asterix.062_380_IAS_IM", FT_UINT8, BASE_DEC, VALS (valstr_062_380_IAS_IM), 0x80, NULL, HFILL } },
+ { &hf_062_380_IAS_IAS, { "IAS", "asterix.062_380_IAS_IAS", FT_UINT16, BASE_DEC, NULL, 0x7fff, NULL, HFILL } },
+ { &hf_062_380_TAS, { "TAS, True Airspeed", "asterix.062_380_TAS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_TAS_VALUE, { "True Airspeed, [kt]", "asterix.062_380_TAS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_SAL, { "SAL, Selected Altitude", "asterix.062_380_SAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_SAL_SAS, { "SAS", "asterix.062_380_SAL_SAS", FT_UINT8, BASE_DEC, VALS (valstr_062_380_SAL_SAS), 0x80, NULL, HFILL } },
+ { &hf_062_380_SAL_SRC, { "SRC", "asterix.062_380_SAL_SRC", FT_UINT8, BASE_DEC, VALS (valstr_062_380_SAL_SRC), 0x60, NULL, HFILL } },
+ { &hf_062_380_SAL_ALT, { "ALT, Altitude in Two's Complement Form, [ft]", "asterix.062_380_SAL_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_FSS, { "FSS, Final State Selected Altitude", "asterix.062_380_FSS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_FSS_MV, { "MV, Manage Vertical Mode", "asterix.062_380_FSS_MV", FT_UINT8, BASE_DEC, VALS (valstr_062_380_FSS_MV), 0x80, NULL, HFILL } },
+ { &hf_062_380_FSS_AH, { "AH, Altitude Hold", "asterix.062_380_FSS_AH", FT_UINT8, BASE_DEC, VALS (valstr_062_380_FSS_AH), 0x40, NULL, HFILL } },
+ { &hf_062_380_FSS_AM, { "AM, Approach Mode", "asterix.062_380_FSS_AM", FT_UINT8, BASE_DEC, VALS (valstr_062_380_FSS_AM), 0x20, NULL, HFILL } },
+ { &hf_062_380_FSS_ALT, { "ALT, Altitude in Two's Complement Form, [ft]", "asterix.062_380_FSS_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_TIS, { "TIS, Trajectory Intent Status", "asterix.062_380_TIS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_TIS_NAV, { "NAV, TID Available", "asterix.062_380_TIS_NAV", FT_UINT8, BASE_DEC, VALS (valstr_062_380_TIS_NAV), 0x80, NULL, HFILL } },
+ { &hf_062_380_TIS_NVB, { "NVB, TID Valid", "asterix.062_380_TIS_NVB", FT_UINT8, BASE_DEC, VALS (valstr_062_380_TIS_NVB), 0x40, NULL, HFILL } },
+ { &hf_062_380_TID, { "TID, Trajectory Intent Data", "asterix.062_380_TID", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_TID_TCA, { "TCA, TCP Number Availability", "asterix.062_380_TID_TCA", FT_UINT8, BASE_DEC, VALS (valstr_062_380_TID_TCA), 0x80, NULL, HFILL } },
+ { &hf_062_380_TID_NC, { "NC, TCP Compliance", "asterix.062_380_TID_NC", FT_UINT8, BASE_DEC, VALS (valstr_062_380_TID_NC), 0x40, NULL, HFILL } },
+ { &hf_062_380_TID_TCPN, { "TCPN, Trajectory Change Point Number", "asterix.062_380_TID_TCPN", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_062_380_TID_ALT, { "ALT, Altitude in Two's Complement Form, [ft]", "asterix.062_380_TID_ALT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_TID_LAT, { "LAT, Latitude in WGS.84 in Two's Complement, [°]", "asterix.062_380_TID_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_TID_LON, { "LON, Longitude in WGS.84 in Two's Complement, [°]", "asterix.062_380_TID_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_TID_PT, { "PT, Point Type", "asterix.062_380_TID_PT", FT_UINT8, BASE_DEC, VALS (valstr_062_380_TID_PT), 0xf0, NULL, HFILL } },
+ { &hf_062_380_TID_TD, { "TD, Turn Direction", "asterix.062_380_TID_TD", FT_UINT8, BASE_DEC, VALS (valstr_062_380_TID_TD), 0x0c, NULL, HFILL } },
+ { &hf_062_380_TID_TRA, { "TRA, Turn Radius Availability", "asterix.062_380_TID_TRA", FT_UINT8, BASE_DEC, VALS (valstr_062_380_TID_TRA), 0x02, NULL, HFILL } },
+ { &hf_062_380_TID_TOA, { "TOA, TOV Available", "asterix.062_380_TID_TOA", FT_UINT8, BASE_DEC, VALS (valstr_062_380_TID_TOA), 0x01, NULL, HFILL } },
+ { &hf_062_380_TID_TOV, { "TOV, Time Over Point, [s]", "asterix.062_380_TID_TOV", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_TID_TTR, { "TTR, TCP Turn Radius, [NM]", "asterix.062_380_TID_TTR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_COM, { "COM, Communications/ACAS Capability and Flight Status", "asterix.062_380_COM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_COM_COM, { "COM, Communications Capability of the Transponder", "asterix.062_380_COM_COM", FT_UINT8, BASE_DEC, VALS (valstr_062_380_COM_COM), 0xe0, NULL, HFILL } },
+ { &hf_062_380_COM_STAT, { "STAT, Flight Status", "asterix.062_380_COM_STAT", FT_UINT8, BASE_DEC, VALS (valstr_062_380_COM_STAT), 0x1c, NULL, HFILL } },
+ { &hf_062_380_COM_SSC, { "SSC, Specific Service Capability", "asterix.062_380_COM_SSC", FT_UINT8, BASE_DEC, VALS (valstr_062_380_COM_SSC), 0x80, NULL, HFILL } },
+ { &hf_062_380_COM_ARC, { "ARC, Altitude Reporting Capability", "asterix.062_380_COM_ARC", FT_UINT8, BASE_DEC, VALS (valstr_062_380_COM_ARC), 0x40, NULL, HFILL } },
+ { &hf_062_380_COM_AIC, { "AIC, Aircraft Identification Capability", "asterix.062_380_COM_AIC", FT_UINT8, BASE_DEC, VALS (valstr_062_380_COM_AIC), 0x20, NULL, HFILL } },
+ { &hf_062_380_COM_B1A, { "B1A, BDS 1,0 Bit 16", "asterix.062_380_COM_B1A", FT_UINT8, BASE_DEC, NULL, 0x10, NULL, HFILL } },
+ { &hf_062_380_COM_B1B, { "B1B, BDS BDS 1,0 Bits 37/40", "asterix.062_380_COM_B1B", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_062_380_SAB, { "SAB, Status Reported by ADS-B", "asterix.062_380_SAB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_SAB_AC, { "AC, ACAS Status", "asterix.062_380_SAB_AC", FT_UINT8, BASE_DEC, VALS (valstr_062_380_SAB_AC), 0xc0, NULL, HFILL } },
+ { &hf_062_380_SAB_MN, { "MN, Multiple Navigational Aids Status", "asterix.062_380_SAB_MN", FT_UINT8, BASE_DEC, VALS (valstr_062_380_SAB_MN), 0x30, NULL, HFILL } },
+ { &hf_062_380_SAB_DC, { "DC, Differential Correction Status", "asterix.062_380_SAB_DC", FT_UINT8, BASE_DEC, VALS (valstr_062_380_SAB_DC), 0x0c, NULL, HFILL } },
+ { &hf_062_380_SAB_GBS, { "GBS, Ground Bit Set", "asterix.062_380_SAB_GBS", FT_UINT8, BASE_DEC, VALS (valstr_062_380_SAB_GBS), 0x02, NULL, HFILL } },
+ { &hf_062_380_SAB_STAT, { "STAT, Flight Status", "asterix.062_380_SAB_STAT", FT_UINT8, BASE_DEC, VALS (valstr_062_380_SAB_STAT), 0x07, NULL, HFILL } },
+ { &hf_062_380_ACS, { "ACS, ACAS Resolution Advisory Report", "asterix.062_380_ACS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_ACS_VALUE, { "ACAS Resolution Advisory Report", "asterix.062_380_ACS_VALUE", FT_UINT56, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_BVR, { "BVR, Barometric Vertical Rate", "asterix.062_380_BVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_BVR_VALUE, { "Barometric Vertical Rate, [ft/min]", "asterix.062_380_BVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_GVR, { "GVR, Geometric Vertical Rate", "asterix.062_380_GVR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_GVR_VALUE, { "Geometric Vertical Rate, [ft/min]", "asterix.062_380_GVR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_RAN, { "RAN, Roll Angle", "asterix.062_380_RAN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_RAN_VALUE, { "Roll Angle, [°]", "asterix.062_380_RAN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_TAR, { "TAR, Track Angle Rate", "asterix.062_380_TAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_TAR_TI, { "TI, Turn Indicator", "asterix.062_380_TAR_TI", FT_UINT8, BASE_DEC, VALS (valstr_062_380_TAR_TI), 0xc0, NULL, HFILL } },
+ { &hf_062_380_TAR_ROT, { "ROT, Rate of Turn in Two's Complement Form, [°/s]", "asterix.062_380_TAR_ROT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_TAN, { "TAN, Track Angle", "asterix.062_380_TAN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_TAN_VALUE, { "Track Angle, [°]", "asterix.062_380_TAN_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_GS, { "GS, Ground Speed", "asterix.062_380_GS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_GS_VALUE, { "Ground Speed, [NM/s]", "asterix.062_380_GS_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_VUN, { "VUN, Velocity Uncertainty", "asterix.062_380_VUN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_VUN_VALUE, { "Velocity Uncertainty", "asterix.062_380_VUN_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_MET, { "MET, Meteorological Data", "asterix.062_380_MET", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_MET_WS, { "WS, Wind Speed Valid Flag", "asterix.062_380_MET_WS", FT_UINT8, BASE_DEC, VALS (valstr_062_380_MET_WS), 0x80, NULL, HFILL } },
+ { &hf_062_380_MET_WD, { "WD, Wind Direction Valid Flag", "asterix.062_380_MET_WD", FT_UINT8, BASE_DEC, VALS (valstr_062_380_MET_WD), 0x40, NULL, HFILL } },
+ { &hf_062_380_MET_TMP, { "TMP, Temperature Valid Flag", "asterix.062_380_MET_TMP", FT_UINT8, BASE_DEC, VALS (valstr_062_380_MET_TMP), 0x20, NULL, HFILL } },
+ { &hf_062_380_MET_TRB, { "TRB, Turbulence Valid Flag", "asterix.062_380_MET_TRB", FT_UINT8, BASE_DEC, VALS (valstr_062_380_MET_TRB), 0x10, NULL, HFILL } },
+ { &hf_062_380_MET_WSD, { "WSD, Wind Speed, [kt]", "asterix.062_380_MET_WSD", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_MET_WDD, { "WDD, Wind Direction, [°]", "asterix.062_380_MET_WDD", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_MET_TMPD, { "TMPD, Temperature in Degrees Celsius, [°C]", "asterix.062_380_MET_TMPD", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_MET_TRBD, { "TRBD, Turbulence", "asterix.062_380_MET_TRBD", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_EMC, { "EMC, Emitter Category", "asterix.062_380_EMC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_EMC_VALUE, { "Emitter Category", "asterix.062_380_EMC_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_062_380_EMC_VALUE), 0x00, NULL, HFILL } },
+ { &hf_062_380_POS, { "POS, Position", "asterix.062_380_POS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_POS_LAT, { "LAT, Latitude in WGS.84 in Two's Complement Form, [°]", "asterix.062_380_POS_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_POS_LON, { "LON, Longitude in WGS.84 in Two's Complement Form, [°]", "asterix.062_380_POS_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_GAL, { "GAL, Geometric Altitude", "asterix.062_380_GAL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_GAL_VALUE, { "Geometric Altitude, [ft]", "asterix.062_380_GAL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_PUN, { "PUN, Position Uncertainty", "asterix.062_380_PUN", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_PUN_PUN, { "PUN, Position Uncertainty", "asterix.062_380_PUN_PUN", FT_UINT8, BASE_DEC, NULL, 0x0f, NULL, HFILL } },
+ { &hf_062_380_MB, { "MB, MODE S MB DATA", "asterix.062_380_MB", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_MB_VALUE, { "MODE S MB DATA", "asterix.062_380_MB_VALUE", FT_UINT64, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_IAR, { "IAR, Indicated Airspeed", "asterix.062_380_IAR", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_IAR_VALUE, { "Indicated Airspeed, [kt]", "asterix.062_380_IAR_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_MAC, { "MAC, Mach Number", "asterix.062_380_MAC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_MAC_VALUE, { "Mach Number, [Mach]", "asterix.062_380_MAC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_BPS, { "BPS, Barometric Pressure Setting", "asterix.062_380_BPS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_380_BPS_BPS, { "BPS, [mb]", "asterix.062_380_BPS_BPS", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390, { "390, Flight Plan Related Data", "asterix.062_390", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_TAG, { "TAG, FPPS Identification Tag", "asterix.062_390_TAG", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_TAG_SAC, { "SAC, System Area Code", "asterix.062_390_TAG_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_TAG_SIC, { "SIC, System Identification Code", "asterix.062_390_TAG_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_CS, { "CS, Callsign", "asterix.062_390_CS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_CS_VALUE, { "Callsign", "asterix.062_390_CS_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_IFI, { "IFI, IFPS_FLIGHT_ID", "asterix.062_390_IFI", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_IFI_TYP, { "TYP", "asterix.062_390_IFI_TYP", FT_UINT8, BASE_DEC, VALS (valstr_062_390_IFI_TYP), 0xc0, NULL, HFILL } },
+ { &hf_062_390_IFI_NBR, { "NBR, Number from 0 to 99 999 999", "asterix.062_390_IFI_NBR", FT_UINT32, BASE_DEC, NULL, 0x07ffffff, NULL, HFILL } },
+ { &hf_062_390_FCT, { "FCT, Flight Category", "asterix.062_390_FCT", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_FCT_GATOAT, { "GATOAT", "asterix.062_390_FCT_GATOAT", FT_UINT8, BASE_DEC, VALS (valstr_062_390_FCT_GATOAT), 0xc0, NULL, HFILL } },
+ { &hf_062_390_FCT_FR1FR2, { "FR1FR2", "asterix.062_390_FCT_FR1FR2", FT_UINT8, BASE_DEC, VALS (valstr_062_390_FCT_FR1FR2), 0x30, NULL, HFILL } },
+ { &hf_062_390_FCT_RVSM, { "RVSM", "asterix.062_390_FCT_RVSM", FT_UINT8, BASE_DEC, VALS (valstr_062_390_FCT_RVSM), 0x0c, NULL, HFILL } },
+ { &hf_062_390_FCT_HPR, { "HPR", "asterix.062_390_FCT_HPR", FT_UINT8, BASE_DEC, VALS (valstr_062_390_FCT_HPR), 0x02, NULL, HFILL } },
+ { &hf_062_390_TAC, { "TAC, Type of Aircraft", "asterix.062_390_TAC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_TAC_VALUE, { "Type of Aircraft", "asterix.062_390_TAC_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_WTC, { "WTC, Wake Turbulence Category", "asterix.062_390_WTC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_WTC_VALUE, { "Wake Turbulence Category", "asterix.062_390_WTC_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_DEP, { "DEP, Departure Airport", "asterix.062_390_DEP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_DEP_VALUE, { "Departure Airport", "asterix.062_390_DEP_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_DST, { "DST, Destination Airport", "asterix.062_390_DST", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_DST_VALUE, { "Destination Airport", "asterix.062_390_DST_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_RDS, { "RDS, Runway Designation", "asterix.062_390_RDS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_RDS_NU1, { "NU1, First Number", "asterix.062_390_RDS_NU1", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_RDS_NU2, { "NU2, Second Number", "asterix.062_390_RDS_NU2", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_RDS_LTR, { "LTR, Letter", "asterix.062_390_RDS_LTR", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_CFL, { "CFL, Current Cleared Flight Level", "asterix.062_390_CFL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_CFL_VALUE, { "Current Cleared Flight Level, [FL]", "asterix.062_390_CFL_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_CTL, { "CTL, Current Control Position", "asterix.062_390_CTL", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_CTL_CENTRE, { "CENTRE, 8-bit Group Identification Code", "asterix.062_390_CTL_CENTRE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_CTL_POSITION, { "POSITION, 8-bit Control Position Identification Code", "asterix.062_390_CTL_POSITION", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_TOD, { "TOD, Time of Departure / Arrival", "asterix.062_390_TOD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_TOD_TYP, { "TYP", "asterix.062_390_TOD_TYP", FT_UINT8, BASE_DEC, VALS (valstr_062_390_TOD_TYP), 0xf8, NULL, HFILL } },
+ { &hf_062_390_TOD_DAY, { "DAY", "asterix.062_390_TOD_DAY", FT_UINT8, BASE_DEC, VALS (valstr_062_390_TOD_DAY), 0x06, NULL, HFILL } },
+ { &hf_062_390_TOD_HOR, { "HOR, Hours", "asterix.062_390_TOD_HOR", FT_UINT8, BASE_DEC, NULL, 0x1f, NULL, HFILL } },
+ { &hf_062_390_TOD_MIN, { "MIN, Minutes", "asterix.062_390_TOD_MIN", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_062_390_TOD_AVS, { "AVS, Seconds Available Flag", "asterix.062_390_TOD_AVS", FT_UINT8, BASE_DEC, VALS (valstr_062_390_TOD_AVS), 0x80, NULL, HFILL } },
+ { &hf_062_390_TOD_SEC, { "SEC, Seconds", "asterix.062_390_TOD_SEC", FT_UINT8, BASE_DEC, NULL, 0x3f, NULL, HFILL } },
+ { &hf_062_390_AST, { "AST, Aircraft Stand", "asterix.062_390_AST", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_AST_VALUE, { "Aircraft Stand", "asterix.062_390_AST_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_STS, { "STS, Stand Status", "asterix.062_390_STS", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_STS_EMP, { "EMP", "asterix.062_390_STS_EMP", FT_UINT8, BASE_DEC, VALS (valstr_062_390_STS_EMP), 0xc0, NULL, HFILL } },
+ { &hf_062_390_STS_AVL, { "AVL", "asterix.062_390_STS_AVL", FT_UINT8, BASE_DEC, VALS (valstr_062_390_STS_AVL), 0x30, NULL, HFILL } },
+ { &hf_062_390_STD, { "STD, Standard Instrument Departure", "asterix.062_390_STD", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_STD_VALUE, { "Standard Instrument Departure", "asterix.062_390_STD_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_STA, { "STA, Standard Instrument Arrival", "asterix.062_390_STA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_STA_VALUE, { "Standard Instrument Arrival", "asterix.062_390_STA_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_PEM, { "PEM, Pre-Emergency Mode 3/A", "asterix.062_390_PEM", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_PEM_VA, { "VA", "asterix.062_390_PEM_VA", FT_UINT8, BASE_DEC, VALS (valstr_062_390_PEM_VA), 0x10, NULL, HFILL } },
+ { &hf_062_390_PEM_MODE3A, { "MODE3A, Mode-3/A Reply in Octal Representation", "asterix.062_390_PEM_MODE3A", FT_UINT16, BASE_OCT, NULL, 0x0fff, NULL, HFILL } },
+ { &hf_062_390_PEC, { "PEC, Pre-Emergency Callsign", "asterix.062_390_PEC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_390_PEC_VALUE, { "Pre-Emergency Callsign", "asterix.062_390_PEC_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_500, { "500, Estimated Accuracies", "asterix.062_500", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_500_APC, { "APC, Estimated Accuracy Of Track Position (Cartesian)", "asterix.062_500_APC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_500_APC_X, { "X, APC (X-Component), [m]", "asterix.062_500_APC_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_500_APC_Y, { "Y, APC (Y-Component), [m]", "asterix.062_500_APC_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_500_COV, { "COV, XY Covariance Component", "asterix.062_500_COV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_500_COV_VALUE, { "XY Covariance Component, [m]", "asterix.062_500_COV_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_500_APW, { "APW, Estimated Accuracy Of Track Position (WGS-84)", "asterix.062_500_APW", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_500_APW_LAT, { "LAT, APW (Latitude Component), [°]", "asterix.062_500_APW_LAT", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_500_APW_LON, { "LON, APW (Longitude Component), [°]", "asterix.062_500_APW_LON", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_500_AGA, { "AGA, Estimated Accuracy Of Calculated Track Geometric Altitude", "asterix.062_500_AGA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_500_AGA_VALUE, { "Estimated Accuracy Of Calculated Track Geometric Altitude, [ft]", "asterix.062_500_AGA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_500_ABA, { "ABA, Estimated Accuracy Of Calculated Track Barometric Altitude", "asterix.062_500_ABA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_500_ABA_VALUE, { "Estimated Accuracy Of Calculated Track Barometric Altitude, [FL]", "asterix.062_500_ABA_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_500_ATV, { "ATV, Estimated Accuracy Of Track Velocity (Cartesian)", "asterix.062_500_ATV", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_500_ATV_X, { "X, ATV (X-Component), [m/s]", "asterix.062_500_ATV_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_500_ATV_Y, { "Y, ATV (Y-Component), [m/s]", "asterix.062_500_ATV_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_500_AA, { "AA, Estimated Accuracy Of Acceleration (Cartesian)", "asterix.062_500_AA", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_500_AA_X, { "X, AA (X-Component), [m/s2]", "asterix.062_500_AA_X", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_500_AA_Y, { "Y, AA (Y-Component), [m/s2]", "asterix.062_500_AA_Y", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_500_ARC, { "ARC, Estimated Accuracy Of Rate Of Climb/Descent", "asterix.062_500_ARC", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_500_ARC_VALUE, { "Estimated Accuracy Of Rate Of Climb/Descent, [ft/min]", "asterix.062_500_ARC_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_510, { "510, Composed Track Number", "asterix.062_510", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_510_MIDENT, { "MIDENT, Master System Unit Identification", "asterix.062_510_MIDENT", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_510_MTRACK, { "MTRACK, Master System Track Number", "asterix.062_510_MTRACK", FT_UINT16, BASE_DEC, NULL, 0xfffe, NULL, HFILL } },
+ { &hf_062_510_SIDENT, { "SIDENT, Slave System Unit Identification", "asterix.062_510_SIDENT", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_510_STRACK, { "STRACK, Slave System Track Number", "asterix.062_510_STRACK", FT_UINT16, BASE_DEC, NULL, 0xfffe, NULL, HFILL } },
+ { &hf_062_RE, { "RE, Reserved Expansion Field", "asterix.062_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_062_SP, { "SP, Special Purpose Field", "asterix.062_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_010, { "010, Data Source Identifier", "asterix.063_V1_6_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_010_SAC, { "SAC, System Area Code", "asterix.063_V1_6_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_010_SIC, { "SIC, System Identification Code", "asterix.063_V1_6_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_015, { "015, Service Identification", "asterix.063_V1_6_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_015_VALUE, { "Service Identification", "asterix.063_V1_6_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_030, { "030, Time of Message", "asterix.063_V1_6_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_030_VALUE, { "Time of Message, [s]", "asterix.063_V1_6_030_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_050, { "050, Sensor Identifier", "asterix.063_V1_6_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_050_SAC, { "SAC, System Area Code", "asterix.063_V1_6_050_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_050_SIC, { "SIC, System Identification Code", "asterix.063_V1_6_050_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_060, { "060, Sensor Configuration and Status", "asterix.063_V1_6_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_060_CON, { "CON", "asterix.063_V1_6_060_CON", FT_UINT8, BASE_DEC, VALS (valstr_063_V1_6_060_CON), 0xc0, NULL, HFILL } },
+ { &hf_063_V1_6_060_PSR, { "PSR", "asterix.063_V1_6_060_PSR", FT_UINT8, BASE_DEC, VALS (valstr_063_V1_6_060_PSR), 0x20, NULL, HFILL } },
+ { &hf_063_V1_6_060_SSR, { "SSR", "asterix.063_V1_6_060_SSR", FT_UINT8, BASE_DEC, VALS (valstr_063_V1_6_060_SSR), 0x10, NULL, HFILL } },
+ { &hf_063_V1_6_060_MDS, { "MDS", "asterix.063_V1_6_060_MDS", FT_UINT8, BASE_DEC, VALS (valstr_063_V1_6_060_MDS), 0x08, NULL, HFILL } },
+ { &hf_063_V1_6_060_ADS, { "ADS", "asterix.063_V1_6_060_ADS", FT_UINT8, BASE_DEC, VALS (valstr_063_V1_6_060_ADS), 0x04, NULL, HFILL } },
+ { &hf_063_V1_6_060_MLT, { "MLT", "asterix.063_V1_6_060_MLT", FT_UINT8, BASE_DEC, VALS (valstr_063_V1_6_060_MLT), 0x02, NULL, HFILL } },
+ { &hf_063_V1_6_060_OPS, { "OPS, Operational Release Status of the System", "asterix.063_V1_6_060_OPS", FT_UINT8, BASE_DEC, VALS (valstr_063_V1_6_060_OPS), 0x80, NULL, HFILL } },
+ { &hf_063_V1_6_060_ODP, { "ODP, Data Processor Overload Indicator", "asterix.063_V1_6_060_ODP", FT_UINT8, BASE_DEC, VALS (valstr_063_V1_6_060_ODP), 0x40, NULL, HFILL } },
+ { &hf_063_V1_6_060_OXT, { "OXT, Transmission Subsystem Overload Status", "asterix.063_V1_6_060_OXT", FT_UINT8, BASE_DEC, VALS (valstr_063_V1_6_060_OXT), 0x20, NULL, HFILL } },
+ { &hf_063_V1_6_060_MSC, { "MSC, Monitoring System Connected Status", "asterix.063_V1_6_060_MSC", FT_UINT8, BASE_DEC, VALS (valstr_063_V1_6_060_MSC), 0x10, NULL, HFILL } },
+ { &hf_063_V1_6_060_TSV, { "TSV, Time Source Validity", "asterix.063_V1_6_060_TSV", FT_UINT8, BASE_DEC, VALS (valstr_063_V1_6_060_TSV), 0x08, NULL, HFILL } },
+ { &hf_063_V1_6_060_NPW, { "NPW, No Plot Warning", "asterix.063_V1_6_060_NPW", FT_UINT8, BASE_DEC, VALS (valstr_063_V1_6_060_NPW), 0x04, NULL, HFILL } },
+ { &hf_063_V1_6_070, { "070, Time Stamping Bias", "asterix.063_V1_6_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_070_VALUE, { "Time Stamping Bias, [ms]", "asterix.063_V1_6_070_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_080, { "080, SSR / Mode S Range Gain and Bias", "asterix.063_V1_6_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_080_SRG, { "SRG, Mode S Range Gain", "asterix.063_V1_6_080_SRG", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_080_SRB, { "SRB, Mode S Range Bias, [NM]", "asterix.063_V1_6_080_SRB", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_081, { "081, SSR Mode S Azimuth Bias", "asterix.063_V1_6_081", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_081_VALUE, { "SSR Mode S Azimuth Bias, [°]", "asterix.063_V1_6_081_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_090, { "090, PSR Range Gain and Bias", "asterix.063_V1_6_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_090_PRG, { "PRG, PSR Range Gain", "asterix.063_V1_6_090_PRG", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_090_PRB, { "PRB, PSR Range Bias, [NM]", "asterix.063_V1_6_090_PRB", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_091, { "091, PSR Azimuth Bias", "asterix.063_V1_6_091", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_091_VALUE, { "PSR Azimuth Bias, [°]", "asterix.063_V1_6_091_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_092, { "092, PSR Elevation Bias", "asterix.063_V1_6_092", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_092_VALUE, { "PSR Elevation Bias, [°]", "asterix.063_V1_6_092_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_RE, { "RE, Reserved Expansion Field", "asterix.063_V1_6_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_V1_6_SP, { "SP, Special Purpose Field", "asterix.063_V1_6_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_010, { "010, Data Source Identifier", "asterix.063_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_010_SAC, { "SAC, System Area Code", "asterix.063_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_010_SIC, { "SIC, System Identification Code", "asterix.063_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_015, { "015, Service Identification", "asterix.063_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_015_VALUE, { "Service Identification", "asterix.063_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_030, { "030, Time of Message", "asterix.063_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_030_VALUE, { "Time of Message, [s]", "asterix.063_030_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_050, { "050, Sensor Identifier", "asterix.063_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_050_SAC, { "SAC, System Area Code", "asterix.063_050_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_050_SIC, { "SIC, System Identification Code", "asterix.063_050_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_060, { "060, Sensor Configuration and Status", "asterix.063_060", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_060_CON, { "CON", "asterix.063_060_CON", FT_UINT8, BASE_DEC, VALS (valstr_063_060_CON), 0xc0, NULL, HFILL } },
+ { &hf_063_060_PSR, { "PSR", "asterix.063_060_PSR", FT_UINT8, BASE_DEC, VALS (valstr_063_060_PSR), 0x20, NULL, HFILL } },
+ { &hf_063_060_SSR, { "SSR", "asterix.063_060_SSR", FT_UINT8, BASE_DEC, VALS (valstr_063_060_SSR), 0x10, NULL, HFILL } },
+ { &hf_063_060_MDS, { "MDS", "asterix.063_060_MDS", FT_UINT8, BASE_DEC, VALS (valstr_063_060_MDS), 0x08, NULL, HFILL } },
+ { &hf_063_060_ADS, { "ADS", "asterix.063_060_ADS", FT_UINT8, BASE_DEC, VALS (valstr_063_060_ADS), 0x04, NULL, HFILL } },
+ { &hf_063_060_MLT, { "MLT", "asterix.063_060_MLT", FT_UINT8, BASE_DEC, VALS (valstr_063_060_MLT), 0x02, NULL, HFILL } },
+ { &hf_063_060_OPS, { "OPS, Operational Release Status of the System", "asterix.063_060_OPS", FT_UINT8, BASE_DEC, VALS (valstr_063_060_OPS), 0x80, NULL, HFILL } },
+ { &hf_063_060_ODP, { "ODP, Data Processor Overload Indicator", "asterix.063_060_ODP", FT_UINT8, BASE_DEC, VALS (valstr_063_060_ODP), 0x40, NULL, HFILL } },
+ { &hf_063_060_OXT, { "OXT, Transmission Subsystem Overload Status", "asterix.063_060_OXT", FT_UINT8, BASE_DEC, VALS (valstr_063_060_OXT), 0x20, NULL, HFILL } },
+ { &hf_063_060_MSC, { "MSC, Monitoring System Connected Status", "asterix.063_060_MSC", FT_UINT8, BASE_DEC, VALS (valstr_063_060_MSC), 0x10, NULL, HFILL } },
+ { &hf_063_060_TSV, { "TSV, Time Source Validity", "asterix.063_060_TSV", FT_UINT8, BASE_DEC, VALS (valstr_063_060_TSV), 0x08, NULL, HFILL } },
+ { &hf_063_060_NPW, { "NPW, No Plot Warning", "asterix.063_060_NPW", FT_UINT8, BASE_DEC, VALS (valstr_063_060_NPW), 0x04, NULL, HFILL } },
+ { &hf_063_070, { "070, Time Stamping Bias", "asterix.063_070", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_070_VALUE, { "Time Stamping Bias, [ms]", "asterix.063_070_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_080, { "080, SSR / Mode S Range Gain and Bias", "asterix.063_080", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_080_SRG, { "SRG, Mode S Range Gain", "asterix.063_080_SRG", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_080_SRB, { "SRB, Mode S Range Bias, [NM]", "asterix.063_080_SRB", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_081, { "081, SSR Mode S Azimuth Bias", "asterix.063_081", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_081_VALUE, { "SSR Mode S Azimuth Bias, [°]", "asterix.063_081_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_090, { "090, PSR Range Gain and Bias", "asterix.063_090", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_090_PRG, { "PRG, PSR Range Gain", "asterix.063_090_PRG", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_090_PRB, { "PRB, PSR Range Bias, [NM]", "asterix.063_090_PRB", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_091, { "091, PSR Azimuth Bias", "asterix.063_091", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_091_VALUE, { "PSR Azimuth Bias, [°]", "asterix.063_091_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_092, { "092, PSR Elevation Bias", "asterix.063_092", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_092_VALUE, { "PSR Elevation Bias, [°]", "asterix.063_092_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_RE, { "RE, Reserved Expansion Field", "asterix.063_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_063_SP, { "SP, Special Purpose Field", "asterix.063_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_4_000, { "000, Message Type", "asterix.065_V1_4_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_4_000_VALUE, { "Message Type", "asterix.065_V1_4_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_065_V1_4_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_065_V1_4_010, { "010, Data Source Identifier", "asterix.065_V1_4_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_4_010_SAC, { "SAC, System Area Code", "asterix.065_V1_4_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_4_010_SIC, { "SIC, System Identification Code", "asterix.065_V1_4_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_4_015, { "015, Service Identification", "asterix.065_V1_4_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_4_015_VALUE, { "Service Identification", "asterix.065_V1_4_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_4_020, { "020, Batch Number", "asterix.065_V1_4_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_4_020_VALUE, { "Batch Number", "asterix.065_V1_4_020_VALUE", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_4_030, { "030, Time of Message", "asterix.065_V1_4_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_4_030_VALUE, { "Time of Message, [s]", "asterix.065_V1_4_030_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_4_040, { "040, SDPS Configuration and Status", "asterix.065_V1_4_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_4_040_NOGO, { "NOGO", "asterix.065_V1_4_040_NOGO", FT_UINT8, BASE_DEC, VALS (valstr_065_V1_4_040_NOGO), 0xc0, NULL, HFILL } },
+ { &hf_065_V1_4_040_OVL, { "OVL", "asterix.065_V1_4_040_OVL", FT_UINT8, BASE_DEC, VALS (valstr_065_V1_4_040_OVL), 0x20, NULL, HFILL } },
+ { &hf_065_V1_4_040_TSV, { "TSV", "asterix.065_V1_4_040_TSV", FT_UINT8, BASE_DEC, VALS (valstr_065_V1_4_040_TSV), 0x10, NULL, HFILL } },
+ { &hf_065_V1_4_040_PSS, { "PSS, Processing System Status", "asterix.065_V1_4_040_PSS", FT_UINT8, BASE_DEC, VALS (valstr_065_V1_4_040_PSS), 0x0c, NULL, HFILL } },
+ { &hf_065_V1_4_040_STTN, { "STTN, Track Re-numbering Indication", "asterix.065_V1_4_040_STTN", FT_UINT8, BASE_DEC, NULL, 0x02, NULL, HFILL } },
+ { &hf_065_V1_4_050, { "050, Service Status Report", "asterix.065_V1_4_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_4_050_VALUE, { "Service Status Report", "asterix.065_V1_4_050_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_065_V1_4_050_VALUE), 0x00, NULL, HFILL } },
+ { &hf_065_V1_4_RE, { "RE, Reserved Expansion Field", "asterix.065_V1_4_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_4_SP, { "SP, Special Purpose Field", "asterix.065_V1_4_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_5_000, { "000, Message Type", "asterix.065_V1_5_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_5_000_VALUE, { "Message Type", "asterix.065_V1_5_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_065_V1_5_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_065_V1_5_010, { "010, Data Source Identifier", "asterix.065_V1_5_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_5_010_SAC, { "SAC, System Area Code", "asterix.065_V1_5_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_5_010_SIC, { "SIC, System Identification Code", "asterix.065_V1_5_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_5_015, { "015, Service Identification", "asterix.065_V1_5_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_5_015_VALUE, { "Service Identification", "asterix.065_V1_5_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_5_020, { "020, Batch Number", "asterix.065_V1_5_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_5_020_VALUE, { "Batch Number", "asterix.065_V1_5_020_VALUE", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_5_030, { "030, Time of Message", "asterix.065_V1_5_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_5_030_VALUE, { "Time of Message, [s]", "asterix.065_V1_5_030_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_5_040, { "040, SDPS Configuration and Status", "asterix.065_V1_5_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_5_040_NOGO, { "NOGO", "asterix.065_V1_5_040_NOGO", FT_UINT8, BASE_DEC, VALS (valstr_065_V1_5_040_NOGO), 0xc0, NULL, HFILL } },
+ { &hf_065_V1_5_040_OVL, { "OVL", "asterix.065_V1_5_040_OVL", FT_UINT8, BASE_DEC, VALS (valstr_065_V1_5_040_OVL), 0x20, NULL, HFILL } },
+ { &hf_065_V1_5_040_TSV, { "TSV", "asterix.065_V1_5_040_TSV", FT_UINT8, BASE_DEC, VALS (valstr_065_V1_5_040_TSV), 0x10, NULL, HFILL } },
+ { &hf_065_V1_5_040_PSS, { "PSS, Processing System Status", "asterix.065_V1_5_040_PSS", FT_UINT8, BASE_DEC, VALS (valstr_065_V1_5_040_PSS), 0x0c, NULL, HFILL } },
+ { &hf_065_V1_5_040_STTN, { "STTN, Track Re-numbering Indication", "asterix.065_V1_5_040_STTN", FT_UINT8, BASE_DEC, NULL, 0x02, NULL, HFILL } },
+ { &hf_065_V1_5_050, { "050, Service Status Report", "asterix.065_V1_5_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_5_050_VALUE, { "Service Status Report", "asterix.065_V1_5_050_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_065_V1_5_050_VALUE), 0x00, NULL, HFILL } },
+ { &hf_065_V1_5_RE, { "RE, Reserved Expansion Field", "asterix.065_V1_5_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_5_SP, { "SP, Special Purpose Field", "asterix.065_V1_5_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_6_000, { "000, Message Type", "asterix.065_V1_6_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_6_000_VALUE, { "Message Type", "asterix.065_V1_6_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_065_V1_6_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_065_V1_6_010, { "010, Data Source Identifier", "asterix.065_V1_6_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_6_010_SAC, { "SAC, System Area Code", "asterix.065_V1_6_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_6_010_SIC, { "SIC, System Identification Code", "asterix.065_V1_6_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_6_015, { "015, Service Identification", "asterix.065_V1_6_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_6_015_VALUE, { "Service Identification", "asterix.065_V1_6_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_6_020, { "020, Batch Number", "asterix.065_V1_6_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_6_020_VALUE, { "Batch Number", "asterix.065_V1_6_020_VALUE", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_6_030, { "030, Time of Message", "asterix.065_V1_6_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_6_030_VALUE, { "Time of Message, [s]", "asterix.065_V1_6_030_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_6_040, { "040, SDPS Configuration and Status", "asterix.065_V1_6_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_6_040_NOGO, { "NOGO", "asterix.065_V1_6_040_NOGO", FT_UINT8, BASE_DEC, VALS (valstr_065_V1_6_040_NOGO), 0xc0, NULL, HFILL } },
+ { &hf_065_V1_6_040_OVL, { "OVL", "asterix.065_V1_6_040_OVL", FT_UINT8, BASE_DEC, VALS (valstr_065_V1_6_040_OVL), 0x20, NULL, HFILL } },
+ { &hf_065_V1_6_040_TSV, { "TSV", "asterix.065_V1_6_040_TSV", FT_UINT8, BASE_DEC, VALS (valstr_065_V1_6_040_TSV), 0x10, NULL, HFILL } },
+ { &hf_065_V1_6_040_PSS, { "PSS, Processing System Status", "asterix.065_V1_6_040_PSS", FT_UINT8, BASE_DEC, VALS (valstr_065_V1_6_040_PSS), 0x0c, NULL, HFILL } },
+ { &hf_065_V1_6_040_STTN, { "STTN, Track Re-numbering Indication", "asterix.065_V1_6_040_STTN", FT_UINT8, BASE_DEC, NULL, 0x02, NULL, HFILL } },
+ { &hf_065_V1_6_050, { "050, Service Status Report", "asterix.065_V1_6_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_6_050_VALUE, { "Service Status Report", "asterix.065_V1_6_050_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_065_V1_6_050_VALUE), 0x00, NULL, HFILL } },
+ { &hf_065_V1_6_RE, { "RE, Reserved Expansion Field", "asterix.065_V1_6_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_V1_6_SP, { "SP, Special Purpose Field", "asterix.065_V1_6_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_000, { "000, Message Type", "asterix.065_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_000_VALUE, { "Message Type", "asterix.065_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_065_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_065_010, { "010, Data Source Identifier", "asterix.065_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_010_SAC, { "SAC, System Area Code", "asterix.065_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_010_SIC, { "SIC, System Identification Code", "asterix.065_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_015, { "015, Service Identification", "asterix.065_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_015_VALUE, { "Service Identification", "asterix.065_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_020, { "020, Batch Number", "asterix.065_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_020_VALUE, { "Batch Number", "asterix.065_020_VALUE", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_030, { "030, Time of Message", "asterix.065_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_030_VALUE, { "Time of Message, [s]", "asterix.065_030_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_040, { "040, SDPS Configuration and Status", "asterix.065_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_040_NOGO, { "NOGO", "asterix.065_040_NOGO", FT_UINT8, BASE_DEC, VALS (valstr_065_040_NOGO), 0xc0, NULL, HFILL } },
+ { &hf_065_040_OVL, { "OVL", "asterix.065_040_OVL", FT_UINT8, BASE_DEC, VALS (valstr_065_040_OVL), 0x20, NULL, HFILL } },
+ { &hf_065_040_TSV, { "TSV", "asterix.065_040_TSV", FT_UINT8, BASE_DEC, VALS (valstr_065_040_TSV), 0x10, NULL, HFILL } },
+ { &hf_065_040_PSS, { "PSS, Processing System Status", "asterix.065_040_PSS", FT_UINT8, BASE_DEC, VALS (valstr_065_040_PSS), 0x0c, NULL, HFILL } },
+ { &hf_065_040_STTN, { "STTN, Track Re-numbering Indication", "asterix.065_040_STTN", FT_UINT8, BASE_DEC, NULL, 0x02, NULL, HFILL } },
+ { &hf_065_050, { "050, Service Status Report", "asterix.065_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_050_VALUE, { "Service Status Report", "asterix.065_050_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_065_050_VALUE), 0x00, NULL, HFILL } },
+ { &hf_065_RE, { "RE, Reserved Expansion Field", "asterix.065_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_065_SP, { "SP, Special Purpose Field", "asterix.065_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_000, { "000, Message Type", "asterix.240_V1_3_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_000_VALUE, { "Message Type", "asterix.240_V1_3_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_240_V1_3_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_010, { "010, Data Source Identifier", "asterix.240_V1_3_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_010_SAC, { "SAC, System Area Code", "asterix.240_V1_3_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_010_SIC, { "SIC, System Identification Code", "asterix.240_V1_3_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_020, { "020, Video Record Header", "asterix.240_V1_3_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_020_VALUE, { "Video Record Header", "asterix.240_V1_3_020_VALUE", FT_UINT32, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_030, { "030, Video Summary", "asterix.240_V1_3_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_030_VALUE, { "Video Summary", "asterix.240_V1_3_030_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_040, { "040, Video Header Nano", "asterix.240_V1_3_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_040_STARTAZ, { "STARTAZ, Start Azimuth of the Cells Group, [°]", "asterix.240_V1_3_040_STARTAZ", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_040_ENDAZ, { "ENDAZ, End Azimuth of the Cells Group, [°]", "asterix.240_V1_3_040_ENDAZ", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_040_STARTRG, { "STARTRG, Starting Range of the Cells Group, Expressed in Number of Cells", "asterix.240_V1_3_040_STARTRG", FT_UINT32, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_040_CELLDUR, { "CELLDUR, Video Cell Duration in Nano-seconds, [ns]", "asterix.240_V1_3_040_CELLDUR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_041, { "041, Video Header Femto", "asterix.240_V1_3_041", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_041_STARTAZ, { "STARTAZ, Start Azimuth of the Cells Group, [°]", "asterix.240_V1_3_041_STARTAZ", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_041_ENDAZ, { "ENDAZ, End Azimuth of the Cells Group, [°]", "asterix.240_V1_3_041_ENDAZ", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_041_STARTRG, { "STARTRG, Starting Range of the Cells Group, Expressed in Number of Cells", "asterix.240_V1_3_041_STARTRG", FT_UINT32, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_041_CELLDUR, { "CELLDUR, Video Cell Duration in Femto-seconds, [fs]", "asterix.240_V1_3_041_CELLDUR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_048, { "048, Video Cells Resolution & Data Compression Indicator", "asterix.240_V1_3_048", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_048_C, { "C, Data Compression Indicator", "asterix.240_V1_3_048_C", FT_UINT8, BASE_DEC, VALS (valstr_240_V1_3_048_C), 0x80, NULL, HFILL } },
+ { &hf_240_V1_3_048_RES, { "RES, Bit Resolution", "asterix.240_V1_3_048_RES", FT_UINT8, BASE_DEC, VALS (valstr_240_V1_3_048_RES), 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_049, { "049, Video Octets & Video Cells Counters", "asterix.240_V1_3_049", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_049_NBVB, { "NBVB, Number of 'valid' Octets", "asterix.240_V1_3_049_NBVB", FT_UINT16, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_049_NBCELLS, { "NBCELLS, Number of 'valid' Cells", "asterix.240_V1_3_049_NBCELLS", FT_UINT24, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_050, { "050, Video Block Low Data Volume", "asterix.240_V1_3_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_050_VALUE, { "Video Block Low Data Volume", "asterix.240_V1_3_050_VALUE", FT_UINT32, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_051, { "051, Video Block Medium Data Volume", "asterix.240_V1_3_051", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_051_VALUE, { "Video Block Medium Data Volume", "asterix.240_V1_3_051_VALUE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_052, { "052, Video Block High Data Volume", "asterix.240_V1_3_052", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_052_VALUE, { "Video Block High Data Volume", "asterix.240_V1_3_052_VALUE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_140, { "140, Time of Day", "asterix.240_V1_3_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_140_VALUE, { "Time of Day, [s]", "asterix.240_V1_3_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_RE, { "RE, Reserved Expansion Field", "asterix.240_V1_3_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_V1_3_SP, { "SP, Special Purpose Field", "asterix.240_V1_3_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_000, { "000, Message Type", "asterix.240_000", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_000_VALUE, { "Message Type", "asterix.240_000_VALUE", FT_UINT8, BASE_DEC, VALS (valstr_240_000_VALUE), 0x00, NULL, HFILL } },
+ { &hf_240_010, { "010, Data Source Identifier", "asterix.240_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_010_SAC, { "SAC, System Area Code", "asterix.240_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_010_SIC, { "SIC, System Identification Code", "asterix.240_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_020, { "020, Video Record Header", "asterix.240_020", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_020_VALUE, { "Video Record Header", "asterix.240_020_VALUE", FT_UINT32, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_030, { "030, Video Summary", "asterix.240_030", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_030_VALUE, { "Video Summary", "asterix.240_030_VALUE", FT_STRING, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_040, { "040, Video Header Nano", "asterix.240_040", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_040_STARTAZ, { "STARTAZ, Start Azimuth of the Cells Group, [°]", "asterix.240_040_STARTAZ", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_040_ENDAZ, { "ENDAZ, End Azimuth of the Cells Group, [°]", "asterix.240_040_ENDAZ", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_040_STARTRG, { "STARTRG, Starting Range of the Cells Group, Expressed in Number of Cells", "asterix.240_040_STARTRG", FT_UINT32, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_040_CELLDUR, { "CELLDUR, Video Cell Duration in Nano-seconds, [ns]", "asterix.240_040_CELLDUR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_041, { "041, Video Header Femto", "asterix.240_041", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_041_STARTAZ, { "STARTAZ, Start Azimuth of the Cells Group, [°]", "asterix.240_041_STARTAZ", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_041_ENDAZ, { "ENDAZ, End Azimuth of the Cells Group, [°]", "asterix.240_041_ENDAZ", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_041_STARTRG, { "STARTRG, Starting Range of the Cells Group, Expressed in Number of Cells", "asterix.240_041_STARTRG", FT_UINT32, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_041_CELLDUR, { "CELLDUR, Video Cell Duration in Femto-seconds, [fs]", "asterix.240_041_CELLDUR", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_048, { "048, Video Cells Resolution & Data Compression Indicator", "asterix.240_048", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_048_C, { "C, Data Compression Indicator", "asterix.240_048_C", FT_UINT8, BASE_DEC, VALS (valstr_240_048_C), 0x80, NULL, HFILL } },
+ { &hf_240_048_RES, { "RES, Bit Resolution", "asterix.240_048_RES", FT_UINT8, BASE_DEC, VALS (valstr_240_048_RES), 0x00, NULL, HFILL } },
+ { &hf_240_049, { "049, Video Octets & Video Cells Counters", "asterix.240_049", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_049_NBVB, { "NBVB, Number of 'valid' Octets", "asterix.240_049_NBVB", FT_UINT16, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_049_NBCELLS, { "NBCELLS, Number of 'valid' Cells", "asterix.240_049_NBCELLS", FT_UINT24, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_050, { "050, Video Block Low Data Volume", "asterix.240_050", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_050_VALUE, { "Video Block Low Data Volume", "asterix.240_050_VALUE", FT_UINT32, BASE_HEX, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_051, { "051, Video Block Medium Data Volume", "asterix.240_051", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_051_VALUE, { "Video Block Medium Data Volume", "asterix.240_051_VALUE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_052, { "052, Video Block High Data Volume", "asterix.240_052", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_052_VALUE, { "Video Block High Data Volume", "asterix.240_052_VALUE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_140, { "140, Time of Day", "asterix.240_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_140_VALUE, { "Time of Day, [s]", "asterix.240_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_RE, { "RE, Reserved Expansion Field", "asterix.240_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_240_SP, { "SP, Special Purpose Field", "asterix.240_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_2_010, { "010, Data Source Identifier", "asterix.247_V1_2_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_2_010_SAC, { "SAC, System Area Code", "asterix.247_V1_2_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_2_010_SIC, { "SIC, System Identification Code", "asterix.247_V1_2_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_2_015, { "015, Service Identification", "asterix.247_V1_2_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_2_015_VALUE, { "Service Identification", "asterix.247_V1_2_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_2_140, { "140, Time of Day", "asterix.247_V1_2_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_2_140_VALUE, { "Time of Day, [s]", "asterix.247_V1_2_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_2_550, { "550, Category Version Number Report", "asterix.247_V1_2_550", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_2_550_CAT, { "CAT, Category", "asterix.247_V1_2_550_CAT", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_2_550_MAIN, { "MAIN, Main Version Number", "asterix.247_V1_2_550_MAIN", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_2_550_SUB, { "SUB, Sub Version Number", "asterix.247_V1_2_550_SUB", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_2_RE, { "RE, Reserved Expansion Field", "asterix.247_V1_2_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_2_SP, { "SP, Special Purpose Field", "asterix.247_V1_2_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_3_010, { "010, Data Source Identifier", "asterix.247_V1_3_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_3_010_SAC, { "SAC, System Area Code", "asterix.247_V1_3_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_3_010_SIC, { "SIC, System Identification Code", "asterix.247_V1_3_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_3_015, { "015, Service Identification", "asterix.247_V1_3_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_3_015_VALUE, { "Service Identification", "asterix.247_V1_3_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_3_140, { "140, Time of Day", "asterix.247_V1_3_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_3_140_VALUE, { "Time of Day, [s]", "asterix.247_V1_3_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_3_550, { "550, Category Version Number Report", "asterix.247_V1_3_550", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_3_550_CAT, { "CAT, Category", "asterix.247_V1_3_550_CAT", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_3_550_MAIN, { "MAIN, Main Version Number", "asterix.247_V1_3_550_MAIN", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_3_550_SUB, { "SUB, Sub Version Number", "asterix.247_V1_3_550_SUB", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_3_RE, { "RE, Reserved Expansion Field", "asterix.247_V1_3_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_V1_3_SP, { "SP, Special Purpose Field", "asterix.247_V1_3_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_010, { "010, Data Source Identifier", "asterix.247_010", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_010_SAC, { "SAC, System Area Code", "asterix.247_010_SAC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_010_SIC, { "SIC, System Identification Code", "asterix.247_010_SIC", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_015, { "015, Service Identification", "asterix.247_015", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_015_VALUE, { "Service Identification", "asterix.247_015_VALUE", FT_UINT8, BASE_HEX_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_140, { "140, Time of Day", "asterix.247_140", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_140_VALUE, { "Time of Day, [s]", "asterix.247_140_VALUE", FT_DOUBLE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_550, { "550, Category Version Number Report", "asterix.247_550", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_550_CAT, { "CAT, Category", "asterix.247_550_CAT", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_550_MAIN, { "MAIN, Main Version Number", "asterix.247_550_MAIN", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_550_SUB, { "SUB, Sub Version Number", "asterix.247_550_SUB", FT_UINT8, BASE_DEC, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_RE, { "RE, Reserved Expansion Field", "asterix.247_RE", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+ { &hf_247_SP, { "SP, Special Purpose Field", "asterix.247_SP", FT_NONE, BASE_NONE, NULL, 0x00, NULL, HFILL } },
+/* insert2 */
+ };
+
+ /* Setup protocol subtree array */
+ static int *ett[] = {
+ &ett_asterix,
+ &ett_asterix_category,
+ &ett_asterix_length,
+ &ett_asterix_message,
+ &ett_asterix_subtree
+ };
+
+ module_t *asterix_prefs_module;
+
+ proto_asterix = proto_register_protocol (
+ "ASTERIX packet", /* name */
+ "ASTERIX", /* short name */
+ "asterix" /* abbrev */
+ );
+
+ proto_register_field_array (proto_asterix, hf, array_length (hf));
+ proto_register_subtree_array (ett, array_length (ett));
+
+ asterix_handle = register_dissector ("asterix", dissect_asterix, proto_asterix);
+
+ asterix_prefs_module = prefs_register_protocol (proto_asterix, NULL);
+
+/* insert3 */
+ prefs_register_enum_preference (asterix_prefs_module, "i001_version", "I001 version", "Select the CAT001 version", &global_categories_version[1], I001_versions, false);
+ prefs_register_enum_preference (asterix_prefs_module, "i002_version", "I002 version", "Select the CAT002 version", &global_categories_version[2], I002_versions, false);
+ prefs_register_enum_preference (asterix_prefs_module, "i004_version", "I004 version", "Select the CAT004 version", &global_categories_version[4], I004_versions, false);
+ prefs_register_enum_preference (asterix_prefs_module, "i008_version", "I008 version", "Select the CAT008 version", &global_categories_version[8], I008_versions, false);
+ prefs_register_enum_preference (asterix_prefs_module, "i009_version", "I009 version", "Select the CAT009 version", &global_categories_version[9], I009_versions, false);
+ prefs_register_enum_preference (asterix_prefs_module, "i010_version", "I010 version", "Select the CAT010 version", &global_categories_version[10], I010_versions, false);
+ prefs_register_enum_preference (asterix_prefs_module, "i011_version", "I011 version", "Select the CAT011 version", &global_categories_version[11], I011_versions, false);
+ prefs_register_enum_preference (asterix_prefs_module, "i015_version", "I015 version", "Select the CAT015 version", &global_categories_version[15], I015_versions, false);
+ prefs_register_enum_preference (asterix_prefs_module, "i016_version", "I016 version", "Select the CAT016 version", &global_categories_version[16], I016_versions, false);
+ prefs_register_enum_preference (asterix_prefs_module, "i018_version", "I018 version", "Select the CAT018 version", &global_categories_version[18], I018_versions, false);
+ prefs_register_enum_preference (asterix_prefs_module, "i019_version", "I019 version", "Select the CAT019 version", &global_categories_version[19], I019_versions, false);
+ prefs_register_enum_preference (asterix_prefs_module, "i020_version", "I020 version", "Select the CAT020 version", &global_categories_version[20], I020_versions, false);
+ prefs_register_enum_preference (asterix_prefs_module, "i021_version", "I021 version", "Select the CAT021 version", &global_categories_version[21], I021_versions, false);
+ prefs_register_enum_preference (asterix_prefs_module, "i023_version", "I023 version", "Select the CAT023 version", &global_categories_version[23], I023_versions, false);
+ prefs_register_enum_preference (asterix_prefs_module, "i025_version", "I025 version", "Select the CAT025 version", &global_categories_version[25], I025_versions, false);
+ prefs_register_enum_preference (asterix_prefs_module, "i032_version", "I032 version", "Select the CAT032 version", &global_categories_version[32], I032_versions, false);
+ prefs_register_enum_preference (asterix_prefs_module, "i034_version", "I034 version", "Select the CAT034 version", &global_categories_version[34], I034_versions, false);
+ prefs_register_enum_preference (asterix_prefs_module, "i048_version", "I048 version", "Select the CAT048 version", &global_categories_version[48], I048_versions, false);
+ prefs_register_enum_preference (asterix_prefs_module, "i062_version", "I062 version", "Select the CAT062 version", &global_categories_version[62], I062_versions, false);
+ prefs_register_enum_preference (asterix_prefs_module, "i063_version", "I063 version", "Select the CAT063 version", &global_categories_version[63], I063_versions, false);
+ prefs_register_enum_preference (asterix_prefs_module, "i065_version", "I065 version", "Select the CAT065 version", &global_categories_version[65], I065_versions, false);
+ prefs_register_enum_preference (asterix_prefs_module, "i240_version", "I240 version", "Select the CAT240 version", &global_categories_version[240], I240_versions, false);
+ prefs_register_enum_preference (asterix_prefs_module, "i247_version", "I247 version", "Select the CAT247 version", &global_categories_version[247], I247_versions, false);
+/* insert3 */
+}
+
+void proto_reg_handoff_asterix (void)
+{
+ dissector_add_uint_with_preference("udp.port", ASTERIX_PORT, asterix_handle);
+}
+
+/*
+ * Editor modelines - https://www.wireshark.org/tools/modelines.html
+ *
+ * Local variables:
+ * c-basic-offset: 4
+ * tab-width: 8
+ * indent-tabs-mode: nil
+ * End:
+ *
+ * vi: set shiftwidth=4 tabstop=8 expandtab:
+ * :indentSize=4:tabSize=8:noTabs=true:
+ */